5 ms·
E. Dijkstra: Computer science is paralyzed by accepting this moron as their typical customer.
- tx 19y agoI have always admired Dijkstra and feel sorry for myself for arriving to Austin too late. And this quote is something I wish I could have had a discussion with the man about: "I feel that the effort to use machines to try to mimic human reasoning is both foolish and dangerous. It is foolish because if you look at human reasoning as is, it is pretty lousy; even the most trained mathematicians are amateur thinkers. Instead of trying to imitate what we are good at, I think it is much more fascinating to investigate what we are poor at. It is foolish to use machines to imitate human beings, while machines are very good at being machines, and that is precisely something that human beings are very poor at. Any successful AI project by its very nature would castrate the machine."
- yters 19y agoSeems that was the original rationale behind computers, as intelligence augmentors.
- michaelneale 19y agoMaybe digital computers, yes, but before that a "computer" was more of a job description.
- factor 19y agoThis one is timeless: "I have said it before in public and I am perfectly willing to repeat it that someone introduced to computers via Basic is in all probability mentally mutilated beyond redemption. That is no joke. A major branch of the Siberian Academy of Arts and sciences is aimed at keeping Basic out of Siberian high schools."
- corentin 19y agoI'm sorry but it's bullshit. I taught myself programming with BASIC when I was a kid, my first programs were horrible, unstructured things with GOTOs everywhere and redundant code and yet I was able to teach myself Scheme as well a few years later. In fact, I find that I understand the point behind useful programming language constructs (and, yes, their beauty) after spending some time suffering due to the lack of them.
- tx 19y agoYou have a lot to prove. A giant as big as Dijkstra was, he publicly said that "corentin has mentally mutilated beyond hope of regeneration" and you're out to prove him wrong. Good luck. :-) Makes me feel more lucky for starting with x86 assembly although I am not sure it's any better than BASIC. God bless us!
- gruseom 19y agoI don't think Dijkstra's absolutisms have aged particularly well. On some things he turned out completely right, on other things staggeringly wrong. In this article, look at his endorsement of the idea that coding should be left to the final 25% of a project's schedule. It's all very hit and miss, yet he delivers every claim in the same godlike tone of infallibility. The idea that maybe everything hasn't been figured out about software development - that in fact, maybe not very much has been - seems alien to him.
- tx 19y agoDijkstra could not predict that in 2007 to-do lists and message boards like Facebook will become multi-billion dollar businesses. Sorry to poop on your beliefs, but "agile" BS can be applied only on CRUD projects that have nothing in common with Computer Science.
- deleted 19y ago[deleted]
- noonespecial 19y ago
- ericb 19y ago>> someone introduced to computers via Basic is in all probability mentally mutilated beyond redemption. Elitism and snobbery at it's finest--like saying someone whose first bike had training wheels can never learn a ten speed. BASIC is a gateway programming drug because in many incarnations, it can DO things with a short learning curve, which is rewarding. Many intro comp sci classes start with Waxing Off as opposed to creating something and building interest which then drives the lessons. There's no deeper understanding of WHY an approach is wrong than when you've been bitten by it's ugly consequences.
- gruseom 19y agoOf course it's bullshit. A generation of hackers started with Basic on TRS-80s and Apple IIs and Commodore 64s. Several generations, actually. Given this comment of Dijkstra's and his (hilarious) swipe at PL/I in the article, here's a rather satisfying counterexample: Up till then I had programmed mostly in Basic and PL/1. http://wiki.alu.org/Paul_Graham's_Road_to_Lisp http://wiki.alu.org/Paul_Graham's_Road_to_Lisp
- parenthesis 19y ago"... if the formal definition of a feature gets very messy and complicated, then you should not ignore that warning." -- sounds like pg taking about Common Lisp loop.
- lisper 19y agoMy favorite quote: Lisp was great at the time of its inception if only for a radically new way of using machines. It has suffered the fate of having been elevated to a status of de facto standard with all its defects. Despite its conceptual novelty a lot of the design of Lisp is terribly amateurish even by the standards of the time. When I read the first manual, the Lisp 1.5 manual, published in 1961, I could not believe my eyes. It was an extremely poor language. Now it has become the defacto standard of the AI community, which now suffers from Lisp, the way the rest of the world suffered from Fortran.
- matstc 19y ago"You should realize that in any field the time lag, the delay between a significant scientific progress and its acceptance by the scientific community at large not to mention the moment that it finds its way into a product should be measured in generations."
- michaelneale 19y agoIs Computer science paralyzed by accepting E. Dijkstra's research and comments as valid?
- tx 19y agoDid you bother to read the interview?
- michaelneale 19y agoyes, very much so. Just thought it was funny (it was how I read the headline at first). There was an amusing anecdote about a company not being allowed to start coding until 70% of the project time had elapsed - taken out of context (and there is a LOT of context) that is somewhat contrary to current practices.
- tx 19y agoIt is not. Depends on what do you refer to by "current practices". Dumb CRUD projects surely can be coded on the fly using so-called "agile" approach without much thinking. "Steer left or right as required" works very well for them. The thing is, most of online discussions, especially on YC are revolving around web-based CRUD to-do lists or something similar, whose complexity (something Dijkstra was very much concerned about) is close to zero. Therefore "current pratices" cannot be used as a good example of software engineering in general, since most "engineers" are too busy dreaming of getting rich by implementing a high school programming project over a weekend and selling it to google. I am fully aware that I do not represent the common "spirit" of this board by stating these views, but there is no way in hell you can do software for F-22's pilot's helmet can be done using "current practices" you're referring to. In fact, the best "current practice" (as some MBAs believe) is to outsource your typical CURD job to India. Hard to argue with that.
- michaelneale 19y agoI am in violent agreement with you, but slightly amused that we are in the minority. Its 2008 and we are still getting interested/excited in CRUD frameworks for web apps?
- michaelneale 19y ago"Q You are speaking of the leading edge of research of computer languages..... A Yes, What it is again in danger of being supported to death because one of the hopes of functional programming is that in the execution of programs written in a functional style it will be easier to exploit a lot of concurrency." Interesting - well I guess that statement is over 20 years old, but probably still holds true. It also explains his other opinions.