This was originally a post on /r/freelance over on reddit, but I'm re-posting here for posterity.
I've been at this for a fair while, and this is some of the wisdom that I've been told or learned, often the hard way.
The typical full-time employee costs a company 2-3 times their nominal salary
Use this as a basis for deciding your rate. $90/hr might sound like an expensive replacement for an employee getting paid $30/hr, but that $90 is the total cost, and stops immediately when the project ends.
A client asking for 6+ hours in a day will cost you 8 hours
You will achieve nothing useful (read: bil…
In my current role at cpap.com, I'm working on improving the workflow of our small development team. We made the switch from SVN to git a couple of years ago, but the tools we had available at the time didn't really support us well, so we had to fight to stop using git like we used SVN.
As the developers got more comfortable with git (and as we brought in new blood to the company), the workflow has organically changed to be closer to the original plan. Now only the lead developers push changes into master, and developers pull off feature branches when they get a new ticket.
It's working well, b…
There, I've said it. Programming is a beauty contest, and if your software ain't pretty, it will lose out to something with half the function. This is a really difficult thing to admit as I'm not a designer, but the user interface is more important than the functionality.
Of course this isn't always true - quite often banks and other large businesses use software that was written 20 years ago (and still looks the part), but for the majority of businesses (especially in the web sector), it's just a home truth that design is more important.
So let's explore why.
Reason number one why the UI …
Approximately 4 weeks ago, I launched a side project, called Game of Life: Total War. It is a multi-player, competitive variant of Conway's Game of Life. It spent some time on the front page of Hacker News, and some time on the front page of /r/programming on Reddit.
Apart from Linode sending me emails at 3AM telling me that my CPU usage was too high (thanks, HN), it all held up pretty well. So far there have been over 3000 challenges created, almost 2000 armies, and about 300 user accounts created (you can create an army and play without creating an account, but accounts let you create and ke…
As a freelance developer, the most common conversation I have with new clients is about copyright, licensing, and code ownership. It isn't a well understood area for many people, and many other freelancers who I talk to don't really get it, either. So let's talk.
In general, when you create something, you are automatically assigned copyright over it. This means that you have the right to determine who, when, and how the thing that you created is copied. For me, as a developer, any code that I write is automatically copyrighted to me. I can, through a general agreement or a contract gi…