I recently moved all of my Git repositories out of Codebase and a number out of GitHub and into BitBucket. This wasn’t because I was dissatisfied with either service, rather it was because I am starting to become more aware of my monthly outlay on on-line services and am slowly trimming things back to reduce my spending. In this blog post I’ll outline what I generally spend each month on subscription services and where I’m able to cut back and hopefully give you some ideas on where you can save some money too.
If you don’t want to read the entire article then do just one thing. Sit down and work out how much you are paying each month on subscription services. Then decide if you really need each of them or not and, if you do, look at whether you can easily migrate to an alternative provider if they offer you a better deal. Don’t just ignore the small monthly amounts because they do add up and changing or cancelling just one might be enough to pay for a good meal out for two.
The Big Picture
A few month ago I was spending the following amounts on subscription services:
- £6.56 / £9.99 - Dropbox
- £7.96 / $12.00 - GitHub
- £15.60 - $23.56 - Codebase
- £13.30 / $19.95 - FreshBooks
- £28.80 - $43.49 - Xero
- £9.92 / $15.00 - Lighthouse
- £6.67 / $10.00 - Squarespace
- £13.19 / $19.95 - Linode
- £6.57 / $10.00 - A Small Orange
- £16.96 / $25.85 - Amazon S3
Monthly Total: £125.53 / $189.79
Annual Total: £1,506.36 / $2,277.48
Note: These figures are from July 2012. Exchange rates varied through the month so the rates applied to each transaction vary. CodeBase and Xero bill in GBP so I’ve applied an exchange rate of 1.51 to get USD amounts for them.
With the totals calculated let’s look at what I use each service for and whether I really need it.
If you want to simply see what I’ve changed since then, skip to the bottom of the article.
The Services In Detail
As most people do, I use Dropbox to synchronise files between my Macs and also to allow me to access them on my iOS devices. However I also use it to share files with clients and whilst I keep a lot of data in Dropbox it is the client sharing aspect that pushes my usage firmly into the paid-for service area. Dropbox is amazingly useful and I’d continue to use it and happily pay for it even if there wasn’t a client-related requirement.
GitHub has become the de-facto service for Git users who want a hosted repository service. It was actually clients who already used GitHub that caused me to move to both Git (from Mercurial) and GitHub. Unfortunately GitHub is one of the least developer-friendly services in my opinion. Their pricing levels are based around the number of private repositories you have and start at just $7 for five repositories. My issue with this approach is that as a developer I create a lot of private repositories for client projects and for my own projects as well as for test code. GitHib gets expensive quickly so you start to do things like creating vast repositories containing all of your test code or not keeping your code in a remote repository at all. It’s taken me a while to really tackle it but moving your private repositories off GitHub and onto an alternative service is definitely something you should consider.
Codebase is a really interesting service and one I started to use once I realised that GitHub was not the most economical solution for my needs. Basecamp provides a lot of functionality in addition to remote repository hosting and when I signed up to it I also cancelled my Basecamp subscription since Codebase offers similar features and functionality. For example, Codebase allows you to share images, create notebooks and have discussions and also includes issue management. It’s kind of like Basecamp and GitHub combined.
Codebase is project-orientated and within each project you can have unlimited repositories. Therefore you can create something like a ‘Test Code’ project and create tens or hundreds or even thousands of repositories, one for each of the little Xcode projects you create.
I was very happy with Codebase and may well move back to them but I found that I wasn’t really using the Basecamp-style features so it was essentially a paid remote repository service, something I’ve currently replaced with a free BitBucket account.
FreshBooks is essentially a time-tracking and invoicing system. I started using it because one particular client wanted me to because my timesheets would integrate with his account. Before FreshBooks I was using Billings.
FreshBooks is an interesting service for me to appraise in terms of value for money. It’s far from a cheap service at $20 per month or $240 per year and it is something I could replace fairly easily by going back to Billings and switching back to a free account which allows me to manage three clients. In addition, FreshBooks is one of the sites that my broadband seems to have endless problems with (probably due to DNS issues although I’m not 100% sure about that) so I end up getting very frustrated when pages timeout and I can’t log hours or issue invoices (although the iOS apps seems to be a good fall-back for these situations). However FreshBooks does integrate nicely with Xero (see below) and the time it would take me to manually enter invoice details into Xero probably make it financially worthwhile when I consider my hourly rates.
Xero is a cloud-based accounting application. It is the most expensive monthly subscription I have but it’s also one I’ll not be giving up any time soon. The reasons for this are:
- It is really simple to use. Accounting tasks I’ve always struggled with in the past are clear and simple and I don’t hate using it which is a novelty for accounting or book keeping software.
- My accountant can log in to it to review and fix things during the financial year. A quick email asking for help results in someone being able to check or adjust things for me rather than sending back an incomprehensible (to me) reply.
- My end of year accounts no longer consist of Excel and a lever arch file full of paper. Not only can the accountant log in and access everything directly but I scan and attach invoices, receipts, etc. to transactions so the paperwork is where it belongs, with the data.
- It integrates with FreshBooks so when I create an invoice in FreshBooks or when I mark one as being paid the information automatically appears in Xero. This is incredibly useful and saves me from making mistakes when transcribing information.
Xero, despite the cost is a non-negotiable subscription for me.
Lighthouse is an issue tracking system. I’d had an account for a long time but ended up only really using it for just one client project. I was managing other projects through the issue trackers built in to repository hosting services such as GitHub and Codebase.
Because I only had one active project I managed to delete a whole load of attachments and move myself back onto their free plan which I’m still using with the client.
It is a good service and it is more complete than the issue tracking areas included in the repository hosting services but I don’t need a paid account at the moment so taking advantage of a free one is ideal.
Squarespace is a blogging service and one signed up for when I re-built the Otter Software web site a few years back. As happens with most people, I blogged for a while and then slowly it tailed off. When I decided to get back into blogging I decided to use Scriptogr.am and my Squarespace blog has continued to rot. My plan is to migrate useful content to this blog and then cancel my Squarespace account. At $120 per year I suppose I should get on with it.
My Linode account powers the Otter Software web site as well as my daughter’s school web site and the pre-school web site. I also use the server to host images for this blog and various other bits and pieces. It’s not a cheap service and is probably over-kill for the traffic I get and the demands I place on the server but it’s something I’m happy to pay for and run because it offers me a huge amount of potential for future growth.
A Small Orange
The account I have with A Small Orange solely exists to host the BentoUsers site. I set the site up when Bento was first released (which was before I moved to Cocoa development from Windows development) and although I no longer run the site in editorial terms I do continue to finance the hosting.
This is a difficult service to evaluate. I cannot easily move the site to my Linode server because Linode is running a very secure, locked-down server and does not have PHP or mySQL installed. I also get no benefit at all from continuing to fund the site beyond knowing that some people use it and find it useful.
It’s something I’ll keep going for now as a public service but it is on the ‘at risk’ list.
I mainly use my S3 account for backup data storage courtesy of the rather splendid Arq. My monthly usage varies quite a lot as a result and now that Arq supports Amazon Glacier I expect these costs to fall once I’ve migrated over. It’s something that is business critical to me being my main off-site backup (Dropbox being another) and is definitely a cost I can continue to bear.
Since the snapshot in July a few things have changed and other changes are planned.
As soon as I can I will get a client to move three of my GitHub repositories to their own GitHub account and I will then move a couple more over to BitBucket which means that I can revert to a free account.
I’ve already cleared things off my Codebase account and moved them into BitBucket.
I’ve cut down my Lighthouse account to a single project and moved back to a free account.
My Squarespace blog will be migrated over to my Scriptogr.am one shortly.
My Amazon S3 bill should be reduced significantly by moving over to Amazon Glacier.
These changes mean that I should be reducing my monthly expenditure by something in the region of £50 or $75, an annual saving of £600 or $900 which is definitely worth doing.