Skip to content
DevMeme
3168 of 7435
The existential crisis of 'Computer Science'
CS Fundamentals Post #3489, on Aug 1, 2021 in TG

The existential crisis of 'Computer Science'

Why is this CS Fundamentals meme funny?

Imagine you join a class called "Cookie Science" expecting to bake cookies or do cool science experiments with sweets. But when you get there, instead of baking cookies, the teacher shows you how to solve fun puzzles on a computer. There aren’t any actual cookies in sight! It’s kind of funny (and a little confusing) that a class with "cookie" in its name isn’t really about cookies at all. Still, you stay in the class anyway, because the puzzles turn out to be pretty fun. In the end, even though the name was kind of wrong, you still learn a lot and enjoy the class – just like the people who actually work in computer science still love what they do, even if the name of their field sounds a little silly.

Level 2: No Lab Coats Required

If you’re new to the field, it might be surprising to learn that computer science isn’t literally the study of computers (like fixing hardware or building gadgets), and it isn’t much like a traditional chemistry or biology class either. Instead, computer science is mostly about learning how to think through logical problems and designing step-by-step solutions called algorithms. (An algorithm is basically a recipe or a set of instructions to solve a problem.) You also learn about data structures, which are clever ways to organize and store information. In other words, the focus is on the science of computation — figuring out how to make computers efficiently solve tasks, rather than studying the physical machines themselves.

The phrase "no lab coats required" fits because you won’t be mixing chemicals or peering into a microscope in a CS course. Instead, you might be writing code, working through math puzzles, or debugging a program on a screen. The “science” part is more about having a systematic way of understanding and solving problems (using logic and math) than about doing experiments on physical materials. And the "computer" part usually means using a computer as a tool, but not necessarily studying its hardware inner-workings (that would be more like computer engineering). Many beginners start a CS class expecting to assemble circuits or do hands-on gadget building, only to realize it’s a lot of abstract thinking, puzzles, and programming. This funny mismatch is basically a computer science naming paradox – the name doesn’t quite prepare you for what you actually end up doing. But once you dive in, you see that computer science is really about the art and practice of solving problems with computers, even if it’s not about the computers themselves in the way you might expect.

Level 3: No Telescopes Needed

Seasoned developers and academics immediately nod at this tweet because it's pointing out a classic truth: the name "computer science" can be pretty misleading. One of the pioneers of the field, Edsger W. Dijkstra, famously quipped, “Computer Science is no more about computers than astronomy is about telescopes.” The tweet's dry humor is a modern rephrasing of that insight. It's poking fun at the grand irony that our discipline’s title mentions computers and science, even though in day-to-day work we deal more with ideas, algorithms, and software abstractions than with any physical machine or traditional lab experiment. This kind of ComputerScienceHumor is a beloved in-joke in developer culture — an instant classic that both CS professors and veteran programmers chuckle at. The meme captures an industry in-joke: everyone in the field recognizes that the academic vs practical reality of "computer science" has always been a bit different from what the name suggests.

The misnomer of "computer science" also ties into the well-known joke about hard problems in programming. There's a saying: “There are only two truly hard things in computer science – naming things, cache invalidation, and off-by-one errors.” (Yes, it lists three things; that's the joke, sneaking an off-by-one error into the statement.) Here, naming struck again at the highest level: we even managed to awkwardly name our entire field. NamingThings is infamously tricky in tech, and calling the discipline computer science might be the biggest example of that – it's like an inside joke that started in academia and never got corrected. Yet, despite the awkward terminology, everyone in the industry more or less understands what it means, and we carry on regardless.

The phrase "but here we are anyway" in the tweet perfectly captures developers' mix of resignation and humor. We all just soldier on with the terminology. By now, computer science has become a brand of its own, so we’re basically stuck with it (even if something like "Computing & Algorithms" or "Information Sciences" might describe it better). Every experienced dev has a relatable story: say you mention you have a degree in computer science or work as a software developer, and someone immediately asks if you can fix their printer or set up their Wi-Fi. They assume you’re some wizard with physical computers. Meanwhile, you might have spent your time in college proving properties of a sorting algorithm or debugging software – skills that don’t help much with a paper jam or router issues. The absurdity of those moments makes this meme instantly relatable. It’s a gentle reminder that in this field, things often aren’t named for what they truly are, but we learn to live with the quirks. After all, whether we label it computer science, software engineering, or CS_Fundamentals, at the end of the day we're all just solving logical puzzles and writing code, not literally dissecting computers like the name might imply.

Level 4: The Formal Science Paradox

At the deepest level, this meme highlights a fundamental terminology paradox in computing: computer science is often classified as a formal science rather than an empirical one. Despite the name, it’s not primarily about studying physical computers or doing laboratory experiments like a natural science. Instead, it's rooted in abstract mathematics, logic, and algorithmic theory. A computer scientist might spend days proving a theorem about Turing machines or analyzing the complexity of an algorithm – all without touching any actual hardware. The field deals with the underlying principles of computation (like algorithms, theoretical models of machines, and data structures) in a way that's closer to solving a math puzzle than building a gadget.

This unusual naming has historical and philosophical roots. When academic departments for this field were first established, “computer science” sounded novel and important (computers were the exciting new technology of the mid-20th century). But what they taught was largely discrete mathematics, formal languages, and the theory of computation – essentially the science of what can be computed and how. In fact, many languages use a different term (like Informatics or Computing) to avoid implying it's just about computer hardware. The “science” in the name refers to systematic knowledge and rigorous reasoning rather than test tubes or wind tunnels. In practice, the field is about computational abstractions and problem-solving methods, not about tinkering with CPUs under a microscope. The meme’s joke nods to this deep truth: the discipline is about the invisible logic behind computing, not the literal nuts-and-bolts of machines, which makes the title “computer science” a bit of a misnomer.

Description

A screenshot of a tweet from the user 'Programming sucks' (@UserInputSucks), whose profile picture is a black circle with a yellow box stating 'CSS SUCKS'. The tweet itself reads: '"computer science" isnt really about computers and it isnt really a science but here we are anyway'. This is a classic, cynical observation popular in the developer community. The joke highlights the abstract nature of the field; it's fundamentally about computation, logic, and information theory, not the physical machines themselves - a sentiment famously articulated by figures like Edsger Dijkstra. It also pokes fun at whether CS is a 'hard science' like physics, as it's often closer to mathematics or engineering. The resigned 'but here we are anyway' captures the pragmatic attitude of developers who have to get work done regardless of the philosophical debates

Comments

11
Anonymous ★ Top Pick Calling it 'Computer Science' was the field's first major abstraction layer, and like most abstractions, it's leaky as hell
  1. Anonymous ★ Top Pick

    Calling it 'Computer Science' was the field's first major abstraction layer, and like most abstractions, it's leaky as hell

  2. Anonymous

    Computer science: we studied Turing machines, but our day job is naming things and persuading finance that latency shows up on the P&L

  3. Anonymous

    After 20 years in the field, you realize computer science is neither about computers nor science - it's about convincing stakeholders that O(n²) is acceptable 'for now' while secretly knowing the technical debt will outlive your tenure

  4. Anonymous

    Ah yes, Computer Science: where we spend four years proving we don't need computers to compute, then spend our careers proving it's not really science when the production deploy fails at 3 AM. At least we're consistent in our inconsistency - much like the field's relationship with the scientific method versus 'works on my machine' empiricism

  5. Anonymous

    Computer science isn’t about computers or science; it’s applied sociology with logs - getting humans and eventually consistent systems to agree just long enough to ship

  6. Anonymous

    CS: Where computers are optional, but proving undecidability is mandatory - prod crashes optional

  7. Anonymous

    Computer science isn’t about computers or science; it’s proving FLP and CAP, then shipping a mostly-consistent system and getting paged at 03:00

  8. @asm3r 4y

    Yep https://youtu.be/2Op3QLzMgSY

  9. @dsmagikswsa 4y

    Algo and data structures

  10. Deleted Account 4y

    Tru

  11. ẞonny 4y

    German lol

Use J and K for navigation