Myth-Busting Common Misconceptions about Computer Science Degrees
As I’ve written, presented, and spoken about widely, because computer science (CS) is a discipline overrepresented in the applicant pool, admission as a CS major can be far more competitive than for other majors. Admission to schools as a CS major is supported with clear direction in the field reflected in activities, resume, and coursework: a strong CS “fingerprint.”
What activities comprise a strong CS fingerprint?*
Rigorous STEM courses in high school with strong grades
Math and CS courses that augment the high school offerings
Year-round and summer coding boot camps, workshops, classes, and programs
Engagement in related high school clubs
Participation and placement in programming and STEM competitions
Participation and placement in mathematics competitions or hackathons
Activity on GitHub and independent research
Maker portfolios
Math and CS tutoring of other students
Numerous technical skills (i.e., 3-D printing) and programming languages
Publications of CS-related research
CS-related patents
* This list is meant to be illustrative and is not exhaustive.
Myth #1: A strong CS fingerprint guarantees admission to a top-ranked CS program
These and similar activities define a predictable and well-worn path leading to admittance to many colleges and universities as a computer science major. However, many students applying to the most highly selective institutions will have similar CS fingerprints. Students who differentiate themselves within this competitive pool will have better outcomes. A student may distinguish themselves by being the most pointy within this pointy group, for instance, by achieving national and international accomplishments. Another way a student may distinguish themselves is through other interesting and unusual parts of their application - things that most CS-interested students can't or don't do and that make them "look" different amongst the sea of students who have done many of the more common activities. Additionally, there are other components and considerations of a student’s application beyond their CS fingerprint, such as references and essays, for example.
Myth #2: You must have past experience in computer science in order to pursue a CS major in college
Many schools will allow a student to explore computer science for the first time while in college. These typically include small liberal arts colleges and Schools or Colleges of Arts and Sciences at a University.
At small liberal arts colleges (such as Wellesley College), while students may be asked to indicate their academic interests in their application, they are not bound to what they’ve written. Once enrolled, they may pursue any of the majors offered. The small liberal arts college experience affords students the time and latitude to explore their possible interests. Students usually take a wide range of humanities, arts, social sciences, math, and natural sciences courses in their first few semesters and declare their major in the spring of their sophomore year. In my twenty-one years as a CS professor and Dean at Wellesley College, I taught, advised, and mentored hundreds of students who were introduced to CS by taking their first CS course at the College. Many went on to major or minor in CS.
Colleges or Schools of Arts and Sciences at universities (such as Tufts University) may offer a CS major. In such cases, the educational experience is often like that just described at a small liberal arts college. For instance, at Tufts, students apply and are accepted to either the School of Arts and Sciences or Engineering. Students accepted to Tufts indicated their academic interests on their application but are not bound to them. Once students enroll in the School of Arts and Sciences, every major, including CS, is available to them. Students in both schools may major in CS, and there are no caps on the number of CS majors. At Tufts, the CS major itself is virtually the same when pursued from either school. (The degree requirements outside the major - beyond the major requirements - are significantly different in each school, though. Generally, students pursuing a BSCS in the School of Engineering must take more math and science courses, whereas students pursuing a BA/BS in Computer Science in the School of Arts and Sciences must take more humanities, arts, and social sciences courses, including foreign language.) The only distinction in the major is that there is a year-long required senior capstone project for students in the School of Engineering. As Dean of Academic Advising and Undergraduate Studies for the School of Engineering at Tufts, I guide approximately 700 students majoring in CS across both schools and oversee all undergraduate degree programs offered by the six departments in the School of Engineering, including the CS department. As I experienced at Wellesley College, I regularly see students who take their first CS class at Tufts. Again, many go on to major or minor in CS.
For instance, many students have similar academic journeys to Owen, Eve, and Drew:
Case Study #1: Owen
Recently, the mother of one of my former Lantern students emailed me to let me know how her son was doing in his first year at Vassar College. He had applied to college as an undecided student with zero CS experience and no intention of studying CS. She wrote: "Just a quick note that Owen is so happy at Vassar! This semester he’s taking his first computer science class and thinks he might want to major in that." I wrote back to her that I love that the liberal arts curriculum has allowed him to experiment and find a major like computer science (CS) that he might otherwise not have been able to explore. Within minutes, she replied: "So true! In his first semester, he mostly took humanities courses (and one math class). This semester CS and math are his favorites, and now he wants to try physics. (He just got a 98 on his midterm for multivariable calc!) He says that part of what is drawing him toward CS is that he finds he can get lost in it for hours without noticing. He also likes the culture of the CS department at Vassar."
Some people might find it surprising that a student might discover an interest in CS in college. After all, as I’ve detailed, CS is the most highly competitive major in admissions, and many students spend years honing a deep CS fingerprint and building up a treasure trove of CS skills and experiences. However, from a young adult developmental standpoint, CS is no different than other majors. It is common for 17- and 18-year-olds not to be sure of their academic interests, and many students are not exposed to CS (or engineering) before college for a wide range of reasons, including societal and cultural. It is entirely developmentally appropriate for students to discover what they want to study over time while they are in college and through a process of exploration and academic self-discovery - even CS! I tell all of my students that while they may graduate having studied what they intended to as they matriculated, I hope they learn and grow and consider other possible majors while in college. In fact, I tell them that if they don’t, we, as educators, have failed them.
Case Study #2: Eve
Five years ago, my heart leapt when seeing a LinkedIn post by one of my former Wellesley College students. As a first-year student, Eve took CS 110, my introductory course for non-majors. It was a course designed as a gentle introduction to CS ideas for students who wanted to have some basic literacy in the field. Since it was not sufficiently rigorous, the course could not be applied to the CS major. Eve devoured the concepts and material and excelled in the course. She then took the introductory programming course for majors and loved that too. She declared a CS major and asked me to serve as her major advisor. I was thrilled to guide and mentor her through the CS major and during her time at the College. Many years and an MS and Ph.D. in CS from a top-ranked CS program later, the LinkedIn post which made my heart leap announced her appointment as a tenure-track faculty member in the CS department at Wellesley. When I congratulated her by commenting on her post, she replied, "It all started with you in CS110!" Indeed, it did!
Case Study #3: Drew
To provide an illustrative example from a university, Drew now works as a computer programmer for a financial institution. He majored in CS at Tufts in the School of Arts and Sciences and graduated in 2022. At a social event, I asked him if he had intended to major in CS when he applied to Tufts. He said no, he had not taken any CS classes nor done any CS-related activities in high school. He hadn’t known much about the field. As part of the liberal arts education within the School of Arts and Sciences, he took the introductory course for majors because it fulfilled the math requirement and he thought he would try something new. Like Eve, he loved and excelled in it, going on to take the next and subsequent courses. He had a fantastic experience, even TAing in the department’s most rigorous course (CS 40 - also known as CS 40 hours a week!)
Myth #3: You need an undergraduate CS major in order to pursue a career in computer science
No. It is absolutely possible to have a rich career in computer science without an undergraduate CS degree. Just consider Bill Gates! To succeed in the field, students must demonstrate skills that can be built in many ways, including a CS major, CS-tangential majors, a CS minor, courses, activities, jobs and internships, and postgraduate education.
This message is reinforced by my interview with Boston Dynamics CEO Rob Playter, who told me that he hires good people from a wide range of backgrounds and education as long as they have the skills he seeks.
Computer science skills can be developed through a top-ranked CS program (via a strong CS fingerprint built up in high school), a CS major at a small liberal arts college (perhaps after discovering a CS interest in college), post-baccalaureate or graduate work, a job, and activities. Opportunities abound for someone with talent and a genuine interest in computer science.
Case Study #1: Not Getting the ‘Official’ CS Major/Minor
I recently interacted with a Tufts senior who was frustrated that he would not receive an official CS minor due to major and minor course overlap limits, despite having fulfilled the course requirements. I asked him what he was doing after graduation, and he paused and laughed, saying he had a great software engineering job lined up. At that point, he let his frustration (and the minor) go, realizing that he had earned the position from the skills he had demonstrated in his interview, not the CS minor credential itself.
Case Study #2: Studying a ‘CS-related’ Subject
One of my former students was not accepted to the CS major at many of his schools. He decided to attend the University of Waterloo, where he now studies geomatics.
CS-related undergraduate majors include:
computer engineering
electrical engineering
data science
robotics
geographic information systems (GIS)
human-computer interaction
computational biology
applied and computational mathematics
informatics
human factors engineering
digital arts and media
cognitive science
statistics and machine learning
Case Study #3: Developing Skills Through Post-Baccalaureate Education and Work
Students who don’t possess the skills they need to be successful in the field upon graduation may consider furthering their education through a post-baccalaureate program like Tufts Post-baccalaureate Certificate in Computer Science or Georgetown's Post-Baccalaureate Certificate, a CS or CS-related graduate degree, or work.
One of my former Tufts students is pursuing a master's degree in bioinformatics at Harvard Medical School after earning a biomedical engineering undergraduate degree and working for several years, which deepened the computational experiences she had gained as an undergraduate biomedical engineering student. With her MS degree, she will have rich data science job opportunities.