Balance
Balance isn't something that comes up a lot when people are writing about productivity. Once you are aware of it though, it's a fundamental lesson to learn if you want keep focused and make progress.
I'm like a kid in a candy shop when I have a new idea. I tend to drop just about everything I'm working on new idea for a night or two and then get back to what I was doing before. Not a good practice to follow. When you stop working on something else and spend some time with an idea, it can take over. The idea snowballs and then before you know it, you've grand plans for it and it overtakes everything else you are doing. Inevitably my workload becomes so much that I need to try and prioritise and sort my work into a schedule that can't feasibly accommodate this new idea. What to do?
Well the answer is simple. From now on for every project I take on I need to drop something else. Realistically I can only manage one side project at a time on top of freelancing and family life. When I take on too much everything else suffers. It's a balancing act.
The monthly themes I am doing just now are good for balancing work as it means that in one month I can focus on a single idea or product for that time. Since the start of the year I've used broad themes to cover everything but this month I'll be focusing on a specific project. It's the first of four projects that I'll be working on this year. The goal is to clear the backlog of tasks for that project so that it can be left alone for another few months while I bring another few projects along.
This also means that I can schedule these ideas into the year so that I know what work lies ahead in my schedule. Not only is this good for scheduling purposes but the idea also gets a chance to incubate for a few weeks or months before I start on it. By then I might have discounted the idea will then pick something else to work on.
Fixie Friday - Mars Cycles Track

via FGGT
Complicated Software
Complicated software looks like hard work, but does that make simple software easier. I would say no. In fact I think it's harder to produce simpler software than complicated software.
At the weekend I got into a conversation with my Dad about complicated software. My Dad is a draughtsman. He puts together the drawings for piping installations such as refineries and oil rigs. He uses software on a daily basis for his piping designs, but it wasn't always done this way. When he started in his career nearly 40 years ago there wasn't a computer to be found near the desk of any draughtsman. Everything was done with pen and paper. Simple tools by today's new tool of choice, CAD software.
Over the last couple of decades the mouse has replaced the pencil as the draughtsman's main tool for work. In this time the market for CAD software has boomed and with it come some of the most complex software I have ever heard of. My Dad has made the gradual change to CAD over the years through a number of training programmes and plenty of on the job experience. His biggest bug bear though is the software. In his opinion it is too complicated.
For over a decade now I've heard many complaints against software being too complicated. Complicated software isn't the root of the problem though. Software starts with people and what those people want. These are the initial requirements of software, what we expect it to do. Given enough time, and no constraints, any software product can go from simple and easy to use to bloated and complicated. In the past it was thought that a software product rich in features was the way to sell it. What happens over time though is that the product continually grows and grows as it caters to more and more requests until it becomes just too big and complicated to use. Those original features that made the software a hit have become bogged down by other quick hit features that only cater to a small subset of users.
We software developers are a bit older and wiser now though and we've learned a lot from those first days of commercial software. The main thing I think many software developers have learned is that it is okay to say no to a request. This is perhaps the hardest thing to do, we want our software to be used by many, but that doesn't mean catering to every request. Saying no to nine features, but yes to one is our way of saying that we care about the software we produce. If a feature doesn't fall within the general mantra of the software then we should say no to it. Yes, we might gain a few more users, but in turn we could end up annoying half of our existing users.
The thought of complicated software has made me re-assess the projects that I am working on and how they can be simplified for the people that use them on a daily basis. It's also made me question requests from clients for changes to their products. I could simply take the money and add the new feature, but by questioning that feature I could be opening a new discussion with the client to find the exact source of the problem and deliver a solution that will simplify the software instead of complicating it.
Plain and Simple Bookmarking
I seem to have a love/hate relationship with bookmark managers. I like using them yet I find faults in each one and end up disliking them. Can I find plain and simple bookmarking service that let's me just search?
Bookmarking services. I've used a fair number of those in my time. Remember Delicious? Those were good days. I do and since then I've tried a number of different services including Google Bookmarks, Pinboard, and I even tried to roll my own bookmarking service a couple of times. Each time I tried something new though it felt like it was just over the top.
I never wanted to manage a collection of separate bookmarks, I just wanted a somewhere I could store them and find them. How they got there wasn't the problem, it was how I found them that mattered. Lots of bookmarking services tagging as a way of grouping your bookmarks, but do we need to tag our bookmarks if they can already be found with a good search facility?
You might have noticed a new addition to the blog in the last few weeks. At the top of the page beside the main navigation links there is a search box that you can use to search my blog. This isn't a feature of the blogging software I use, this is an external service called Searchpath. It indexes the content of your static site and gives you a plugin for your site that let's you search on your site's content. I've been using this for a couple of months now and the results of the searches have been good. Anytime I've needed to find something, I can using the simple JavaScript widget that sits at the too of my site.
After a couple of weeks of using this I wondered if it could also index other pages. Pages of bookmarks perhaps?
So last week I finally got my collection of bookmarks out of a database and converted them to markdown files grouped by the month they were created in. From here I then set up a page on my site that listed each months worth if bookmarks. You can find this new archive here.
How I add to this collection is simple. In my toolbar I have a couple of bookmarklets. One coverts the URL to the page to a markdown link and the other converts the entire page to markdown. I use the link bookmarklet to get the link for the page I want to bookmark and copy it to the clipboard.
I keep the this months file open on my desktop using the wonderful Marked application. If I need to add a bookmark, I simply press the edit shortcut key in Marked and my markdown file appears in my editor. Once I have my bookmark file open I simply append the new bookmark to the bottom, add any notes and save it.
The last part is the indexing of these bookmarks. Searchpath looks for links in site and follows them through to find pages to index. I'm interested to see how this change to my bookmarking routine works out. It's taken me to now to realise that I don't need things like tags, favourite bookmarks or even grouping bookmarks by a collection. I just need a place that allows me to search through them when I want to.
Back on the Course
Yesterday was such a glorious day in terms of weather. An ideal day to get Ethan back out on the golf course. Unfortunately the course is still a bit damp from the last couple of weeks of rain but hopefully it will dry out soon.

Logitech K811: A Review
It's been a month now since I started using the Logitech K811 keyboard. The reason I made the switch was that my old Apple keyboard was getting rather old. Five years is a long time for a keyboard, in fact it's probably the longest time I've ever owned a keyboard. As a result the keys on the keyboard were sticking and one of the keys needed a fair amount of beating before it would register the key press. I needed a new keyboard.
Two things the new keyboard had to do. Be OS X compatible and wireless. Anything else after that is a bonus. After looking at a number of different keyboards I filtered this down to a number of keyboards from Logitech. In the past I had a Logitech keyboard when I worked as an ERP developer. This was a great keyboard, so I started to look at the rest of Logitech's range. The K811 stood out for a number of reasons.

The keyboard itself is light and while it doesn't exactly match the build quality of my Apple keyboard, it has been sturdy enough for every day use. The top of the keyboard has a plastic backing while the rest of the keyboard has a nice aluminium finish. It's a shame the aluminium finish doesn't extend to the whole of the keyboard. There is also a greater degree of flex in the K811, but then that it would take a great amount of pressure to snap the keyboard this way.consists of an has a small profile. The K811 is thin and doesn't have as steep an angle as the Apple keyboard. Looks wise it's definitely up there with my old keyboard.
The keyboard can be charged using a USB cable. This is good but in the last month I've had to charge the keyboard three times. This maybe partly because I've left the keyboard on when I leave my desk. If I turned it off when I wasn't using it then it would probably extend the life of the battery between charges. I'm not going to worry too much over this though as it does mean that I don't need to replace the batteries for it.
Another nice feature of the K811 is that you switch between multiple devices at the touch of a button. With my iPad almost unusable (long story), I haven't used this feature although when it comes to getting a new iPad, it's good to know that I'll be able to switch between my iPad and my MacBook if I need to.
The last thing that I like about the keyboard is the backlit keys. My hours of work can vary from day to day and during these dark winter nights it's been good to know that my keyboard is easier to see when I'm working late with just my desk light on.
The only real gripe I have with the K811 is that the connection to my MacBook cuts out about once a day. I've searched the support forums on Logictech for a resolution to this but I've yet to find one. The connection does come back after a few seconds, so I'm not going mark this as a big drawback to the keyboard.
Other than that the K811 has been a great keyboard to use so far and is definitely a worthy replacement to my old Apple keyboard. It's more expensive than an Apple keyboard and maybe not worthy of the price difference but I was happy to fork out the money to get something that would work for me on a daily basis and offer a little bit more than other keyboards do.
For the Pen & Notebook Lover In Your Life ...
... the perfect gift.
Fixie Friday - Father Tu's A2
Ask Yourself ...
.. are you being productive with the work tools you have?
Testing Boundaries
On a day to day basis I'm providing a service to my clients based on the programming languages I use. In time though these programming languages will fall out of favour with clients and I'll no longer be attractive as a freelance service. What can I do to change this?
My one year old son Drew is trouble. I thought my oldest son who is now seven was trouble, but he's nothing compared to the mayhem that is his younger brother. Drew loves exploring round the house, hiding in corners and inevitably getting himself into trouble. If there's something he wants within his reach, he'll try and get it. Now I could move everything that he shouldn't be touching out of his reach but that just isn't possible in our house. We still have to live. So for the moment, we'll put up with Drew's antics until he is older to recognise right and wrong.
Watching him running around the house and raiding cupboards, drawers, my desk and anywhere else he can reach is nothing more than him exploring his environment. It's healthy for him to do this. He's a growing toddler. I wouldn't expect anything less from him.
As I watch though I realise he's doing something. In each case he'll try and grab something he wants. When we tell him no, he runs off and tries to find something else. When we say he can have what he is trying to grab, his faces lights up as he's found some new artefact that he hasn't seen before. It's exploring on a micro scale. It's his way of testing the boundaries. He doesn't know what is right and wrong and so he tries in his own way to see what he can and can't get. It's a hit and miss method for him.
As a freelancer I have a small number of services that I offer based on the trend of safe technology that is available in software development. I work with Ruby for a number of reasons. It's become a popular language with many markets and their's plenty of work out there for those looking for it. In a career where the technology landscape changes on a yearly basis , should I be banking on this safe language for the future?
Ruby was the last language that I invested anytime in. Back when I first read about it during my .NET days I was in fact reading about this new framework called Ruby on Rails. I think I first read about Rails in 2005 but it would be another three years before I decided to start learning about the Rails framework and in turn the Ruby language. Since then I've rarely invested any time in learning a new programming language other than the fringe languages and frameworks that are part of the Ruby and Rails communities.
The reason I haven't done this since then is that I don't want to waste time investing in a programming language that doesn't start to become mainstream. Why be afraid of investing some time in a new programming language though? The technology world changes on such a fast pace that it's impossible to predict when that next killer language will appear.
Just like my son though I need to start testing my own boundaries and explore the programming language world around me. It will be a hit and miss experiment for sure. Over time though, I should have invested enough time to familiarise my self with a number of different languages. It's at this point I can then decide if any of these languages are right for me to consider as an extra service that I can offer to clients.
It's been far too long a time not exploring another programming languages. It's definitely time to test my boundaries and see what is happening out there. Sticking to a safe programming language is easy to do, but there will come a point in time where I will need to pick up a new programming language out of necessity rather than choice. It's at this point where I would like to have the experience of already picking up new programming languages and reducing the friction in learning it.
Need to Improve Your Business?
Start here with Nicholas Bate's summary to building a better business.
Mountain Bikes from NAHBS 2014
Too many beautiful bikes here to recommend one.
Nice to see a few rigid singlespeed steeds in there.
Apps Are Not Solutions
A nice reminder from Productivityist that apps are tools just like other tools and need to be revised every now and again to see if they are working for you.
Fixie Friday - Rose City Fix
Does Freelancing Offer More Flexibility?
Working as a freelancer doesn't offer the flexibility that I first thought it would, but is that a bad thing?
I've been freelancing for over a year now. It's been a great journey so far and long may it continue, but when people ask me if I have more flexibility in my hours, they react with surprise when I say no.
When I first wanted to freelance, one of the benefits that drew me to it was the fact that I would dictate my hours as I would see fit. I would work when it suited me the most. If I wanted to work in the morning then I would. I could take the afternoon off and then do more work in the evening. That's not how it has worked out for me though.
I work four days a week doing client work. Typically my day runs from 9am to 5pm with maybe an hour or two extra done at night if needed. Sounds like your typical work day right? Well that's largely in part due to the fact that is the hours that my clients work. They have typical work hours like most other people so it suits everyone if I work to the same hours as well.
The flexibility doesn't then come from the hours that I work then, it comes from the fact that I work at home. I can do the school run in the morning and the afternoon as well as be home for deliveries coming to the house, giving trades people access for repairs and decorating when the need arises and because I am already at home, I can use my work hour more productively by running a few errands during my lunch break when I need to.
To a degree freelancing does offer me more flexibility. I work the days that I want to and take time off as needed, however it isn't the flexible career that I first thought it was going to be. Yes it is flexible, but only in the fact that I can do a few more things extra in the day as I work from home. Work hours wise though, I'm not much better off than many others but that isn't a bad thing. Keeping to a working day means that I've got time for the family when it comes to the evening and the weekend.
Writing Takes Time
When I first started blogging I thought I could simply keep on writing and the ideas would come. For a while they did and I would keep future ideas on a backlog so that I could return to them another day. Now though it seems that those ideas are not coming as fast as they did in the past. It took me a while to realise what the problem was.
My problem was that I set myself the goal of publishing more often than I could write. Yes I could publish small posts that required little effort but is that what I want to do? Minimum effort? I won't learn anything from just simply firing out a barrage of poorly written blog posts.
What I want to do is improve my writing. That means spending more time writing, editing and proof reading. I want to review my writing a few times to ensure that I am completely happy with it. This takes time, not a lot of time but definitely more than the time it takes me to write a small blog post.
Writing takes time. Good writing I mean. The kind of writing where you write a draft more than once. You sweat over the little things like word choice and grammar. You spend time on each paragraph, sentence or even word.
Writing does take time, but the rewards of better writing far out weigh that of those hasty blog posts that I used to write. It's taken me a while to learn this but it's came at a good time. I'm hoping that this is a time where I can improve on my writing over the next few months.
We'll just need to wait and see.
More & Less
Nicholas Bate has the balance in productivity.
Fixie Friday - GT Team USA

via FGGT
Five Dollar Value
Three pounds got me a tea and hot roll this morning from my local cafe. A pot of tea which should give me three decent cups of tea and a toasted flatbread with sausage. A little bit upmarket when you consider this is a cafe in the West of Scotland but also good value when you consider that it's not your usual greasy spoon morning roll with a slice of cheap meat thrown in. Good value I think you would agree. I get enough fuel to see me through to lunchtime and enough tea to keep me working for at least two hours.
What about value on the Internet though? What determines value in the products and services that we buy but are nothing more than bytes that exist in the Internet?
Five dollars is a common price point for many products and services. Evernote offers extra bandwidth for synchronising data for this amount, Github offers a private repository for the same amount and you can follow more people on App.net for, yes you guessed it, five dollars. It's a common price for many services but the variety of value differs from product to product.
There is a trend on the Internet when it comes to services and value. The older the service, the more value you get. It's not true in every case, but it's certainly applicable to many.
Take Evernote for example. Back when I first took an Evernote subscription the added value I got from it was mainly their offline notebooks and extra bandwidth for synchronising my data contained in Evernote. Now though, Evernote offers collaboration, extra security, presentation and even other premium features from their other apps. Good value if you use these on a monthly basis.
Let's look at App.net now. Out of the box a free account gives you great value including the ability to use their Passport application and follow up to 40 people. On top of that you get 500MB of storage on their platform. For an extra five dollars a month you can follow as many people as you like and also get an extra 500MB of storage taking you to 1GB. Right okay, not the range of extra value that Evernote offers but it is value. App.net is young though and in time they may offer more to its paying customers to encourage free customers to upgrade.
The trouble with comparing these services and more is that there's usually only a handful of great services in each market. Comparing services from different markets isn't going to work. It's not fair to say that Evernote offers more value than App.net but in terms of a basic feature count, yes it offers more, but it depends on person to person what features they use.
For many of us that use the Internet on a daily basis though, we live in a time where five dollars is nothing. It's a fancy coffee or even breakfast. I don't think five dollars to me is a lot of money to pay for a serivce online for a month. Even the most basic service is worth paying for.
If it provides value to you as a consumer then why not?
What's the minimum you would pay for extra features and value from a service?
Also does that price change depending on the important of the service you are using. Would a service critical to your business warrant a larger minimum price so that it continues to support your business?
No More Netterpress For Me
Yesterday I decided to pull the plug on the Netterpress newsletter. Saying no to your own ideas is difficult to do. You want it to grow. You want it to succeed. It doesn't always end up this way though. The journey to a successful product is hard work and needs a significant amount of effort. After working on Netterpress for over a month it was clear that it wasn't something that was worth doing given the amount of money that was coming in from initial subscribers. This wasn't the only problem though.
A Small Community
App.net is still a small community when compared to other well known social networks but it shouldn't be pushed aside for its size though. There's still a fair amount of daily interaction that goes on here and it is growing on a daily basis. It can't be compared to the millions of users that other networks can and that restricts the number of potential customers that a premium newsletter like Netterpress can have.
I was buoyant about the newsletter when I first wrote about the idea, but when I unveiled the sign up page and price, the take up for it was low. The number of interested subscribers just wasn't there. With a bigger network, there may have been more of an interest, but App.net being a small community means that there just isn't enough people there interested in the newsletter.
Sourcing News & Content
I had a plan at the start which involved finding content to put in the newsletter from a number of sources. The first was to follow a number of developer accounts for apps on App.net and a few other accounts that would give me news on app updates and changes to App.net.
The problem with this is anyone else on App.net can follow these accounts and get the same news for free. I was counting on the fact that I would do the leg work in correlating the news and updates from a number of different accounts and present them in one easy to read list.
Another plan I had for finding content was the use of hashtags that people could include in their posts if they want a post with a link to feature in a newsletter. Unfortunately this idea wasn't conveyed as well as I could have and was never used in the entire time that Netterpress ran.
The last strategy I used for finding content was the use of saved searches in the Felix app on my iPad. I setup a number of saved searches within the app and checked them on a daily basis. Some content for the newsletter came through this way but it wasn't the flood of newsletter content that I was hoping for.
Most of the content for the newsletter came from spending a few minutes each day searching links in my own timeline and the timeline for the Netterpress account. It was time consuming and certainly wasn't an efficient method.
Content Curation
One thing I took away from the experience of running the newsletter was that it is a time consuming task. I now have new found respect for those people that curate content for the benefit of others, whether they run a newsletter, a blog or even a magazine. Publishing a periodical for others to read is hard work and it needs a lot of time and thought.
You can get so far by automating the curation process but it still needs a final check to confirm that the final content is okay for the newsletter. Although I didn't get the entire process automated, the curation process for one part of the newsletter was almost fully automated but it did need a last check before publishing the newsletter.
It's Not The End
The newsletter itself is not dead however. Shortly after announcing the retirement of the newsletter, I received an email from another App.net member who wishes takeover the newsletter and publish it on a more irregular schedule for free. I'm in the process of migrating over the assets of Netterpres including the account the subscribers that have allowed their email address to be given to the new owner.
It's good that the newsletter will in fact live on, but it wasn't a viable product during it's first run. This might change with a new owner and perhaps making it free for a while will get enough subscribers so that one day it could eventually pay for itself in some way.
I'm done with this idea though. It's time to sit back for a few days and catch up on reading, writing and code. Another idea will come along soon and when it does, I will start the process of evaluating it as a product all over again.
Project Retrospectives
I'm coming to the end of a project with a client. In the past I would have made sure the client was happy, closed the project off and collected the rest of my fee for the work. So would many freelancers. The work is done, you're done. Right? Maybe not.
Over the last few months a number of projects have been started and finished with the same client. This has led to a familiarity that is great for day to day communication, but as a working team we have become complacent in the work we are doing and there is clearly room for improvement in how we work together to finish each project.
In an agile team, frequent retrospectives are used to find out what's working for the team, what isn't and areas where the team can improve. It's a time of reflection. As part of a my pledge to deliver a professional service, I'm am now going to give a retrospective for each project that I finish with a client.
Essentially it's a report of three areas. Developers will recognize the questions as they are the same questions asked when an agile team gets together for their own retrospective. So why not apply the same idea to client work as well?
1. Where did we go wrong?
Admitting where a project went wrong can be difficult for all concerned. It's not a finger-pointing exercise though. If you think I'm picking at your faults, then you're probably not the type of client I want to work with. We're simply trying to isolate the problems areas so that we can change them for the better.
2. Where did we do well?
Highlighting where a project went well is important for any future work I do with a client. This is often over looked and we should never just think the work that is done on time and within budget is okay. If work is carried out within these constraints, then recognising that success is a great area to start for future projects. I want to build on a set of good practices that we both recognise so that future projects become easier to do.
3. Where could we improve?
We found out where we went wrong from the first question, but is there something we can do to fix this for future projects? If we are to continue working together, then it would benefit everyone if we could gradually improve on projects in the past. Less bumps on the road means projects can be finished to a higher quality, on schedule and with-in our agreed budget. Who doesn't want to work like that?
I have a first retrospective coming up in the next couple of weeks, and I've already collected a number of different observations from the project where both myself and the client could improve. Not all clients will be happy to read the retrospective or even take any advice from it. That's okay, it's their choice. For those clients that want to improve on future projects when working with me, I'll be more than happy to help them resolve problems from the retrospective and suggest recommendations for future projects with them.
The project doesn't end with the last commit or deploy, it ends when I've exceeded the expectations of the client and helped them get the most from our time together working on a project.
Fixie Friday - Stubborn Cycleworks Lightsaber
The Marketing Alternative to Social Networks
Marketing your product online has one bad rule. It's not a rule so much as a practice. Whether it's good or bad, I'll leave down to you to decide. Here it is.
In order to market your product effectively online, you at least need a presence on each of the major social networks.
I'm talking social network accounts here. Google+, Facebook and Twitter. Without a doubt the most popular networks out there, and if you want to market your product you need an account for each of these networks so that you have an outlet for your product. I'm aware that you don't need to be sitting on these accounts on a daily basis to monitor it, but it does require some maintenance. And that's my problem. Why do you need to have an account in these networks just to market your goods? Is there an alternative?
There is and it's probably been staring you in the face since you sat down at your desk this morning with your coffee.
It's email.
Long forgotten as the first popular form of sharing content, email has been increasingly replaced by social network forms of communications. It is one of the last remaining forms of open communication that just works. You can send a message to anyone providing you know their email address. It doesn't matter which email service you use, which client you use or even if it's self-hosted. Email just works and it cuts across the borders of social networks easily. Straight to the people that matter. The people who buy and could potentially buy your product.
You might be able to reach more people by managing a separate account on each network, but do you have time for that? I sure as hell don't.
Lately I've seen a resurgence in the use of email by others to market their products and services. Newsletters are an increasingly great way to market your product to others. Letting people know of changes and offers in your product keeps your customers up to date. A call to action at the end of the email is also a great way to encourage potential customers to check out your product or even buy your product.
The best thing about it though is that it's already there.
Waiting to be used. Marketing your product starts with an email to the right person. Sometimes that's all that's needed to start selling your product.
No Smoke, No Mirrors
A reminder from Michael Wade that we need log our day as it happens.
How else are you going to see where your time has gone?



