All the web’s a stage! (Full Stack version)

Otterbein University Theatre & Dance rehearsing a show from USA, CC BY-SA 2.0
Image credit: Otterbein University Theatre & Dance from USA, CC BY-SA 2.0

 

Editor’s Note: This article includes excerpts from a blog post originally published to Tech Elevator Instructor Ben Langhinrichs’ personal Linkedin. Visit the full article here

If you’ve ever been at a social event and heard someone use the term full stack web development, you may have veered away to head for the snack table. But if I could hold your attention for just a moment, I’ll try to explain what this mysterious term means.

I live in an apartment at Playhouse Square in Cleveland, the largest theater district in the U.S. west of Broadway. So, I naturally think of things in terms of shows. When you go to a show, whether a huge musical production like Lion King or a one-person show, you may think of the show as just that which happens on the stage. That is both good and understandable, as the goal of the show is to draw you in and immerse you in the story and the pageantry.

Likewise, when you visit a web site, whether that is Facebook to see what you mum has posted recently or the home page for the local flower shop called Mum’s Mums to get her flowers, you only see what is presented to you. In web development, this is known as the front end, essentially the top of the stack. We’ll get back to that stack in a minute.

In reality, there is a ton which goes on behind the scenes of a stage production. There are sets and props and lighting, and a whole host of people responsible for making sure those things are where they need to be. Between scenes, stagehands scurry about as quickly and quietly as possible, maintaining the illusion so carefully brought about by the performers. Props are carried on stage, used, then carried off and carefully stored in labeled locations ready for the next show.

 

All the web's a stage! (full stack version) Props backstage for Otterbein University Theatre & Dance
Image credit: Otterbein University Theatre & Dance from USA, CC BY-SA 2.0

 

Likewise, on a web page, there are all sorts of resources and data which are behind the scenes, waiting to make an appearance at the appropriate time. A database of some sort may store the pieces of information in carefully labeled tables, ready for when they are needed. Images and files and forms are ready to be carried forward to the front end upon request, and then released or submitted as the case may be. Everything is done as quickly and quietly as possible so the user on the website remains in the moment, captivated by the photo of a new granddaughter, entertained by a cat video, or coaxed into spending their hard-earned money on a gadget that must be seen to be believed. All of these data and resources are the back end of the webpage, or the bottom of the stack.

 

all the web's a stage! (full stack version)

 

But if the data and resources are like the props and the sets, what is the equivalent of the stagehands and director and lighting folks? Those are all the middle of the stack, the code which orchestrates the action and makes the magic happen. On a web page, this is often software build in Java, C#, or JavaScript which manages the complex interactions between the front end and back end. Just as a production number or soliloquy may happen entirely on stage, a web page may do a great deal entirely in the front end, but eventually the scene changes or the user wants to do something more on the web page, and then the middle of the stack kicks in, coordinating the choreography of a well designed website to minimize interruption and maximize enjoyment.

In summary, the full stack which we talk about in web development is the combination of back end, middle ware, and front end components which go into making a useful web site. Just as it takes a well coordinated team to make a stage production worthy of your applause, it takes a well coordinated team of full stack web developers to create a fully developed and useful web site worthy of your time and attention.

 

all the web's a stage! (full stack version)

 

Now, go off and get some snacks before everybody else eats them all up.

 

Ben Langhinrichs, Software Instructor

Ben Langhinrichs, Tech Elevator Software Instructor

“As we approach our next cohort at Tech Elevator, I thought I’d write up an explanation for non-technical people about what “full stack web development” is, or at least a way to think about it.”