Prioritisation is a painful thing, as a business person you must prioritise for the customers and projects you already have (and will be charging for) over cooler projects and new customers you think you may have.
When you work for yourself, there is no one to delegate too, no boss to phone in sick to and the only way you get things done is to eat in to the “non-productive” time you have (read free time!) thus when I have a deadline I tend to skip things like TV, household maintenance and distractions like email and the Internet and work late into the evening. Sometimes when things get really pushed for time I will miss out on an awesome day for diving, swimming or going to the gym. There are some things I try not to skip such as dinner with the wife or any pre-arranged function, nor will I miss out reading before sleeping as its about the only way to fall asleep NOT thinking about work.
The Internet is a two edged sword. Doing complicated projects before the Internet meant having all the technical information in a book and having someone you could call on for support. Back then the TTL and CMOS cookbooks were your friends and building anything above a CMOS blinker meant having a manual, with the internet there is almost never a time where you can’t immediately download the data-sheet for the device you are stuck on or copy and paste the correct C code to drive that memory chip. However the amount of dross and even bad information you sometimes need to sort to get to that magic point can waste a lot of productive time (not good if your on any sort of deadline), this is the real reason I tend to stick with what I know above some cooler part which does more for less. You basically need to surf the information fast before you’re swept away and drown by the currents of unproductive time.
I’m currently on a deadline, to re-write the Indevin vintage intake software to make it now take all its information from a corporate HQ super-system, so all the above is now in effect (barring requiring info off the internet as I at least wrote all this myself) the changes means removing the ability of the local user to create/edit information and changing a shed load of SQL queries to use new fields in new tables which are populated by the HQ system. In other words I’m breaking a reliable working system in the name of progress (It happens a lot and funds life little luxuries such as beer and diving, so I wont complain too much!)
Of course, all this has to be done by the time staff come back from their XMAS holidays and so it means I will be working all this time and other projects will mainly have to go on the back burner until then. No matter how much I test, this is a complicated system and the real testing will happen on the 6th Jan when everyone is back at work, this being available on call for bug-fixes for days afterwards, including during my planned trip to HK and Asia.
Dont let them tell you working for yourself is easy.. Rewarding, Yes, Easy No!