You never "learn to program" and then just kick back and rest on your laurels. If you do, technology will soon overtake you. Good programmers are always learning.
Exactly. Programming is like being a doctor or a lawyer where the right term in those fields is to say you "practice (law|medicine)." We programmers should really get together and adopt that terminology.
While true I think it's important to really know a technology before moving on. You can do fine only learning one new and popular stack (language, popular frameworks / API's, debugger, etc) every ten years. Now days, if you really know, Java, Ruby, Python, or C#. Net it's not hard to get a decent job, but there is little need to know all of them.
The trailing edge of the programming wold moves slowly so you have a few years to move onto the next trend before you become obsolete. Often you will make less money during those transition periods, but it's still worth.
PS: I only point this out because compared to the average American you can make a great living programming as a 9-5 job. You can step above that, but it's not required.
I wonder how many programmers really know about lisp and other "old technologies". Perhaps, programmers not only need to stay on the cutting edge but also learn the "old way"?
Exactly. Programming is like being a doctor or a lawyer where the right term in those fields is to say you "practice (law|medicine)." We programmers should really get together and adopt that terminology.