Coding Update: Challenges, My Latest Project, and Website Optimization.

  1. Clear differentiation in architecture and roles between the 3 key components of most web applications: the client, the application server, and the database server. In short, the database server should house new data as the app scales upwards and grows, the application server should be focused on sending requests back and forth between the front and and the database, and the front end should be primarily concerned with rendering site data and content to the DOM. This is not the be all end all of site architecture, it is just a good starting principle for scalability.
  2. Make the code base as maintainable as possible. The code base should be modular and easily understandable by each person who collaborates on it past, present, and future. This will help ensure that the code base grows in a clear and logical manner as the user base and performance needs of the app grow.
  3. Adopt the principle of DRY code (Don’t Repeat Yourself). As the app grows, unintended redundancies in code can reduce speed and also introduce bugs.
  4. Compress website files for faster loading time using a service like GZIP. See the MDN docs here for an overview of the different types of compression all relevant to site performance.
  5. If possible, utilize a CDN, or content delivery network. A CDN is a network of servers distributed across multiple geographical locations, that can route and handle requests optimally based on geographical location and proximity of individual clients. Having network of multiple servers handle website traffic also helps optimize speed by reducing the load on any one server at a given time. This results in faster site performance and scalability than in the case of a single server handling all requests.



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Michael Fares

Michael Fares


I am a Frontend Web Developer, Educator, Lifelong autodidact, 3rd Culture Kid, and Citizen of the World.