I am in field of IT Operations since 20 years but due to new trends in IT, I have to start learning the coding as part of my job. I am currently doing Linux Bash Scripting but on a very beginner level. Can someone guide how to really become a good and advance coder? At this moment, it is getting me quite some time in order to write down the requirements and convert them into the code. The logical thinking is lacking.
Logical thinking will be key because at the end of the day, you’re trying to solve a problem.
In order to create solutions, you need to understand what tools you have available. If the scripting language is new to you, go through a tutorial or two to better understand it. It should help you build the foundations and give a general idea of how certain things are done from a high level.
There’s a few ways to improve your scripting skills and help you learn programming and automate tasks for your job.
Getting used to the syntax - bash scripting is an interesting experience due to the fact Linux is designed around small modules that can each do a single thing well. This means you are more juggling individual tools, rather than a fully designed “language”. Its true you can program a bunch of stuff in bash, but the experience wont be the best.
Getting used to the tools - Linux is made up of small tools, such as ls, or dir, or cd. Each of these are essentially its own “app” that has its own rules, flags, syntax. Getting used to using these, or least used to how they work within a scripting context can help you within writing scripts themselves
Practice practice practice - building small scripts to test out small features or parts of a script is an easy way to get used to scripting. Smaller scripts can be used to learn and help you automate smaller tasks. Bash scripting might not be the prettiest or most elegant way to program, but it will work and can help you save a lot of time when done correctly.
Other scripting languages are always an option! - General purpose scripting languages could be used in place of bash to automate tasks, leverage libraries and provide a framework to learn programming without all the intricacies and obscurities of bash itself. A common alternative to Bash is Python, which can be used to build all sorts of things and not just automate. Python is also one of the best starter languages available, and installed on most Linux distros by default. (as version 2, which is basically dead, but most offer Python3 as well).
Hope that helps,
Good luck, keep learning keep building