How to look at a programming language and its environment.

It’s quite normal when you enter into the programming. The experience of learning your very first language feels like a roller-coaster ride. Where sometimes you feel high like you’re the Almighty God. A creator of this universe, like you exactly know how everything works. Whereas sometimes you’re just as good as shit.

If you’re reading this post then the probability is that somewhere in your mind you’re thinking to start programming. Hereby, I, Shade welcome You, Yes Exactly You… to the Programming World. Where people like you, me, and us develop things for the sake of helping normal (You know, kinda ordinary) people.

Being new to the programming, it’s always a better idea to start from the ground and go all the way up rather than jumping-off right into the second stair just as the creation of variables, some functions, a set of classes and all those cool kids stuff. You may ask What’s the need to know How to look at a programming language and its environment? Well, let’s give this post some read to find out more about it.

Welcome To The Sorcery Of Programming.

You’re finally here with lots of Adrenaline flowing into your veins. Cool… Let’s get started already and put that Adrenaline to some good use. But before that by “Sorcery” I didn’t mean the “Azkaban’ kind of stuff. But Yeah, not less than that either, I promise ;). At least for the normal people.

Enough talk, let’s start with What’s a programming language or may be what’s a language itself? Lets dive in and look at the definition.

The method of human communication, either spoken or written, consisting of the use of words in a structured and conventional way.

Google

via GIPHY

Uhmm… Lets make the above lines easy to grasp. So here is what I throw at you.

A wise use of words and grammar to make an understandable sentence.

Shade

From the above definitions we can understand that, a language is something that helps us to interact with each other, so we can communicate and express ourselves. Without a mean of communication, we can not understand each other. Can we? There has to be a medium that both of the party knows. Just as we humans use spoken languages to interact with each other. There are programming languages that we humans use to interact with the computer.  It’d be wise to say that A programming language is just another language with its own set of keywords and grammar just as spoken languages so we can give commands or instructions to the computer to perform some task out of it (Though consider the computer your friend and not a machine). Every programming language written has its own pros and cons (Off-topic will cover it in future). Some programming languages are good at doing the lower-level stuff and runs on bare-metal whereas some are good at doing Web Development and others for Software Development. One thing you need to understand is one language can not do everything. And it has been developed for that specific work.

Let’s relate this to a real-world scenario. Consider, You have to transport a heavyweight (1-2 Tons) to some other place. Can you do it on a bike? Or what if I ask you to fly to some place using a car? Sure, flying cars are not considered here. That’s future. Don’t try to get smart on me LOL. You must be thinking, Shade you’re out of your mind. How is that even possible? Rightttt… You can not do so. You’d need something heavy such as a truck to perform the transportation work and a Plane to fly. Because they’re designed to do these things. And just like that, You can not write better software using the technologies of web or vice-versa. And this is how you get categorized into your own zones. Because these languages and its stack are created for their own set of purposes and you should be really good at only one thing whichever side you’re. You’ll agree to me on this that, in this Gigantic world there are countless languages spoken and one can not learn and speak each of them. As well, there are countless programming languages available that we can learn and write but being a human and limitations of brain it is not possible for us to learn and write each of them.

via GIPHY

Okay, I understood Language. But what about the environment?

Good Question. I see you’re turning smart already. A computer language always require a domain on which it can operate. From domain, I mean the area or the circumstances under which the language can run. Consider an environment as a container designed and configured to run only that particular language. Something that has a limit or a boundation that one can not cross.

Right now, you’re being able to read this post because you know English and you’re able to break the information and make the visual representation of whatever I am throwing at you to understand it. But the person who doesn’t understand English, it’s just some crap words. Your ability to understand English and process it to fetch the information out of it is an environment for me. Easy? Awesome.

A computer can understand only binary language. You may ask then why do so many language exists? We can simply learn the binary language itself. Because it’s not easy to understand a binary language for the human beings. Well, let’s put it to test.

01010011 01101000 01100001 01100100 01100101 00100000 01001100 01101111 01110110 01100101 01110011 00100000 01011001 01101111 01110101 00100001

This is the language of computers. What can you understand from this? Nothing… I knew it. Not me either can understand it. This is why there was the need to develop other languages so people like you and me can understand it. Although later at some point these languages too get converted to the binary language. That’s the work of the environment, more on this in the upcoming posts. An environment is carefully chosen by its language developer based on the desired result. The environment of language itself can determine whether or not the people would love to make use of the language.

So much of information already! Let’s not blow your brain away and end this post here. Let me know about the experience of learning your first programming language in the comments down below.

By The Way. Those numbers above mean, “Shade Loves You!”.