Entrepreneurship for Computer Science Majors
Should I start a software business?
Computer technology is so pervasive in our lives that many computer science majors have the potential to improve the lives of many. If you're passionate about computer technology and you're capable of building cool software then you should certainly give thought to starting your own company.
For some, it may be an obvious choice but I also know many who think of "businesses" as "something with money", not really what they're passionate about. But in this article I'd like to argue against that view: it may just be a limiting belief that prevents you from launching a successful software company in which you can express your passion for computer technology. I'm also going to provide some interesting resources on starting a software company.
This article is mainly written for computer science majors and not necessarily for business people who have an idea for a software company. In this article I'll argue why the business world is not that scary for computer technology folks.
What is a business and what about entrepreneurship?
I have noticed that many people view a business as something scary that deals with a lot of money. They seem to think that the purpose of a business is to earn money and it's precisely that view that prevents you from understanding what a business is really about. The basic premise of a company is to do something that improves the lives of customers... and in return they pay money for that product or service.
For example, if you want a bike for cycling then you go to a bike company and for a certain amount of money you get a bike. You are happy with your bike and the bike company is happy with the money. I'm explaining it in really simple terms but that's what it comes down to.
The same applies to software companies. If you have an idea for a cool software product that would be valuable to a certain group of customers then starting a company can be a viable option. If you're passionate about computer technology then there's no need to shy away from the realities of starting a company.
You may view yourself as a programmer or hacker (in the ethical sense of the word) and not as a business owner or entrepreneur. That's not a problem at all; what matters is that you're willing to learn and to adapt in order to get a business operational.
What about "the idea"? What should the company do?
Don't get too hung up on coming up with a magical idea for starting a business. Good ideas are not difficult and they simply solve a customer's problem. If a customer is struggling with something and you can do it better then you can create a valuable product. For example, the company Hipmunk makes searching and booking a flight easier than previous travel websites.
You don't need a PhD either for many ideas. For example, a skilled student could create a Facebook or Twitter for a 1,000 users using just knowledge from a first-year computer science curriculum. It becomes more difficult when you have millions of users of course. Even then you simply need to learn more about scalable technology and discover how others have approached this "problem". It's the basic idea of these companies that matters: they are respectively helping people with keeping in touch with their friends online and communicating to the world and friends with just 140 characters.
If you're looking for an idea then look around to see where people are struggling. If your software product or service genuinely helps people then you can earn money somehow.
Another approach is to look for a gap in the market and to do something that was not possible before. You may invent something that nobody wants but it often happens that you need to adapt your ideas to suit your customers' needs.
- How To Become A Good Programmer
What makes someone good at writing code and how to become a good programmer? This articles shares some insights on how to improve your programming skills.
Not ready to start a company? Look proactively for a job
If you're not ready to start a company then there's no need to worry - many people don't start a company right out of college. One of the resources that I link to below also discusses this: it's not your age but your ability to succeed in business that matters. In particular in software you may want to work for a few years first to see how things do and this may prove to be very valuable experience.
For example, many computer science curriculums don't discuss subjects such as scalable technology, load balancing and managing large volumes of data. They teach you the basics of databases, data structures and computer programming but you simply lack the knowledge and experience for large scale software problems.
In this day and age, it's more important than ever to keep learning and to learn about technology as it advances at a very rapid pace. Look for a job where you'll not only be programming but where you'll also learn about, for you, new technologies along the way.
Resources for those interested in starting a software company
Below I'll give an overview of some very insightful and detailed articles. These contain general knowledge about starting a business but also on the software industry in particular.
- Resources for Computer Science Entrepreneurs
What are some good resources for computer science graduates that aspire to start a company? This article gives you an overview of resources for computer science entrepreneurs.
- Entrepreneurship, Age, and Money Is It Better To Start Young or Wait Until You Are Older? | Busines
What is the best age to start a company? Right out of college or later? In short, the conclusion is that it's your ability, not your age, that matters most.
- How to Start a Startup
Article by Paul Graham of Y Combinator on starting a startup. I love his final conclusion which demystifies starting a business and reduces it to what it's about: "Build something users love, and spend less than you make. How hard is that?"
- Essays by Paul Graham
While I'm at it, look through these articles for ideas and insights on the software industry and startups, including topics such as looking for funding, qualities of founders and the value of ideas.