How to Improve your Skills as a Programmer



Programming is one of the most versatile skills on the market in this age. From being able to create company websites to knowing how to easily fix a redirecting error, these skills can be invaluable to an employer and yourself in many ways. However, staying the way you are will never let you be the best programmer you can be. Read on to learn how to improve your skills as a programmer.
                                                                                                                      
 STEPS:
1. Analyze the problem clearly.

how-to-improve-programming-skills-codedbyte
If you are having an error in your code, then you already understand that something isn't quite right - or maybe it's bigger than that; you understand that something is very, very wrong. This is your beginning in solving a problem

2.Think twice about how to solve that problem.

  how-to-improve-programming-skills-codedbyte
Its good after you understand the problem you think on how to go about that problem, it makes most sense you start with what you know and what you think you need to solve your the problem in your code. 

3. Gather complete requirements.

how-to-improve-programming-skills-codedbyte
Take your time to write down what goals the end product needs to achieve, and who your user base will be. Clarity of thought at this stage will save a lot of time down the line when you start solving the error.

4. Write a thorough implementation plan or model. 

how-to-improve-programming-skills-codedbyte

  • For something small and self-contained, this might be just a basic flowchart or a simple equation.
  • For larger projects, it helps to break the job into modules, and to consider the following:
    • What task each module must perform
    • How data gets passed between modules
    • How the data will be used within each module
  • Although gathering and planning requirements can be tedious and much less fun than diving straight into coding, it is even more tedious to spend hours debugging. Take the time to design the flow and structure of your program correctly up front, and you may even spot more efficient ways of accomplishing your goals before you write the first line of code!

5.Comment your code generously. 

how-to-improve-programming-skills-codedbyte
If you think that your code might need explanation, comment it. Each function should be preceded by 1-2 lines describing the arguments and what it returns. Comments should tell you why more often than what. Commenting your codes makes others understand your code more easily, according to Martin Fowler
Any fool can write a code that computer understand. Good programmers write codes human can understand.
And always remember to update the comments when you update your code!

6. Use consistent naming practice for variables. 

how-to-improve-programming-skills-codedbyte
 
 It will help you keep track of each type of variable, and also what that variable's purpose is. This means more typing than simply 
x = a + b * c, but it will make your code much easier to debug and maintain.





7. Organize/Arrange your code.

how-to-improve-programming-skills-codedbyteUse visual structures to indicate code structure. For example, indent a code block that sits within a conditional (if,else,...) or a loop (for,while,...) Also try putting spaces between a variable name and an operator such as addition, subtraction, multiplication, division, and even the equal sign (myVariable = 2 + 2). As well as making the code more visually elegant, it makes it much easier to see the program flow at a glance, and it also make it easier to detect an error in your code. 

8. Test everything. 

how-to-improve-programming-skills-codedbyte
Start by testing each module on it's own, using inputs and values that you would typically expect. Then try inputs that are possible but less common. This will flush out any hidden bugs. There is an art to testing, and you will gradually build up your skills with practice. 


9. Practice, practice, practice.

how-to-improve-programming-skills-codedbyte
Programming is not a stagnant discipline. There's always something new to learn, and - perhaps more importantly - always something old to relearn. Practice makes perfect.

10. Flexibility. 

how-to-improve-programming-skills-codedbyte
In a realistic working environment, requirements change. You should know when to code fast or code slow, when to skim through your code or scan in terms of looking for an error. Flexibility really matters alot. 

11. Start simple and work towards complexity. 

When programming something complex, it helps to get the simpler building blocks in place and working properly first. 




TIPS
  • Use an IDE (Integrated Development Environment). A good IDE will have a colour-coded editor built it, with code hints and code completion functions that make editing faster and less prone to spelling mistakes. It will usually feature debugger, as well.
  • Have fellow programmers debug your code. They may well know something that you may not have thought of before. Don't know any professional programmers? Find an online forum that's dedicated to your chosen programming language or operating system and join in the conversation.
    • If you go down this route, read and observe the forum etiquette. There are a lot of goodhearted experts willing to help out, if asked nicely.
    • Remember to be polite, because you're asking for a favour. Don't get frustrated if you don't understand everything at once, and also don't expect them to want to review 10,000 lines of code. Instead, ask simple single-focus questions and post just the relevant 5-10 lines of relate code. You're most likely to get a positive response that way.
    • Before you start posting, do a little research. Your question has almost certainly been encountered, considered, and solved already.
  • Studying the source code of other programmers is an excellent means of improving your own skills. Work your way through their code, step by step, working out the flow and what happens to the variables. Then try to write your own code to do the same thing (or maybe even improve on it). You'll quickly learn why things need to be written a certain way and you'll also pick up some useful tips on how to write efficiently.
  • Customers and bosses aren't concerned with how your program works nearly so much as they are with how well it works. Think bottom line. Clients are intelligent, but busy. They won't care what kind of data structures you're using, but they will care if it noticeably speeds up or slows performance.
  • Tutorial sites are an excellent resource as well.
Previous
Next Post »