Gamasutra is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Gamasutra: The Art & Business of Making Gamesspacer
View All     RSS
October 16, 2019
arrowPress Releases

If you enjoy reading this site, you might also want to check out these UBM Tech sites:


The Delicious Psuedocode of an English Muffin

by Ashley Kreuer on 06/18/19 09:58:00 am

The following blog post, unless otherwise noted, was written by a member of Gamasutra’s community.
The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.


//This pseudocode will teach you how to make an English muffin for breakfast as

//a programmer. It will also show you how to explain programming to non-programmers.


check_ingredients( egg, English muffin, sausage, cheese, mayonnaise) {

           if !egg

               return error

         if !Englishmuffin or Englishmuffin==moldy

                 return error

        if !Suasage or !cheese or !mayonnaise

               return error

return true



       place in pan

       when done



assemble() {

         stack ingredients



//in the main function

if check_ingredients( egg, English muffin, sausage, cheese, mayonnaise){



                cook(English muffin)






*/As you can imagine I had an English muffin for breakfast. It got me thinking as I made it about the steps involved. The concept of pseudocode is a great starting point for explaining programming to non-programmers. As a teenager I competed quite aggressively in science fairs. I had to come up with a simple way to explain programming to judges. Often times they were experts in their own fields but had no background in programming. Pseudocode improvisation was my preferred method because even if you have never touched a computer before you can quite easily understand the concept of pseudocode. I would spontaneously come up with a short pseudocode related to their field to explain how programming works and how my projects worked.

When making video games you can have a similar problem in explaining what you do to people who have no background in the programming side of building video games. These might be people on your team or investors or even relatives at annual family dinners. To  explain what you do start by following these simple steps (I’m assuming for the purposes of this explanation that you are a programmer.) 

Step 1. I do programming.

Step 2. Counter their “What is programming?” with programming is like making an English muffin. First you check if you have all the supplies, then you cook the ingredients, then you assemble it, then you eat it. Programming is simply writing down the steps in such a way that a computer can do it. You can substitute almost anything for making an English Muffin. I find that if you substitute something the person you are explaining it to is passionate about you get the best results. 

Step 3. Specific key words related to your specialty. This is so if someone asks them a question about what you actually do they can show off their knowledge. Keep it simple. For example “I use the programming language C# to build video games.” You can expand upon what type of video games you build if asked for more details.

That’s it. Three simple steps that will leave your team mates, investors, and family members actually having an idea of what you do as a programmer.

This post originally appeared at

Related Jobs

Sucker Punch Productions
Sucker Punch Productions — Bellevue, Washington, United States

Camera Designer
Webster University, School of Communications
Webster University, School of Communications — Saint Louis, Missouri, United States

Assistant Professor, Games and Game Design
Deep Silver Volition
Deep Silver Volition — Champaign, Illinois, United States

Gameplay Programmer
University of Utah
University of Utah — Salt Lake City, Utah, United States

Assistant Professor (Lecturer)

Loading Comments

loader image