Technically

Share this post

The Details: Frontends and Backends

technically.substack.com

The Details: Frontends and Backends

How an application is sort of like a restaurant

Justin
Aug 1, 2022
38
5
Share this post

The Details: Frontends and Backends

technically.substack.com

“The Details” is a paid-subscriber-only series that dives deep into technical topics, surfacing only the details you need to know. The last “The Details” post was about SQL and NoSQL production databases. Have an idea for a “The Details” topic? Just reply to this (if it’s in your inbox) or send it to justin@technically.dev.

It seems like I’m referencing the difference between a frontend and a backend in almost every single Technically post, so I figured it made sense to spend some time diving into what those really are, and most importantly, give you a real example of what goes into a frontend vs. what goes into a backend in a real life application.

This distinction – so important! If I’ve done my job correctly, you’ll begin to see all software you use as frontends and backends of varying shapes and sizes. So without further ado…

## Frontends and backends: the restaurants of code

If you’ve been reading Technically for a while, you know that an application – like the one you’re reading this post on – is made up of just two parts: a frontend and a backend.

The best analogy I’ve thought of for frontends and backends is a restaurant. Say you’re having a lovely evening with the homies (after you’ve hugged and kissed them of course) and you stroll into your favorite upscale Brooklyn eatery. Your experience is interfacing with a few things:

  • A nice table with comfortable chairs

  • High quality food and drink brought to your table

  • Servers catering to your every whim

Fantastic. Behind the scenes though, there’s tons of logistical work that goes into being able to provide you with said experience. In particular, there’s an entire kitchen staff that worries about:

  • What should be on the menu

  • How to cook everything consistently and perfectly

  • Where to source quality ingredients from

  • How to prepare and store those ingredients

  • What to do in situations where ingredients are missing or go bad

As a patron, you don’t need to think or deal with any of this – you interface with the “frontend” of the restaurant, and the “backend” takes care of making sure the food that arrives on your table makes you want to leave a 5 star review.

It’s not a perfect comparison, but this is pretty much how I think of application frontends and backends.

Keep reading with a 7-day free trial

Subscribe to Technically to keep reading this post and get 7 days of free access to the full post archives.

Already a paid subscriber? Sign in
Previous
Next
© 2023 Justin
Privacy ∙ Terms ∙ Collection notice
Start WritingGet the app
Substack is the home for great writing