Keeping a schedule

Last week I started work on an idea for application. Just a small prototype of the idea really. No tests, no fancy user-interface, just the bare bones of the idea. In typical agile fashion I wrote out some of the basic features that I needed for the prototype as user stories on index cards and then set to work. Then a call from a client came in and before I know it, it’s two days later and I’ve not started work on the prototype.

My problem is that I’m starting client work as it comes in and my own projects are getting done in really small pieces. I am not keeping a daily schedule.

Truth is I haven’t kept a schedule of my work for at least a couple of years now. Not since I worked at a consultancy where you could plan your day most days. There was days where you would have interruptions to your schedule, but as it was customer support calls, you had determine if the customer’s support issue was that important that it had to be resolved there and then. With interruptions like this mounting on daily basis, I abandoned my calendar of work and just did work ad-hoc.

Now though I am more in control of my own time and schedule. I am my own company and I need to schedule work to ensure that client work gets done most days, but I also allow for some time to work on ideas and products.

Scheduling your work in a calendar is a commitment to getting that work done. I have the benefit of having a laptop with an external monitor so I use my laptop as my secondary screen. On here I have my calendar and I leave it open while I am working as a reminder to stay focused on the task I have set myself.

I’m using Apple’s Calendar application and the iCloud service to synchronize my calendar to my phone. This makes it easy for me to schedule stuff in my calendar when I am away from my desk. I use the brilliant Fantastical app to manage my calendar from my phone. It has a great agenda view for upcoming appointments and it has a very easy appointment entry system that means you don’t need to fill in four different fields to make an appointment. It’s smart enough to know that “10am Meeting with client” should be scheduled for 10am.

Scheduling your day and your week is a great way to making a commitment to getting things done. It’s more structured than a to do list, but provides a way of breaking your day down into chunks so that you’re not working on the same thing for hours or days at a time.

Breathing space

When I worked for an ERP consultancy, I would frequently no sooner get my backside at my desk in the morning before the phone would start to ring. Customers looking for support, developers asking for tests to be done and the managing director looking for that new feature for the high profile client of the week. Some days I would simply keep working right from the moment I got to my desk through to home time without a thought about working on the right things. Then I would realize that the day has completely passed by and I’m not even sure if I had done what I originally set out to do that day.

It was at this point that I started giving myself 5 minutes each day of breathing space. At the start of each day I would block out some time to get my day into order. Just a chance to ask myself a couple of questions:

  • Did I leave anything undone from the previous day?
  • Are there any high priority issues that I need to resolve today?

Once I got into the habit of doing this I started to see where my day was going and the progress (or lack of) that I was making. Updates for customers were taking too long, support calls were being left for too long and most days I wasn’t doing the work that I wanted to do.

Once I spotted these recurring issues, I started to clear them off my backlog of work one at a time. Each day I was making this list smaller and smaller. I was starting to see some real progress.

I do this little routine every day now. It’s just a few minutes of my time, but the benefits are worth it. I’ll sit down with my notebook and review the previous day’s work and pull forward any outstanding tasks to today. I’ll then check my master list on TaskPaper and include any work that is scheduled for today or the current week.

Now that I am freelancing and working from home, it’s important that I continually measure my progress and ensure that I am always making progress on projects and products but more importantly on client work. I need to deliver good results for my clients and ensure they are getting value for money.

Having this little moment of breathing space is a great way to start the day. It’s just a few minutes of time reflecting on what you need to get done today, but it is time well spent.

RSS is not dead

While trawling through my RSS feeds looking for blogs to unsubscribe from, I came across Andrew Chen’s blog post about his decision to completely remove the RSS feed from his site.

As of today, I’ve removed the links the RSS feeds on this blog, and ultimately will phase them out completely in favor of email.

RSS I quit you.. by Andrew Chen

Not a wise decision in my eyes and here’s why.

Your inbox isn’t an RSS reader

Using email to subscribe to web sites only works for a handful of blogs. You could comfortably subscribe to about five blogs and you would be able to manange reading a few emails a week from these blogs if they were not to frequent. Doing this for anything in the double digits number of blogs is a bad idea.

I don’t want to flood my inbox with tons of emails from different blogs. Thats why I use RSS. That’s why I use a RSS reader. I subscribe to the sites that I want to follow and then I can batch my reading of those sites to a time that suits me.

It’s convenient and it works.

RSS isn’t dead

Many people are starting to wonder if Google Feedburner will be next for the chop from Google but even if it was to be shut down, that’s no indication to say that RSS is dying or dead. All it says is that Google isn’t interested in dealing with a an RSS product.

RSS is alive and well everywhere. You can still find RSS feeds for millions of blogs and websites and Feedly are doing a great job of bringing over hundreds of people from Google Reader to their feed reading service. In the last few years there have a number of great RSS feed readers released on tablets and smartphones so that you read on the go.

Completely removing the RSS feed from your blog is a bad idea. After reading Andrew’s post I found another website that I can unsubscribe from.

Sorry Andrew.

Ideas breed more ideas

I had an idea for an application, so I stuck it into Journalong for later. Two seconds after saving it, I had another idea for an application. Put that in too.

I find this happens quite a lot. Ideas seem to breed more ideas in a short period of time and usually the ideas have something in common. In this case the applications I thought about building were very similar but for different audiences.

Whether I will do anything with them is another matter. The next step will be to flesh them out a bit more with a mind map and see if there is potential in the idea and ask myself some questions.

  • Do I want to build this thing?
  • Will I benefit from building it?
  • Can I monetize this idea? (I ask myself this a lot these days)

If I can answer yes to all these questions, I’ll start work on it or schedule it in for later if I’m currently busy. Always having a good side project to work on is a great way to keep on learning.

If I answer no to any of these the idea gets scrapped there and then.

This little workflow has worked well for me in the past. Weeding out the good ideas from the bad ideas means I spend less time on an idea that isn’t going to benefit me in some way.

The advantage of plain text

Today I spent an hour getting a script in place that will convert the Wordpress backup of my old Squarespace blog to Markdown posts so that I can pull them into my Octopress blog.

The script itself is almost there but one thing I noticed was how inherently easy it is to work with plain text.

For years I’ve had the chance of working with a number of different file formats. Some good, some bad. The good ones though were always the formats that contained little or no markup. Not only do they contain less markup, they also require simpler tools to work with them.

Plain text has that advantage.

One thing I will consider in the future when signing up to products and services on the web is how simple the data format is when I need to export data from that service. I’d rather not be wrestling with a difficult to work with file format when simpler formats already exists.

To specialise or not?

My career has been quite varied when you look at the different sectors I’ve worked in. NHS, risk management, payroll, retail and technology repair and recycle. I’ve worked in a number of other different sectors as an ERP developer as well but largely these were for small periods of time where you rarely get a chance find out a lot about the domain of the business.

Since I started freelancing at the start of the year, I’ve been working largely on public health and information websites for NHS related organisations. Not only do I get to work with my favourite development tools and languages every day but I also get to work in my favourite domain. Health.

I don’t know what the attraction is to health but I find it an interesting domain to work in. Providing tools for health organisations to share information with their patients so that they can lead healthier lives is quite rewarding in my view. Over the last couple of moths I’ve even found myself reading NHS related publications to broaden my knowledge of the work I am doing at the moment. I’ve never done that for any job that I to have had.

It’s got me thinking about whether its worth specialising in health contracts or should I stick to working in different domains to keep things fresh? Working in different domains sure would broaden my experience and there might be another sector that I would be interested in. However health is already such a varied domain that could provide some diversity.

I suppose the real question is this. Which one will allow a steady income of work for the near future?

Putting up a breakwater

It’s been a while since I went through all the incoming data I receive and did some house keeping on them. Over the last few weeks I’ve been increasingly adding more and more waves of content that come to me. Anything related to freelancing invariably gets added, but I’m now at the stage where I’ve spread myself to thin. There’s podcasts I haven’t listened to in the couple of weeks, books sitting on my reading list that haven’t been bought, and RSS feeds that I need to unsubscribe from.

It’s time to put up a breakwater.

Books

One technical book. One non-technical book.

That’s the rule I employed a few years ago, but in the last year it’s been thrown out the window and I’ve only been reading one book every few months. Part of the reason for this is that I’ve simply been distracted by other things. Home life, career, finances, programming, gaming, movies and other things have meant that I just haven’t read as much. This isn’t about limiting what I’m reading, but having more time to read by limiting other distractions.

Podcasts

Since I started freelancing I’ve been subscribed to a number of podcasts that focus on this topic and on the Ruby programming language. Truth be told, I haven’t listened to anything on this topic in the last month. It’s merely due to the length of the podcasts themselves. At over an hour each, I find it too long to listen to these. I’ll be unsubscribing to all podcasts with the exception of three. I haven’t decided which three yet, but I need to put a limit in place here if I’m to get any use out of them.

RSS Feeds

I’m currently sitting at just over one hundred RSS feeds in Feedly. Quite a lot if you ask me. My aim is to get this down to 50. Maybe two or three RSS feeds for each topic and selection of my favourites to take it to 50. I could never completely stop using RSS feeds. I find it such a convenient way of reading good content from my favourite blogs.

Half the feeds I simply skip over these days as I’ve found that some blogs just aren’t that active anymore.

Subscriptions

This is paid subscriptions to things such as Railscasts or Caesura Letters.

I’ve got a couple of subscriptions in here that I could do without for the moment. Cutting the subscriptions back that I don’t need at the moment would give me back time to be doing other things.

One thing I have found though is that the email subscriptions I have can largely replace some of the blogs that I am following. Although this does mean more emails hitting my inbox, but my email is quite healthy these days with everything labeled and routed to the appropriate folder when it arrives in my inbox.

I want to make things

Rather than digesting, I need to be producing. Whether it’s a service, product, application or some writing, I’d much rather be making things than reading about what others are doing. In the past I’ve been guilty of worrying too much about what others think and maybe distracted myself with a dig into what’s in my RSS feeds that day. Maybe it’s time to get over that and simply produce something that will intentionally make people think.

Do you blog for you or your readers?

Content is king. I hear this a lot when people refer to what drives the popularity of their blog. Which is okay when your blog is targeted as a specific audience, but does the same rule apply when your blog is personal?

Let me re-phrase that. Is your blog for you or your readers?

I’ve been very much of the mind that my blog has an audience. Not a specific audience but an audience all the same. My audience likes what I write. Since moving to Octopress though, I have been struggling about what to do with the content of my tumblelog. My heart says to include all the content here, but my head says no.

My tumblelog is a mixed bag of stuff including fixies, tech news and an assortment of links to my favourite posts on the blogs that I like to read. I like posting these things as it’s what I like, but I’d still like to continue with a daily essay style post.

One way to maintain two audiences but in the same blog is to provide another RSS feed for readers to subscribe to. One feed will default to only the daily posts that I write while another feed will provide the full assortment of posts to enjoy. This way I hope to blog for myself but also keep the interest of readers in mind by not polluting their feed with posts they don’t want to read.

If you continue to enjoy the daily posting routine of myself then stick with the current RSS feed. If you want something more varied then why not think about subscribing to the full assortment of stuff I’ll be posting? The new feed will be ready early next week and of course I’ll be posting the details here.

A little idea for monitoring RSS feeds

The loss of Google Reader as an RSS reader is a great shame but one thing that I am definitely going to miss is the trends page of Google Reader. This page provided data on what you’ve been reading and when you were reading it. Not only that but you could see what blogs you are following are active and which are not.

I use the last feature as a way of unsubscribing from blogs that are no longer active. Every month I look back to see which blogs were not active over the last three months and unsubscribe from them.

So now that Google Reader is being killed off, what do I do about the tracking of the blogs that I follow?

Due to the lack of products that I could find that do this, I thought about rolling my own RSS watch list so that I could see which blogs were not active over a given time period.

The idea is simple. You upload your OPML file of your RSS feeds and the watch list will monitor your feeds on a daily basis always checking to see when content on each blog feed was last posted. Alerts are emailed to you when a feed stops posting after a number of days that you specify.

A simple idea and one that I hope that I can build in the next few weeks.

Reviewing the master list

It’s become clear to me that there’s far too much stuff on my master list. It’s things that I want to do, but I’ve started reaching too far forward into the future and starting noting stuff down that I want to do but I won’t be able to do for at least six months.

Speculating on what I should be doing in months is no good. I need to see a short term list of things that I can be working on now rather than later. My master list is also slightly unbalanced.

One thing I can do about the issue of the number of items in my master list is to adopt an idea from Kanban boards. In a previous role in an agile team, we kept a backlog of development cards that represented application changes that were next in line to be worked on.

In order to keep my master list lean but still keep a note of stuff for the future, I’m going to keep a separate backlog file that contains actions for projects that I want to do in the future but perhaps don’t have the time in the near future. Doing this and reviewing it once a month will also mean that I can just forget about my backlog until I have cleared everything from my master list.