I’ve been realizing slowly that to write good code, you don’t just have to practice a lot. You also have to regularly read good code. Most people read articles and frequent StackOverflow to solve their own problems, which is great. But I think reading all sorts of code, whether related or unrelated to your current work, is a really fantastic exercise in expanding your skillset.
The iPad can be a good fit for this type of learning, because it’s really easy to browse other people’s code quickly and conveniently. I just downloaded the free app iGist, which is a way to browse small snippets of code that you and/or other people have written (or “gists”). If you have a github account (also free!), you can log in to this app and immediately see all incoming gists along with your favorites. A problem that I run into a lot is that I’ll see a really cool piece of code, but don’t think to bookmark it or save its location in any way. These days, gists are getting more popular, and they make it easy to bookmark and remember code in an organized fashion. With this app, viewing all of those gists is very easy.
Also, each gist has a “forking” option, which allows you to modify the gist yourself. This can be really good for thinking about problem solving, and finding better solutions than those presented to you.
Ok, so reading is pretty neat, but they say a picture is worth a thousand words. Well, what about a video of code being written and talked about? Peepcode is a wonderful online service that offers screencasts on a plethora of web development topics. Topics range from using github, to learning CoffeeScript, to developing specific products, step-by-step. With 85 of these screencasts, it’s really easy to learn new techniques. The movies are downloaded along with accompanying code, so once you have a screencast, it’s yours foever. This is important, because PeepCode is not a free service. There is a one-time fee of $55 for five screencasts, $99 for ten, or $199 for a year of unlimited downloads. It may seem pricey, but the amount of knowledge available is stunning. I downloaded all of the screencasts and code, which will provide months of learning. The best part is that once you have the video, you don’t need access to the internet, making these screencasts invaluable for long car rides and other such things. The narration is clear and concise (though the voice can get a little annoying), and I have already learned quite a bit from these screencasts.
If you’re serious about learning a variety of coding methodologies, these two tools will probably help you a great deal. In parting, I’d like to leave you with a useful alias.
alias sshtufts=’ssh firstname.lastname@example.org’ – where flast01 is your UTLN. Makes sshing a breeze. Alternatively, if you only ssh into Tufts, type !ssh to execute the last instance of an ssh. This technique works with any command.