Whether you’re an old hat at programming or you’re just getting started drafting your first scope of work templates or signing the first contract template, the truth is you can’t stand still. You must always be on the lookout for ways to improve coding skills.
In this article, we share 15 practical tips you can start using today (plus one you probably didn’t think of) to become a better coder.
Step away from the screen.
The world of programming is an ever-changing one, and because of this, many novice coders tend to overlook books in favour of online tutorials. But the fundamentals hardly ever change, and the best coding books often delve into a level of detail the online tutorials can only dream of.
At the start of your coding journey? Here are the must-haves for your bookshelf:
Coding-related podcasts offer a great way to stay on top of trends, learn about new techniques and web design tools, and hear from more experienced programmers about their career trajectory. Learning by listening is also an enjoyable and effective educational approach, and gives you the chance to engage with the content in a different way - away from the cat videos and clickbait distractions.
Here are some of our favourites:
Learn from others, for example:
A surefire way to improve your programming skills is to speak with (and listen to) those already working in the field. Join Stack Overflow and ask questions, or sign up to Reddit and visit one of the many relevant Subreddits (the programming one is a good place to start). Share your code and ask for advice - you’ll be blown away by the eagerness of the community to help.
As far as improving your coding is concerned, joining and contributing to GitHub is non-negotiable. No matter how experienced you are, you’ll almost always learn something new when you add your two-cents to an Open Source project. Whether that’s from observing someone else’s code, or from receiving feedback on your own, it’s a brilliant learning curve and a huge confidence booster all rolled into one.
Got a favorite site? Curious about how it does its thing? Get into the habit of looking at the source code and try to piece together the frameworks and processes used by the programmer. It’s a great way to learn and a brilliant source of inspiration. And if you see something you don’t understand, simply return to the communities mentioned above armed with a bunch of new questions. Win-win.
If you happen to know who was responsible for a site or an app you love, find them and follow them on social media. It’s another opportunity for you to ask questions, only this time you’ll get the answers straight from the horse’s mouth. Plus, you can build a solid network of coding professionals on which you can rely when you need help.
Learn by doing, for example:
Newsflash: Your programming won’t improve as quickly as you’d like if you’re not actively working on real projects.
So, how do you find these projects? Well, you could check out freelancing sites and pitch your services to small businesses. Or you could cold email local agencies with freelance proposals and offer to lend a hand when they’re busy. Working on something at the moment? Experience effective project management with Bonsai by signing up for a free trial today.
However you do it, the fact remains: It’s only when you have some skin in the game that your focus levels go up a notch and your problem-solving skills rival those of Sherlock Holmes.
If you’re not yet confident enough to pitch for real projects - or you don’t have the portfolio to back up a sparkling pitch - don’t let that stop you from rolling up your sleeves and getting to work.
Most experienced developers have done work on spec just to prove their capabilities. Building your own site or app helps you learn AND gets you noticed.
Absolutely no-one becomes a coding guru overnight. It takes hard work, practice, and determination. However, if you want to add a little jet fuel to your development, you should take some time out each day and challenge yourself with something new.
Of course, it doesn’t have to be complicated. Maybe it’s learning a new language feature or mastering a shortcut. Whatever you choose, over time these little challenges will add up to significant improvements.
If all you do is read about coding, then code until your eyes are square, you can lose the love of it pretty quickly. You need another way to learn - one that’ll inject a bit of fun into proceedings.
Enter: Coding games. Gamified learning lets you hone your programming skills and boost your confidence as you crack puzzles and progress through the levels.
Here are some of our favourites:
Change your mindset and workflow, for example:
We all approach learning differently. You might enjoy getting to grips with the basics by reading a book, or you could require the structure and direction of an online course. There’s no one-size-fits-all solution. The important thing is that you choose the method that works best for you. Sites like Codeacademy are a good place to start if you’re a more hands-on learner, while the books outlined in tip one will appeal if you prefer brushing up on theory.
When you’re stuck on a piece of code, grab your phone and set the timer for 15 minutes. If the alarm goes and you’re no closer to a solution, it’s time to ask for help. Turn to one of the communities described earlier, hop on social media, or ask a co-worker. Because the longer you stare at a problem, the larger it looms and the more frustrated you’ll become.
The 15-minute rule helps you avoid these frustrations and puts you on the path towards learning and mastery.
To keep improving as a programmer, one of the most valuable things you can learn is how to take criticism.
Spoiler alert: You can’t take it personally.
If you stick your fingers in your ears every time someone points out an error or suggests a better way of doing things, you’ll never grow as a developer.
You’ve probably heard the saying “mistakes are proof that you’re trying”. So when you’re faced with an error or your code fails to compile, the best thing you can do is control how you react.
Try not to become frustrated or angry. Instead, use it as an opportunity to learn. Use a debugger to step, line by line, through your code until you identify the mistake. Or pick up a rubber duck (other inanimate objects are available) and calmly explain your code and its goals until you figure out why it’s not working. Maybe there’s a typo or a problem with a variable.
Rubber duck debugging is helpful as it forces you to be slow and deliberate when explaining your code, to the point where you’re likely to happen upon the error yourself. And you’ll almost always learn better when you discover the solution for yourself instead of having it gift-wrapped by someone else.
Specialize to improve further, for example:
Programming is such a vast and varied discipline that it’s unlikely that you’ll ever know absolutely everything. Instead of trying to become a jack of all trades, find an element that you enjoy and focus on improving that ten-fold.
For instance, spending time working to improve your coding skills in Java could make you a far more employable and sought after candidate in the future than if you studied a little bit of Java, a little bit of PHP, etc.
You’ve guessed it. We’ve now reached the point in the article where we drop a Latin proverb:
Docendo discimus. "By teaching, we learn."
When you learn something new, don’t keep it to yourself. Teaching others is yet another step to improving your programming skills. Why? It helps you consolidate that knowledge and proves that you truly understand it.
So, host a webinar, stand up and speak at a meetup, or crack your knuckles and write a blog post. It’s a great way to network, builds your confidence, and demonstrates your abilities to clients and employers.
You know the old adage: Practice makes perfect. You just need to make sure you’re leaving yourself enough time each day to improve your programming.
Sign up for a free trial and use Bonsai to track your time more effectively.