Live data from Hacker News

“Computer science is not about computers”

quoteinvestigator.com

201–210 of 293 posts

Re: “Computer science is not about computers”

#201
post #89
post #81

Earlier quoted context omitted.

This is an interesting view that captures a substantial portion of computer science including also programs and proofs with a short and clear criterion. However, a key drawback of this view is that it undersells the linguistic aspect of computer science which is manifested in the search for suitable programming languages . I think it is justified to regard the design of programming languages as a core area of compute…

Programming languages are not full linguistics, at least not yet. We focus primarily on syntax, semantics and pragmatics. All of this, though, is firmly rooted in mathematics, defining grammar as expressions and mathematical relationships. This then enables formal mathematical proofs where we can reason about outcome. I don't know if there exists such search that you mention, or it is more of an optimization of langu…

[deleted]

Re: “Computer science is not about computers”

#202

Computer Science is to software development like theoretical mathematics is to economics. Sure, there are some formulas in economics, but 99.99% of the time you are not going to prove anything mathematically and you are just looking up a formula written by somebody else. On the other hand economics has a huge amount of stuff that is not covered by mathematics at all. It is disheartening to see so many people wasting…

While I would agree that a Computer Science degree doesn't necessarily teach you a whole lot about Software Engineering (i.e. little-to-no time spent on version control, continuous integration, unit testing, microservice architecture, deployment, requirements gathering, data security, etc), it did give me a broad exposure to the different types of work that could be out there for programming, which would be a lot harder to do in the job market (i.e. no one is going to look at my web/game development history and go 'Yeah, this guy would be a good person to hire to work on our operating system!')

I learned about making Operating Systems, Compilers, 3D Graphics, Artificial Intelligence, Machine Learning, TCP/IP Networking, Databases, low-level Assembly programming, and how computers work at a hardware logic gate level, to name a few. And they offered other courses as well, these are just what I picked from the offerings.

Yeah, there was the standard Data Structures and Algorithms class (which in the business world is now not much more than a 'you better know/refresh this if you want to get through our interviews' class) and one class that was about Automata theory, which my teacher would claim 'is the only real computer science class at this school' which was all mathematical proofs, but it still helps you understand regular expressions better, at least it did for me.

But most of the classes I took would have had practical applications in the workforce, for different types of jobs. But really isn't that pretty much any undergraduate major? The classes you take aren't all going to be directly relevant to your particular path through the field, it's more about exposure to different possibilities and providing a broad base of knowledge to build from.

Re: “Computer science is not about computers”

#203
post #73

My view is quite unconventional, but I believe, computer science is a branch of mathematics that deals with large but finite structures (so they need an algorithmic description). Compare with most of "legacy" mathematics, which studies countable structures (so the description can use arbitrary series). Of course, there are larger sets, but they mostly serve as a theater (just like countable infinity is just a theater…

> Good example is number theory, which philosophically considers all natural numbers, regardless of size, to be equal type of objects. In computer science, the (although fuzzy) magnitude of numbers plays much bigger role.

Somewhat similarly, I have a degree in number theory / modal logic systems that was issued by the philosophy department at my university. The concepts are similar to a CS degree except you get really good at describing the problem because philosophy degrees usually involve a lot of writing.

Re: “Computer science is not about computers”

#204
post #107

Earlier quoted context omitted.

> Maybe we should call it Turing Machine Science Nope. Turing machines are arbitrary and rather unmathematical. The lambda calculus is a much better computational formalism, more mathematically grounded and oriented, with far more direct practical applications.

If you like, we can generalize and call it "computation science" to avoid the focus on the tool/machine in favor of the process.

"Computing science" is more commonly used as an alternative, but yes, that approach makes much more sense than focusing on some particular abstraction.

Re: “Computer science is not about computers”

#206
post #73

My view is quite unconventional, but I believe, computer science is a branch of mathematics that deals with large but finite structures (so they need an algorithmic description). Compare with most of "legacy" mathematics, which studies countable structures (so the description can use arbitrary series). Of course, there are larger sets, but they mostly serve as a theater (just like countable infinity is just a theater…

multiplication is an algorithm.

Re: “Computer science is not about computers”

#208
post #29

In Europe, "Computer Science" is translated with a word that is a mix of "information" and "mathematics". University course names are: > [...] informatique (French), Informatik (German), informatica (Italian, Dutch), informática (Spanish, Portuguese), informatika (Slavic languages and Hungarian) or pliroforiki (πληροφορική, which means informatics) in Greek. Similar words have also been adopted in the UK (as in the S…

This wikipedia article is not very accurate. In Hungary "informatika" is usually used only for primary/secondary school subjects covering every-day IT tasks like document editing, typing, or sending email. The most commonly used names for CS courses are "számításelmélet" or "számítástudomány" which translate as "theory of computing" and "science of computing".

I would add that what is basically Computer Science curriculum is called “Programtervező Informatika” (roughly software engineering/modeling informatics~=compsci) while what is generally the same as Computer Science Engineering is called “Mérnökinformatika” (roughly engineering informatics).

But you are right that as a job description, “informatikus” is a more basic position than “programozó”=developer/software engineer, etc.

Re: “Computer science is not about computers”

#209

For my entire time as an undergraduate, the large top-ten research university I attended offered no courses in programming language theory, nor were these topics woven into the computing curriculum at large. (actually, there may have been a handful of graduate courses, but undergrads were strictly prohibited from joining -- there was a mandatory theory of computation class required for all CS majors, but the topics v…

This also applies to interviewing. Google for instance generally doesn't include anything PL theory related in their interviews, even though it would often be more relevant to the work than random dynamic programming problems. As a result of this they produced languages and frameworks like Go, Dart, Angular and Tensorflow, which display ignorance if not outright contempt for modern programming language theory. This l…

I really dislike Go, but its creator(s) is more than familiar with language theory, and it is absurd to say otherwise.

Re: “Computer science is not about computers”

#210

Earlier quoted context omitted.

This whole debate is always so bewildering. Programming paradigm fanboys get into heated arguments about which model is the "best" one, but actual computer science research uses myriad different models of computation, usually endeavoring to select the one that is most convenient for the given purpose. Sometimes that could mean using the lambda calculus, particularly in study of language theory and type systems. Other…

Well, computing science studies programming paradigms; so defining them and analyzing what makes them suitable for what purposes is pretty much within its scope. As I said above, it may very well be that the best usage for Turing machines is using them in mathematical proofs; where the efficiency of the computation is not a concern.

Really the best usage of all the computation models we're discussing here is using them in mathematical reasoning. If you're looking to "create real working programs," then a better basis is probably going to be some combination of actual industry-grade programming languages and actual CPU architectures.

This response might come off as a little facetious, but seriously, I think the idea of "founding" industrial computing languages/platforms upon theoretical research models of computation misunderstands the relationship between theory and practice. There is a relationship for sure, the research on these models usually does want to translate into real-world implications somehow, but your functional programming language is not the literal lambda calculus.

Post reply on HN