There are so many programming languages out there to pick from but how do we know what ones will benefit us the most? We could go off of total pay a particular language brings the average programmer, ease of use, or how efficient the execution of the code will be. What is more important than all of these is how learning any given language will improve our understanding of computer science and logic.
It's more important to grasp concepts which we can transfer across domains than to become so specific to the point we get stuck. This is what I strive to do, and over time I gained the ability to learn any programming language in days instead of weeks or months. After pondering this, I found that I tend to stick to three programming languages for most of my hobby level development and each of these have their own role in my knowledge of computer science.
Go is the newest programming language of the bunch both concerning when it was created and when I started to pick it up. What I like about Go is how it was built to be fast upon execution and easy to type, read, and in turn edit. As someone that does a lot of work in the command line Go is a better option than running scripts in python because we compile Go source code into a binary. Having the binary gives the computer low-level instructions that can run faster than running code through an interpreter upon every execution.
But this does not mean that we need to re-compile our code upon every change. Go can run as an interpreted language like python. It's as easy as running
go programeName.go in a terminal just like we would with python. Having the ability to both compile and interpreter the code allows for a ton of flexibility.
By learning Go, we put ourselves at the front edge of new computing. It's very modern and has caught on hugely already. Google and Cloud Flare use Go to maintain their infrastructure and the open-source project know as IPFS uses Go for their primary development. If Go is good enough to have Google and Cloud Flare move away from C, C++, and others that says a lot about the future resilience of this language.
For someone new to programming all those tasks that are simple for anyone who programs often may be too much and cause the aspiring coder to quit. The ability to write some code in our browsers allows for less friction. A new programmer can open up Firefox and enter commands as they go about a tutorial. This provides instant feedback to the habit formation and learning process.
Python is the best programming language when starting out because of its design. The creator wanted a language that was fun to use and easy to learn. The current version of Python can do just about everything that other, more difficult programming languages can give the new user a good starting point to cover all the bases. However, even though this high-level code came into existence to provide new coders a natural entry point, it also serves intermediate programmers as well.
This was my exact experience.
Maybe it was just the timing of using Python for a project I worked on but when I had to use it to access as specific API concepts started to click in my brain. Computer logic that, in the past, just escaped me began to make sense, and now I'm a more competent programmer because of that experience. If there is any part of programming, you don't understand (and there are probably a few) try learning them using Python and see if the idea begins to make sense.
If you are an email kind of nerd you can sign up for mine here. You can always replay to any of my emails to start a conversation or ask me a question. You can donate to this site from my Liberapay account if you so choose.