This post is aimed at founders/CEOs of high-tech startups, who consider themselves to be “non-technical” execs. Note, I include myself in this group. While I was a computer geek in high school and I have built a few fairly robust web sites, I did not take advanced computer science courses in college nor do I consider myself an engineer.
My recommendation is: if you have not yet learned a computer language you could use to build a simple web site (or desktop app), learn Python.
Why bother learning a programming language now? CEOs are busy, they have a lot on their plate between defining the company vision, recruiting employees, and of course, raising money. There are several ways non-technical founders and CEOs benefit from learning some basic programming and/or web development:
1. It’s the technology, stupid.
If you are starting or running a technology company, you need to know how the technology works, period. This is your business, if you run a web site, you need to know the basics of how a webserver works, how it connects to the database, how information is stored, how pages are constructed. By understanding the technology better, you will be better prepared to identify new opportunities and new innovations to expand your business as well as upcoming threats and weaknesses.
2. More credibility with your team.
Technical employees have greater respect for founders and CEOs who at least make a reasonable attempt to understand and use the technology that runs their business. They might not always say it, but they do.
3. More credibility with investors and partners.
When you understand your technology, you have more passion and believability when talking with investors and others, and they in turn have more faith in your ability to deliver on your vision.
4. Build your own prototypes, test your own ideas.
Any non-technical founder knows how frustrating it can be to be dependent on others to build working models of any idea you have, whether it’s for a new product or simply a feature. Being able to build your own prototypes and test them first-hand without having to pay a developer or distract a member of your team helps you work faster and better, plus…
5. It’s fun–and fun builds passion.
After spending a lifetime considering yourself “non-technical,” it is gratifying to actually build a dynamic web page, store data in a database, build an AJAX control–let alone writing a web site or desktop app that can perform a useful function for yourself. The fun you have using a bit of your technology naturally leads to feeling more passionate about the value of it, and that leads to more excitement with your team, investors, and users.
If you do believe there is some value in getting to know the basics of technology, I recommend you start with Python for these reasons:
- Python is fairly easy to learn. There are several excellent free tutorials available.
- Python is powerful. Python has extensive libraries that make it easy to build scalable, powerful apps without having to reinvent the wheel.
- Python has a future. Google and others are devoting significant resources to support Python for the long-haul.
- Python is flexible. Python can be used to write worldclass web sites, simple scripts, and even desktop applications.
- Python is open source and free. Free to use and free to deploy, with an active open source community.
- Python supports a framework. If you prefer to use a framework, Django is an excellent option for Python.
Of course, there are other great technologies you could choose as well, some popular ones are Ruby on Rails, Java, and PHP. Any of these are great choices. For my money (based on my limited, non-technical research and great input from some talented technologists), Python is above average in all the qualities that matter.
Regardless of which technology, you pick, I highly recommend you take some time, maybe 5 hours per weekend for a few months, and get your feet wet with some basic technology. I promise you will see numerous benefits in your ability to manage and grow your technology company.
p.s. – The above recommendations also hold for anyone who is considering a career as a high-tech product manager. In my opinion, the single biggest thing you can do to enhance your ability as a PM is to increase your technical understanding.

[...] getting hired–my advice would be to log onto a coding tutorial site (personally I recommend Python), pick an idea for a simple site, and get coding. Your job is waiting for [...]