Running a startup is hard. I say that even though my own startup, has been kicking ass growing from 22 to 42,000 subscribers in less than 28 weeks. It’s grown from a small side project to a serious company & great community service to the startup ecosystem. I can’t even imagine the stresses of running a startup that’s not growing or stuck in the trough of sorrow.
Much of the difficulties actually doesn’t come from the business or product itself, but from the psychological stresses and relationship issues of co-founders. If you haven’t read this Paul Graham essay about the reality of startups, I would read it now. Eric Ries says it best: building a startup is a human institution creating a product/service under extreme uncertainty. It’s hard to describe this in words but when you are going through it your psyche knows it.
To cope with this extreme uncertainty and stress, you need a hobby outside of work. This can be anything you enjoy: swimming, reading, yoga, meditation, ultimate Frisbee, or any activity you enjoy for the activity itself. You need a hobby to get your mind off of startup life and for mental clarity. But what if you don’t have a hobby? I was in this exact same position a week ago. I was having a beer with my friends Abraham, Krutal, and Brendan and I asked “what are your hobbies?” hoping to get some ideas of activities I could take up for myself. Instead everyone around the table sat with a puzzled stare, and the best we could come up with is partying. At this point I realized neither I, or most of my founder friends actually had a hobby they cared about. So I decided, I have always enjoyed helping others and therefore recently I started working as a volunteer, helping people prepare for a GED exam and motivate them to keep practicing these GED tests we publish free of charge.
That weekend I had dinner with some close friends outside of the startup world who were telling me about some of the activities and adventures they had been on.
I have a feeling that all users of computer software must learn to program. I couldn't agree more and I am happy to see that we are making progress towards this, albeit a little slowly. Artists are learning to program. Musicians and mathematicians are learning to program. Pretty soon we will have most civil engineers and doctors programming as well. Programming is a glue that enables you transform and use for your own purpose something that someone else created or discovered (without having to wait for someone else to do it for you).
Programming is not much of a discipline by itself (although Computer Science is). However, everyone need not be a computer scientist in order to be able to program (in a similar way that you need not be a doctor to treat yourself from a small cut). Moreover, a slight shift is happening. Earlier you might have been looking for good C++ programmers, but now you need to start looking for good C++ programmers who are great at solving certain kinds of problems (like computational geometry). This greatness and ability to solve certain problems is what differentiates a programmer, not C++.
Many a times people who are technically competent (that is, of the nerdy sort) tend not to be too social. Which is okay. However, due to this they sometimes might become reluctant in providing/conducting training sessions for others, and in sharing their knowledge and experience.
Of course, this does not indicate that they are not good at training people. In fact, you will be surprised to find that most nerds (who have a pretty strong grasp over their domain) tend to be extremely good trainers, because they have this in-depth knowledge which gives them an uncanny confidence. While nerds can choose to remain socially aloof, they must share their knowledge and insight via training sessions.
Who knows they might become social nerds! Or in turn create more nerds in your organization. Although, I am against nerds becoming too social :) It might take a little while for über nerds to adjust to a form of training that is useful for lesser mortals, but they tend to adjust to the situation quickly enough. Short training sessions like these should eventually get most techies in your organization into a higher plane. If you don't have any über geeks then at least get everyone to start watching.