Upgrading Development Skills

It’s funny what happens to your skills when you work for years on one main type of project, with one main toolset. You get really good, and super fast at doing that thing. However, your skills in the greater scope of your industry start to get out of date.

And what if you have scaled back your time for professional tasks, maybe due to a second job, or having kids, or health issues? The problem of skill stagnation gets worse. Then add a work-from-home situation with less time for interacting with peers and, well, you can guess. You become a dinosaur in your industry.

What? No! Never!!

And so I find myself at an alarming but exciting time.

Refreshing and keeping your skills up to date is a complex process. There are so many ways to go about it. However one thing is simple – cognitive science tells us we get better at what we do and think about the most. This means, practice and keep exposing yourself to topics you want to master. It’s not so much about which path you choose to learn, but about immersing yourself in the topic in whatever way holds your attention.

Here are some things I’ve been doing to upgrade and strengthen my development skills:

  • Online courses. There are a variety of sites that offer online courses on development topics. Lynda.com is one that I have my eye on, and CodeSchool.com is the one I’m currently enrolled in. I like the tone of the videos (not dry) followed by hands on examples to cement the knowledge. Working through a bunch of courses on front-end JS frameworks and technologies.
  • Industry publications. If you haven’t already, buy a subscription to the professional magazine for your industry/language/framework/stack of choice. If you freelance or own a business, the expense can be written off. I subscribed to PHP[architect] starting with the electronic copies, but am switching to the printed editions because it’s nice to get off a screen and hold something in my hand for a change. A publication will give you a vetted range of topics which gives you a taste of things you might want to learn more about. It also keeps you up on what’s happening in your industry.
  • Podcasts. It’s hard to overstate the value of an audio podcast you can listen to in your off-time. I’m currently working through episodes of The PHP Roundtable when I’m doing laundry, dishes, going for walks, etc. It’s nice to hear voices, and get the tone about various topics.
  • Local usergroups. I joined Hackforge, a local maker-space / tech-accelerator / club that does talks, classes, and casual meet-ups about all kinds of tech topics. So far it’s been a great networking opportunity, and a refreshing chance to socialize with like-minds. I’ve also learned quite a bit from talks and seminars. If your city has one – join!
  • Articles. I put this one last because I find that searching online for articles to read is a very haphazard way to learn. It’s also hard to know how reliable what you’re reading is, or how out of date an article might be. Personally I find that I’ll look up articles once a topic has piqued my interest from one of the previous sources.

For me, a specific curriculum to follow is very helpful. This is why I have a task board (I use Trello), and created specific goals of things I want to learn, publications I want to read, and courses I want to take. I’ve mapped out the skills I want to learn, and the best places to do so. It’s created a bit of a back-to-school feeling which I like, and which enforces a level of discipline which is helpful.

No matter what method of learning works for you, the important thing is to keep at it. Gone are the days when people learned a skill in school or even a trade as an apprentice, and then performed that job for the rest of their lives without learning new skills, new tools, or new techniques. Make learning a part of your career and work it into your life regularly, with a variety of sources to keep it fresh and interesting.

What are you learning these days, and how? Tell me about it in the comments!