CEOs who code

20 years ago when I started my first company, I wrote code. (Quickbasic and Turbo Pascal – nothing fancy.) In fact, my partner sold our products and I developed them, for about the first 4 years. As our company grew, we hired developers and I haven’t really written code since. (I did a little bit of HTML a few years back but in all my companies have relied on employees who were much better coders than I was.)

I’m feeling rusty. And today, for the first time in years, as I watch my team of engineers get really excited about all the things in the FamilyLink product roadmap, I also started feeling envious. I loved writing programs, testing them, and running them. There’s an amazing feeling of satisfaction when you build something that works – and better yet, something that is used by thousands of people.

Of all the hats I’ve ever worn, the only one where I ever felt “done” with work, was when I did accounting for Infobases, again back in the early days, using Quickbooks of course. When you closed out a month, your work was actually done, and that brought a nice feeling of satisfaction. But as CEO or VP Marketing, and in most other roles I’ve had, you are never done, because there are always a million more things you could be doing.

Writing code is kind of in-between. You know what is required, you write the code, you test it, it works, and you’re kind of done. You always know that there is another iteration or version just around the corner, but you do get a feeling of satisfaction when the program works as designed. Even if the next features are already on the drawing board.

Tonight I spent a half hour with some Javascript tutorials. Pretty fun stuff. Truth is, we are short on front-end coders at FamilyLink and short on QA engineers. Our backend development team is awesome, and we have another tremendous programmer starting in February. But we need a couple Javascript/CSS gurus badly. We have had enough talent to develop FamilyLink.com into a top 100 web site – design, front-end, and back-end – but we have way more plans and ideas than we have coders to pull it off.

For the next 30 days our development team is planning a pretty-continuous hackathon, since Facebook has announced changes that will have an impact on all their app developers, including us. We’ve reorganized the office so that all the devs and product team are working in 2 huge adjacent offices. I may join them if there is enough room. I may find myself doing a bit of QA in the next month. That won’t require learning Javascript as much as it will require understanding our customer experience and maybe getting up to speed on our development environment. But who knows, maybe I’ll have time to do some additional Javascript tutorials and find myself contributing to FamilyLink.com – if not by writing code, then by searching for Javascript libraries (I found a great one tonight that cartographers can use on top of Google Maps) that my team ought to be aware of.

I recently read that Mark Zuckerberg has always loved coding, but even he has given it up recently,  according to VentureBeat, to focus on company culture and strategy. From what I have heard, the fact that he is a coder and hired coders created an amazing culture at Facebook.

I have always felt Bill Gates was an amazing CEO because he mastered both programming and business. And I think it is hard in a high-tech company, to be a successful CEO if you only master one of those two things. There will be things that a non-technical CEO will never understand.

Can you think of any CEOs who still code, and who claim that it helps them be a more effective CEO?

10 Comments

  1. I’m not a CEO, but a CTO. CTOs who code are probably more common. Still, I like having my fingers in the code. Even when we were doing iMall in the late 90’s and had 60-70 developers, I still wrote code actively. I found that it was the only way for me to understand what was happening at a deep enough level that I could have a real impact.

  2. Paul, if you’re going to learn JavaScript, learn jQuery instead. I rarely write JavaScript that isn’t jQuery — it’s much more productive and actually fun. jQuery selectors will make sense to you since you’ve done HTML/CSS before. Maybe something from http://docs.jquery.com/Tutorials ? You’ll fit right in at the dev room!

  3. I agree full heartedly with what you’re saying Paul. As a CEO, I find that the biggest advantage to have a CEO that is also a coder is the understanding of the business side as well as the development side. As many of us know, the biggest challenge in internet/technology business is being able to align the desires of marketing and development. Oh the fun in that! As a CEO who knows how to code, it helps to be the balance between the two.

  4. Back in the day I dabbled in Java, PHP, .NET, VB, and ASP, but I was never very good with it all. I was darn good at HTML until the tables turned…that is, until they took my tables away. That’s when I gave that up, other than for editing code done by other people. These days I’ve adopted Michael Gerber’s advice that technicians should not be CEOs, and vice versa, so I try to stay away from doing any of the real work I used to do like SEO and design, as well as the coding. This seems to work out well for me because when I get too involved in the execution of projects I tend to ignore other important aspects of the business. That said, I’m glad I have the coding background so I know what’s possible, how long things should take to get done, whether a request is reasonable or not, etc.

    But that’s just me. Jason Fried and the rest of the “management team” over at 37signals seem to stay involved with coding, and it seems to work quite well for them.

  5. What an amazing article. You have completely summarized what I’ve been thinking. The continual downside of a programmer starting their own development business is that in the end (if it’s a success) you’ll have to give up the one thing you started it for. Thank you for taking the time to put this down and sharing your thoughts. I look forward to hearing more from you!

Leave a Reply

Your email address will not be published. Required fields are marked *