4 ms·
I wonder if it isn't the text that's putting parents off, but the specific lesser used symbols like parentheses and the such. For that same reason I believe par
by Adamantcheese 9y ago
I wonder if it isn't the text that's putting parents off, but the specific lesser used symbols like parentheses and the such. For that same reason I believe parents think that math is hard in comparison to writing, due to the large amount of domain specific iconography. I also wonder what effect leetspeak might have on bridging that gap, even though it's probably not the best solution.
- csallen 9y agoI wondered the exact same thing. Having parentheses, periods, etc in seemingly-arbitrary positions looks complicated, at least in part because they are not self-explanatory. They tried "move(.up)", but did they try "move up"?
- mysterydip 9y agoThat's a good point, and one reason I enjoyed BASIC and its dialects so much. Which is easier to explain to a new programmer: For i = 1 to 10 Or For (i = 1; i <= 10; i++) Once you understand how things work, translating that knowledge to another language and adding on concepts is relatively easy.
- vidarh 9y agoI still to this day, after about 30 years of exposure to C, 22 years of professional development, and many years of using C professionally, avoid the for() look in C because I struggle to remember which position the comparison vs. increment goes. I prefer to use while() loops. But I still remember the BASIC syntax you demonstrate above, 30+ years after I last programmed BASIC.
- DiThi 9y ago> because I struggle to remember which position the comparison vs. increment goes Tip: they're in the same order they're used: comparison is always run at the beginning of each iteration, and increment is always done at the end. for(init; cond; last) ... init; while(cond) { ... ; last;} But I also dislike it and love "for ... in" constructs.
- vidarh 9y agoTried many ways of remembering it, gave up and decided a more reliable workaround. I don't know why I find it so hard to remember. Then again I've found an even more reliably workaround by not writing much C these days.
- captainmuon 9y agoThis is an interesting example, because back then when I learned BASIC (around age 7 on a Vtech Precomputer 1000 [1]), I couldn't understand why the for loop was called "for". Why am I doing this "for i"? How does "i" benefit from this? I didn't know the mathematical idiom "blabla for a value of i equals 10". I was also strangely afraid of the word INTEGER, which I read as INTER-EGER. "Integer" has no meaning to a kid, it's just called a number (as opposed to a dot-number or a fraction). On the other hand, I never had problems with the fact that is was using text. [1]: http://www.vintagecomputing.com/index.php/archives/324/324 http://www.vintagecomputing.com/index.php/archives/324/324
- jbverschoor 9y agoHaha. I read utilities as "ultilities".
- jgamman 9y agoi read all the Asterix comics pronouncing Julus Kazar ;-) Then repeated at post-grad chemistry when first asking a question out loud about Orger Electrons (Auger - more like Aubergine, prior to lectures introducing them) - prof was non-plussed... Reading and talking huh ;-)
- jdmichal 9y agoI had the same reaction to that screenshot. The use of parentheses and dots is very scary, though as a programmer I can make guesses as to why they are there. Is there any reason the syntax couldn't have looked like this instead? move up move left move up move left set I mean, after all, that's exactly the "syntax" of the replacement icons! Yes, it will probably make your parser more difficult. Yes, for this use case, it's probably worth it. I'm guessing that a game targeted to 5-year-olds won't have such complex nested logic that you can't write a simple DSL like the above.
- msla 9y agoNo huge reason. It is, after all, pretty much what Logo looked like: http://www.calormen.com/jslogo/ http://www.calormen.com/jslogo/ Logo was explicitly designed to teach programming, and is pretty much Lisp with a different (and not that different) syntax. You could probably push Logo even further along the "natural language" axis, but I think that's too brittle: It's too easy to come up with constructions which look like they should work, but fail in a completely opaque fashion. A better plan would be to improve the tooling, to give kids editors which know the language and can provide templates to prevent people from entering invalid syntax. Brad Templeton's ALICE Pascal was an example of this syntax-directed editing. http://www.atarimagazines.com/v6n2/Alice.html http://www.atarimagazines.com/v6n2/Alice.html http://www.templetons.com/brad/alice.html http://www.templetons.com/brad/alice.html These days, we could wire in an extensive help system, complete with discussion fora and examples, to specific syntactic constructs and function calls. You know, like how Programming Professionals use StackOverflow.
- richard_todd 9y agoIt would be so funny if COBOL turned out to be the ultimate starter language. ADD 1 TO X. But seriously, that is probably why languages like Logo and BASIC are englishy. Also the interactivity (e.g., logo turtle) giving you instant feedback on what you are doing is a big component.
- kps 9y agoNot a new problem: I used to be a mathematics professor. At that time I found there were a certain number of students who could not learn mathematics. I then was charged with the job of making it easy for businessmen to use our computers. I found it was not a question of whether they could learn mathematics or not, but whether they would. […] They said, ‘Throw those symbols out — I do not know what they mean, I have not time to learn symbols.’ I suggest a reply to those who would like data processing people to use mathematical symbols that they make them first attempt to teach those symbols to vice-presidents or a colonel or admiral. I assure you that I tried it. — Grace Hopper, explaining COBOL (and by extension many modern style guides).
- vidarh 9y agoThat's a fantastic quote. My reaction to maths is that the biggest challenge the symbols poses is that I need to remember each one of them and what to call them, whereas with text keyboards I can at least make an educated guess at pronunciation that other people will understand. This, to me, is a massive barrier with maths. If I can't read it out without learning how to mentally translate a symbol to a word, it's a hassle. I have too many things I can spend my time on to deal with that.
- damnfine 9y agoThat is akin to saying reading is too big a bother because you cannot be expected to remember how to read spell and pronounce words. Maybe tolerance of willful ignorance is the problem here.
- vidarh 9y agoIf I had to learn to read, spell and pronounce words in an alien language using an alien alphabet to read a book I wasn't sure would offer me any value when I have plenty of alternatives written with alphabets and in languages I know you might have a point. The choice facing people is one of doing something we find unnecessarily hard and of uncertain payoff vs. doing something much easier with a more certain payoff (because we've got past experience with it). How is your mandarin? Sanskrit? Klingon?