Showing posts with label projects. Show all posts
Showing posts with label projects. Show all posts

Thursday, July 3, 2008

Never Again on Big Gambles




I spent 5 long years on a big gamble website project. Naturally we web developers think we can make that big killer tracking system app and could collect millions of dollars. I did that, wasting 5 long years, and it didn't really get me far except to have it as a portfolio item and use it to lure my first client on a completely separate project.

Please hear my warning -- it's quite a gamble to do something like that, whether hosting it yourself or selling it. And it's a son of a gun to maintain and grow. Never again will I do that, and I highly recommend you think of the same thing.

While I was doing this, I would read news reports of guys spending far less effort, thinking up smaller ideas, growing the sites, and then selling the sites for $2M a piece. Makes you step back and kinda wonder, doesn't it?

Heck, if I think about it, I would be happy if all I did was spend 2 weeks building something, growing it organically over another 30 days in a 6 month period, here or there, and then selling the site for like $30K. Do enough of those and you've just made $100K. Do a little more and you've just paid off your house.

Really, the goal for any freelancer should be to be debt-free, first, and then work on the great ideas after that. And if you're a young guy who hasn't started a family yet, please oh please go start one because they are infinitely more worth it than wasting 5 years coding something. I recommend you acquire a house, a car, a boat, a cabin on the lake along the way as well. And pay those debts off, and raise enough income for you kids to be set for college, and when you've done all that, then go invest in those larger gambles.

Tuesday, June 17, 2008

Project Speed - Rule of Thumb



I'm on a project right now where I have a lead dev who's very picky with his own style on how things should be done. I don't fault him at all -- I'm picky too and understand the importance of being picky. He and I report to a project manager who pretty much is hands off and just keeps tabs on us in a casual, jovial way. He doesn't understand the technical detail of the work we do. Now, the PM has a boss who writes the checks, and he's very picky, very formal, not jovial, and he's all about results.

Now, going into this project, they knew I didn't know Zend Framework and were still willing to work with me in learning it as I go. I've made great strides in learning it, and I have to give myself a pat on the back for that because I dislike it's awkward nature.

However, the guy writing the checks is now seeming a bit taken aback by my first invoice when he sees I only completed a login form, a registration form, and a password retrieval form in the span of two weeks. He's wondering where all the time was spent.

I hate when that happens. This doesn't sound like this contract is going to go well. The guy has like no clue what one has to go through when starting a project fresh, or when the team lead is unavailable to respond except once a day, or when you have to completely learn a new framework super fast. Plus, when you start new projects that are very strict in their design, a lot of discussion needs to take place to iron out things that will impact the rest of the application. So heck yeah, it may take 2 weeks to knock out a login form, a registration form, and a password retrieval form. But there's much more going on than that. We're learning how to do things the ZF way, making decisions on how the project will proceed going forward, trying proofs of concepts, failing, and rewriting code, and understanding policies on how work is to be performed and problems are to be solved.

But bosses in these sorts of companies just don't understand and have to get tough with you, even if you're only billing out for peanuts.

So, as a general rule of thumb for you when you pick up a picky project, please remember that they don't care how much trouble you're having learning something, or getting answers from the team lead, or how half-assed something is. All they want are results super fast. They want to see like 2 forms created a day, not a week. They want to see you complete two major tasks a week, if not more.

Therefore, my recommendation is to get as many questions answered as soon as possible, starting out, and ask several questions a week, but then slap the code together just as fast and as logical as you think you can get it out, sticking to a goal of:
  • minimum, 2 forms a day, not a week
  • minimum, 2 major tasks a week, not every two or three weeks
  • Knock out a bunch of work super fast, then take your breaks, but report this work slowly such that it looks like you only did 2 forms a day, or two major tasks a week
Let's pray that I did a good job of convincing the big boss to keep me and not cut me. I'm nervous about that right now. And let's hope that I can deliver faster results.

UPDATE (June 17): Got good news today. My client thinks ZF is the problem, not me. We're going to ditch ZF and start a rewrite again. Yay! I'm glad I learned ZF, but I'm going to decline every one of these projects in the future. ZF sux!!!

Monday, June 16, 2008

Latest




I had two clients paying me very well, but then one stops me on one project temporarily, tells me he has something more pressing for me to do, and praises the heck out of me. If that weren't enough, a third client, a Swede, has complete faith in me and is turning to me yet again for some short scripts and some eCommerce work. It's like raining gigs right now.

You see, with a few portfolio items behind you, and a good knowledge of PHP and MySQL and some well-known F/OSS packages on top of this, and some eCommerce experience -- you can go really far and you'll be very busy with good money coming in.

My rate might be low for what I do when you compare me to a desk job kind of programmer, but then again I can double up and triple up my workload and get twice as much cash in the door as the desk job programmer. Plus, I have like no interruptions and I see so much more of my family. So why do people do desk jobs as web developers anymore? Got me.