My heart sinks every time I hear a would-be-entrepreneur announcing they have written yet another Twitter client, RSS reader, ToDo list or backup application. Haven’t we got enough of those already? There are more than 1,900 Twitter apps already (possibly a lot more). Somebody probably released another one while I was writing this post. We have passed the Twitter app event horizon, where it is probably quicker to write your own custom app than it is to try and work out if any of the existing apps fulfils your requirements.
Even if you have done something radically new, interesting and different in one of these markets, how are you ever going to get noticed amongst thousands of more established competitors? Wouldn’t it be better to find a market that is currently under-served by software? It may be less fashionable than writing software for other techies, but it will probably contribute more to the sum of human happiness and be a lot more profitable.
There must be thousands of niches where there is a real need for software, but limited competition. You just need to open your eyes to the bigger world around you. It may mean having to learn about an unfamiliar domain. But it is generally much easier for a software developer to learn some domain knowledge about, say, butterfly collecting, than it is for the average butterfly collector to learn to create a software product. Next time you are talking to a non-techie about their job or hobbies, just ask them “Do you use software for that?” and “Is it any good?”. The ideal answers you are looking for are “Yes” (if there are existing software packages, there is probably a market) and “No” (maybe you can do better).
We all know we need to do backups. But that is only half the story. Have you actually checked you can read them back if you need to? I have heard stories of people religiously backing up to mag tape every day for years, only to find out the tapes were corrupt and couldn’t be read back when needed.
I checked my backups recently to ensure I could read them back. Here is what I found out:
I was backing up my SVN repository on my Mac Mini to a single .tar.gz file which I then copied across onto a USB disk attached to a Windows box. The file had grown unnoticed to >4GB in size. But the USB disk was in FAT format, which has a maximum file size of 4GB. The the file was quietly being truncated to 4GB and I couldn’t uncompress the file when I tried with gunzip.
I was backing up from my Windows box to DVDs in ‘live’ format. These were not readable by my Mac mini, which would have been a problem if neither of my Windows boxes were working. I have now changed to ‘mastered’ format, which is readable by Windows and Mac.
I was backing up the .mdf file my OnTime bug tracking database. It turns out you can’t just swap one .mdf file for another and re-start OnTime, as you get an internal consistency error. I am now creating and backing up .bak files, which you can restore.
I have lots of redundancy in my backups – backing up in multiple formats (files, SVN repository and Acronis disk images) to multiple media (multiple machines, USB disks, DVD and online). So none of the above would have spelt disaster. But it does bring home the importance of testing your backups from time to time and of having multiple forms of backup. If you think backing up to a single USB disk is enough you should read this. If you are relying purely on an third party online backup service you should consider what would happen if they went bankrupt – not inconceivable in the current economic climate.
Are you relying on a single backup strategy? When was the last time you tested your backups?