The Identity Crisis In Computer Science

A short time ago, I was in a meeting where Computer Science faculty sat around voicing opinions about what's important in the field and what students should learn. The discussion centered around trying to define CS and the question of where the field is going. I had a feeling of deja vu because the same basic opinions have been voiced many times in recent years. As I sat listening, it suddenly occurred to me that an underlying psychological problem has taken over Computer Science: the field is in a malaise, experiencing an identity crisis and questioning its value.



Let me explain. During the discussion, one of the Computer Scientists mentioned that in the 1980s, there was talk of CS becoming the next Pillar of Science, which would finally put CS on equal footing with fields like Physics, Chemistry, Biology, and Earth Sciences. “What happened?”, he asked, and went on to lament that other sciences usually view CS as merely “supporting” their work. Another Computer Scientist suggested that CS has made a mistake by thinking that the field is about the creation of software and software systems. He argued that computer programming should not be at the heart of what we do, but instead, suggested that CS should relabel itself as the field that focuses on “computational thinking” or one that “provides solutions to computational problems”. Each of these positions is symptomatic of an underlying problem: instead of being proud of our great accomplishments, such as the creation of the Internet and powerful interactive computer systems that have changed the way people around the world work and play, some computer scientists seem stuck in the doldrums, feeling disappointed and wishing for more academic prestige.





How Did We Get To This Point?

Maybe it's endemic. After all, fields like Philosophy made a similar transition — in the quest for prestige, they relabeled themselves as “thinkers” rather than “doers”. Such a transition can indeed help members of a field feel better about themselves. Collectively, they can decide that they are superior to other academics because they operate above the fray of everyday existence. Only the elite in their field can understand and appreciate the true essence of thinking. Unfortunately, the euphoria is short-lived: in a few years, the field becomes detached from the real world and slides toward irrelevancy.





Maybe it's time. CS is a young discipline that has grown rapidly. Perhaps, CS is like a teenager — not fully mature, and not yet confident about its place in the world.





Maybe it's living in the shadow of the Internet. A few years ago, I was shocked by a series of research proposals in which each researcher claimed their proposed project would create a replacement for the Internet that was bigger, better, faster, more reliable, more secure, more energy efficient, easier to use, and easier to manage. Instead of analyzing tradeoffs, the researchers had picked up the habit of hyperbole that was once reserved for marketing. In fact, whenever a computer scientist says that CS should really be in the business of providing “solutions” to computational problems, I wonder if they have unwittingly picked up the latest marketing trend: instead of marketing products and services, high tech companies in Silicon Valley market “solutions”. With research proposals making outrageous claims and marketing hype pervading our discussions, it's no wonder computer scientists have developed an inferiority complex — many are dreaming about becoming superheroes.





Maybe it's living in the shadow of Microsoft, iPods, and iPhones. When an average person hears the words “computer scientist”, they usually assume complete knowledge of every computer and networking product ever created. In reality, of course, no one can be familiar with all available applications and systems, nor can they remember a catalog of vendors, products, releases, and patches. Thus, if a computer scientist attempts to help a friend or family member with a computer problem, they can quickly feel inadequate.





Maybe it's insecurity. Indeed, many computer scientists feel uneasy because their research lacks impact. They avoid talking about the big successes in the field because they were not personally involved. More important, big successes can make one feel threatened. When the Internet project came along, for example, some computer scientists declared that, unlike their own research, the study of computer networks did not have significant intellectual depth. Others flatly declared that networking was “not part of computer science and never would be”. In retrospect, trying to exclude networking was silly and futile, but such attempts happen so often that it may indicate an underlying problem.





Maybe it's the culture. Much of the culture in an academic field is passed along in universities. If faculty members repeatedly imply that CS is inferior through their lack of enthusiasm and inability to articulate a clear vision, students may adopt the view. Even if faculty don't make a direct statement, students are likely to read between the lines, sense attitudes, and pick up subtle hints. Ableson and Sussman of MIT once remarked that Computer Scientists have “math envy” — they wish they were real mathematicians. So, they write lots of equations to give the impression that they are doing deep mathematics. Undergrads are often impressed, and conclude that the equations mean faculty are incredibly smart. Confusion can result when students realize that the equations do not match reality. Top grad students often see through the ruse and start questioning the validity of the research. In the end, however, even grad students can walk away with a subconscious impression that mathematics is to be envied.

What Can We Do To Correct The Problem?

A few suggestions.



Change the breed: filter admissions. Here's a chance for multidisciplinary research: work with psychologists to devise a test that can be administered to students who apply to CS programs. If an applicant is prone to develop math envy or envy of other fields, send the applicant to another department. It should only take about four years before we see a significant change in the students emerging from undergrad programs. In another six or seven, we'll see a change in the young faculty, and the herd will improve.





Change the culture to one that celebrates contributions and achievement. Assure CS faculty that the rest of academia isn't better or more prestigious than CS — it's just that those areas have spent many decades justifying their existence and defending their importance. As an undergrad majoring in physics and mathematics, for example, I saw the situation clearly. By the time we were sophomores, physics majors knew that physics “owned” the entire universe from subatomic particles to astrophysical phenomena. Physics had a well-deserved reputation as the most difficult major, so everyone on campus assumed physics majors were very smart. But there was more: faculty repeatedly assured us that everything in the universe followed physical principles. Once we understood physics, they asserted, everything else could be derived as a consequence. Thus, the physics faculty gave the impression that even chemistry and biology were offshoots of physics — uncovering principles of energy and matter formed the heart of science. Other academic groups each instill pride in their students. For example, math majors are told that mathematics “owns” the abstract universe and chemistry majors are assured that chemists do important work while physicists merely fiddle around with string theory or build bigger and bigger atom smashers looking for smaller and smaller (i.e., less consequential) subatomic particles. CS needs to create a culture of pride in the field and its accomplishments.





Discard the idea that “thinking about computing” in the abstract is somehow more prestigious than “thinking about novel ways to design and build computing systems”. The promotion of abstract thinking divorced from reality appeals to computer scientists who are drawn to mathematics or who engage in the practice of discovering flaws rather than building. Abstract thinking can seem alluring because it simultaneously removes the requirement that assumptions need to match reality and places CS above the fray of having to understand real systems and practical constraints. Moving CS from building computer systems only to “thinking” about computing completely misses a key point: if it stops dealing with the real world of computers and software, CS will become irrelevant. We will end up with angels dancing on the heads of pins, and another discipline will move in to take over the aspects of computer science that have significant influence.





Set up mini training sessions for faculty. Enable CS faculty to learn enough about commercial products to be literate. There are two benefits. First, if computer scientists can learn enough to be slightly ahead of an average user, they will feel better. Second, if they understand the limits of commercial products, faculty will help devise ways to improve them. The good news is that little is required to stay ahead of the general public. Many problems have a trivial fix (e.g., plug it in or reboot). Someone with a little technical knowledge who proceeds logically can seem like an expert when compared to an average user. Thus, a small amount of training can create confidence.





Launch a publicity campaign. Remember that over the past decades, CS has changed the world. Instill pride in our accomplishments. Stress that we figured how to build the complex computation and communication systems that average users take for granted. Keep everything lighthearted, but remind students why CS is a leader among academic disciplines. Smile and wink, but announce that physicists and chemists are really only kept around because they “help” computer scientists. After all, we need results from device physics to help us create smaller, faster transistors and we need chemists to improve the fabrication of silicon chips. Physicists also help us create better lasers for optical networks, and have been especially helpful in designing smaller, more efficient antennas for wireless networks. Sure, antenna design is only a minor piece of networking (and not deeply intellectual like protocol design), but it's nice that physics can help.



Translations:



A translation of this essay into Bulgarian can be found at https://transl.routerloginguide.com/identity-crisis-bulgarian/





A translation of this essay into Croatian can be found at http://pro4education.com/the-identity-crisis-in-computer-science/





A translation of this essay into Norwegian can be found at http://prosciencescope.com/the-identity-crisis-in-computer-science/





A translation of this essay into Polish can be found at http://led24.de/blog/kris-identywakovnosti-u-infarmaccici/





A translation of this essay into Russian can be found at http://www.opensourceinitiative.net/edu/crisis/





A translation of this essay into Spanish can be found at http://expereb.com/la-crisis-de-identidad-en-la-informatica/





A translation of this essay into Swedish can be found at https://www.autonvaraosatpro.fi/blogi/2017/08/24/den-identitetskris-datavetenskap/





A translation of this essay into Ukrainian can be found at http://eustudiesweb.com/the-identity-crisis-in-computer-science/

