The Definition of Insanity

29 Apr 2021

is doing the same thing over and over again and expecting a different result. In order to survive, one must recognize a pattern to avoid similar failures.

Without It, Humans Would Cease to Exist

From the beginning of time, humans have encountered countless adversities, like travelling uncharted territory or coming across an unknown fruit. Some have died through trial and error, and those who survived lived to tell the tale. If not for recognizing patterns, they would have been slain the same way their friends did. Through pattern recognition, humans are able to avoid the mistakes of others, and also are able to pass down solutions that are easy to replicate: recipes to safely recreate a delicious cake, maps to show which way you should go and what routes to take.

Trying to Survive in Uncharted Territory in ICS

As a frail freshman majoring in ICS, with little to no experience with coding, everything seemed so daunting at first. Classes, object-oriented programming, is this even English? After trying to understand content in lectures and multiple Google searches later, by the end of Fall 2019, I was able to create a very simple 2D game with a top-down view. Without even realizing, I was utilizing a design pattern. In the game, the user is given the objective of maneuvering a vehicle to collect some items while avoiding some objects. I had written code that allowed the user to use WASD or the arrow keys on their keyboard in order to move the vehicle. Now, I realize that I had utilized the observer design pattern, enabling the application to observe keyboard inputs and change the elements accordingly.

In our group, working on Class Critics, we employed the meteor-application-template-react template in order to manipulate it to make a website that functions the way we envisioned it. I again did not realize that we were using another design pattern. Using Meteor and React, we had the ability to create a user interface to insert stuff into a database and manipulate how the stuff in the database is displayed on the side of the user. In Class Critics, the model-view-controller design pattern is used to enable the user to write a review, essentially putting the review into a database, which can be displayed to other users. These were prominent examples that I could come up with off the top of my head. Maybe there are some design patterns that I have used before, but there are certainly many others that I have yet to implement.