3 ms·
[OK, last last post…] “I think a way to get non-programmers into language would be to adopt an existing language like Swift or Kotlin, and add support for bloc
by hhas02 5y ago
[OK, last last post…]
“I think a way to get non-programmers into language would be to adopt an existing language like Swift or Kotlin, and add support for block-based syntax”
LOL. So like learning and using MIT Scratch or Siri Shortcuts; only instead of stepping on a Duplo brick in the pitch black of night you’re walking across a solid carpet of Lego Technic, infinitely vast.
No mate, you cannot make a programming language simple, accessible, and massively appealing to non-programmers by hiding all its complexity behind brightly-colored bullshit. You do it by eliminating all that bullshit outright. And once you have, explain to your users how to operate what’s left, simply and concisely, using practical, purpose-driven, lay language that doesn’t require a CS degree to interpret it.
Extending around that core—using the best modern text, graphical, and verbal tools, from autosuggest and autocomplete, through to the latest AI- and human-backed “would you like some help with that?”—can improve its usability ten-fold. But if the core isn’t profoundly usable to begin with, then all you’ve done is take a lump of crap and hide its awfulness under ineffective bandaids on top.
Take the lesson from AppleScript’s history: Clever faking does NOT work. It just bites everyone’s ass.
…
So what will work? More history! Go read Seymour Papert’s Mindstorms, and form your end-user language with all the parsimony, clarity, and accessibility that Logo already realized over 50 years ago.
(Tip: Think “toy Lisp”, minus bloody parenthesis. And if it takes you more than a week to build this new end-user language, you’ve done it wrong.)
Learn a brief history of written language and see how much humanity has already successfully built with simple written words. And then, go take a business class, and learn some marketing and sales, so you can translate that vision to mass-market successful and not repeat Papert’s fatal error.
Seymour built his products for kids; and the kids who “got it”, loved it. Because Logo took all power and promise which technology held, and placed it in their young hands to do with as they will. He nailed that part of the problem; better than anyone before and since.
Seymour’s tragic mistake was in not realizing how to sell his product to The People in Power. i.e. Those who hold all the purse strings and solemnly decret what Shall be Learned by Children—and How. Smart guy; true visionary. Bit naive. And so he lived the rest of his life shaking his fist angrily at clouds, never realizing why he had failed so utterly in Changing the World. (So don’t bother reading The Children’s Machine, it’s bollocks.)
If only Bill Atkinson, or Cook and Harris, had done Logo 2.0 instead of warmed-over Algols. That was a mistake. Though as Keith Braithwaite painfully observes:
“It's a curious thing about our industry: not only do we not learn from our mistakes, we also don't learn from our successes.”
So it goes.