Skip to main content

10 Tips to improve your coding skills

10 tips to improve coding skills-img
You want to be a programmer and you are struggling for it. Don't worry, it is the way how it works but how your struggle returns to you really depends upon the way you learn, the way you practice and the way you think. You want to be a programmer who makes the logic very quickly and write almost half of the code in mind while studying the problem.

Well, you need to be a genius then ... but I am absolutely wrong.

You have to make your own way by yourself. You need to learn some (more) tactics, make the google feel tired and be a bibliophile. There is a long list of TODO's you need to follow. I will share some tips here that will help you in improving your coding skills.

  • Practice as much as you can:

It sounds hard to keep practicing for hours but once you get addicted to it, believe me, you will enjoy it more than anything else. You must have heard that practice makes a man perfect. This is very very true for programmers. 

A question arises here. What to practice on? Good question. Social media is a big source of practice resources. Join groups and pages where novice programmers share the problems they face. Go and help them. There are too many and too good case studies in almost every book. Never skip the exercise at the end of chapters. Observe real life problems and try to solve them.

  • Join developer communities:

As mentioned above, social media can give you a lot if and only if you want it to give. There are large dedicated communities.Some are very popular such as StackOverflow and MSDN. Highly skilled programmers are there always ready to help you and others waiting for you to help them. Sign up (which is mostly free) and expand your social circle.

  • Always welcome critics:

Allow others to read your code. If they criticize something in it, thank them. It will help you in finding vulnerabilities in your code, improving code quality and logic. For some people, it is hard to accept criticism and they take it in wrong sense. I was one of them but soon I realized that critics are free testers of my code.

  • Solve quizzes and puzzles:

I used to solve programming puzzles when I was a novice and still I look for some puzzles and enjoy solving it on weekends. It stimulates the brain and keeps the mind in shape.

The same question arises again. Where to find puzzles and quizzes? Here's is a list of websites.

  1. Sphere online judge
  2. Uva online judge
  3. Project Euler
  4. Top coder
  5. Python challenge
  6. Code kata

  • Participate in code challenges:

Participation in code challenges either at a low level such as colleges or international level such as Google Code Jam makes you able to think like a pro. It let you know how good you are and makes you able to determine your own speed. If you won the challenge, you will be rewarded which is a motivation and an encouragement but if you lost, it is stimulus, a wake-up call, an alert message which tells you to get up and strive.

  • Never reinvent the code:

If you are practicing then skip this point. But if you are working on a project then it is for you. It is possible that the project you are working on is done by many others and the whole code or a snippet is open source. Just borrow that code, read it and modify it if needed.  Never reinvent the thing which is already invented. This can really increase your productivity.

  • Do not try to memorize the code:

The first point on this post is practice as much as you can.
Q: Why do you need to practice? Why not memorize the code?
Ans: I have seen some beginners memorizing code and syntax. It seems easier and quicker than practicing. Doesn't it? But things are not always #000000 and #ffffff. Actually, nobody needs to memorize any code for a particular problem or code syntax because we have storage devices for that and search engines for easy retrieval. Problems are getting complex day by day and today's code becomes invalid for tomorrow. So you need to build muscle memory and developing your mind not just feeding it.

I don't remember a single line of my previous code, not even a single variable name because I really don't need to. I comment my code which helps me understand my own code when I revisit it after a long time.

  • Avoid using deprecated APIs:

Deprecated APIs are those APIs which are old and newer version is available. New things come with new features, an improvement in old features and compatibility etc. API developers try to make it relatively easier for users to use. So keep your skills up to date and avoid using an old version of an API if you don't need to use it.

  • Master debugging tools:

For all programmer either pro or naive, one of the most annoying parts of coding is debugging. It happens very very rarely if someone writes a hundred line code and run it successfully without any bug. Debugging is the process of removing bugs from code. Debugging a single bug might take either 1 minute or days depending on the bug and your debugging skills. However, you can boost debugging process by using some tools. Fortunately, every IDE contains debugging tools. All you need is to learn how to use those tools and use it everytime in debugging process. It really helps.

  • Be a Googler:

Does it make sense? Lemme clear it. In your journey, you will have to cope with a tough situation. But what do I mean by a tough situation? By tough situation, I meant the time when you have found a lot of bugs in your code or you are striving to figure out a way to do something. Most probably you will not be the first one in this situation. Hundreds if not thousands of people may have been in the same trouble. How did they escape from it successfully? Google will give you a lot of answers. All you need is to search some queries.

Google (the search engine, not Google.Inc) is just smart, not intelligent. It works on keywords. So to get the best answers for your questions, you need to know how to ask Google in a smart way. For this, learn SEO basics. This will make you able a little bit to think like Google and consequently will improve your search skills.

Popular posts from this blog

How Big Data Analytics Can Help You Improve And Grow Your Business?

Big Data Analytics There are certain problems that can only solve through big data. Here we discuss the field big data as "Big Data Analytics". The big data came into the picture we never thought how commodity hardware is used to store and manage the data which is reliable and feasible as compared to the costly sources. Now let us discuss a few examples of how big data analytics is useful nowadays. When you go to websites like Amazon, Youtube, Netflix, and any other websites actually they will provide some field in which recommend some product, videos, movies, and some songs for you. What do you think about how they do it? Basically what kind of data they generated on these kind websites. They make sure to analyze properly. The data generated is not small it is actually big data. Now they analysis these big data they make sure whatever you like and whatever you are the preferences accordingly they generate recommendations for you. If you go to Youtube you have noticed it kn…

How Computers Understand Human Language?

How Computers Understand Human Language? Natural languages are the languages that we speak and understand, containing large diverse vocabulary. Various words have several different meanings, speakers with different accents and all sorts of interesting word play. But for the most part human can roll right through these challenges. The skillful use of language is a major part what makes us human and for this reason the desire for computers that understand or speak human language has been around since they were first conceived. This led to the creation of natural language processing or NLP.
Natural Language Processing is a disciplinary field combining computer science and linguistics. There is an infinite number of ways to arrange words in a sentence. We can't give computers a dictionary of all possible sentences to help them understand what humans are blabbing on about. So, an early and fundamental NLP problem was deconstructing sentences into small pieces which could be more easily…

The Limits of Artificial Intelligence

If you are here, it means that you are familiar with term artificial intelligence. Either you have read about it in school or have seen it in sci-fi movies or somewhere else. Talking about the limitations of AI, let me ask you one simple question first, do you know the definition of AI? You might be thinking to answer me with a yes, yes I know what is artificial intelligence. But what if I tell you that AI is a buzzword and it is almost impossible to properly define. It is this way because the definition of artificial intelligence is moving. People don’t call the things AI that they used to call. For example, a problem that seemed too complex to be solved by human and was solved by AI algorithm is no longer a problem of AI. Playing chess, is one of the examples. It was considered the peek level of artificial intelligence back in previous century. Now it hardly fits the criteria for AI. It is presented to the world as a super power that when given to a computer, it magically starts li…