This Christmas I decided to start coding again. Why ? Because, just about every entrepreneur I’ve met in Silicon Valley knows how to write more than a few lines of code.
The ones that don’t are constantly looking for a partner to build their dream product. You know, the one that will make them a billion dollars. I’d guess you’d have to count me among them. But waiting around for a dream co-founder doesn’t cut it around here.
I haven’t written a line since high school when the two languages I knew were Pascal and MACOS.
In case your wondering, MACOS wasn’t even a proper language, only worked on my Apple II series, and stood for More of A Crappy Operating System. I don’t even know what it was, but it sure wasn’t Mac OS X. I used it for my bulletin board system (BBS for those that remember pre-www). I never saw an instruction book, not sure there was one, but I was able to understand the basic syntax easily enough and hack code from different available sources into something vaguely resembling what I wanted. But that was over 16 years ago.
I have no business writing code professionally, but sometimes business requires you to do something unprofessional.
The lack of a critical skills is something that we all have to deal with at some point. Whether it’s the ability to program, an understanding of supply chain flow, or just market knowledge. The difference between a successful entrepreneur and one who goes from one idea to the next is more than likely a function of how they deal with those missing resources.In the startup world, you're always out of resources, so it makes sense to develop some coping strategies. Click To Tweet
No Excuses – Do It YourselfThe biggest problem I usually have in getting things done is usually myself. Click To Tweet
There’s a ton of things I’d rather be doing than writing code. (Hell, there’s a lot of things I’d rather be doing than writing this blog.)
Worse still is “That’s not my job.”
When I started my last job at Secude, I didn’t know a thing about IT security and couldn’t for the life of me understand cryptography, let alone what a Diffie-Hellman was supposed to be.
It was daunting beyond belief, especially when asked to go and learn about a new P2P encryption technology and report back to our engineering staff on the technical details. I cannot imagine a job I was less qualified to do. The fact that my technical partner for the assignment spoke halting English to match my halting German was no help.
Could I have given up? Sure. Could I have assigned the work to someone else? Probably. But I wouldn’t have gotten the information and perspective I needed to do my job for the next four years.
Learn or DieThe business of business is learning. Click To Tweet
If you’re not learning, you’re probably losing money. Knowing how your business works from the bottom to the top is the only way you’re going to understand your value chain.
Do you have to sweep the floors on the factory to be a good CEO? Well, maybe not. But you do need to know how important it is that the factory floors are clean, something that a lot of big-shot CEOs probably don’t know.
When machines get dirty, they break. When the floor gets slick, your company loses big in workers comp. Even five minutes sweeping the floor in the factory could give a lot of CEOs a bit more appreciation for the janitor and make them realize that cutting the janitor’s salary and having a disgruntled employee doing a half-assed job is probably more expensive in the long run than paying a decent wage for decent work.Little gears push the big gears and every aspect of the value chain can be critical. Click To Tweet
That thinking and the drive to reduce muda (waste) came out of lean production thinking when Toyota discover that they could improve productivity radically by just shifting some machines around. Chihiro Nakao, the great lean production thought leader, was no stranger to getting his hands dirty. In Lean Thinking, Womack and Jones related how Nakao and Takenaka worked over the lunch hour with crowbars to move Wiremold’s massive machines into the proper sequence for single-piece flow while the local engineers, workers, and managers just stared at them with their mouths wide open.
That’s no excuse thinking.
Knowing isn’t Understanding
For those that think you can learn something without doing it yourself, good luck.
There are a lot of people far smarter than I that can, but I can’t. I need to learn by getting my hands dirty, and I learn up to three times as fast when I’m actively engaged in a task than when I observe someone else doing it from afar.Observation will lead you to know facts, doing will lead you to understand processes. Click To Tweet
I need to know processes. Even if we bring on two more engineers tomorrow, I’ll greatly benefit from the experience.
Why not outsource?
Why go through this exercise?
Surely it would be better to just outsource a task like front end coding and it’s probably more cost effective than me doing it. Well, sometimes, and in fact we’re exploring several outsourcing options for our front end web development for startupSQUARE.com. But sometimes managing outsourcing can be just as time consuming as doing it yourself.Outsourcing effectively is directly related to your own understanding of the process. Click To Tweet
The ability to communicate effectively with outsourcers and reduce communication overhead is directly related to your own understanding of the process.
A new CEO outsources his fabulous idea for a new website to a team of four engineers but development falls behind schedule.
Solution? Of course! Add more engineers!
This would be laughable if it didn’t happen so often. I’m sure every engineer in the world by now has had to explain patiently to their boss thatNine women cannot have a baby in one month. Click To Tweet
If the CEO had spent a decent weekend locked in a room pouring over source code, that would be well understood. You can’t have four people editing the same line of code.
My Just Deserts
So here’s what I hope to get out of this exercise:
- Comparative Advantage – I won’t go into the economic theory of this, but in a nutshell: it’s better for my skilled engineers to work on the important back-end stuff. I can waste my time with the “Follow me” button you see on the side of the screen.
- Understanding – Knowing the rough difficulty level of a task allows me to plan resources and our hiring strategy better. It also allows me to set more realistic expectations and goals.
- Sympathy – You’ll never catch me yelling at someone for being late on a technical issue again. Instead, I’ll roll up my sleeves and try to help by doing research and finding sample code.
- Respect – Aside from a better understanding of the tasks my technical co-founders suffer through, I we also develop some respect for each other with the fact that I’m willing to dig into things if necessary. After all, I started a company at least partly because I didn’t like the environment of my last job. Mutual respect among co-workers is the only environment I really want to work in.
- Get things done – At the end of the day…our product needs to get out of alpha and it’s going to take no excuses hands on deck to do it.
So this Christmas, send me a link to your favorite PHP resource or your resume if you’re an engineer. But in the meantime, I’ll keep coding.
Merry Christmas, Happy Holidays, Seasons Greetings and all that! Hope it’s a good one, and I hope I’ll be able to post about a snazzy new startupSQUARE.com website in the coming New Year.
So…what should I post next? Tweet to tell me what to write:Show me how to test product market fit!
orHow can I do lean startup in my friggin' huge company?