[clug] July Programming SIG: the fourteen principles for new programmers

Hal Ashburner hal.ashburner at gmail.com
Tue Jul 15 13:05:26 GMT 2008

Paul Wayper wrote:
> Hash: SHA1
> Hi everyone,
> Jeff B, Jason Neilsen and I got together on a cold, windy Thursday and 
> sat on
> the couch in the (now bare) training room and talked.  Jason's great 
> idea from
> a couple of days before that was trying to answer the question "what 
> would we
> like new programmers to learn; what would we like to pass on to people
> journeying down this path?"  Here are our thoughts:
> The CLUG PSIG's principles for new programmers to learn:
> 1) 
This may somehow be orthogonal to what you intended, I apologise if it's 
a distraction, but I think advice like this was what I needed when I 
started not so very long ago. In fact I probably still do:

Do it your way. Make your own mistakes. Ignore people telling you you're 
doing it all wrong, you'll want to listen to them when the time comes 
and you want stuff to work better. If you don't want their advice at 
that time you're unlikely to get very good anyway. Be wary talk about 
programming without referring to any code, ideally yours vs a different 
approach. In fact, be wary of talking about writing code rather than 
writing it (the person typing this here very sentence is therefore some 
idiot not writing code). Write code. Rewrite stuff for no reason or just 
to see how it's done. Rewrite 60% of a program you know how to write 
well, but in a different language then dump it when you've got something 
else you want to write. If in doubt, write some code. Do any programming 
problems and puzzles that come along. If someone wants to tell you about 
some method or other, it's time wasted unless you use it to write code. 
Write some more code. Dump whatever you're writing and write something 
else if you get bogged down. Just make sure you're writing code. Why are 
you reading this when you have so much many programs you want to be 
writing right now?

Then the rest will likely follow..?

More information about the linux mailing list