Thanks all for your kind words and cogent thoughts on yesterday's post. I'd like to sum up some of the wisdom in the comments:
My advice for novice programmers was
- Don't be a cargo cultist -- understand the meaning and purpose of every line of code before you try to change it.
- Understand abstraction, and use it appropriately.
To that, you guys add:
- learn to use a debugger to step through the code and find problems
- learn to NOT use a debugger -- learn to build programs that are debuggable by reading and understanding them
- reading code is harder than writing it -- read lots of code
- sound methodology is important -- you need to know that you got it right
- object models carry semantics too -- learn their semantics
- realize that mastery of any skill doesn't take ten days, it takes ten years
Good advice!
I'd also like to respond to some of the points raised in the comments. I'll do that over the next couple of days.
Comment Notification
If you would like to receive an email when updates are made to this post, please register here
Subscribe to this post's comments using
About Eric Lippert
Eric Lippert is a senior developer on the Microsoft C# compiler team. Before that he worked on the framework of Visual Studio Tools For Office. Before that, he worked on the compilers, runtimes and tools for VBScript, JScript, Windows Script Host and other Microsoft Scripting technologies. He lives in Seattle and spends his free time editing books about programming languages, playing the piano, and trying to keep his tiny sailboat upright in Puget Sound.