So, I was glancing at Reddit first thing this morning and saw the following question …
I’m exploring the possibility of being a programmer, wondering what there is to it, and why you enjoy your job.
A very articulate high-school student was thinking about career choices and wanted to know what being a computer programmer was about and if he should explore it. Always wanting to encourage potential programmers, I offered my answer …
I agree that it’s important to choose a path that you will enjoy. Life is too short to waste it being unhappy.
The best way for me to answer this is to tell you how to do it. First, programming is an incredible exercise in problem-solving so it’s worth learning the basics for its own sake. I recommend that you start learning a language, maybe Java or C# or Python. They’re all popular so just pick one and don’t over-think the choice. There are too many technologies out there to learn them all anyway (but I suggested Java and C# because the C-like syntax will help you with other languages should you continue.)
When it comes to learning, I recommend a combination of book study and personal projects. Get a good language manual and start working your way through it to learn about types, variables, objects, arrays and all the other building blocks. As soon as you can, think of something you want to do with the language and start programming it. That will motivate you to keep learning and you’ll learn new things with every project you take on.
When you finish your project and you are watching the program that you have created work really well, doing something that you needed done or meeting someone else’s needs, you will know what it feels like to be a programmer. If you like that feeling, do it again.
If you get really good at solving problems with code, there’s also the possibility of something close to a six-figure income depending on your location and your ability to market the skills. Unfortunately, too many companies will take that talent of yours and make you hate using it through poor managerial practices and stupid policies. It’s important to find the best outlet for your skills or at least keep your sense of humor until you can.
Also, be sure to spend plenty of time with other programmers. This will continue to motivate you and reinforce your skills.
I wish you the best in whatever you decide to do.
For more information, check out my series Getting Started in Software Development on AndrewComeau.com. Another article, Surviving the Programming Interview, offers some additional insights on life as a programmer.
Photo courtesy of Carsten Tolkmit (http://www.flickr.com/photos/laenulfean/)