Study Days: Keeping on Top of the New Shiny

One of the biggest dangers in this industry is getting left behind as the tools evolve very quickly. For me, working alone or as the most senior person on a project in most cases, this becomes doubly hard as there's nobody in my office to show me a new trick or share an idea that he or she learned in a previous job. So how do I deal with this?

I take "study days".

Study Days

A study day is a day blocked into my calendar where my only task for the day is to play. Sometimes I'm looking at a new API that I'm interested in using, sometimes I'll be using the time to spike on a new tool or technique to use for the next project. I had a phase of study days where the result was an entire product: Bitestats.com is a service that links to your google analytics data and emails you a pretty one-page report on the first of the month. I mostly built this because I needed it, but I challenged myself to go beyond the technology solution and also figure out how to build a product.

My study days are a repeating schedule in my calendar. I move them around to make room for other commitments, but I consider them just as set in stone as if I had scheduled that day to work on an article with a fixed deadline. Today is a study day, and I'm bending the rules a little by blogging, but I do often write up little case studies of what I was doing, so that I can refer back to these posts later on (or refer other people to them) if the thing I was looking at turns out to be useful. So far this morning I've fiddled with rst2pdf, generated pygments styles from a vim colorscheme, debugged python and ended up upgrading pygments before discovering that while rst2pdf offers pygments themes, they're in some other format and not actually coming from pygments itself - and it's barely 11am :)

What are the business benefits of me burning a day fiddling with rst, pygments, and whatever else (actually I'd like to write my first phing plugin this afternoon, we'll see how that works out)? Well, nothing measurable. But when I'm working on talks and training I can sometimes generate 200-300 slides every week, so a good toolchain here will reap significant rewards for my business over a longer period.

If I need to pick up something completely new, often I'll just buy a book or find a tutorial online, and use the time to work through it and take my own angle on it. As developers, we are becoming increasingly polyglot, using deployment tools in ruby, testing tools in node, everything else is python, and in theory I write PHP for a living. We shouldn't be afraid of picking up something new but this approach of taking a block of time with no commercial pressures means that I have a safe space to try things, to fail, to seek help, or to just chalk it up to experience and move on.

Study days also bring something less tangible into my professional life. I'm a developer because I love technology and I love to solve problems. I enjoy coding and sometimes there are too many articles and training courses to write, and not enough code. I'm freelance which is isolating and can sometimes magnify my own insecurities. The blocked-out study days give me a moment to geek out, to avoid the fatigue of always doing the same-old, and to return to my desk tomorrow refreshed.

Just Set Aside A Little Time

It sounds so easy, but as with so many things that you should "just" do, this is hard. Study days get lost when my schedule is busy enough that there isn't time to sleep. Some of them achieve me exactly nothing as I just can't get going with whatever I thought I needed to do. For me, putting a repeating appointment in my calendar (a full Thursday on a 6-week repeating cycle) has mostly worked. This time is my investment in my future, and I believe in that.

3 thoughts on “Study Days: Keeping on Top of the New Shiny

  1. Great idea. This is the kind of thing that, for me, always falls into the "I'll do it in my spare time" category, which of course has a tendency to get filled up with other more mundane/required tasks such as life admin.

    I'm interested to know - how do you plan what you're going to tackle on study days? Is it an ever-growing list of items that you want to play with, that you tackle in order, or just whatever you fancy? and do you feel the need to structure the day itself, much as you might with a normal working day?

    • Rich - it depends. If there's something that I need to look at which is new sometimes I'll work on that. I do have a list also on a whiteboard in my office so that I am never wasting this precious research time. I'm not at all strict about it with myself though

  2. Hi Lorna. I do something similar. I'm a full time employed web dev with a family, so finding free time to learn new stuff is difficult for me (40 hr work week + 'family time'). I have scheduled one evening a week as 'my time' (usually Mondays) and try as much as possible to stick to it. It's all about keeping a discipline and getting the family to respect it.

Leave a Reply

Please use [code] and [/code] around any source code you wish to share.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>