4 ms·
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilate
by ky3 7y ago
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration." -- Edsger W. Dijkstra
- progman32 7y ago"About the use of language: it is impossible to sharpen a pencil with a blunt axe. It is equally vain to try to do it with ten blunt axes instead." -- Edsger W. Dijkstra Of course, all this is to be taken with a grain of salt :) I got started in QBASIC and, for all the damage it may have caused, I'm doing pretty OK today. I tried to grasp C back then but I wasn't able to yet. BASIC let me play along with the adults while I developed other necessary skills.
- ghaff 7y agoThere's a pretty good argument that picking BASIC (especially old BASIC with line numbers and lots of GOTOs) today for an intro programming class would fall into the not-good-idea category. But the best alternative was probably FORTRAN (which is indeed what my programming class at university used) and that wasn't really intended for general purpose use or for teaching. Pascal might have worked as it was designed for the purpose although I'm not sure it ever became quite mainstream. C wouldn't have made much sense.
- ky3 7y agoI understand Dijkstra's anti-BASIC quote as a reference to his observation that the values underlying such a procedural/imperative language predispose a programmer to think exclusively operationally. https://www.cs.utexas.edu/users/EWD/transcriptions/EWD10xx/EWD1012.html https://www.cs.utexas.edu/users/EWD/transcriptions/EWD10xx/E... Another well-known Dijkstra epigram has it that "Progress is possible only if we train ourselves to think about programs without thinking of them as pieces of executable code." BASIC programs don't lend themselves to being treated as anything other than pieces of executable code.
- badsectoracula 7y ago> I got started in QBASIC and, for all the damage it may have caused, I'm doing pretty OK today Dijkstra wrote that quote about a very different flavor of BASIC: only line numbers, flow control was only possible with GOTO and a limited version of FOR/NEXT, IF was limited to a single line of code (which 99% was just a GOTO or GOSUB), subroutines were made using GOSUB/RETURN, etc, essentially it was a glorified assembler with an expression generator. What he was championing instead (at the time) was structured programming in the style of Algol and QBASIC, with its subroutines, control structures, functions, lack of line numbers (well, they were optional for backwards compatibility with GW-BASIC, but i do not think it got much use) etc, is way closer to the style of programming used in Algol than to the style used in the BASIC that he was talking about.
- Lerc 7y agoI have come to believe recalling this comment has caused a negative impact to the world. As a beginners language it works well and many of the worlds great coders started on BASIC. I don't blame Dijkstra for this. It is evidently a tongue-in-cheek expression of personal distaste. It is more an issue of the cult of personality that exists turning such quips into scripture.
- pinewurst 7y agoI wish we'd cut the Dijkstra worship way the heck back, especially in this case. Kemeny and Kurtz were/are fantastic people who not only introduced a large generation to programming, but brought timesharing services to so many along with a supportive, embracing culture. Reading anything about the Dartmouth computing culture in the 60s makes this very clear. Dijkstra on the other hand was a jerk, prone to making snarky nasty comments about so many things while being sweet to people's faces (e.g. the Backus letters). Beyond an algorithm or two and an OS that few remember or care about, snark is Dijkstra's legacy.
- linksnapzz 7y agoOTOH, I think it's a great disservice to imagine Dijkstra as merely the Mr. Blackwell or Karl Lagerfeld of CS. "On the Cruelty of Really Teaching Computer Science" is a great and convincing read, and I wished more Deans of Science and Engineering at more US/Canadian universities had given it a close look...