Reading01:The Nature of Computer Science

Computer Science is neither an art nor engineering discipline, and while it is most similar to a science discipline even this is not exactly accurate. Computer Science is definitely not an artistic discipline. Artistic disciplines suggest that the end product is for purely creative purposes. Though computer science can be used in artistic ways, such as creating a film, video game, or modern song, computer science is more the vehicle rather than the process itself. Computer Science is also not arbitrary like artistic disciplines often are. Painting can either be very picture accurate or a colorful square and both are just as valid pieces of art. However, in computer science a well made algorithm is valid, but simplistic poorly written code is objectively worse and cannot just be appreciated as a different way of practicing Computer Science. Computer science is also not an engineering discipline because it does not have the strict structure of traditional engineering disciplines. When a civic engineer designs and builds a bridge, if there is a problem they cannot simply send out a bug a week later with a message that says the problem is fixed now. If a civic engineer has a problem with their bridge it could cause millions of dollars of damage not to mention the possible loss of life. For this reason there is a much stricter training structure to become an engineer in the classical sense. Any person who knows how to program, no matter their experience or level of schooling could be considered a computer scientist. Ian Bogost mentions that there are four years of upper level schooling and a number of years of experience under a registered engineer before a new engineer can be considered a professional engineer. None of this is true for computer scientists. Computer Science is more similar to a scientific discipline. In scientific disciplines there are very few laws only theories that can be disproven if enough evidence is found contrary to them. While most of the theories are so widely accepted they are basically laws, this is also true of computer science. While computer science has very few rules that programmers must abide by, there are many accepted structures used to make programming easier. These are generally the programming languages or larger structures, such as object oriented programming, that computer scientists will use to optimize code. Scientific disciplines are however different than computer science in that they tend to try to understand and discover the nature of the world while computer science is a discipline that largely supports its own development. Computer Science is not discovering anything but instead is inventing new ideas. Overall, Computer science is not like art or engineering at all, due to the creative principles of art and the structure and rigidity of the engineering discipline. While Computer Science is similar to science in the use of theories and rules, it is also very different because science exists to discover more about the world where computer science exists to innovate itself. I think Computer Science is a new discipline independent from any of the more traditional academic disciplines.