Red Squirrel's Nuts

I constantly forget where I bury my nuts, but at least they sometimes grow trees.

Nov 12 2011

Autodidactic Programmers Q&A

My friend Dale introduced me to an aspiring self-taught programmer. This eager learner had a few questions for me, so I figured I’d blog my response.

What types of projects are best for someone with little experience?

Little projects. Public-facing projects. Projects that scratch your own itch.

My first project was prescribed to me by some very experienced guys who wanted to see how quickly I could learn. I was hacking Perl CGI’s on a Linux box owned by the startup I was working for as an HTML/content editor. The thrill of that project was surprising those guys with what I could do, despite the contrived nature of the project.

My first truly thrilling project was PGAS, a Perl Golf Administration System. Yes, that’s right. You can see the remnants of this interesting time of my career at http://perlgolf.sourceforge.net. I still remember the amazing feeling of knowing that dozens, and hundreds of people from all over the globe were using my software to have fun, compete, and learn more about Perl. It was just a humble set of Perl scripts and a MySQL database, but it was a great learning experience on so many levels.

What resources or tools or books did you find most helpful when you were getting started?

Short, simple, and practical. Tiny, theory-less bites are key. Perl and CGI for the World Wide Web was the book that got me over the hump back in 2000. Then I dug into heavier books about Perl.

Nowadays, I recommend people take a look at Ruby. Give it a try.

What were the one or two biggest wastes of time?

The biggest waste of time was training courses. The quality of these 2-4 day courses was extremely variable. Sometimes they were great, like when I got to pair with Micah for a week. But most of the time, they were complete wastes of time. With no formal training, I felt compelled to go to as many training classes as I could. That time would have been better spent taking the week off and working on side projects. Choose training courses wisely.

Thankfully, I didn’t have any other big wastes of time. I’ve never had any patience for being blocked or distracted, mostly because I always felt like I needed to catch-up to my peers. I absolutely never shave yaks.


Comments (View)
blog comments powered by Disqus
Page 1 of 1