On the Web: Frontend vs Backend
It’s time for another technical discussion. This is a rather pleasant subject called the frontend. In small steps, I’ll try to explain what you might know from estimation. For starters, basic concepts.
What is it about?
Creating web applications, in simple words – websites. After typing in a specific web address, the site you are looking for appears and all you see and all you can click on is the frontend. Some websites can be breathtaking: containing beautiful fonts, colours, graphics, animations, drop-down menus, transparency, and other wonders.
However, it’s not all about the looks but above all about making it useful and user-friendly.
Maybe some of you, get annoyed that you can’t find something on the site or one of the buttons doesn’t work. You click and… no effect… almost makes you throw the PC out the window…No? Okay, maybe I’m the only one who gets carried away sometimes.
Let’s move on…
You could say that the pages are saved in HTML format and stored on web servers. Sounds a bit archaic. Those times are behind us, so it sounds better when I say that pages are dynamically generated by web servers. To read them correctly, we use browsers: Google Chrome, FireFox, Opera, Safari etc.
There is also a kind of a “back” of a website, called the backend.
We can’t see that but it’s actually here where all the data is stored. It works with the database and other applications to download the requested information to the frontend. So, if a particular page freezes, is slow or is not efficient, I don’t know… we can’t log in and so on, so there was an error, in that case the appropriate specialist must check what went wrong, what “broke” in the code.
Imagine we’re planning on buying plane tickets. We type in the address in the browser, go to the website that interests us. Next, we search for the flight and fill in the following: departure date, arrival date, time, destination, etc.
By clicking “search”, something happens that we are not able to see. The frontend connects to the backend, which pulls out specific information stored there.
When I first tried to understand the subject, the association with the restaurant came to mind. As a frontend I imagined the part where we sit comfortably at the table, choose a dish from the menu, and admire the design of the interior. When we are ready to place an order, the waiter comes up to us, writes everything down in his little notepad, and goes quickly, where our eye can no longer reach, to the back.
What is going on there on the backend, you can only imagine based on Ramsey’s Kitchen Nightmares. Or maybe it is better if we don’t. The order comes back to us in the form of a delicious meal, which looks almost perfect, as in the menu. Yummy.
Well, that’s my fantasy, although searching for real comparisons to some extent allows me to find a starting point for deeper analysis.
Various specialists take part in creating the frontend of the websites. Some of them are responsible for the design, others take care of the graphics, usability, others for logical aspects of the application. They use various tools to a greater or lesser extent and it is worthwhile to analyze which they use before sending out an offer.