Skip to main content
  1. Posts/

How Will You Know if You'll Like Programming?

Joe Erickson
Author
Joe Erickson
Senior software developer specializing in web development, AI, and helping others learn to code.

Learning programming to the level of being able to create web applications or work in the field can take a lot of time and effort. But what if you don’t like it? What if you spend all that time and effort and it ends up that you hate programming and never want to see its ugly face again?

I hate to say it, but this can happen. I’ve seen it happen. I’ve worked with a couple of developers who went through the whole schooling thing, got a job and found that they couldn’t stand to sit in front of a computer all day, solving stupid, fiddly computer problems. (Their terms, not mine. I like solving stupid, fiddly computer problems.)

So how can you find out if this is something you’ll enjoy before plowing six months to a year of your life into learning it?

Take a Taste Test
#

Before diving into a bunch of different areas of study, I can tell you that ninety-nine times out of a hundred, the people that don’t like programming don’t like it because they don’t like solving programming problems. There’s a lot of mental work that goes into programming and some people don’t find the mental work interesting or rewarding. There’s nothing wrong with that. I don’t find solving social problems that rewarding but, thankfully, there are people out there that do.

So, how do you find out if you like mental challenges like the ones you’ll find in programming? By doing mental challenges! Here are two quick ways to do that.

Take a Programming Crash Course
#

There is a great book to work through if you want to dip your toes in the water of programming and it’s 100% free and online. That book is Automate the Boring Stuff with Python. The awesome thing about this book is that it is half primer in the Python language and half practical application of what you learned. It won’t teach you everything about programming–or even everything about Python–but will give you just enough to be able to dive in and solve some real life problems using programming. If you enjoy working through this book and–more importantly–enjoy applying these lessons to your own computing problems, then there’s a pretty good chance that diving deeper into programming may be for you. It also doesn’t hurt that the book is a great first step into the Python programming language, a language that is gaining a lot of popularity in the web development and AI worlds.

Go to Camp
#

Another great website to learn coding from is FreeCodeCamp. I would recommend working through the JavaScript Algorithms and Data Structures Certification at least up until the Basic Algorithm Scripting section. This will teach you the most popular language in web programming today–JavaScript. It will also let you flex your muscles and start solving what programmers call algorithms. A algorithm is just a fancy way of saying “a piece of code that solves a certain problem” and that’s the main thing most programmers do on a day to day basis. If you work through this and see it as pain rather than pleasure? You probably wouldn’t want to do it all day, every day either.

Try one of these sites–heck, try them both–and if you aren’t having fun or feeling like you’re accomplishing something while doing them, I would recommend not becoming a programmer. If you do like doing them, then setting up a real training regimen and tracking your progress is your next step to success.

Related

Ask Away: Judging Your Skills

I recently got an email from one of my tutoring students about how he had finished setting up an e-commerce site for his Dad’s salsa business, which was a pretty big accomplishment. But there were two things in the email that I took issue with. One was that he thought it was weird that another web dev shop had asked for $3,000 to set up a shopping cart in Spotify and the other was that he felt that using an off the shelf solution (BigCommerce) was a cop out and he should have been able to build it himself. I think everyone’s felt both those things at some point–I know I have–but I sent him this in response:

What to learn when you want to learn web development

·1067 words·6 mins
I’ve seen a lot of posts on /r/learnprogramming and other places wondering how to get started with web programming. I’ve been doing this for about 15 years now and I’m here to give you some good news. Everything that I’ve done, from bill pay sites for Fortune 100 companies to lead tracking applications for small businesses, is essentially based on one simple concept and that’s CRUD.

Java: Unstrung

·452 words·3 mins
So Strings are built for optimisation, but are you using it in an optimised way? If you understand interning and immutability, you can start looking at ways to use those features to your advantage.

Java: The Unchangeable String

·526 words·3 mins
One of the fundamental data types in Java is the String. In fact, it’s used so often that most people don’t even think much about what a String is or how it works. But a String Object works like no other object in Java in two important ways; immutability and internment.