Hacker News new | ask | show | jobs
by mgkimsal 5499 days ago
I've got myself stuck in a "fixed price" contract, and while the number of features the client's asked for haven't really increased all that much, the depth of interrelation between those features was not at all apparent up front. Throw in agreeing to migrate existing data in to a new data structure without really understanding the nature and complexity of the existing data, and you've got a recipe for a long-overdue project. No one's happy. :/
2 comments

Oh yeah, you can easily bill a month of full-time work for fixing an old app with a busted data model. After that you reach the place where you can sell a change that takes 30 minutes of work for $150 and really do it in 30 minutes, but getting there is expensive...
I'm at the point now where the time invested in the project has paid off - I understand the business problems much better now, and some of the intricate work I did months ago is paying off in spades (basically, having put together a flexible data model up front). Things that might have taken days to do before I can do and redo in minutes or hours. But it's taken way too long to get here, and ultimately this is a one-off - most of the knowledge gained isn't transferable to any other projects directly.
I've been there and I know how that sucks. In those cases I figured it was best to take my loss and get it done and over with as soon as possible (I'm sure that's what you're doing).

In my experience there's one thing you need to watch out for, and that's being a nice guy. You might start feeling sorry for your client because stuff is taking longer than planned, which makes it harder to say no to just minor changes to the scope. They will only take you 5 minutes each, and it keeps the client of your back. Those are the things that really get to you when it comes to staying motivated I think.

yes it is. I'd budgeted for 4-5 months of time, figuring it might go to 5-6. I'm in month 9, and it will be at least another month. :/ Huge lesson learned, and hopefully this will be the last time I learn it. I don't typically take on projects this large, and in the past if there was a 80% time estimation error, the impact wouldn't have been as dramatic. :/