Back-End and Front-End
Tags: backend, frontend, technology
Published: 2019-03-22 09:06:21

---
title: Back-End and Front-End
published: true
description: The evolution of back-end and front-end according to my personal view point. 
tags: back-end, front-end, technology
---

<!-- wp:paragraph -->
<p>The terms Back-End and Front-End are very well known in the programming world, but I would like to add some small sauce on them with my personal point of view updated in recent years with the advancement and the changes on technologies.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Popularly speaking - Back-End is the "Server" side of an application - the logic that is on some "remote" computer and Front-End is the part of the application that is shown to the user - most people associate it with the Browser client (HTML+JS+CSS Interface). <br>That is very shallow description of all the variations there could exist with different software layers and hardware layers, different devices, types of applications and use cases. </p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>If the users of your creations are Business-to-Business the UI layer may be indeed simple - just browser or a simple app. Business clients generally have good Internet connection and speed and are more focused on the logic behind and the positive Business impact of the software + hardware. </p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>If the end users are Customers, than - the User Experience is very, very top priority. Today, building interfaces even in the browser is more like app development thanks to<a href="https://developer.mozilla.org/en-US/docs/Games/Introduction"> HTML5 APIs</a> and <a href="https://developers.google.com/web/progressive-web-apps/">PWA.</a> You should handle bad or no internet connection - functionality, you should cache and optimize for speed, you should do whatever possible on the client-side.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Besides the browser - there are different mobile platforms and devices. Native will forever be the fastest in terms of speed and smallest in terms of application size. <br>There are also speakers with a wi-fi adapter - that could be the next big "Interface" to the User. <br>What if Musk (or someone else) creates a chip that attaches somehow to the human brain and enhances the human to input and output directly to the devices around him and the Internet in high speed - without keyboard, mouses, touchable and non-touchable screens, and speakers? Will you feel lost - that time you've developed endlessly - yet another UI and application?</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p> There are some good problems that the back-end developers solve: </p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul><li>Implement the business logic that is best done here - security, authentication, fast data algorithm and processing, etc</li><li>Scaling the application to handle more requests</li><li>Structuring the data in the most appropriate way according to the applications need and scale</li></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>Probably in most server applications out there - there is no multi-flow work and data processing in the logic itself - as a app developer is writing in one "line", one thread, one process no matter that the (HTTP) requests are threads/requests themselves. <strong>Actually even with simple Web Application synchronization collisions may occur - if opened from different browsers/sessions.</strong><br></p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>I know several developers that have coded multi-threaded, multi-process back-end applications, but that still don't like front-end development. Front-End development, besides that user interface itself, is very close to a multi-threaded application. </p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Especially nowadays - the languages, the frameworks, the design patterns used are probably more than 90% the same and it is not that difficult to learn the next major tendency in this technical direction. It will be just from a different provider, different toolkit, but in the end - the same and what you actually build with these tools was, is and will be more important. </p>
<!-- /wp:paragraph -->