A Professor’s Perspective on Learning to Code
Written by Faith Wallace
Original post published here. More about Faith Wallace.
After a successful career as a Professor of Literacy, I decided to leverage my background in education to become a Front End Web Developer. This would be easy, I thought. I have excellent study skills, am self-motivated, and understand language development. I took a deep dive into researching this career change, and jumped in feet first. After spending a small fortune on courses and resources and months of immersing myself in the field, I realized that a) learning to code is both complicated and time-consuming and b) there had to be a way to learn to code on a tight budget without sacrificing quality.
With that in mind, welcome to my blog: A Professor’s Perspective on Learning to Code. Here, I focus on three issues: understanding why coding is not easy (but totally doable), which courses, resources, and applications are right for YOU based on learning styles, and how not to go broke in the process. This post is an introduction to what you can expect from me in the future.
Why Learning to Code is Difficult and Time-Consuming
The notion that learning to code is both quick and easy is a marketing strategy. When you see statements like that, you should automatically raise a red flag and question the motives of the author. If learning to code were quick and easy, there wouldn’t be a shortage of coders and thousands of jobs available (read here). More and more voices from the field have been writing to newbies warning them to proceed with caution (read here and here).
Besides learning programming languages, you also have to learn what it means to code from a global perspective. This includes learning a completely knew vocabulary. For example, at some point you will naturally use words or phrases like wireframe, flexbox, and switch statement. You also have to learn how to think like a programmer and understand your thinking process (this is called metacognition). For example, breaking your code helps you understand and build better code, but trust me, at first, all you will care about is making the code work, and you may panic when it doesn’t. You also have to learn what resources are available to you and how to use those resources properly; for example, you will hear many coders say they troubleshoot using Chrome Developer Tools, but how exactly do you do that.
This is a tremendous amount to learn, and I have only scratched the surface. Now, remember you are learning programming languages at the same time you are learning globally to be a programmer, and you can see how the amount of learning can spiral out of control if you aren’t extremely focused and using the right resources.
Finding the Right (Budget-Friendly) Resources
Everyone learns differently. That is why differentiation, a concept in education, is crucial. Differentiation means that education supports various styles of learning. Without going into too much detail here, there are a variety of learning styles. The most widely known styles are verbal (linguistic), visual (spacial) and physical (kinesthetic). Matching your learning style isn’t complicated and doesn’t have to break your budget.
If you are a verbal or linguistic learner, you will probably find success with programs like FreeCodeCamp, where the reliance is comprehension of the written documentation (then translating that into code). Note the word ‘free’ in the title. If you are a visual or spacial learner, you will be successful with The Colt Steele Web Developer Bootcamp on Udemy, where the reliance is on learning through watching instructional videos (then performing the necessary code). You can purchase this Bootcamp from Udemy for $10 — $15 when Udemy runs a sale, which is often. If you are a physical or kinesthetic learner, you learn by manipulation (or movement), in this case, building pages or applications. You will enjoy and be successful with Watch and Code’s Practical JavaScript, where you learn by creating a ToDo application. Luckily, Practical JavaScript is free.
There are myriad resources available to you, but it can be easy to fall down the rabbit hole as you research or try resources that might not match your learning style. In future posts, I’ll teach you how to recognize your learning styles and choose appropriate resources to compliment your style, as well as stressing the importance of developing new learning styles to be more successful in the field. Additionally, I promise to always be conscious of your budget. You shouldn’t go broke learning to code.
Thank you for taking the time to read this post. If you found it informative, please hit the heart button.
I’m always interested in hearing other people’s stories about learning to code, so write a comment, send me an email, or join me on Twitter.