Does Philosophy Have a Role in Computer Science?
Johannes Climacus asks: "It would seem to me that philosophical works of philosophers such as Aristotle, Leibniz, Frege, Russell, and Tarski could play a central role in a Computer Science curriculum, as they form a mathematical basis of modern CS and Math. Ethicists such as Plato, Kant, Hegel, Mill, and Heidegger might also play a normative role in Computer Ethics and technology in general. However, I haven't seen any philosophical discussion in any of my theoretical computer science courses besides some simple logic. Is it the same elsewhere? How often do philosophical concerns play into Computer Science education as a whole? What role does (or could) philosophy have in Computer Science or Information Technology?"
..but, if I did, I'd major in philosophy. See, I've been working in IT for 10 years now, can code in many languages, can sys admin, can pretty much do anything I need to do from a practical standpoint. The thing is, those skills are nearly worthless in a lot of small/medium IT departments. The skill that keeps me employed is my ability to solve problems, very quickly and without major fallout.
It keeps me employable even if I'm not the best programmer/sysadmin/etc the world has ever seen, because I can pick and choose from the skills I do have to fix random problems as they come up. I usually have success. But, the neat thing about problem solving is that it's a universal skill that you can always get better at it. For example, once you learn a programming language, you know the language, the problem you encounter in becoming 'better' at that language is figuring out how to deal with problems and flush out theories, which takes critical problem solving skills that are better developed in philosophical study.
Anyway. That's my opinion. Science and Philosophy are very related, they just attract two diffrent types of people who don't always overlap.
(I also took a lot of physics and math which no doubt helps, but the degree is philosophy) I feel the study of various logical abstractions helped widen my perspective. Not to mention you are trained to diagram any set of concept/relationships, which is also quite useful. My diagrams have consistent grammer, and I'm sure this is because I was trained how to create a legend that maps directly to real concepts (e.g. an arrow means something, and is only used for truly identical relationships. Of course, the arrow might mean different things in different diagrams, but within a given diagram: consistency). I'm not sure all Philosophy programs are so rigerous about logic... but it is the one thing, the only thing, that philosophers have any agreement over.
Listen p*ssy. I'm sure your the same homo that posted earlier about alf's boner and you just want to remain anonymous fo
Some philosophy teacher will surely turn this into a course. I imagine GT, where EVERYTHING is subjugated to engineering needs, could be one of the first if it's not already there. You could make it one of your required electives. Of course, a real philosophy person will rain on all our parades by telling us that this is already a class offering under a different name and those who change the name are pandering.
Now, who the hell are these people? Abandon all hope, ye who enter:
Please, God, make it stop.
Friends don't help friends install M$ junk.
I have a bachelors degree in Philosophy. I was going for my Masters when one of our PHD candidates (total 9 years in college combined) had to get a job at the Piggy Wiggly because she had no skills. Then I switched to computer science. I later dropped out of CS and went into professional IT, and haven't looked back.
The thing that interested me most about both studies is that they seemed to be both sides of the same coin. Not because of liberal arts vs. hard science, but in the way they had to deal with reality.
In a nutshell:
Philosophy tries to develop, enumerate, and proof basic concepts of existence. Platonic Forms, the monads, and Descartes dialouges are examples of literally trying to get the basic concepts of reality and use them to build bigger structures. Eventually, you could prove more and more complex ideas based on those basic priniciples, which hopefully corresponded with reality.
So, Philosophy tries to take reality and break it down into its individual elements.
Computer science taught about programming languages, algorithms, and circuit design. From those basic parts, we were to make mini CPUs, applications, and so forth. Then we would learn about Artifical Intelligence, and the issues with that.
Computer Science starts with the basic blocks, and tries to create 'reality' from it.
So, there is some curiosity (to me) in that one of the hardest issues in Computer Science is how to create 'intelligence' from basic building blocks. Then, one of the hardest issues in Philosophy is to derive the basic building blocks out of 'intelligence'.
Finally, an Ask Slashdot question I'm qualified to answer! My undergraduate CS degree (Harvard) probably wasn't as rigorous as it would have been at MIT/Carnegie Mellon/Berkeley/Stanford, but my Philosophy Ph.D. (Berkeley, doing philosophy of mind with John Searle) was reasonably hard core.
Having worked as a developer for 5 years since finishing grad school, I've been discouraged to find that the points of contact between philosophy and CS are VERY few and far between. Studying philosophy will definitely sharpen your reading, writing, and analytical skills, all of which are (or should be, if you're doing your job right) useful for programmers. But those are all general skills; my knowledge of philosophical theories or history or personalities are, frankly, never a part of my work life.
I can imagine scenarios where the two would be more closely intertwined: heavy duty academic logicians probably work in the intersection of CS and philosophy, and philosophy of mind may have some (tenuous) relevance to cutting-edge AI research. But here's the problem. Philosophy is really about defining terms and asking questions. As soon as terms are successfully defined in such a way that everyone (or most people) agrees on the definitions, and as soon as theories are deemed reliable enough to use in real-world situations, that particular line of inquiry leaves philosophy and is re-branded as science. (Chemistry and astronomy are two particularly clear examples of sciences that started out as philosophical topics way back with the Pre-Socratics.) So any "philosophy" that is concrete enough for CS researchers, developers, or sys admins to use would, most likely, no longer qualify as philosophy.
But even if philosphy is not all that relevant to people working in CS, I think it can be enormously useful to students who are focusing on CS. Besides the improved reading/writing/thinking I've already mentioned, the study of logic (which generally falls under the purview of philosophy) is a good thing for CS majors (though even it is less directly relevant to programming than you might imagine), and it's good to get practice in questioning the definitions of fundamental terms in any field (which, again, is what philosophy is all about). And of course, reading the work of people like Turing and Godel is crucial to understanding what computers can do, what their limitations might be, and how they might be fundamentally different (or similar to) human minds. But those are not areas that professional developers are likely to spend any time thinking about when their main concern is cranking out another 500 lines of Java before lunch. So I'd encourage CS students to study as much philosophy as they can in order to become smart, thoughtful, well-rounded people, but not to expect to use the content of their philosophy courses all that much once they're in the working world.
A final caveat: there are vast areas within the philosophy landscape that are completely irrelevant to programmers as programmers, though may be relevant to programmers as human beings. Ethics, aesthetics, political philosophy, all of continental philosophy (think Sartre or Heidegger or Derrida) fall into this category. There are, of course, many more.