In eighth grade, I started to read a book that changed my life forever. Hello World! Computer Programming for Kids and Other Beginners put me on a path for me to learn object oriented programming. I was on a FIRST Lego League robotics team at the time, and I was completely unaware of the rabbit hole that I had just stumbled into. Computer programming has not just taught me how how to make computers run; it has taught me how to think. Programming is all about manipulating information in ways that makes that information easier for human being to comprehend. Because of the multitude of good and bad methods that can accomplish this task, there is a dire need for a programmer to have creativity and critical thinking. Creativity allows a programmer to find new ways of manipulating in hopes of finding the most effective and secure methods. The benefit of this kind of metal exercise has even sparked discussions of turning computer programming into a core subject. While I do not agree that every child in the United States should be forced to learn programming all the way from kindergarten to high school, I do believe everyone should take at least one computer programming course at some point in their education, and that is coming from someone who works with it every day.
Career Technical Education
Attending Central Nine Career Center has given me a phenomenal opportunity to advance my education for my future plans of becoming a computer programmer. This opportunity comes in the form of an Associates Degree in Information Technology from Vincennes University right out of high school. The IT program that they have allows me to earn this degree while I am still in high school through dual credit courses. So far, it has been an amazing experience because it allows me to learn about subject matter I am profound in and allows me to save money for my Bachelor’s in Software Engineering because of all of the credits I will have from earning the Associates Degree through this program. However, the benefits of this curriculum go a bit past saving some money and earning my degree early on. It gave me an experience with Carrier Technical Education that most people in the United States do not have a chance to have. I was able to learn and apply real world skills that are currently in high demand from employers, and that is enough to justify my recommendation for Carrier Technical Education.
My parents and siblings have been bombarding me with the world of video games since I was born. When I was very young, although I am not sure how young, the first device I had to play with was a Game Boy Color with Pokémon: Leaf Green that my dad gave me. Initially, my only real problem with this was that I was still illiterate at the time. Understanding controls and performing actions were simple to start learning but progressing the game’s underlying or understanding overarching objectives was basically impossible. One I entered elementary school and actually learned how to comprehend written English. This gave me the tools I needed as a player to start achieving higher levels of engagement in my games. As I aged, I found myself hitting skill caps in all of the hand held and console games that I owned. Becoming more skilled in those games took so much practice that the games stopped being fun and worthwhile to play. This is when I started to turn to gaming on PCs. PC gaming had a very unique controller by comparison to console gaming: the mouse and keyboard. Unlike joysticks on a conventional controller mice gave me the ability to more accurately look in the direction that I wanted to look in. I wound not have to wait for the game to slowly pan around, but instead I could instantly look to where I wanted by moving my mouse at different speeds. The addition of a keyboard also improve the quality of my controls. Keyboards have significantly more buttons in a smaller amount of space by comparison to controllers; this gives me more actions that I am able to preform, and the closeness of the buttons means I can execute those actions in a smaller amount of time. When combined, a mouse and keyboard provide an expansive world of possibilities for skill improvement and a general ability to enjoy the games.
Learning to program has only cased my appreciation of video games to flourish. I have made my own video game projects to test my skills, and I can say with great certainty that it not an easy process. The level of engineering and planning it takes to make even the simplest of games is tedious and time consuming. Turning a video game into a final product is not a process of toy making, it is a process of engineering and computational wonder that brings these games to life
Do not ever end a sentence in a preposition. Please.
The Heart of Engineering
If school has taught me anything, it is that the only true failure that anyone can experience is failure to learn from their own past mistakes. Nobody has ever mastered an art or a skill without stumbling as a beginner, and to gain the most experience out of an opportunity they must first know the ways it can go wrong. Once a mistake is learned, it will never be made again if it was learned properly. This is how to world of engineering works. Engineers work hard on designing a product, prototyping it, and criticizing their own work until they eventually solve the problem at hand. The best part about this process is that once an engineer finishes a product, he can not only reuse that product in future solutions but use the information from the mistakes he learned from as well.
However, there is a dark consequence for people who do not recognize and lean from their mistakes: utter failure. Making a mistake and not learning from it had three losses: the aftermath of the mistake, losing something that can be learned from, and even more mistakes of the same nature. Someone ends up in a loop of the same mistake over and over again is in a horrible position where the losses just keep adding up. Even Einstein refereed to this loop by saying insanity is “doing the same thing over and over again and expecting different results.”
Programming is no exception to this moral of failure, as it is a variety of engineering. The syntax of computer programs is far more sensitive than that of any written language. Capitalizing a letter in the wrong spot or using one incorrect piece of punctuation can completely change or just simply ruin the way a program works. Testing code over and over again requires learning from failed attempts because no computer program ever works properly on the first attempt. Frantically compiling code and making little changes each time is the bulk work of a project.
The Scientific Method
I believe that the scientific method is the greatest invention of all time. Every discovery that humanity has ever unveiled in some shape or form involved the scientific method. Through observation, experimentation, analysis, and a few more important steps in between, humanity has come up with many consistent explanations for how the natural world functions and methods of predicting future events. This difference between asking how and why events occur is actually what makes the distinction between scientific law and scientific theory.
Scientific law are results from extensive experimentation that set up a way of predicting how events will occur under any given conditions, usually in the form of an equation. For example, gravity is considered scientific law because we can predict how the force will affect the world(F=mg and F=G(M1+M2)/r^2).
Scientific theory are results from extensive experimentation that explain why events happen the way they do. Evolution by natural selection is an amazing example of a theory because it explains shifts in allele quantities within a population by flagging the cause to be that alleles that case negative effects in an organism force it to reproduce less, and alleles that are reproduced less progressively get more and more rare because they cannot sustain their own existence. Many people in society misuse the word “theory” as if it holds less merit than a law, but in actuality theories hold just as much merit for “being real” as laws do. When people say that they have a theory about something and they have not tested it yet it actually is not a theory; it is a hypothesis. It makes me sad when someone redefines a word to fill a position where another perfectly good word already exists.
The work I do as a programmer tends to be more of an art more than anything else. While computer programs can be used to store information, analyze data, or increase productivity, they can also be used for creativity and expressionism. Graphing Mandelbrot sets exemplifies this. They are beautiful structures that no human can reproduce by hand, and adding the color and other strange transformations to it invites more room for creativity.
Art is not just drawing, music, or sculpting; art is any medium in which a message or emotion can be propagated from one person to another. Programming takes creativity, as there are so many ways to accomplish tasks and tasks that can be accomplished. Making programs that have an impact on someone is not impossible, and anyone who had a hard time believing me on that should give this a try. The point I am making here is that art has grown so much from the times where the only art that was considered worthy of discussion was great masterpieces in literature or phenomenally realistic portraits of societal leaders. Today, what seems to matter in a piece of art is the spectacle it brings to its viewer. The skill behind the art does not matter much so long as it has a significant impact on the viewer. Likewise, if a certain piece of art took an extreme amount of skill to make then it might not be apprenticed as well if the impact it has on the viewer is negligible.
I was in either sixth or seventh grade when I solved my very first three by three by three Rubik’s Cube, and the excitement of doing it the first time was overwhelming to me. The puzzle had seemed impossible to me up until that point, but with a bit of determination, memorization, and Google I was able to find a solution. Most people would have stopped right there and would have been happy with their abilities, but deep inside I had a burning passion to do more.
I asked my parents to buy me a five by five by five cube the next Christmas, and sure enough gave one to me. I wanted to conquer this challenge on my own this time, and I was not going to use any Google to aid in my solution. Days passed by, and I had managed to conjure up my own method to solve the cube. I was able to figure out how to do it by using some of the patterns I learned from the first cube, and applying the past skills that I earned to beat a new challenge felt awesome. However, I was not going to stop at that. With a bit of Google searching, I was able to find that there were other puzzles just like my Rubik’s cubes cubes that were not actually cubes. The one that I wanted to do next was actually a dodecahedron. This puzzle has twelve sides, and a star shaped pattern on each side for the pieces to turn on. While the puzzle looks quite challenging, it is actually a fairly easy puzzle to anyone who has solved a three by three by three, as solving this puzzle uses the exact same movement patterns as the cubes. While solving it does take twenty minutes to actually execute, it is still a neat party trick to be able to do.