I don’t think,they will……….
I don’t ask my colleagues or subordinates to learn ‘mnemonic’ techniques of any kind. Because majority of them won’t! Not because they are not motivated to learn things that will improve their skills,but because we don’t want to do hard works!
Mnemonics is ‘hard work’!
Another problem is,it is very difficult to change ‘habits’ of any type. If a programmer is used to learning programming without mnemonics,then,it is gonna be very difficult for him/her to change his habit and get used to the ‘new habit’ of using ‘mnemonics’ for programming.
Habit determines a lot of our skill levels,but is one of the most difficult things to change!
It seems to be a blend for me, but I am trying to avoid learning syntax structures as these take a lot of time, and don’t actually build the expertise I want. Concepts and project-steps seem to be the most useful.
I think is all about ‘blending’. Also,I believe,what one will learn depends on one’s level of expertise, choice and needs!
For example,take this page of C# programming(Link). There are basically hundreds of different ‘string methods’ in the link. Let’s say,I want to memorize the widely used ‘string methods’ from that page. There could be around 20+ of them and I want to ‘encode’ all of them within one day in my memory. And I can surely do that by using ‘mnemonics’.
However,I can also memorize them without using mnemonics. But to do that,I have to spend a lot of times,even years. Because I am not gonna use the ‘string methods’ all the times,my memory will not encode them well. And that is why,I will have to refer to that link of methods all the times,or have to ask questions of ‘how to manipulate a string in a certain way’ in stackoverflow every now and then or search ‘google’. All this is time consuming and not efficient…
Here is a frequently used string method of C#(and many other languages): Substring(Int32, Int32)
To memorize this method and ‘when/how/why’ to use it,one might not need more than one minute with mnemonic techniques. The C# programmer has to use ‘integer’ for selecting the beginning and ending text! And he has to encode that in his memory. He has to memorize that he cannot use this format “Substring(a,b)”. He must use this integer format “Substring(2,3)”! Once encoded this string method with mnemonics(which is not gonna take more than a minute),the programmer will not easily forget the ‘hows/when/why’,etc of this string method.
I supervise around 60+ staffs of my company. We work for the 'Medical Billing and Coding" sector of U.S. So,our staffs need a very ‘good memory skill’,as there are thousands of ‘codes’(Alpha numeric) in Medical Coding sector of America. We also have to use ‘programming languages’ in our work for the client. And over the years,I have found that the ‘best’ staffs of my company have the ‘finest’ memory. I think,‘memory’ is the first thing that differentiates a skilled(!) employee from a non-skilled(!) one! Some people have ‘naturally good memory’ and they shine in their works. Others need to learn the skill of ‘memorization’. If they do,they could also become very skilled in their work(whatever that work is)!! Just my observation!!