|
|
|
|
|
by josephg
1215 days ago
|
|
I have a funny relationship with this. I also come from a formal CS background too. The old joke is that there are two lies in Computer Science: firstly its not science, and secondly it isn't really about computers. But the reality is, I still can't tell you what Computer Science actually is. Is it: - About understanding how to control computers (which are fast electronic machines) - About inventing programming, from the ground up. (A weird sub-discipline of mathematics and category theory) or - Learning to make software in order to improves the lives of humans We sort of need to learn all three aspects. Haskell programs run slower than C++ programs because haskell isn't written in harmony with the physical CPU cores we've made. Making fast programs is pointless if our software doesn't solve user needs. And solving user needs are impossible if we can't express ourselves clearly to the computer - which programming language theorists are obsessed with. I think the basics of hardware is part of CS, but maybe a CS undergraduate degree doesn't give anyone enough time to really go broad in the field. I dunno! |
|
Computer Systems Engineering
> About inventing programming, from the ground up. (A weird sub-discipline of mathematics and category theory)
Computer Science
> Learning to make software in order to improves the lives of humans
Software Engineering