6 ms·
From Plato's dialogue Phaedrus 14, 274c-275b: Socrates: I heard, then, that at Naucratis, in Egypt, was one of the ancient gods of that country, the one whose
by cercatrova 5y ago
From Plato's dialogue Phaedrus 14, 274c-275b:
Socrates: I heard, then, that at Naucratis, in Egypt, was one of the ancient gods of that country, the one whose sacred bird is called the ibis, and the name of the god himself was Theuth. He it was who invented numbers and arithmetic and geometry and astronomy, also draughts and dice, and, most important of all, letters.
Now the king of all Egypt at that time was the god Thamus, who lived in the great city of the upper region, which the Greeks call the Egyptian Thebes, and they call the god himself Ammon. To him came Theuth to show his inventions, saying that they ought to be imparted to the other Egyptians. But Thamus asked what use there was in each, and as Theuth enumerated their uses, expressed praise or blame, according as he approved or disapproved.
"The story goes that Thamus said many things to Theuth in praise or blame of the various arts, which it would take too long to repeat; but when they came to the letters, "This invention, O king," said Theuth, "will make the Egyptians wiser and will improve their memories; for it is an elixir of memory and wisdom that I have discovered." But Thamus replied, "Most ingenious Theuth, one man has the ability to beget arts, but the ability to judge of their usefulness or harmfulness to their users belongs to another; and now you, who are the father of letters, have been led by your affection to ascribe to them a power the opposite of that which they really possess.
"For this invention will produce forgetfulness in the minds of those who learn to use it, because they will not practice their memory. Their trust in writing, produced by external characters which are no part of themselves, will discourage the use of their own memory within them. You have invented an elixir not of memory, but of reminding; and you offer your pupils the appearance of wisdom, not true wisdom, for they will read many things without instruction and will therefore seem to know many things, when they are for the most part ignorant and hard to get along with, since they are not wise, but only appear wise."
- burke 5y agoThis is spot on, and I've found myself making the same argument recently about GitHub's Copilot. It's changing the way I write code in a way that I can already tell is allowing me to be much lazier than I've previously been about learning various details of languages and libraries. There's an obvious tendency to play Thamus and judge that as a bad thing, but I think the reality is that Copilot and future generations of tools inspired by it will completely change the operation of programming in ways we can't even imagine yet, allowing us to build software more quickly than we currently suspect. It's a train of thought that spans the arc of history: the New Thing, which allows young people to get by without developing deep skills in an area that was previously critical to success, is inherently bad because it enable laziness. In reality, it provides the leverage necessary to do things faster, or sometimes to do previously-unimaginable things.
- omnicognate 5y agoThat's a straw man. I've not seen anybody argue copilot is a bad thing because it makes developers lazy. I haven't tried it (I'm registered, no joy) but I'm skeptical of its utility, to me at least, because it replaces writing code with reviewing code to identify whether it does what it should and fixing it if it doesn't, and I find the latter vastly more time consuming and mentally taxing than the former.
- cercatrova 5y agoI have it, and it's quite good. I believe you'll change your opinion once you actually get a chance to use it in a real project. For example, I was able to have it write a bunch of boilerplate for me for converting a database query into their proper TypeScript types. I could have done that manually but it's, well, called boilerplate for a reason. It also helped me learn new features or ways to do certain actions. One such case was how it used immutable data structures to represent a change rather than mutating. Think `arr = [...arr, newElement]` rather than `arr.append(newElement)` which is not exactly the code I was writing but simply an example.
- omnicognate 5y agoI have an open mind, and if I find it a useful tool I'll adopt it enthusiastically. However I remain skeptical for the reason I said. The positive comments I read from people who've tried it give examples of things it's done right, effort saved, things learned, but make no mention of the effort taken to verify what it produces. I don't know if that's because they're uncritically accepting what it produces (which would be bad), because it's only usefully producing trivial bits of code (which would put it in a race against how fast I can type, handicapped by whatever percentage of the time it gets it wrong and the time taken for me to check) or because I am somehow unusual in finding reading code much, much harder than writing it. I'm getting pretty frustrated with the limited access. I signed up months ago. Just release it already.
- burke 5y agoIt's not a straw man; I'm articulating one of several thoughts I personally have about the tool after using it for some time. I'd be surprised if I'm the only one it's occurred to and I'll be _extremely_ surprised if we don't hear a whole lot of it once Copilot is more widely available. At any rate, I was also initially somewhat skeptical but it is hard to overstate how effectively it predicts exactly the code I was about to write, or suggests the code I don't know I want. It is, for me at least, significantly faster in the languages I know well, and monumentally faster in the languages I don't know well.
- diego_moita 5y agoA bit of context: Socrates never learned how to read or write. It is estimated that 90% of Athenians in the Pericles era also didn't. Therefore, if Plato didn't write Socrates' words they would be lost, as are the words of all the other illiterate Athenians from those times.
- rainonmoon 5y agoYep! And a lot of his concerns and contempt for the written word were addressed by the post-structuralists later, so citing Socrates as evidence here is pretty dang old-fashioned indeed. A lot of the other comments here would find his viewpoint sympathetic though; if your concern is that new tools increase the rate of syntax errors and spelling mistakes in programmers, the case is obvious. But can I controversially suggest that once we learned to write, we may've traded away some of our memory, but in order to gain an enhanced capacity for reflection and development of thought? Writing freed us from the burden of remembering as much so we could apply that energy to creativity instead. Likewise in programming, I'm happy to trade not being able to memorise and internalise a language's grammar if my IDE helps me accomplish the task more easily. I can focus on devising a solution rather than focus on nesting a parenthesis correctly. I appreciate there's a certain pride in doing these things without fault, but for the 95% of us who program to solve problems, the busywork can go.