Learning to code is challenging and fun. It can also be super frustrating. How many times have you spent hours wondering why your code won’t compile after you’ve tried everything? How many times have you finally figured out the issue, and it was a simple typo? To know the pain of a single dash, underscore, or misspelling! You always want to take a step away and relax when you hit roadblocks, which is what most developers suggest.
Here are six important tips for learning to code:
My introduction to programming was making calculator games in TI-BASIC in high school through self-study. I studied Professional Writing & Technology in college alongside Creative Writing and Rhetoric. I didn't study computer science. Instead, I incorporated building websites for local businesses and organizing for the arts as a part of my studies.
I attempted to learn several programming languages on my own during that time: Java and C++ mainly, but I was using outdated books or online resources that weren't the best. I kept making static websites, but I gave up on “programming” because I was frustrated and didn’t have the best resources or support at the time.
When you learn a web framework like Django, for instance, you’ll need to understand at-minimum: a bit about HTML, CSS, and Python (common data types & writing functions as well as writing classes).
So work on each of these separately, then bring those skills together. For example: Build a simple static website with a few pages of content and then learn Django by converting it into a Django site with an email form.
Instead, set smaller goals. Reward yourself for understanding concepts, for building working programs, however small. If you know your objective is to build a mobile app, learn something like React Native and make a simple application that you can build on with complexity later. Celebrate each step of the way!
The greatest difficulty for me while learning Django came with understanding models. The concept of MVT architecture didn't immediately click with me. I was very comfortable writing functions in views.py and changing settings, but I kept getting stuck for some reason. It took drawing out copies of charts and visualizations, copying different versions of other working examples of code, and spending some extra time reading about SQL in order to get a decent grasp of what the ORM was doing.
I remember what helped make everything click for me was doing the "Writing Your First Django App" tutorial even though I already understood most of the concepts it covered. It allowed me to solidify my understanding and focus on what I was missing.
Programming isn’t usually writing machine code for a specific processor from scratch anymore. The majority of programming that a software engineer does on a day to day basis is adding or fixing individual smaller features. And learning to code doesn’t have to be a monumental undertaking. When you want to learn to code, sometimes the best way is to learn a framework. Having a structure or specific path can really help guide the learning process.
Learning to code is not easy. It’s a craft. You can build individual skills, but it will take many years to master. It’s honestly a lifetime pursuit. You will learn new technologies as they develop, keep yourself up to date on revisions of language, and write many lines of code. If you don’t enjoy it, you will eventually not want to do it. And no amount of money will change that.