While the old adage, “method makes excellent” absolutely relates to programmers, whether they are web or software programmer, there are a couple of various other ways to enhance your development abilities.
In this post, we’ll share five ideas that you could begin implementing today to become a much better Programmer.
Think more than code
Ian Candy, Developer and Instructor: “When I pictured what it would be like to be a developer, I imagined someone writing tons of code, their fingers flying away at the keyboard like they’re trying to hack into the Matrix—the faster you could type, the better the programmer you were. But after joining the team, what I found is that the better developers were actually the ones who spent a lot of time in thought—not actually writing anything but rather thinking out problems. As a team, a lot of times we’ll spend five to ten minutes just talking about what a method should be named to accurately reflect what it’s doing, or an hour discussing how classes are set up and how they interact with each other.
I have a specific memory of talking through a problem with a senior developer. I expected it to be a simple thing—I just had to add a table to a database. When I told the senior developer what I was thinking, he paused and said, ‘We need a whiteboard. We need more brain space.’ And as soon as we started writing down the problem and how everything worked, I immediately realized it was much more complicated than I had imagined. When I got the chance to step back and think through the problem, it looked completely different. Taking the time to think allowed me to make sure what I was planning was correct and that the code I ended up writing was more stable.”
Practicing data structure, Algorithms, and Design related problems
In my opinion, this is the most critical of things to do to become a better programmer. Most of the good programmers I have seen and met are really good in data structures, algorithms, and basics. By learning these things, you take better advantage of what is available. Since data structure is a key piece of any program, solid knowledge of them helps during problem-solving. Similarly, knowledge of key programming principles, search and sort algorithms and other well-known algorithms develop programming skills on you
It’s difficult and same time its central piece of programming. By doing coding, you also realize your mistakes in designing, error handling, threading and then go back to those respective skills to improve. You just cannot work in designing only, coding produce output, which is important to learn and act as a success. By the way, do not stop just after solving the problem, it’s always better to throw away your first solution, that is just a prototype, your next solution should address issues, missing requirements which you have found building a prototype.
We live in interesting times. As development gets distributed across the globe, you learn there are lots of people capable of doing your job. You need to keep learning to stay marketable. Otherwise, you’ll become a dinosaur, stuck in the same job until, one day, you’ll no longer be needed or your job gets outsourced to some cheaper resource.
So what do you do about it? Some employers are generous enough to provide training to broaden your skill set. Others may not be able to spare the time or money for any training at all. To play it safe, you need to take responsibility for your own education.
You learn more by helping others
Most of us have a common tendency of turning our heads towards forums or groups only when we need help. And again a clear separation between the good programmer and rest that the formers visit these places more often to help others. This makes them learn more then they learn getting their problem solved by someone else. Within a team as well, help others to solve their problems. Believe me, understanding others’ problem in their context, investigating on that and providing solutions; will leave you much more learned than before.
Before you rush off to implement the tips above, bear in mind that programming languages and technologies come and go. While this is a good reason to get familiar with as many languages as possible, you’ll become a much better developer if you spend your time studying and mastering the programming fundamentals.
The simple truth is that the basics never change and therefore it’s better to pay more attention to the underlying architecture rather than focus on mastering the latest new feature to come out in a particular language. And once you have a firm grasp of the fundamentals, mastering your favorite language, or even picking up a new one, becomes much easier.