Register now or log in to join your professional community.
Here is my template for success or "golden rules" if you will to grow as a developer. The rules are purposely kept simple so they are easy to follow and can be applied to learning other skills too.
1. Learn from others - With so much free content available on the web there is always an opportunity to see what others are doing and to learn or imitate their skills whether its from tutorials, videos, courses, the list can go on. To improve your programming skills simply paying a visit to Github and other source control services will give you access to a wealth of open source projects coded by some of the best developers in the world. Find a project for you chosen programming language, figure out how it works, play with it, question it, learn and then move to another project and repeat. Remember, your goal here is not to master the project but to see how others are doing things.
2. Contribute - Practise make perfect right! You need to action what you've learnt from others so you can make your own successes and more importantly your own mistakes so you continue to learn and improve. This is your chance to put into action what you've learnt, give something back and ensure it sticks. With programming this will be as easy as contributing some code to a project. Start small, choose an open source project you like and improve some documentation even if it's just adding a few words. Then slowly take bigger steps and contribute more code. Again, your goal here is not to master the project but to get feedback from other developers on the work you submit.
3. Adhere to standards - I'll come clean, I was a little dishonest earlier. "Practice does not make perfect. Only perfect practice makes perfect." said Vince Lombardi who is considered to be one of the best coaches in NFL history. You need to refine what you learn for quality and the only way you can do this is to set a standard for the code you write. Great development projects will already have a coding standing defined that you can follow, read it and follow it.
As you can see my steps for learning are quite simple, you learn, practice by contributing and then refine for quality in the process.
Don't repeat yourself
Name your variables to say what they are for, not what data type they are
Give your methods a clear name for what they are going to do.
Don't use magic numbers or string literals
Write your methods so they can be tested without having any dependencies on other parts of the application, where possible.
Don't be afraid to ask for help
Follow the boy scout rule
Share knowledge with others
Don't interrupt your colleagues whilst they are in the flow