Thursday, June 6, 2019

Computational Thinking: The Catalyst of Humanity - Draft

by Joshua Parmley

From the printing press to nuclear physics, the logic of computer science shaped history. Education should focus on that logic to shape the future.

Computational History has driven history
and will determine the course of the future
Computational thinking is the thought process behind using science and mathematics to consistently manipulate the natural world. Eusiuk Sung and Jeanette Wing define it as "taking an approach to solving problems, designing systems, and understanding human behavior that draws on concepts fundamental to computing". This methodology has existed for centuries and developed into the computer science take we have today. It is evident throughout history, and its successful application is accompanied with major changes in society and regional standards of living. Due to the incredible impact that computational thinking had in developing the world today, institutions of higher education should require students of all majors to learn how to apply computational thinking to their fields of work and study.


The Printing Press and Input-Output Functions


One of the earliest examples of computational thinking is found in Gutenberg’s printing press. The printing press changed the old process of handwriting books into a function with a simple input and output (see this short summary of the printing press). An input of blank paper undergoes a simple function of being pressed onto an arranged sheet of metal
typeface covered in ink. Once that was complete, pulling the paper through was simple. Before the printing press, the bulk of the work was putting ink on the paper, printing one word at a time by hand. Now, the bulk of the work was in setting the stage, or programming the function in computer science terms. This development changed the world, as the world of written communication exploded with the printing ease that came with the printing press. This use of computational thinking fueled the renaissance, as scripture was printed for the masses, and critical works of writing we spread for all to read and judge for themselves.


Arkwright's Water Frame: Functions Evolve


Computational thinking continued to develop in during the industrial revolution. One such example was with Arkwright’s water frame. The water frame took the mechanical function of the printing pres and added a level of adaptability. First, there were gears that could be used to adjust the force applied to the strands. This meant that the function could be modified easily, without having to pull the device apart (unlike the printing press, which required the typeface to be removed and completely reorganized). This was a more sophisticated way to adjust or "reprogram" the function. Second, there were several different spots for strands to run through, so the gears could change how one strand was being formed without changing the other strands. Centuries later, computer science would develop programming statements that allowed different functions to be assigned to different inputs. Arkwright just did it first, and this made him very successful. The water frame drastically reduced labor needs for forming thread. This kind of thinking used with was applied to all of the inventions of the industrial revolution, making mass production possible for the first time and greatly improved the standard of living in the countries that embraced it.

Turning Theory into Practice


*Due to technical difficulties, this is a place holder picture.
My plan is to have a better quality GIF running here soon.*
On into more modern times, Computational thinking has been used to turn theory into reality. With the development of nuclear physics came the theory that atoms could be split to release large amounts of energy. As this was being explored as a source of energy however, there arose a problem. An atom could be split by firing a neutron through it, but splitting one atom wasn’t that big of a deal. Engineers needed a way to set up a chain reaction, so that the atoms would split themselves or each other to produce large amounts of energy. With a clear input, uranium-235, and a clear output, energy from splitting millions of atoms, engineers developed a function based around the idea of a chain reaction. They set things up so that after one atom was split, it would release neutrons to split two or more atoms, which would release two or more atoms to split other atoms. This function would continue until there were no more atoms in the area or device to split. In computer science, this is known as a loop, which is a simple command to repeat a function until there is no more valid input, or some user defined condition is met. In the image above, 7 lines of code make a loop, which executes to print an R that represents a split atom. Based on one number of input, the code models the chain reaction of nuclear physics (in the case shown above, a number was entered to show approximately one million atoms being split). While computer science uses computational thinking explicitly, the methodology has applied for hundreds of years and has propelled humanity into the future.

Humanity's next step


It’s been said in speech, book, and song that the children are our future. In order to secure a brighter future for the world we must invest in the future individuals that can make changes. To this end, I believe that computational thinking should be taught in every college to every student, regardless of their major. This could either take the form of a required into to computer science class (which would be incredibly useful in this digital world) or could take the form a teaching method in a generals class. While Computational thinking is largely rooted in mathematics and applied mainly to STEM fields, the idea of using a function to produce a certain output or effect could be applied in nearly any field. Problem solving is needed in every sphere of study, and our world needs problem solvers like never before. By investing in the education of the world's future leaders, we are investing in innovation and progress.

Computational thinking is more than just a programming structure. It has developed techniques and technology that has shaped mankind’s way of life. It has played it’s part in the development of science, governments, social institutions, and more. The application of this methodology has marked the difference between the people of the renaissance and the modern society we have today. It is the catalyst of humanity.

Image Credits:
"Nuclear Chain Reaction by power of two Simulation" by Joshua Parmley (created and used by the author)

Source Credits:
Sung, Euisuk. "Fostering computational thinking in technology and engineering education: an unplugged hands-on engineering design approach: This article, through the C-Boat lesson model, shows how an engineering design task can promote computational thinking in an engineering design context." Technology and Engineering Teacher, Feb. 2019, p. Academic OneFile, http://link.galegroup.com/apps/doc/A574178009/AONE?u=byuprovo&sid=AONE&xid=68b4806e. Accessed 6 June 2019.

The History Guide: Lectures on Modern European Intellectual History, "The Printing Press", 2016, accessed at http://www.historyguide.org/intellect/press.html


1 comment:

  1. I loved the nuclear physics part! That is one of the best examples of the progress of humanity arising from computational methods. Perhaps consider addressing some of the counter arguments for implementing a required computational course, such as funding limitations and the "just another GE class" attitude.

    ReplyDelete