If You’re Going To Use That Time on the Road, Here’s How

So you’re on the road and have some time on your hands. You decide to buff your skills or do some research or work on a demo project. Here’s how you might go about it.

Work on a certification: There are a ton of different certifications you can earn and many of them involve online learning. In-person classes may be more suited to the subject matter. When I was studying Agile and Scrum I took a purely online PMI-ACP course but the various Scrum certification classes involved classroom instruction and interaction. The Six Sigma instruction was all online and I did both to prepare for my PMP exam. Whatever form your preparation takes you can certainly fill your time with online study or review of class materials.

Take an online course: I won’t even try to list them all nor try to evaluate their strengths and weaknesses. I’ve done a little bit of that elsewhere and the Internet is full of such discussions. The important thing is that you can get the basics from anywhere but to get really good at something requires a lot of work. I’m assuming that you’re already a working practitioner who knows what it takes to round out solid production code that works, looks good, and makes your customers happy. It’s that experience that tells you how deep you have to go in studying a new language or technique. Courses give you some kind of a framework but to supplement that you need a project, possibly some books (try Safaribooks.com), and to dig around on the web.

Work through a book: Speaking of Safaribooks.com I taught myself the basics of Java by working through every exercise in the book, Learning Java, 4th Edition, by Patrick Niemeyer and Daniel Leuck, in both the Eclipse and IntelliJ IDEA environments. Studying both of those environments was instructive by itself and that book also provided an introduction to the Netbeans environment. I worked through another book on functional programming, Functional Programming in Java, by Venkat Subramaniam. Over the years I’ve purchased and worked through stacks of books about Pascal, C, C++, and specific applications. The process works as well with physical books as electronic ones.

Learn a new program: There are tons of programs that allow you to do almost anything. Most practitioners probably pick up utilities here and there without even thinking about it. Those that allow you to produce instructional content might be of particular interest. I’ve heard terrific things about Camtasia Studio though I’ve found I can do most of that with Roxio Creator NXT Pro for a much lower price. There are many, many classes of capture, editing, and creation tools you can learn.

Expand a skill you’re already using: Poke around the web to see what people have to say about things you’ve already done, especially things you’ve done recently. There are many opinions about how things can and should be done and a lot of advice, arguments, how-tos, and examples. If you don’t see a way to do something better you might offer to share what you’ve learned, and you will almost certainly learn what some of the alternatives are. You may also gain some insight into industry trends that may shape the projects you work on and the tools you use. Reading about those might allow you to get ahead of the curve in some area.

Complete a project of your own: I’ve written a lot of programs and tools over the years. Most of them were for work (or school, though those were invariably smaller) but a couple were for my own edification. You might create a game or a necessary utility to get more practice with a language or framework you’re already using, or you might reproduce a previous capability in a new language. For example I’m currently rewriting an old 3D animation to get comfortable with Javascript and the HTML Canvas element. Translating to Javascript from Pascal/Delphi is a little strange but it’s giving me good insight into how to handle data types, parameters, and browser debugging work and it’s helping to build my overall confidence with that loosely typed language. Given the structure of the language and its syntax it doesn’t feel like three-dimensional arrays will work right but experimentation has shown that they do, and that defining and initializing them is a nontrivial exercise.

Learn a new framework or API: A recent online course walked me through the basics of the Google Maps and Twitter web APIs. I have friends that have leveraged the Google Maps API in interesting ways and I’m sure there are a bunch of them out there. Taking a few hours or a few days to buff up something simple is interesting, informative, and good practice.

As your friends what they think is interesting and what they wish they knew more about: Throw the question out to your friends on Facebook, your connections on LinkedIn, or the users on your favorite forum. If you discover something interesting you might be able to help out someone you like–and generate possible opportunities.

Check out programming forums: Dream In Code, Reddit Daily Programming Challenges, and of course, Stack Overflow are always a good source for interesting things to try.

Once you’ve done even a little of any of these options you can find yourself with more things to try than you’ll ever have time for. You obviously want to choose activities that are most useful to you, your employer, or your customers, but you should never lack for ideas after even the briefest consideration.

What have you tried?

This entry was posted in Software and tagged , , , . Bookmark the permalink.

Leave a Reply