This post will be the first in a series of articles on web technologies. I have been developing websites, both front end and back end for many years now. I thought it would be nice to share some of my knowledge with the rest of the world.
Over the past decade, web technologies have grown from a relatively limited field in software development and computer programming to one of the most widespread subject areas, that includes a multitude of technologies. Not long ago, it was the norm that a web developer would understand the full breadth of most of the technologies involved. This has changed as the technologies have become more diverse and complex. Today you will find experts in singular fields such as HTML/CSS, NodeJS, WordPress, or AngularJS just to name a few.
Before I dive into the details of all the technologies involved, let’s understand what web technologies are. The term Web Technologies refers to a collection of programming languages, data formats, software packages, and frameworks that allow computers to communicate through the World Wide Web. The communication is usually carried out over the internet using so-called markup languages.
There are many different programming languages involved in web technologies and the landscape of these programming languages is ever changing. Mastering all these languages in depth is probably impossible for a single person. For a developer, it is important to have a feeling for the new and upcoming languages and technologies so that time is not wasted learning things that are going to be irrelevant in a few years time. Web technologies also encompass a lot of different topic in computer science. From virtual reality to encryption to distributed computing. All these are at the forefront of research in web technologies.
The zoo of web technologies can be divided into two main parts. Front-end technologies and back-end technologies. To understand the difference, you need to first understand how the web and the communication between different computers work. In the simplest form, the end user will use his computer or smartphone to look up information on the web. The device of the end user is called the client The information that he is looking for is not stored on his device, so it must be retrieved through a request over the internet. Using the web address (URL), the client can identify the computer that stores the requested information. This computer is known as the server. It responds to the request and delivers the information back to the client. The client then interprets the data it receives and displays the result to the user.
The response sent back by the server to the client can consist of simple text, but it can also include styling, images and even computer code. Whatever it contains, it must be interpreted by the client. The different data formats, programming languages and packages that are intended to run on the client side are known as Front-End Technologies. On the other hand, there must be software running on the server to assemble and send out the response to the client. In the simplest form, the server just reads files and sends them back. But most of the time, the server needs to run some code on every request to allow dynamic content. The different technologies involved in creating the response are called Back-End Technologies.