The question that most newbie programmers often ask is, how to improve programming skills?
In the past 15 years, I used different ways to improve my programming skills. I used to spend time in reading/writing code, working with experienced programmers and reading blogs and websites. I have listed few of the points below which in my opinion will be quite useful for new programmers.
01 Practice, Practice, Practice
The obvious way to practice is to write programs. To learn, to effectively practice, you need to work on things that aren’t easy for you. Always create a schedule or structure that you follow.
After all practice makes a man perfect!!!
Practice algorithms, data structure, software design patterns related problems to improve programming skills.
02 Never stop learning
The most important thing is to never stop learning. I think one should always try to make a conscious effort to improve.
This is also obvious from the fact that IT industry is constantly changing and evolving.
03 New programming language every year
I believe on “learn one programming language every year” system as each programming language changes the way we think about programming.
You have to learn diverse programming languages as much as possible if you want to move ahead in your career. You need to constantly learn new languages and improve programming skills so that you will not become outdated and left behind.
04 Look back at your old code
Looking back at the code you have written in the past and realizing just how bad it was.
As Churchill says:
Those that fail to learn from history are doomed to repeat it.
05 Pair programming
Pair programming with other programmers might increase the quality of code, broadened your horizons, and help you work in as a team member.
As the old saying:
Two heads are better than one.
06 Read different code
Reading and figuring out code written by different people makes you think differently. The following quite perfectly fits in this situation which I borrowed from Alen Skorkin’s Blog.
We’re fortunate to be in a profession where the knowledge and skill of all the masters is right there for us to absorb, embedded in the code they have written.
07 Write documentation
Write documentation for code written by other people. This helps in understanding the way other people think and program.
Programming languages serve as a means of communication so should be clear for others. You can write self-documenting code or write code comments but it should answer what the code does and why.
09 Involve in Open Source projects
Get involved with open source projects. There is a myth that we can contribute to an open source projects only if we are expert in that programming language.
There are two benefits of this 1) you don’t have to think of a practical idea to start experimenting with 2) you will get a chance to learn by looing at other’s code and write similarly.
Here is an interesting story on this.
10 Join developer communities & networks
- Stack Overflow – Where Developers Learn, Share, & Build Careers.
- Reddit’s Programmers Community – It has over 2 million active members.
- GitHub – The world’s leading software development platform
- Quora – Question-and-answer website
- IBM DeveloperWorks
- Developer Networks – Microsoft – Google – Facebook – IBM – Apple – Mozilla – Yahoo! – Twitter