↓ Skip to Content
Start of content

How to measure my productivity?

I often read - and write - about productivity, but what am I actually thinking of when the word "productivity" comes up? How should I measure how productive I'm being?

My current method is really simple: I count my hours billed. As long as I'm doing enough work, I class my day as productive.

There are a whole bunch of problems with this approach:

  1. It prioritizes work over everything else.
  2. Some days are filled with fixing bugs across a number of different projects. This adds up to more billed time, so I earn more than if I'd concentrated on a single project.
  3. It doesn't take organizational work into account.
  4. It feels like I'm trying to extract as much money out of myself as possible. If I have the choice between working through the evening or relaxing, I'll often pick work because it's the "productive" thing to do.

So it's not ideal. What else could I use?

Count the number of TODO items checked completed
This one sounds good, but it has issues. It's easy to prioritize small, less-important tasks to bump up the numbers.
Velocity
This comes from extreme programming and involves counting how many story points have been completed during a sprint. This would probably involve me summing the estimated time of tasks completed during a week, and then graphing them as the year goes on.
Some kind of points system
I did this before using The Printable CEO. It helped at the time, but it still has the habit of skewing things depending on how points are assigned. I also spent a little too much time on tweaking how everything was set up.
Some kind of calculated score
This would be something that takes priority, size, and earliness (or lateness) of completion into account. I have a feeling I'd end up spending too much time tweaking the calculation.

Out of all of these I prefer the velocity calculation. But it's still missing a key part: what about my goals?

What I really want to be checking is "am I doing enough to move me closer to each goal". I don't have to work on every goal every day, but I also don't want long periods where I'm ignoring them.

I think I'll end up going with a mix of velocity, regular check-ins, and some magic ingredient that I haven't quite figured out yet. None of them have the external reward that comes from completing billed work, so maybe I need to start with some kind of reward system.


Goal ideas for 2021

One of my tasks from yesterday's GHD post was to start planning my 2021 goals. Although I don't have any concrete plans yet, I wanted to start thinking of ideas so they can stew in my brain for a while. Here are some of the goals I'm considering:

Create a screencast
This is something I wanted to do in July, but it turned out to be more complicated than I originally thought. I don't see myself creating more than one or two of these, but I'd like to try it out.
Enter a game jam
Tiny Tactics is the last game I tried to make. It didn't go well. The last playable game I made was Mini Shinobi all the way back in January of 2017. I'd like to try again in 2021, this time with a big neon sign above my desk saying "KEEP IT SIMPLE!" so I don't try to make something giant in a month.
Write a piece of software for the Atari ST
I got extremely nostalgic when looking at my nineties development setup, so I'd love to create something for the ST. Like the previous goal, I'll need to remind myself to keep it simple.
Release a game and earn at least $1 from it
This is a tougher one, but I think it's possible. There are a million more games available these days, but there are also plenty of places to sell them. I think $1 is doable.
Learn to throw a football
Hey, not all goals have to be huge!
Improve my marathon time
I ran my first marathon this year, but I was disappointed at how long it took me. I'm never going to be setting records, and I'm absolutely fine with that, but I'd like to finish in under 5 hours next time.

It feels good to be coming up with ideas, but it feels really weird to be thinking about 2021.


Groundhog Day Resolutions - November 2020

October is now a distant memory. Let's see how it went.

October's Primary Goals

1. Publish version 0.5 of Writing PHP with Emacs

Version 0.5 is now available for purchase, or as a free update if you already own a copy of the book. I'm still working on the Serenata section of the chapter, but I didn't want to hold everything else up until that was finished.

2. Start blogging every day

I am just over halfway through my 30 days of blogging goal. It's going okay.

3. Complete another secondary goal

Writing took up most of my spare time so I missed out on this one. Must try harder.

Primary Goals for November

1. Finish my 30 days of blogging trial

Writing every day has been challenging, but I've been publishing something every day. I still have some ideas I want to write about and I think I can make the full 30 posts.

2. Start planning my 2021 goals

Last year I left it far too late to set goals, so I ended up throwing in things I wasn't 100% sure I wanted to do. Covid restrictions also put a damper on a lot of the goals I wanted to do, either through cancellation (my marathon and half marathon), or by making goals not so fun (lock myself in my office for a week? Kinda already doing that).

For 2021 I want to mix some smaller, more practice-oriented goals into my list.

I'm keeping things light in November and focusing on getting important things done well, instead of trying to scrape together my minor goals. October involved a lot more writing than I'm used to, and there are still 15 days of writing left. I don't expect I'll feel like doing much else until December.


The empty page

I've always found a blank canvas to be completely overwhelming. What should I create? What if I make a mistake and ruin it? What if I create something that isn't any good?

This is something I'm running into again, but in a slightly different way.

I recently discovered agtools, a framework for building ST game prototypes. I grew up creating software for the ST, but I never had the ability to make what was in my head. I feel like I've learnt a few tricks since then, so I was excited to try out building something new.

But I still don't have the ability to make what's in my head.

Instead of being scared of this huge blank canvas, my mind is racing with the possibilities of what I could fill it with. But that first brush stroke ultimately leads to disappointment, and what I create looks nothing like I wanted.

When I was younger I loved buying sketchbooks and artist's pencils. They always had fantastic illustrations on the front, so surely if I bought them I'd be able to do the same. Alas, these supplies did not come with any spare talent.

Sometimes I worry that I'm cursed with Philip J Fry's stupid fingers.

But the truth is that I'm trying to run before I can walk. I would never try to lift heavy weights without working up to it, but for some reason I think I can pick up a set of tools and bust out a new game without trying something small first.

I think this is the perfect use-case for deliberate practice. My mind always goes straight to creating something ridiculously large instead of focusing on something small and attainable. I'll get the idea for a game, and before long it's mutated into an epic 12 part adventure that I could never realistically create.

So in the end nothing gets done. The idea remains a collection of thoughts floating in the ether.

But if I focused on creating something small - and I do mean small - I could actually finish it. Framing it as a practice project gives it the structure it needs without the pressure to create something great. Not every idea will be a winner, and that's fine.

It's okay to fill the empty page with scribbles.


Corralling my open loops

An Open Loop is anything pulling at your attention that doesn't belong where it is, the way it is.

Getting Things Done

Open loops have been a thorn in my side since I restarted using GTD last year. I have two main issues right now:

  1. There are things I want to do that aren't in my system
  2. There are things in my system that I don't do in time (or at all)

Every one of these open loops nibbles away at my attention. For example, instead of concentrating on writing this post, I'm thinking about how I need to send some emails, submit an invoice, and whether or not I'm due for an eye test, amongst a sea of other things. It's not conducive to being productive.

Let's start with #1 first.

1. Things that aren't in my system

This is probably the easiest one to solve: I need to get better at capturing ideas and then processing them.

Right now there are a dozen different ideas floating around my head. Some of those things I need to do somewhat urgently, others will go straight into my someday/maybe list.

The big issue here is that they're not stored anywhere. I'm usually pretty good at capturing things throughout the day, but I'm not so diligent about performing full mind dumps on a regular basis. I should be doing these at the start of my weekly review, but I tend to skip them as my mind is in "process" mode instead of "create" mode.

Solution - schedule time to perform a full mind dump, separate from my weekly review.

2. Things that are in my system, but don't get done

Most of my day is taken up with work-related activities: writing emails, fixing bugs, and working on existing projects. Concentrating entirely on work projects doesn't give me much time to go through my next actions list, and by the time the evening rolls around I'd rather not be staring at the computer screen for another 4 hours.

All of this results in my list getting longer as the week goes on, which in turn makes me reluctant to add new things to it. Not everything on my next actions list is important or urgent, but it still irks me to see the same tasks there week after week.

In the past I've taken a day off work to run through my next actions list instead. This always feels a little icky to me; it means I'm not balancing things as well as I want to, and I always feel guilty about not working (which is absolutely unhealthy and something I need to work on). A better solution would be to work on non-work tasks every day instead of waiting for my list to reach breaking point.

Solution - revert to using a daily schedule, and make time during each day to work on things from my "next actions" list.

I'll be testing both of these solutions out for the next month or so. We'll see how it goes.