Steps to Improve Programming / Logical Skills
Steps to Improve Programming /Logical Skills.
Lots of beginner programmer/students Frequently asked their seniors/teachers about “How can I improve my programming skills or logical skills??”. In my college days, I used to think the same. sometimes it's difficult to get an exact answer on those questions. Here I am going to share some ideas that one of my teachers suggested me to follow to learn and improve programming skills.
Practice algorithms and data structures
when you learn a language, you may feel you know everything but that's not the case because when you learn the language you learn syntax. If you want to implement it, let say someone gives you a problem statement and you have to convert that problem statement into a code or software. it's not the direct process, first, you have to convert that problem statement into a solution and that will be only steps, that's what we call it as algorithms and then we can easily convert that algorithm into the code. Now when someone gives us to find a given number is odd or even. We may easily convert that into code. But if we talk about the big problem statements, first we have to convert that into algorithms. for that, we need practice from some known existing algorithms like searching and sorting techniques. Also, data structures like list, linked list, trees, etc. Such data structure helps to think/ solve our complex problem.
Read others code:
If somebody gives a problem statement, you may write your code but sometimes the code which you write may or may not in the correct way. That does not mean your output is wrong. But the important thing is the way you write, compactness of code, efficiency, speed, and also design patterns of code. To improve those things, what I would recommend is just see some other people's code. Nowadays we can reference through the repository called as Github. so, what you can do is try to read other people's code because it might give you a new way of reading/thinking for the solution. The same thing which you are writing but a different way like the syntax will remain the same the output will remain the same but the way right up code may change. It will make an impact on your brain and next time you have code it will be helpful.
This is my personal experience, the way I have improved my programming skills is by participating in the competition. When I was in my college, I used to participate in multiple colleges events like coding events, debugging event. Initially, I used to lose all those games but then, later on, I started winning it because I was practicing it. Initially, you will lose because you don't know how to compete and later on more you compete the more you will know how exactly to write code. Nowadays you can also compete online if you can compete with people you know on different websites on earth. Also, we can get a problem from a different website, they will give us a problem statement and we have to convert that wrong statement into a solution. So, participate in competitions teach us How to code efficiently? How to debug?
Explore Other Languages:
It might sound weird but don't stick to one language explore, try to explore the more languages. The main thing is that we may love some languages, for example, I love C#, some people love Python, also some people love PHP. Don't stick to one language because your language might be best but all the languages, they have some good things and some bad things as well. when you learn other languages, it will teach you a different way of idea and code examples. By learning other languages, some extra features which we can implement in our favorite language.
Why did we learn a programming language? we want to build a project. So why not start building a project from start. I'm not saying from day one but after learning a programming language. We have syntax and then implementing all these steps it's time for building a project.
It can be any project doesn't matter you know because we all have some passion. Something else like some hobby maybe you like to watch a movie, to read a book, playing games, photographer. On those areas, you can build a project for yourself. The first project should be for yourself example.
If you love music, you may make a music player. If you like games make your own game. That will be your first step because when you are doing for something for yourself, you will feel good about it. Also, you will get stuck somewhere because this is your first project and there are multiple ways you can solve this just go to Google and find the solution. But such for your problem and trust me Google knows everything. Also, we can find our solution from websites like. Stackoverflow.com one of the important things is that don't just copy-paste the code, because that's what most people do try to understand the code, try to customize it. copy-paste the code might lead to bugs and trust me bugs are harmful.
Now after these five steps let me just repeat those steps
- Practice algorithms and data structures
- Read other people's code
- Competitive programming
- Explore other languages
- Build a project