I do it for English (my native language is Spanish). For me, the change came when I had a dream in English. I usually do all the work related stuff (programming, maths, statistics, scientific reading, etc) in English. So usually it is quite straight forward to think about what I am reading/programming/etc in this language.
For me it is exactly as you say, sometimes I am, say, writing a function, and I think about which parameters to pass, how to name those parameters, the name of the function and the documentation. All this I do in English in my head. And your description "words sounding in your head" is exactly as it seems to me.
For me it is exactly as you say, sometimes I am, say, writing a function, and I think about which parameters to pass, how to name those parameters, the name of the function and the documentation. All this I do in English in my head. And your description "words sounding in your head" is exactly as it seems to me.