Tech for Non-techs
Communication has been a core of the evolution of humankind and languages are the essential tool of communication. In this article, we will be decoding what those fancy-ass programming languages like Java, python, etc actually are? why there are so many different languages? and why on earth do coders write that gibberish and why can’t they just make the computer understand plain English? (I know your Alexa does but this is slightly complicated, just like your last relationship)
Understand the Need
You know how you wish, your boss could communicate clearly on your quarterly targets, the computer too needs to be communicated clearly as to how we want them to function. Computers or technology at core understands very elemental electric signals — ups and downs of electric signals (just like your life) or 0s and 1s (we call it binary). But writing stuff in binary is slightly tedious, for example, HI in binary is 01101000 01101001. LAMO, Like hell we gonna typ so mch :P. So on a very rudimentary level, the following are the levels of translation that happens while converting your English to something that a computer understands. (Programmer bros don’t come at me with technicalities, this is just me trying to make it easy to understand)
Chill, We only Do High-level Languages (Programming languages)
(unless you want to become a developer)
All the fancy programming languages that you hear when the geeks talk during your team meetings, fall under High-Level Languages. Like Java, Python, NodeJS, Angular, HTML, SQL, and whatnot, all of them help you achieve one of the following functions. So next time someone mentions a programming language, ask them if it’s for Frontend/Backend/Db. But do remember, there are many other advanced functions for programming languages as well, like Data analysis, machine learning, Natural Language Processing(NLP), etc which we will go through if at all we reach the end of this series of blogs.
Difference between Languages
Now question you may ask, why so many languages, and what’s the difference? Each of these languages has specific features. When you say technology is improving or technical advancements, it more or less means that some new tech language/process/system has emerged. For example, Blockchain is a new system of records that uses radical concepts of storing data that cannot be modified/deleted. There are some new programming languages that have emerged along with this called Solidity, Vyper, etc. You can search for any of the languages online to find out their differences. Most of the comparisons you won’t understand fully, so just know each of them has its respective pros and cons list. Make sure you or your tech team select any one of them based on what you value from pros/cons.
For example, one of the reasons some organizations might use Python over Java is Faster development time in python as compared to Java. Because typing a python code for the XYZ feature is faster than Java. This is just an oversimplified example, you can watch some youtube content for a deeper understanding.
By now, you must have a fair high-level knowledge of what programming languages are. You can easily find tonnes of resources on Youtube and Google if you would like to learn them. However, Let me give you one master weapon of self-learning - W3School, GeeksForGeeks, and TutorialsPoint these three websites are the holy trinity of learning in the coders' community. You will find anything and everything on these sites and they beautifully take you from ABCs to αβγ of the technologies. Help yourself if you wish to learn more, if not then keep following this space, I’ll give you mota mota idea about everything.
I would love to know from you, what else you want me to cover in this series. Please provide your feedback on this blog or anything in general, because I am also learning, just like you. Happy Learning!