Reflections on Computer Science

Having completed my penultimate semester pursuing my BS in Computer Science at Lehigh, I believe now is the time for me to reflect on my Major.

Computer Science – two words that for some inexplicable reason, makes people think I can fix their computer. I can, don’t get me wrong, I can, but that has nothing to do with my major. Edgar Dijkstra said, “Computer Science is no more about computers than astronomy is about telescopes”, and he is correct. Mechanical Engineers don’t fix fan belts, Electrical Engineers don’t fix VCR’s, and Computer Scientists don’t fix computers.

Computer Science is not about solving computer problems – that is almost entirely left to the mathematicians, physicists, and the electrical/computer engineers. Computer Science is the science of applying computers to solve real world problems. We use computers, and programming languages to implement algorithms that solve computationally intense problems. I’d argue that there exists no field in which computer science has not changed. Doctors now have the ability to detect tumors and other problem areas in medical images thanks to applications developed by computer scientists. Engineers can build an entire airplane virtually to exact tolerances and run complete analysis on the strengths and weaknesses of the structure. Cars can now detect collisions through many sensors, and can apply collision avoidance measures. All this is possible because a computer scientist wrote code that changed electrical pulses and manipulated bits.

I consider myself an engineer, even my major says so: BS in Computer Science and Engineering. Yet, many people do not consider Computer Science an Engineering Discipline. Professors of other engineering disciplines actually look down on computer scientists. Freshmen year, I had a professor who legitimately was disappointed when I declared my major. According to Wikipedia, “Engineers work to develop economical and safe solutions to practical problems, by applying mathematics and scientific knowledge while considering technical constraints.” This is what Computer Scientists do; this is exactly what we do. This disparity arises when people frame engineering with the industrial revolution mentality. With all due respect, the industrial revolution is dead. We are in a digital revolution, and have been for over a decade. Success is now dependent on the fast exchange of information, and the ability to process and analyze that data quickly. It is in the spirit of efficiency that computer scientists apply their math and critical thinking skills to improve the world around them. To deny computer scientists the title of engineer is equivalent to calling a doctor a nurse.

Though, I believe it is time for Computer Science education to grow up. Computer Science is taught in isolation, with artificial restraints. Computer scientists need to work with other disciplines and bridge the gaps to develop cohesive, all encompassing solutions to the problems that plague our society. There has to be a paradigm shift in institutions. Computer Scientists must be willing to work with other disciplines, and other disciplines must be willing to work with us, and inevitably, someone is going to have to force us to work together.

Comments are closed.