Every so often, you will read a question directed to the developer community. Its always the person that asks What programming language should I start to learn. The nature of this question is a great one, it shows that someone has an interest about how the most used machines in the world of today work. And how to talk to them.
however much I applaud the curiosity and willingness of people to learn. This question is a wrong one ! I try to make them look at it backwards and ask them what the problem is they want to solve or fix, Or what it is they miss in everyday life that they want to automate.
We should always strive to give the right advice and in my opinion that means pointing them to the right language for the job. Of course, if someone wants to learn to code without any real goal in mind other then learning to code. By all means, point him to a language and tell him why you think that’s the one he should start learning. The only danger of this approach is that its highly personal. One might say c# another says #java or even c++, this can’t be helped and the person in question will have to weigh the arguments given and choose for themselves.
If you ask me programming Is more about a way of thinking. If you know how to think about the problem at hand, you can find 10000s of ways to do it. In reality its more about basic understanding of how to do things, do I need to do this often ? create a method, do I have to execute this multiple times ? create a loop.
You will see that you will take a problem, dissect it and already create a basic framework of how to do things. Oh I have to use multiple numbers for this so I will use some kind of collection
As soon as you can start thinking of problems in this way and how to do them then the language is no longer the first thing to decide, because you can research and choose the best one for the job(one might do A faster and another B). This has the extra benefit that you will learn more language’s and to employers that will always look nice. And you will
So keep learning and reinventing the wheel, because you can.