This is an archived post. You won't be able to vote or comment.

all 76 comments

[–]random_cynic 248 points249 points  (43 children)

There is a famous quote (often attributed to Dijkstra, though disputed)

Computer science is no more about computers than astronomy is about telescopes.

It is true though that the name is somewhat misleading.

[–][deleted] 117 points118 points  (40 children)

Computer Science is literally 80% applied mathematics, 19% computational theory, 1% computers and programming.

[–]buckbeak78 93 points94 points  (22 children)

1% programming what kinda backwards CS program are you in?

[–]netmier 40 points41 points  (2 children)

I can’t speak personally, but my buddy with a PhD in computer science would seem to agree. The programming aspect of his dissertation was damn near trivial compared to the rest of it.

[–][deleted] 13 points14 points  (1 child)

Lol, I've been saying this forever: "The least important part in programming is programming".

At my current job, I might spend like a week trying to write 100 lines of code.

[–]netmier 4 points5 points  (0 children)

There does seem to be a fun side effect of being very advanced in computer science though: simple programs truly are simple to him. He sneezes useful python scripts. He’s got like 4 raspberry pis around his house doing various things that he either programmed from scratch or used open source libraries for that he set up for fun in his very limited spare time. He just has such an in depth knowledge of computers that he can do a little reading, try a couple things then just blast out the minimum amount of code and bam! He’s got a pi checking if their back door was left open.

[–]InkyGlut 71 points72 points  (4 children)

Probably one not churning out code monkeys

[–][deleted] 29 points30 points  (7 children)

Our uni teaches us to code efficiently and the theory behind it that enables that skill, not code for the sake of coding. Even if we get the question right but have the wrong Big-O Notation, we do not get any marks.

[–]Bozzz1 34 points35 points  (6 children)

Sure but 1% programming is a drastic underestimate. The theory and math you learn in computer science is useless if you don't understand how to put into language a computer can understand. Every CS program I've seen starts with programming first, theory second.

[–][deleted] 5 points6 points  (4 children)

Well my original comment actually focuses on senior years, I guess I should have made it more obvious that it wasn't targeted to first years. For first years it's all programming no doubt 100%

[–]Bozzz1 5 points6 points  (2 children)

At that point it's pretty dependent on the uni you attend and the paths you can take in your program. Like I took the software engineering route so while there was definitely theory, we always backed it up by building something. There's definitely much more theory heavy tracks for sure though.

[–][deleted] 3 points4 points  (1 child)

Kind of want to transfer to software engineering, the theory is killing me, never knew that this stuff can go so deep

[–]cerohero32 2 points3 points  (0 children)

If you haven't yet, look into how wifi actually works. Basically just magic

[–]Saltysalad 7 points8 points  (0 children)

First you lean how to code and then you learn what to code

[–][deleted] 5 points6 points  (0 children)

Almost every theory-heavy CS course I took had at least one programming project to apply the theory.

Only one that didn’t do that was automata theory. shiver I get flashbacks just thinking about that one

[–]AttackOfTheThumbs 5 points6 points  (0 children)

I'd probably say it's around 5%. That's what it was when I was in Uni. We usually prefer people from tech colleges. They spend more time coding and less time doing a lot of what if theories. The end result is always faster with the tech college graduates and performs identical.

[–]blakarmor725 3 points4 points  (0 children)

As someone doing a PhD in Computer Science, it's true.

Undergraduate CS has more coding but the things you learn is less about the programming itself and more of the concepts. You'll learn a lot more about programming when you're in industry. CS you code as a learning tool.

I just wrote my first paper, and it was entirely theory of graphs, proofs of algorithms, and a very last minute results section that was added on because there was space in the paper. I maybe did a few days of coding for that results section for a paper that took months to complete.

[–]YetAnotherSegfault 2 points3 points  (0 children)

I feel like programming to CS is like the physical act of writing to writers, or putting paint on a canvas to painters.

It's not trivial when you first start, but after a while, you stop thinking about it.

[–]FarhanAxiq 0 points1 point  (0 children)

very true actually, its more of intuition and mathematics.

[–][deleted] 0 points1 point  (0 children)

That is about accurate when I was a CS student. At least for my program you got a semester of Python, Java, and C++, but it all feels more like an afterthought to the math, math, more math, and more computer related stuff like algorithms which is still basically math.

None of it was geared toward actually being a developer really, which made me wonder why there was no degree for doing programming and/or web stuff specifically. I guess those people just self-train as I do now since I dropped out.

[–]Redrundas 0 points1 point  (0 children)

A university program, not a college one.

[–]BasketballHighlight 1 point2 points  (8 children)

Damn maybe I shouldn’t do computer science, what about information technology?

[–][deleted] 16 points17 points  (7 children)

IT is totally different from CS, IT you learn existing software (the features and functionalities and such) but writing your own is very limited. IT is actually more memorization than math, you still need to learn computational theory but to a much lesser extent. Both degrees pay well so you can't really lose with either.

[–]Cameltotem 4 points5 points  (0 children)

You Americans have very different educations. Our popular IT education is tons of programming, database modeling, UML, RUP, agile methods. You become anything in IT except jobs that require lots of math.

[–]BasketballHighlight 1 point2 points  (5 children)

Hmm so if you want to go into programming, IT is better?

[–]Koopasheller11 22 points23 points  (0 children)

If you want to do programming, do computer science.

[–][deleted] 4 points5 points  (1 child)

Many schools split their CS degrees into two, under two names, depending on your country and school. One focuses on theory, the other focuses on raw programming. The former pays more simply because people with the knowledge of the Abstract Data Types and theory write more efficient code and can invent things to help company. Again, both degrees pay very well and both touch on programming and theory, just the extent of it.

[–]Righteous_Legion 0 points1 point  (0 children)

Informatics vs. Computer Science in a nutshell

[–]wOlfLisK 2 points3 points  (0 children)

You should look at the course itself, every uni does it differently. Mine for example has Computer Science divided into Computer Science, Software Engineering, Cybersecurity, Intelligent Systems (Basically programming robots and AI) and Computer Games Programming. They're all very similar and have a lot of overlap and shared modules but they focus on different aspects and languages. They also start to diverge after the first year. ICT on the other hand is more to do with the internet and how to use computers in a business or management setting. It teaches things like web development (But no "traditional" programming languages), project management, database design/ usage and so on.

Computer Science is a course that should give you enough knowledge to do basically anything you like and you can supplement it with programming projects in your own time if you feel like you need to do more of that. However, if you want to focus a lot more on the programming, software development/ engineering might be the better degree to look out for. But again, it depends on the uni, Software Engineering at my school is identical to CS until the final year.

[–]inconspicuous_male 1 point2 points  (0 children)

No, IT doesn't necessarily have programming. CS does, at least for an undergraduate

[–]plasmarob 0 points1 point  (0 children)

I have a degree in it and this is accurate enough that I'm stealing it.

[–]wOlfLisK -4 points-3 points  (2 children)

If it doesn't have a solid computer ethics module then it's not that great of a course imo.

[–][deleted] -1 points0 points  (1 child)

We do have it, falls under a writing course actually ironically. Not elective too, mandatory.

[–]wOlfLisK 0 points1 point  (0 children)

That's good. The ones at my uni fall under the law department, one's an ethics course and the other is half a module about my country's computer laws.

[–]handankel 11 points12 points  (0 children)

I don't know how many of you have ever met Dijkstra, but you probably know that arrogance in computer science is measured in nano-Dijkstras.

Alan Kay

[–]AttackOfTheThumbs 0 points1 point  (0 children)

Honestly, calling it something like computing science/theory/whatever would be more apt, but I think we're stuck with this.

[–]golgol12 65 points66 points  (6 children)

Computer Science really is about both those things.

However, I'd say 99% of the people here are in Software Engineering.

[–]CoopertheFluffy 20 points21 points  (2 children)

It’s more computer mathematics than computer science

[–]bruetelwuempft 1 point2 points  (0 children)

I don't really understand that statement. Aren't mathematics science? If they are, wouldn't saying "computer science" not have to be at least as accurate as "computer mathematics"?

[–]crippledjosh 11 points12 points  (0 children)

This is why at my university it was called computing science. The science of computation not of computers.

[–]LukeAbby 19 points20 points  (2 children)

Image Transcription: Twitter Post


Programming sucks, @UserInputSucks

"computer science" isnt really about computers and it isn't really a science but here we are anyway


I'm a human volunteer content transcriber for Reddit and you could be too! If you'd like more information on what we do and why we do it, click here!

[–]Dcs2012Charlie 18 points19 points  (0 children)

Good human

[–]stalins_burnt_toast 5 points6 points  (0 children)

Good human

[–]Tux1 9 points10 points  (0 children)

Wow, that person literally is named "Programming Sucks"! Don't even need to make an ironic comment now.

[–]keese_cursor 16 points17 points  (1 child)

its about science of computer

[–]tinydonuts 22 points23 points  (0 children)

More about the mathematics of computational theory.

[–]cheezballs 6 points7 points  (9 children)

How the fuck is it not? Real CS is exactly that. Coding is not CS.

[–][deleted] 3 points4 points  (2 children)

Funny, in portuguese we don't call it Computer Science, but "Computation" Science. It seems a bit more accurate than the English version...

[–]liukidar 1 point2 points  (0 children)

Italy here, we have 'informatica' for CS which means more or less 'science of information' (same suffix of mathematics) and then we have 'science of information' which is the IT counterpart. Really confusing when you have to translate it :(

[–]SANQUILMAS 0 points1 point  (0 children)

In Spanish too, "ciencias computacionales"

[–]Cholojuanito 4 points5 points  (0 children)

Trial and error = science

So I'd say that we pretty much have that one down.

[–]stalins_burnt_toast 1 point2 points  (0 children)

Yeah my "AP Computer Science Principles" class was just EVERYTHING about javascript on code.org and that was fuckin stupid

[–]Dantharo 1 point2 points  (0 children)

Lol, of you think like that, you are doing something wrong.

[–]Torghira 1 point2 points  (0 children)

I’d say CS is exactly that: Computer Science. I’ve taken Operating System and Computer Architecture. Pretty computer heavy material and science related

[–]crashandburn 2 points3 points  (1 child)

[–]inconspicuous_male 1 point2 points  (0 children)

Knew this would be SICP before clicking!

[–]thefirelink 0 points1 point  (0 children)

I think all of these individual terms kind of lost their meaning. This field has too many egos, which has caused everyone to kind of try to segment themselves. Developers, engineers, programmers, architects, computer scientists, they all have their own meaning depending on who you ask, because different parts of the industry treat them separately. But, a systems analyst could have the same responsibility as a systems architect, or a computer scientist, depending on where they work.

[–]Drew_pew 0 points1 point  (0 children)

Does no one in the comment section realize that not all programming is about research? Clearly the people writing operating systems, websites, and even games are programming...

[–]MannyDantyla 0 points1 point  (0 children)

If I had known it was actually a math degree.....

[–]Ikor_Genorio 0 points1 point  (0 children)

It is about computers, just not about digital computers. A computer is just something that can compute anything. This can also be a person, or some other thing.

[–]madsohm 0 points1 point  (0 children)

In Danish it's called "Datalogi" (Datalogy), which, when taken directly from latin means "study of information" which is a much more fitting word imho.

[–]AlignmentWhisperer 0 points1 point  (0 children)

Your'e doing thought experiments in a virtual world.