Good & Somewhat Random but Focused Advice for Programmers
First, the non-technical one: Don’t call yourself a programmer, and other career advice, by Patrick from Kalzumeus. Although it does seem to me that some of this advice has changed very recently due to the lack of people in the field (somehow there is somewhat of a mystique about being a programmer right now, don’t you think?), the article is amazing and is filled with great advice. And it’s also filled with very funny observations about academia… Spoiler alert: “(After you’ve escaped the mind-warping miasma of academia, you might rightfully question whether Published In A Journal is really personally or societally significant as opposed to close approximations like Wrote A Blog Post And Showed It To Smart People.)”. Yup, been wondering about that myself.
And this is scary. I wonder whether this is really true? I think that all the developers I know would pass the FizzBuzz test. Now I feel very much tempted to have my students code this in the next lesson… Mmmmmhmmmm…
On the same lines, from the creator of Rails himself, here is a short list of (5) books that help you program better. I think I’m going to order some of those. Probably the Smalltalk Best Practice Patterns. Look, here is an amazing set of slides based on the book to help me make up my mind: “Remember: the purpose of education is to save you from having to think” ROFL!
Yes, 70% of the time is spent on finding the intent of other programmers. And that’s probably because we don’t read enough code, because it’s more fun to just jump ahead at the problem and play with code than to try to figure out how things are done (guilty…). Along those lines, here is a cool article on “Code with Clarity”, where you have a step-by-step deconstruction of a very small function. And somewhat along those lines as well, here is a cool article on cracking gems and reading ruby code.
And finally, lately I have met programmers that fit into two sets: the first set is the linux hacker set. These guys are extremely fluent in all things linux-y and could probably code a whole OS in shell scripting. The second set tends to stay away from the shell like it’s the devil, they love IDEs, and think that man pages are ugly. So here is a little something for the second set: essential command line tools for web developers (and not just web developers). Terribly useful to know your way around a shell, you’ll need it someday.
And I think that’s it for the day. Now on to read & write some code…