Getting Started With Coding

Starting Coding 1

tl;dr Why are you coding? Pick your language. Read up on potential pitfalls.


Publish Date: 2021-05-10


Return Home


So You Decided to Code?

Great! Coding is a skill that is growing in importance as computers become more and more integrated into our daily lives. Being able to understand how coding works or being able to actually program something will likely be valuable in the future.

But Where Do I Start?

A more difficult question, and admittedly I am relatively new in this journey as well. However, I thought it might still be useful to share what I've learned as I've gone down this path these past months. Your path may be different, and it's worth checking out other sources to see what other people may recommend before going too deep into any one language.

Choosing a Language

Choosing a programming language to learn is not too dissimilar from choosing a foreign language to learn. It may be based on practical reasons, it may be based on ease to learn, it may be based on an area of interest. That is the first thing that I would recommend to settle. Why are you learning coding? Is it to get a certain job? Is it to make games? Develop websites? Apps? Machine learning or AI?

For games, it is probably best to learn C++ or C# (seems to be the most common). For websites, Javascript (and HTML and CSS). For apps, Swift if you want to only make iOS apps, Java/Kotlin for Android. There are also a couple language out there like React Native and Flutter that can do both. Machine learning and AI, start with Python. Not exactly sure? Python is often recommended for it's ease of learning, and in my experience with Python it is relatively easy to write and understand what's happening. I went with Javascript because my interest is in websites and it can ultimately be used for both front and back end development.

University? Boot Camp? Online?

So, you've picked a language. Now what? Do you need a computer science degree to code? What about those boot camps you've heard about? Can you just watch Youtube and Udemy videos?

I don't have a computer science degree (finance and education here), and to code you really don't need one. Just like you don't need an English degree to fluently speak English. Now, it can be useful of course to better understand what's happening with the language and computer, but that won't prevent you from designing a nice website or building a cool game. So unless you love school or have a lot of time and money to spare, probably skip the CS degree.

Boot camps, for me, was the more difficult choice, and ultimately a route I didn't choose. Let me explain why. Boot camps are probably going to run you $10-20K for a 3-6 month course. Cheap when compared to a full college degree, but still not cheap if you're making a career change or looking for a job. Additionally, speaking to people who have done boot camps, boot camps are hard. They need to cram a lot of information and practice into a short amount of time, which if you're new to coding, can be very stressful and a lot of work. The benefits of boot camps, however, are many: the ability to get instruction and feedback from a real person, a network of other individuals, potential job connections after, and some credibility for your resume. If you have the money, struggle with self-motivation, prefer to work with people, and have access to a reputable program (definitely do your research on boot camps in your area) then a boot camp isn't a bad choice.

So, what about the self-taught route? Fortunately, if you want to go this route there are a lot of options for you. Finding incredibly knowledgable programmers and developers on Youtube is easy. Udemy offers a wide range of courses that can be only $10-20. There are lots of forums and chat rooms to ask questions and get good answers to your problems. All the software you need to get started with coding is available online and free (for the most part). Self-taught is the route that I am on, and I'll tell you why I decided to go this route as well as the pitfalls that you may encounter.

Why Self-Taught?

The biggest reason for me was financial. I could have afforded a boot camp, but it would have taken a significant chunk of my financial savings, and given the time needed for the boot camp it was a risk for me if that boot camp didn't immediately turn into a good job. The boot camp I was looking at had a decent reputation, but not amazing. Additionally I wasn't sure if I was really made for programming. I had taken a course in high school and didn't exactly fall in love with it then. So dropping almost $15,000, not being sure about jobs after, taking a big financial risk, not being sure if programming was right for me, starting off with self-taught online lessons made more sense.

Benefits of Self-Taught

The biggest benefit of the self-taught route that I've found is that you can A) move at your own pace and B) you can pursue the courses that interest you. At first I needed a lot more time to really understand some of the concepts being taught and to learn the syntax used in web dev. Being able to re-watch videos or just take some time to process stuff was very beneficial. At first I took very small bites, and now that I have a better grasp on the underlying concepts I can take in more information faster.

As to (B) I was able to jump around a bit to find the area of programming that was interesting to me. Now, I don't recommend jumping around too much, but it's worth trying out a few languages to see what you like and don't if you are not sure about what you'd like to do with programming. So, I started with HTML, CSS, and Javascript. After getting the basics of those, I dabbled a bit in Python to see what it was like. I played around a little with Swift as well before focusing on Javascript. As I grew in Javascript ability I started to branch into different areas of that - React, Next JS, Typescript, Node JS, etc. I haven't looked at every boot camp there is, but I'd guess that course that offers all of those options isn't out there.

Self-Taught Pitfalls

The biggest issue with self-taught is that it's up to you. You need to get on the computer every day, study, practice, debug, and do everything yourself. Programming, especially early on (and well, always, to be honest) can be extremely frustrating and demoralizing. You spend minutes, maybe hours just to realize that you put a '' instead of `` or you put an 's' at the end one place and didn't in another. And when you're just starting, those kind of mistakes can make you think "I'm not built to be a coder". Self-taught also requires that you spend a lot of time studying on your own. If you don't have that self-motivation then, self-taught may not be the best choice for you.

Additionally, following tutorials can be good when you're learning, but ultimately you need to learn to do it yourself and to problem solve without a Github repository to check for hints or an instructor to tell you how to fix it. Many online courses will offer chances to code on your own, but there will always be a walkthrough later. You need the motivation to really give it a go on your own before turning to the answer. Coding will often make sense and be easy when you code along with someone, but will seem impossible when you do it on your own.

Ultimately, self-taught means just that. Self. If you have the willpower to struggle through, find answers, and keep yourself motivated, it's a good choice. But if you struggle with any of those, maybe pursue other options.


I think this blog post has gotten long enough, so I will stop here. In the next post I'll talk more about getting started with web dev more specifically, computer and software you will need, and more!


Questions? Comments? Drop a line!