Until Dec 3rd, 44% off all Manning books, including Barcodes with iOS! Promo code: mobicftw
Our DNA is written in Objective-C

Learn to Say No

This request of MKureth is so totally crazy that I just had to share it with you:

Hi, I am currently working 60+ hours a week on highly advanced interactive development which mainly consists of Flash (AS3), XML, JavaScript, PHP, and MySQL. I was asked to learn and develop a working iPhone application using the frameworks of Cocoa, Objective-C, and OpenGL within two weeks. Given my current work schedule and skill sets, how should I proceed with this request and deadline (of two weeks) keeping in mind that I have no prior experience with Mac development?

As impressive as your resumé sounds you lack a couple of essential skills.

There might be time geniuses out there who would have no problem squeezing a couple of more days into each week but you don’t seem to major in time magic, but in web development. So one skill to develop is to learn a completely new platform. If you put your head to it you might be able to get to a reasonable skill level in one man month, however you choose to distribute it. That’s not counting OpenGL which has a totally different methodology. So honorably as your goal might be, it’s not realistic.

Your request shows that you lack some even more important skills I am outlining below. The number one rule in IT should be known to you: “it’s done when it’s done”. As soon as there is a deadline you absolutely must have some project management in place. No good has ever come from working through days and nights on end. On your own. For the love of money. Good code needs it’s time and space to breathe.

One extremely important skill to develop as developer is learning how to say no when a project cannot be done in the time or money constraints presented. 60+ hours is already way past then most people’s physical and mental limits. Granted you might get offered lots of money to get bribed into doing extra work, but what good is money if you set yourself up for repetitive stress syndrom. Or worse: work yourself to death.

There is a saying: “If you want something done then give it to a busy man”. But this is easily misunderstood. It only means that a busy person most likely knows how to organize and wouldn’t hesitate in the least to delegate work if it only slightly possible he won’t be able to do it. True masters of Cocoa Zen have no need to feel like Coding Rock Stars.

So the second essential skill is learning how to delegate. Most people who start out on their app store journey are afraid that some other wannabe dev would steal their precious ideas as soon as they ask for help. That’s why the NDA was invented. It’s quickly printed out and countersigned and holds up in court should you need to sue the other guy.

You need to think hard about what pieces of the iPhone Development Puzzle really fit your strengths. For example I suck at design, that’s why I partnered with Michael Dorn for the development of LuckyWheel. And I am no guru myself, but I am only a couple of months ahead of most Cocoa Touch developers. And that seems to be sufficient to do my coding and lots of coaching. Learn how to play to your own strengths.

Time is money. Most beginners don’t have venture capital backing and so they rely solely on their own work, because it’s free. Or is it? Learn to value your productive time. Most contractors charge between $50 and $100 per hour. If you find that you have too much work then you are too cheap! Raise your price to decrease your load.

By yourself you are limited to the amount of time you can put into your own projects. Now if you get together a team of people with a common goal, each contributing with their own strenghts, then you get leverage. Every person added to the team doubles the value of your own work. Learn how to leverage on teams and project management. 

In the beginning you might have to persuade people to work with you for free on the promise of sharing profits with them later. I found it extremely easy to find partners who would be willing to share with you on equal terms if their success has not yet blinded them to the truths I am laying out here.

There are very few true heroes who managed to achieve big profits and fame from their works. Those are really useless role models to emulate because you have their own drive and reasons for success. Be it a great idea. Be it enough time because they quit their job. Be it what it may. We are not them. We are ourselves.

Categories: Q&A

%d bloggers like this: