Well, most programmers have some sort of “favorite” language and most will suggest to begin with this for various reasons. I will do no such thing. Here I will list multiple languages which I think are a good starting points and explain why.
Yeah I start with the obvious one. Let me start by saying that I hate this language and find it horrible. Still, it was how I got into coding. PHP is just a language where you can get results very fast, this is really satisfying, more so if you are just beginning and experimenting. PHP also is really easy to pick up. Its syntax is easy, dynamic typed, good documented and there are lots of examples out there on the inter webs. Besides that, it still is a really, really, really popular language for websites. Which brings me to my final plus for PHP, it is a language designed for websites, so your scripts will result in one or more webpages, which are really easy to markup.
I got to pay my respects to my fellow Dutchman. But jokes aside, python is great. It is a more mature language than PHP. It has also a high code to result ratio, it is also dynamic typed and easy to learn. But most likely you will get your results as a command shell output. In the beginning this can be less satisfying than the output on a website, which is easy to markup. But besides that, Python has a lot more to offer than PHP and has many uses. I myself use it a lot when doing assignments which involve a higher degree of algebra / math / statistics.
In previous sections you have read the term “dynamic typed”, if you want to learn more about types or want to learn a language which is currently popular with many application developers, Java is your language. It isn’t as easy to learn as the previous examples , but mostly because of the types and because it is really strict in its design (which isn’t always a bad thing). There are a lot of examples and the Java Documentation is great. Java also has some really nice and easy tools to create a GUI, which also result in a good code to learn from. The only downside in my opinion: it is strict typed which is harder to start with. In general I don’t like Java, as it is too strict in its design, but that is exactly what it makes easier to learn when you just start coding. On top of that, it seems like everybody needs a Java developer everywhere! So if you can code Java nowadays, you got yourself a job.
A little side note, when developers (or people who speak of software or code) speak about types, they probably are referring to the datatypes within the computer. You see all data within computers are represented by bits (ones and zeros), although the most preferred term is bytes, which are just 8 bits. This isn’t such a shock for most people, but yeah, your programs: bits, your documents: bits, your photos: bits, your porn… (giga)bytes..
But how does the computer keep track whether given array of bits represents a number, a character or something else? Well that is what we call: types. For instance, we have a Integer (whole number) type, or Character type. And an array of characters is called a string. For floating point numbers we got floats and so on.
When we talk about dynamic typed languages, there are languages that will take care of typing variables for you. So you don’t have to know which type the variable was or is. In my opinion PHP does a better job of dynamically typing than Python, because 1/3 in python returns 0 and in PHP it returns 0.333, but as a programmer it is good to know why 1/3 returns 0. The answer is that 1 is an integer, 3 is an integer, so the result must also be an integer and 0.333 as a integer is 0.