According to Wikipedia, it is believed that there are approximately 700 programming languages in the world, some sources even say there are close to 9000 languages, quite overwhelming!
These languages have different purposes they serve and it is so impossible for one person to master all the languages, no matter how nerdy they are. This is why different software engineers have different stacks. Stack in this case means different programming languages that an engineer is proficient in and the purposes the languages serve.
In web development majorly, there are three main stacks, namely the frontend, the backend and the full stack. A frontend engineer concerns himself with the client-side of the web (what the users see when they visit a particular web page and how they interact with the design and experience) while the backend guy is responsible for the server-side wellbeing of the web. He deals with the databases, APIs, browser requests and the responses that will be returned. The full stack guy on the final note is like the god of web development, he can be anywhere at any time, he speaks both client-side and server-side languages. I once aspired to be a full-stack engineer, please don’t ask how that is going for me (lol).
If there are close to 9000 programming languages, how then do software engineers know the ones to learn? Are there ones that are placed high above others? Are the ones that can be referred to as ‘the best’?. Let’s dig in
Stack Overflow, the most popular website for the developer’s community conducted a recent survey for the best technologies, frameworks, libraries and languages and the responses from these surveys shed more light on the best frameworks and technologies that developers use the most. These frameworks are:
- Express JS: This is a top JavaScript based framework on the node.js runtime and it is used for building backend applications and APIs. It is a framework that is largely used by developers all over the world.
- React JS: React is a very popular JavaScript library in frontend development. Although it is not a framework, it is a very useful technology that has helped many developers get work done quickly and efficiently, some engineers even consider it as a framework.
- Django: This is a framework for Python that is used to develop web applications backend with less coding. The python programming language itself is well known for its simplicity, versatility and scalability, therefore, it’s framework (Django) is a well adopted framework by engineers.
- Laravel: This PHP based framework is used for the development of the backend. It is fast and efficient. This framework has another framework formed from it and this is called the ‘Lumen framework’. This child framework is becoming more adopted by developers than it’s mother.
- Ruby On Rails: This is a Ruby based framework that has become more popular than it’s language. Ruby on Rails is said to be a very developer-friendly and it is an open source backend web development framework