Joseph Campbell, a renowned comparative mythologist was most famous for his work “The Hero with a Thousand Faces.” In this book he described the “hero’s journey”, which essentially posits that all stories across time and culture follow the same formula. This theory is also known as the “monomyth.”
Dan Harmon, an alcoholic TV writer, famous for “Community” and “Rick and Morty,” has distilled Campbell’s work like a cheap vodka. He broke down Campbell’s theory into 8 easy steps:
- YOU - the protagonist are in a position of comfort.
- NEED - you wish to change your position.
- GO - you enter an unfamiliar situation.
- SEARCH - you adapt to your unfamiliar situation.
- FIND - you find what you are looking for.
- TAKE - you pay for what you are looking for.
- RETURN - you return to your original position.
- CHANGE - you change or are capable of change.
This is better understood as a cycle, or a circle:

This rough but effective tool works to summarize any story. Here’s an example:
- YOU - Luke Skywalker, live on a farm.
- NEED - Luke needs to find Ben Kenobi, and perhaps a way out of the farm.
- GO - Luke goes with Ben Kenobi and Han after his Uncle and Aunt are dead.
- SEARCH - Luke’s gets training with the Force, gets adept at shooting blasters and sneaking around the Death Star
- FIND - Luke finds Princess Leia
- TAKE - Luke loses Ben.
- RETURN - Gets away, and ends up in a safe rebel base.
- CHANGE - Uses the Force to destroy the Death Star!
In any case, this outline is what I based my Sinatra Applcation.
What better way to sum up my experiences than utilizing the story circle?
Here’s my story circle on what I went through with the project:
- YOU - A bumbling programmer student
- NEED - Need to program this project. Successfully.
- GO - Start outlining the project, conceiving of possible avenues.
- SEARCH - Program willy nilly, mess up, start again, refactor, learn and relearn past labs.
- FIND - Working code!
- TAKE - But it’s got bugs and needs to be refactored.
- RETURN - Kind of back to bumbling around, but…
- CHANGE - I understand Sinatra and ActiveRecord much better, so I’m a better programmer!
Hopefully you’ll check it out and start to see stories in a new light.