Hacker News

Top stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. F-Droid 2.0 (f-droid.org)
    289comments
  2. Goodbye Google (ocallahan.org)
    48comments
  3. Show HN: Make cursed fonts like Times New Bastard (mitpit.com)
    80comments
  4. Show HN: Whiteboard (YC W26) – An open-source IDE for thoughtful software design (github.com/devdotfast)
    97comments
  5. Why is the liver so weirdly regenerative? (dynomight.substack.com)
    179comments
  6. 2DWillNeverDie (2dwillneverdie.com)
    23comments
  7. Fearless SIMD v1.0 (linebender.org)
    34comments
  8. Rails World 2026 Opening Keynote [video] (youtube.com)
    318comments
  9. Toyota is taking the Corolla electric (electrek.co)
    468comments
  10. My weird new hobby: Wandering around Tokyo on Google Maps (ahmedhossamdev.com)
    123comments
  11. Using LLMs to trace alchemical knowledge and decode 17th century letters (resobscura.substack.com)
    19comments
  12. Google’s Project Suncatcher to put ML infrastructure in space (blog.google)
    292comments
  13. Two-tier encryption in the UK (macanorak.com)
    384comments
  14. Writing Parquet files using Haskell (datahaskell.org)
    3comments
  15. Book review: Is parallel programming hard, and, if so, what can you do about it? (ahelwer.ca)
    34comments
  16. Opus 5.5 is good at explainer videos (launchvideo.io)
    110comments
  17. The Board Game of the Alpha Nerds (2014) (grantland.com)
    26comments
  18. Show HN: Air-gapped file encryption as self-decrypting HTML page (apeleg.com)
    17comments
  19. Security auditing in the age of (good enough) AI (trailofbits.com)
    12comments
  20. California is chasing wealth that has feet (landeconomics.org)
    570comments
  21. Sourcehut account takeover via build logs (XSS in ansi2html) (blog.arusekk.pl)
    17comments
  22. The forgotten battle of East Lansing (eastlansinginfo.news)
    15comments
  23. Show HN: Koi.rest – watch some fish and regain your balance (koi.rest)
    41comments
  24. WaveDigger: Dig into wireless signals to discover their physical locations (github.com/christianrowlands)
    20comments
  25. Nokia Design Archive (2025) (aalto.fi)
    121comments
  26. Forging 1024-bit RSA signatures in nearly SNFS time [pdf] (iacr.org)
    9comments
  27. Geothermal heat map of US hot springs (soakingsprings.com)
    39comments
  28. The Bayeux Tapestry: Woven by the Victors (historytoday.com)
    3comments
  29. Stable (YC W20) Is Hiring Product Engineers (usestable.com)
    —discuss
  30. Motor Characterization for Small Running Robots (2016) (robot-daycare.com)
    2comments

Philosophy of Computer Science [pdf]

284 pointsby 7y agocse.buffalo.edu
81 comments
7y agoHN ↗

This is obviously too big to be digested in a single chunk, but from a very brief first read, it looks impressive. The table of contents alone (19 pages) is an extraordinarily good outline of what CS is, and what the major components and questions of it are.

The author is William J. Rapaport, emeritus professor of computer science at SUNY Buffalo: https://cse.buffalo.edu/~rapaport/

Wikipedia bio: https://en.wikipedia.org/wiki/William_J._Rapaport

Trivium: WJR is the author of "Buffalo buffalo buffalo buffalo Buffalo buffalo".

There've been some earlier submissions, few with much discussion, though from 2015: https://news.ycombinator.com/item?id=10388603

Also relevant, the "Philosophy of Computer Science" article at the Encyclopedia of Philosophy: https://news.ycombinator.com/item?id=16451072 https://plato.stanford.edu/entries/computer-science/

7y agoHN ↗

    ... earlier submissions ...

The front page of the PDF is dated 6 September, so this most likely is some newer revision.

7y agoHN ↗

The book has been in process for years. The previous 2015 draft was 824 pages, it's now 928.

I suspect a periodically-updated LaTeX draft with an auto-date macro.

From the preface:

This document is a continually-being-revised draft of a textbook on the philosophy of computer science. It is based on a course I created for the Department of Computer Science and Engineering and the Department of Philosophy at the State University of New York at Buffalo.

The latest (August 2019) edition significantly updates/adds chapters 5 ("What is Engineering") and 20 ("Computer Ethics II: AI").

7y agoHN ↗

I've always tried to avoid buffaloing buffalo.

7y agoHN ↗

Ch 2. What is philosophy

Man, he's leaving no stone unturned.

7y agoHN ↗

looks fun, but man, do you really need to make subsubsubsubsubsections?

7y agoHN ↗

Philosophy is advertised as something more fundamental than logic itself. Here it's advertised as something more fundamental than computer science.

But when I read stuff like this I question the veracity of it all. The very first section seems to be talking about "science" and "computer science" then it goes on to talk about ethics... Is this really legit? I mean what "science" means and what "computer science" means is more of a english language problem then some fundamental aspect of reality... and ethics are just rules that govern human behavior and the human condition... does this really need to be merged with the formal fundamentals of computer science? It's like saying english literature is part of quantum theory or that morality is intrinsic to classical mechanics.

I'm curious but as an outsider looking in... it looks like a load of BS. Any top tier theoretical mathematicians or hardcore scientists have anything to say about philosophy? Or even the philosophy behind computer science? Is it worth reading this stuff?

7y agoHN ↗

Philosophy is the study of knowledge, including the idea of "knowing", and furthermore even being in a position to know (existence). It is indeed more fundamental, as it was probably the discipline in which first useful breakthroughs were made in human thought. Though we would do well not to confuse being more fundamental, with being more important (as far as people & society today are concerned).

In a way, it is the fuzzy wiring that underlies most other disciplines, that you need to poke around in when you run into longstanding, or seemingly intractable problems in what you're trying to do above. See for example: https://news.ycombinator.com/item?id=20905801

7y agoHN ↗

Computer science itself doesn't have ethics. It's like saying arithmetic has ethics. My question is why is philosophy including it as if it's part of the framework of computer science. It makes philosophy seem illegitimate.

7y agoHN ↗

Computer Science is pretty different from arithmetic (heck, that's a philosophical question in itself). Looking at the table of contents, he doesn't seem to be saying algorithms or data structures have ethics - but that a lot of recent developments in Computer Science can help us reckon with issues of what constitutes intelligence or autonomy, and the ethical ramifications that follow.

7y agoHN ↗

That's what makes it all seem illegitimate. The ethical ramifications of AI are a human quality outside of the computer science itself.

Computer science as a discipline like arithmetic has nothing to do with the human condition, it is just an aspect of logic. If philosophy purports to be more fundamental than logic or computer science why does it go on to talk about liberal arts topics of things like ethics or religion? It seems jumbled and disorganized and lacking of formal rigor.

Think about it. To use the analogy of arithmetic, the more fundamental theory is number theory. It dives into a lower level description of arithmetic. But then suddenly it starts talking about ethics and the moral implications of using arithmetic on human society. Is this social studies or formal logic?

7y agoHN ↗

Just read the intro, he explains what he means by ethics. There are two ethical questions to answer with respect to computer science. The first is are there decisions we should allow computers to make?

7y agoHN ↗

What nuclear missile trajectories should we allow mathematics to calculate? Yes, it's an ethical question that you can ask, but do you realize that this does not mean ethics is part of mathematics?

IF you can see how the question above doesn't force mathematics to be part of ethics. Then that same line of reasoning will help you realize how computer science is the exact same thing. The science of computing is entirely different from the application of computing (aka programming) side of it.

If philosophy purports to be a lower level description of mathematics/computing... why is it talking about ethics? The heart of computing relies on axioms, anything lower level then that would be an examination of what is an axiom? and what is logic? Not human rights.

7y agoHN ↗

I can understand your argument. Science necessarily must be void of any ethics in order to be science.

Then, people confuse ethics of what you do with science with the "ethics of science". It doesn't make any sense. But even if it's a thought contraction, it's imprecise enough to warrant a debate.

7y agoHN ↗

The practice of computer science is a human activity and therefore involves ethics. Further, the argument that computer science is ethically neutral is itself a question of philosophical ethics.

7y agoHN ↗

The practice of mathematics also is a human activity and therefore has ethics when viewed from the context of human activity. However, math itself is not ethical. It just is.

The same is said of computer science. What you do on the job as a software engineer, is more engineering and applying math and programming in a human activity. The disciplines themselves, algebra, category theory, topology, calculus, number theory, computer science are all devoid of ethics or morals.

Combining ethics and science is like combining church and state.

7y agoHN ↗

How does it make philosophy seem illegitimate?

I think that the three main areas of philosophy are being, ethics, and knowing. Of those, ethics doesn't apply to CS (until you try to make a program that does something), but that doesn't make all of philosophy illegitimate. It makes one branch of philosophy less applicable, that's all.

7y agoHN ↗

Ethics seems arbitrarily

It's a liberal arts thing.. opinionated ideas on how to behave well suited for a thick book with lots of prose. Very hand wavy and requires cultural context.

Science and mathematics on the other hand is more of a description of reality as we know it. It is a logical and cold description that is devoid of bias and the focuses on reality as it is not reality from the human perspective.

The two fields don't really fit together, but both are important. When you drop an atom bomb, science says "E=mc^2" while the liberal arts on ethics says "genocide."

Philosophy feels like a relic of the past. A lot of mathematics and modern science comes from it but it unfortunately includes a lot of more artsy human centric branches of study like religion and morality. Philosophy comes from a time when people thought humans were the heart of the universe and that deep thought on the nature of reality needed to include things humans felt were personally important.

We now know that we humans are a byproduct of natural selection and we're nothing special living on a tiny speck of dust at the edge of the galaxy. Our existence has little effect on the ultimate fate of the universe, the galaxy or let alone the solar system and as such the deep musings on the nature of reality must not include our own experiences in ethics or religion as part of the discussion.

7y agoHN ↗

When you start learning more about philosophy you realize it forms the bedrock of the accepted ideas in our society. Down to some very common sayings you often hear repeated. It makes its way into daily life all the time.

7y agoHN ↗

Sure. "Ideas about society."

Why do we need to combine "Ideas about society" with "Newtons laws of motion" is all I'm saying. One is a liberal art, the other is a formal theory.

7y agoHN ↗

Now, is there a contradiction with "both are important" and "[philosophy is a] relic of the past" (and what that implies, which is, that we can dispense with it)?

7y agoHN ↗

Liberal arts is important and philosophy is a relic from the past. Should not combine math and liberal arts which is what philosophy is.

7y agoHN ↗

You're right, maybe I mean the humanities.

7y agoHN ↗

Computer Science absolutely has ethics. In the process of constructing systems which humans interact with, we simultaneously cause cultural and societal repercussions. Even if the choices we made could be perfectly justified by "maximum efficiency", or "just the optimal way to structure things" (which is rarely the case - as this book likely argues, there's always a human design factor), then Computer Science must still work to understand the societal ramifications of those structures. To give a tiny sampling: Online shopping, social networks, VR, drones, office drones, automation, AI, the internet - all were arguably inevitable results of the new abilities computer science unlocked. All with deep ethical concerns.

If anything, the people who design the structures of life have the most ethical responsibility of anyone. We're the ones who make it possible, and who have the strongest understanding of what it is we're creating. Personally understanding the full ramifications might not be easy, with so much else to know, but certainly our field as a whole should be working to understand them. To say we have no ethical responsibility because we're scientists and mathematicians dealing with the technical problems is to say Frankenstein had no ethical responsibility when creating his Monster.

7y agoHN ↗

Naw. It doesn't. Programming, UI, UX has ethics. But computer science doesn't have ethics just like mathematics doesn't have ethics.

Pure computer science and pure mathematics have axiomatic foundations that are formally scoped and defined. The application of mathematics and computer science via engineering has ethics, but computer science itself is devoid of ethics just like algebra is devoid of ethics.

7y agoHN ↗

The work that gets done in a strictly theoretical area ripples out onto practical areas and thus society.

Cryptography is a rather "pure" form of math, yet it has major implications on society.

7y agoHN ↗

Yeah so does mathematics itself. Right? Mathematics is applied everywhere and is even used to calculate the trajectory of nuclear bombs yet it's utterly clear to most people that ethics and mathematics have nothing to do with each other.

The thing with computer science is that people are just confused because they use it as a more lego like artistic endeavor rather than a mathematical field. The reality is... Computer science is really just mathematics with axioms rooted in two isomorphic primitives:

Lambda calculus and turing machines.

7y agoHN ↗

nobody knows whether mathematics really exists "out there", independent of human minds, which is what you're talking about. people are generally more interested in how mathematics appears to humans.

the basic tools and methods we have of investigating mathematics is designed for human minds. what are mathematical axioms if not the attempt to discover the point beyond which human cognition can't go? if you truly believe that there is a mind-independent mathematics "out there", and you believe that humans are really that insignificant, then you must believe that the totality of mathematics is vastly beyond the reach of human minds. so then the mathematics that is available to humans as of today must be a very small part of mathematics in itself, and it's not a coincidence that we find it so useful.

7y agoHN ↗

Indeed, science, of any kind, is void of ethics. People should stop for a second and ponder what that really means.

_People_ have or don't have ethics. And this is different story altogether.

7y agoHN ↗

There are different views, but I like to think of philosophy as mapping the terrain of thought. Most scientists don't think much about the scientific method even though they implicitly apply it, but it's nice every once in a while to step back and reflect on the whole endeavor, and that's where philosophy steps in.

Obviously, the boundaries are blurred. The study of formal logic straddles both Math and Philosophy. Lots of fields were once under the domain of philosophy before they branched out - Leibniz, Descartes, Russell all made important philosophy contributions as well.

7y agoHN ↗

It would be nice if scientists and philosophers worked closer together. These days a scientist's understanding of the scientific method is usually a bowdlerized version of Karl Popper's work, as passed down from one scientist to another.

But ideas do tend to filter through eventually, even if most scientists aren't themselves aware of where they came from.

7y agoHN ↗

I think the difference between 'computer science' and just 'science' is definitely non-trivial. And I think that difference has practical applications and changes how we humans think about and interact with those concepts. I don't know if anything in here reflects the nature of reality, but it definitely reflects and can inform how we deal with the nature of human thought on these subjects.

7y agoHN ↗

It helps, in most conversation though especially in philosophical ones, to be clear of what you do and do not mean by words.

For students (and this work is aimed at a university philosophy of comp sci course) the exercise of thinking through (and walking through) definitions is also useful.

Philosophy can (and does) get stuck in the weeds, and there's a great deal of philsophy (much of the religious bits, though not all, and certainly others) which was simply based on bad premises and/or logic.

The value in revisiting it is several-fold.

- You can recognise which present-day discussions are actually very-well-trod ones in the history of philosophy. Whilst some of the questions may indeed be unanswerable, identifying some of the more glaring errors of reason or fact can at least move you to more interesting areas of disagreement.

- Much of philosophy provides tools for thinking through questions. Aristotle's Organon (and Bacon's Novum Organum) literally means (new) tool.

- The history of philosophy says much about how we ended up thinking and/or knowing what we do, and where we (very frequently) got mislead along the way. Even the false turns are useful to know.

- All of Boolean logic grew out of philosophical logic of the 19th century. An obscure text that happens to be one of the handful (literally five or six) cited by Claude Shannon in his foundational work on information theory. (Shannon's work is remarkable on numerous counts, including not only founding virtually an entire new science, but reviving an all-but-dead niche of philosophy, and having scarcely any references.)

- The ethics of tools and their use is ultimately much of what they're all about. That and their unintended, especially negative, consequences (a topic not touched on significantly in PoCS so far as I've read).

- Philosophy also provides ontologies and taxonomies of subjects and areas. These are useful for understanding them, and help one grasp the landscape. Realising that as you've been driving down the road, the trees you've been seeing are actually all of the same species, or that the road is a loop and they're actually the same tree, is useful. Ontologies also lead to identifying characteristics, capabilities, and limitations of tools.

- There are a wealth of references given, most of which should prove highly illuminating and/or significant. Given the perennial HN question of "where do you find material to read", I'd dance and wave and whistle and whoop and say HERE!!!

- There are a tremendous numbers of models and myths surrounding all human endeavour. Philosophy helps identify the valid and invalid, separate wheat from chaff, and sort gold from bullshit. Again, the tools, models, background, and ontologies here help with that. Given the copious gobs of bovine matter and fad-driven-development in CS, IT, SV, and HN, you'll be ahead.

I've been doing this myself over the past few years, by the way.

7y agoHN ↗

Logic itself is a field of philosophy. As the most fundamental field of human inquiry, philosophy at times even tries to challenge logic itself. (Although this is rather niche) Anyway, if you're looking for the relevance of philosophy to Computer Science, look no further than to these 5 figures who were self-ascribed mathematicians and philosophers:

- Augustus DeMorgan

- Rudolph Carnap

- Gottlob Frege

- Kurt Gödel

- George Boole

Historically, philosophy has been the home of the study of logics, until there was a shift towards faculties of mathematics in the 19th century. - This is a very typical trend. Newton was a philosopher, his groundbreaking work basically created a new discipline.

Generally I would argue that the strict separation of disciplines is hindering understanding. Fundamentally, all studies are related in some ways, and I would argue that with the correct mindset, you can even learn valuable lessons in computer science through the study of literature or history.

7y agoHN ↗

Sure but the categorization is off.

Shakespeare is doesn't belong in a computer science textbook anymore than ethics.

7y agoHN ↗

I mean, you could use Isabelle/HOL to analyse a passage of Shakespeare, and if done correctly you could probably publish it in CS. If I'm not mistaken, it has been done for legal texts.

I haven't read the relevant part of the book yet, but it seems like he's using the Ethics of AI as an example for exactly how Ethics can be relevant to the field of Computer Science, and also as an example on how philosophers actually work.

In a course called "Philosophy of Computer Science", this seems quite reasonable.

7y agoHN ↗

Math and cs can be applied to thing outside of the respective fields even in research papers. Math can be used in architecture, this doesn’t mean it’s part of math. Programs can be used to analyze Shakespeare, this doesn’t mean Shakespeare is computer science.

Ethics in philosophy is reasonable which leads to my main point. Is philosophy legit? Why is philosophy purporting to be foundational then suddenly talking about ethics?

7y agoHN ↗

Ethics is a field of philosophy. You appear to believe in moral subjectivism, which is at least controversial[1], and probably a minority opinion among ethicists. The fundamental question of ethics "What should we do?" is one of the foundational questions of human existence, so it is quite fitting for the field.

Philosophy is pretty much as legit as the people writing the papers and the others peer-reviewing it are. The process obviously isn't empirical, instead you have to very narrowly define your axioms, and then in small steps argue from these axioms until you are at a final, logical conclusion. If your axioms are wrong, then the paper doesn't work. If your arguments are illogical or ambiguous, a peer-researcher will draw holes in it.

If I would compare the process with my own field, CS, I would probably compare it to system design. There exist a few fundamental axioms we have to follow, and a few things we want to optimize for. In a lot of cases, through argument it becomes clear which is the best method. In other cases though it is either unclear, or dependent on the priorities you set yourself.

[1]https://plato.stanford.edu/entries/moral-anti-realism/

7y agoHN ↗

Whoah. He goes for 360+ pages before even touching the titular subject of his book. I would have preferred a simple glossary of terms, or maybe just release 3 books instead of one? It sounds like he wants to teach this book in schools, but as a student, I could easily imagine the professor telling me to buy this whole book just so we can study the last 400 pages. I think it's a waste of money when the professor asks me to buy an entire book because he or she just wants to look at a few chapters.

7y agoHN ↗

But his book is freely available as a PDF.

7y agoHN ↗

Is there a print copy of this book purchasable anywhere? Reading PDFs of this length is difficult for me.

7y agoHN ↗

Not AFAIU, though:

- Reading this on a tablet works pretty well (9" or larger). I find PocketBook Reader is quite good, FBReader is another option. Both are far more functional than a basic PDF reader.

- You could print the text directly and bind it at virtually any print shop.

7y agoHN ↗

TL;DR; The major question in the philosophy of computer science, according to Smith, is: What is computation?

7y agoHN ↗

The Stanford reference is more concise. Rappaport's is far more inclusive and comprehensive.

Both are highly worthwhile.

7y agoHN ↗

What section of it should I read to get an idea of what, according to the author, "philosophy of computer science" is?

7y agoHN ↗

The table of contents is surprisingly thorough in covering this topic.

7y agoHN ↗

Start with the ToC, as suggested. It provides an excellent overview and framework.

The first four chapters (and preface) largely answer this question. Though of course, the answer is what the entire book is about.

7y agoHN ↗

Thank you, Mr. Rapaport! Gonna break out my new Xerox Phaser tomorrow and print this out for reading. I am super excited as I've become quite bored with Computer Science since reading Zen and the Art and connecting with it deeply.

When you publish, I'll be happy to purchase a copy.