When learning a programming language, you are going to make many mistakes – it’s normal that your code won’t work the first few times. That said, the key to learning code, is to write code as soon as possible, and as often as possible.
… Even if the code you are writing, does not make sense to you at the time.
The anxiety when learning something new
I was recently reminded of the anxiety most people experience when learning something new. Case in point, though I’ve been creating videos for many years, I always just used the camera’s automatic settings. I didn’t really know much about my equipment.
A little while ago, I decided that I wanted to do more, and so I ventured into more advanced functions like:
aperture-priority
shutter priority
manual mode
… I wanted more control over the video I was shooting.
At first, understanding these basic concepts was confusing, and I was wondering when it would all sink in … therein lies the anxiety. The not knowing if you will ever get it.
In the end, as it is with learning to write code, I just had to use the camera … you have to jump into it and start practicing.
What is the best way to learn to code?
Over the years (since 1994,) I’ve learned 9 programming languages. That may sound impressive, but it isn’t really. Like learning to drive a car, once you understand one programming language, you pretty much understand the basics of all programming languages!
So having done this many times, I can tell you that if you want to learn to code, you have to dive in and write code.
It comes down to these steps:
Do a little theory.
Write code that was taught in the theory.
Repeat
… It’s about bite-size morsels of delicious little code bits! You have to write lots of code, make mistakes and write more code. Repetition goes a long way.
This is a method that is proven to work btw, and we’ve used it for 7 years with StudioWeb. StudioWeb’s courses include: HTML5, CSS3, JavaScript, Python, SQL and PHP.
I’ve been in the web development business for over 20yrs now, and one consistent problem for many well meaning nerds, is the over engineering of web apps. This extends to all development as well, not just the web developers.
… The old KISS acronym “Keep it simple, stupid”, seems to be forgotten with every new generation of developers.
So today we have once again, new and overly complex frameworks and apps being thrust upon us. I vlogged about this recently in this video:
Shameless self promotion:
If you like web development and you like things simple and easy, then you will probably like my Interactive Web Developer course package – it’s the best I’ve ever made and people love it.
I am writing just to say how happy I am with the courses. Although, I am a member of Lynda and Udemi, your courses are way better. For me you are the HIDDEN GEM, the YODA of web design. Thank you for sharing your knowledge.
Web development is a moving target as technology changes. So what are the skills you need to start a web development business in 2017? It comes down to a few things:
Developing the skills of a modern web developer.
Figuring out what your local market is demanding.
Understand what KIND of development work you want to do.
I’ve been building websites and building apps since the early 1990’s. In that time, I’ve learned many different languages, and explored many different strategies when it comes to writing good code.
This is going to be my first blog post on the business of coding. In this series, I will not be getting into the finer details of writing code (I cover that easily in my courses,) instead, I will talking about things that only 20+ years of development experience can teach you. But if you follow this series, you will learn these useful tips much more quickly!
Tip #1: Giving time for your mind to rest will pay dividends in your coding and business career.
I am not a big fan of them because there is so much work out there. You could be getting paid to code (and learn) rather that doing a hackathon.
In addition, the only way you get coding chops, is by building real apps for real clients. One thing a lot of developers miss, is that being able to manage a project has a lot to do with managing non-nerd clients … you only get that experience in the real world.
I used to see the same sort of thing in martial arts, where certain styles are really big into drills and exercises. The problem is, that they put much less (if any) time into actual fighting.
… Then they take a beating when they are unlucky enough to mix it up with someone who spent his time sparring, rather than running through drills.
That said, the more code you write the better, so codathons will improve your abilities no doubt … but nothing compares to the real thing. Pick your analogy! 🙂
Everyone knows that kids who learn to code, will have a big advantage in the workplace and in life. Besides the fact that coding is a valuable skillset with an amazing number of high paying jobs, the mental training that comes with learning to code cannot be underestimated.
Homeschooling your kids in code
If you don’t know web design and coding, you need a structured curriculum that will gently teach your kids. Courses have to be easy to understand, fun and practical. Yes, practical: nothing motivates kids to learn when they see that they are building real things.
… What’s more fun for a kid, to learn to drive a go-cart, or a real car?
Which coding languages should kids learn?
Teaching your kids to code in any language is great, but I would say the most important and effective languages to teach are the languages of the Web:
HTML5
CSS3
JavaScript
Besides being used to create all the world’s websites and web apps (ex: google, facebook, amazon), these coding languages are also a popular choice in creating games and mobile apps that work on iPhone, iPads, Android devices and even Windows mobile devices.
Another great thing about these languages is that they are visual: students see their code come to life in real-world projects. This touch of reality is far more engaging than writing code that moves a character around a screen in a simulator.
Conclusion
I’ve been coding since 1994, teaching code since 2003 and helping schools teach code over the last 6 years. That experience teaches you a lot about teaching. If you want to easily home school your kids in code, feel free to check out StudioWeb.com.
To get the best outcomes with students (and yourself!), here are my top 3 code teaching tips:
1- Write real code, not ‘lego’ code.
2- Use real coding tools, not code simulators.
3- Build real projects from start to finish.
1. Write real code, not ‘lego’ code
A funny thing happens when students write real code: they start to learn not only how to code, but they learn the concepts behind the code. What I’ve seen over the years is that trying to hide the code from students with block based code teaching tools slows the learning process.