4 ms·
Here’s a little screed I tried posting in Disqust. Not great, but I don’t have time to rewrite it right now. ------------------------------------------ Evenin
by hhas01 8y ago
Here’s a little screed I tried posting in Disqust. Not great, but I don’t have time to rewrite it right now.
------------------------------------------
Evening Wired,
Well, that story was a bit of a hot mess. Wrong title, buried lede (Workflow! WWDC!), unfocused and confusing. At least until compared to one of my screeds—enjoy!
has
--
1. Who’s the “One Apple Programmer [who] Got Apps Talking to Each Other” of your title? ’Cos it’s definitely not Sal Soghoian. Sal’s not, and never was, an “Apple Programmer”. He was an amateur AppleScript user and early evangelist, who lucked his way into his management job at Apple several years after Apple broke up the original AppleScript team. (More about Sal later.)
The Apple programmers who led the creation of AppleScript were William Cook and Warren Harris, who in turn were building on the HyperTalk language Bill Atkinson previously created for HyperCard and the Apple event IAC (Inter-Application, or Inter-Process, Communication) architecture then being developed for Apple’s first true multitasking Mac OS, System 7. Conceived around 1989, development started in ’91 and shipped in ’93, initially as a Pro extra, then as a standard feature from 7.1 on. Then Apple management gutted their department, reassigning half the team “to get OpenDoc ready to throw away” [as one internet wag drolly put it], and Cook and Harris quit in response. That the suddenly-orphaned infant AppleScript survived at all is a testament to its remarkable virtues; that using it causes as much hair-pulling as joy may be largely due to the subsequent lack of toilet training.
Dr Cook documented the full early history of AppleScript’s creation in the following paper:
www.cs.utexas.edu/~wcook/Drafts/2006/ashopl.pdf
Invaluable insights for anyone who wants to understand why Applescript was created and how it interacts with Mac desktop applications. (Hint: Unlike traditional object-oriented messaging systems—CORBA, DCOM, Distributed Objects, SOAP, etc—Apple event IPC uses RPC plus simple relational queries, more akin to SQL. VERY powerful, very user-oriented. Ubiquitously misunderstood.)
..
2. I’m going to speculate here that Apple will announce a new cross-platform automation strategy at WWDC next week, built on the Workflow app and team they bought in a couple years ago; hence the timing of this article. In which case, you really should’ve made the hot new Workflow App and its ambitious team of indie creators the centerpiece of your article; not some old failed automation product manager whose old failed automation products are about to be ousted.
As to Workflow itself, if/when it ships, no doubt there will be much fanfare and many claims that it’s the greatest innovation since sliced bread, but the truth is: it’s weak sauce at best; a gilded cell at worst. There is a vast history of end-user computing and computer education for explorers and innovators to draw on; far too long to get into here, but TL;DR: Papert was Right. Workflow, Automator, Scratch, Windows Workflow Foundation, et al are works of evangelical techies who think the way to evangelize their idea of “programming” to #OrdinaryPeople is to slather some lickable lipstick on their beloved pig and present it as “Programming for the Rest of [You]”. Whereas ordinary people would think, “WTF would I ever want to lick a pig?”, and work from there.
Papert demonstrated decades ago(!) that the right way to make computing accessible is to shape the language to fit its users; and the right way to do that is to give users the power to grow and shape that language by and for themselves, by growing its basic vocabulary with their own words and phrases for expressing the ideas and behaviors that interest them.
In other words: don’t hand the user a predetermined set of tools to use, but rather give her the tools she needs to make her own tools to use. Workflow, Scratch, &co don’t merely fail to empower users this way; they don’t even try at all. The resulting software may be a glitzy, seductive App that provides a lower barrier to entry than “Real Programmer” languages, but with an extremely low, immovable ceiling too. Papert’s Logo derived from Lisp/Forth for a reason: that stuff scales. Today’s mainstream programming world knows and thinks in “C”, which does not.
..
[cont…]
- hhas01 8y ago… 3. And now back to good old Sal, cos after 20 years I still absolutely adore Mac Automation—and absolutely fume at what that twit’s done to it: “In October of 2016, he was let go from Apple after a nearly twenty-year stint at the company. No warning, no early signs. Apple just said his position didn't exist anymore. It's been thirteen years since Automator debuted on the Mac, and Soghoian's biggest champion at Apple, Steve Jobs, is gone.” Oh Man, where to start?! Obvious point: Having Steve Jobs one time say to you “that’s a great idea” does not him your “biggest supporter” make (as many an ex-Apple employee will attest). Yeah, Mac Automation caught Steve’s eye once or twice (as it should—there’s some incredible power in that mess), but Sal failed to parlay it into anything more. . “No warning, no early signs”? That’s funny. I warned Sal in 2015 that he was running Mac Automation into the ground. After years of watching his department ship badly designed, largely untested, poorly documented software, then promptly ignoring it once it was the door, it was obvious as hell to me. The man was—and still is—a charming end-user evangelist, but he couldn’t manage a pissup in a brewery; and I’m quite sure even Apple could see this. As with any large organization, 2000s Apple had little need to prune the deadwood that inevitably amasses while business is good. But once growth slowed and stuttered, it was only a matter of time till the surplus/underperforming employees were shown the door. Sal was hardly the only employee purged; and had he being doing his job right he’d still be there! Create successful products that win new users and build new markets? Not a hard job description to understand, but Sal’s 2005-2011 tenure was mostly punctuated by mediocre-to-poor product releases that almost no-one subsequently ever heard about or used. Ironic that someone who made his reputation as a talented evangelist would, once promoted, lose the ability to promote or support his own products, or (even better) encourage his user communities to do the promotion for him. His title may have been “product manager”, but I don’t think he was ever a strategic planner or natural delegator, and I know from firsthand experience that he doesn’t take critical feedback well. Peter Principle much? By 2012, with Automator having failed to grow market or mindshare and the the aging AppleScript market gone stagnant, I was publicly estimating the end of the AppleScript platform in another 5-10 years. When Apple presented JavaScriptCore at WWDC13 as a developer-friendly alternative to AppleScript/OSA for cross-platform embedded App scripting support, I could already hear the nails going in its coffin. Then, TOTAL SURPRISE: Sal’s team somehow managed to steal JSCore from the WebCore folks, and turned it into JavaScript for Automation (JXA), a full peer to AppleScript with just one difference: several MILLION existing JavaScript users already out there, ripe for the taking. Just one problem: when Sal &co. unveiled JavaScript for Automation at WWDC14, it wasn’t close to finished, never mind working right. Having a decade’s experience in designing, building, using, and supporting AppleScript-quality scripting bridges out in the real world, so immediately offered Sal every assistance to get JXA ready to ship. I took six weeks out from my day job to test and critique the tar out of JXA while they were rushing to add all the missing bits, and even quickly made them a reference JavaScript OSA implementation to learn from (or steal). All I asked up-front of Sal was that he cover the cost of the developer account so I could download prerelease builds, and that he not waste my time. Knowing JXA’s success or failure would make or break Mac Automation, I was absolutely happy to give it, and he sounded absolutely delighted to accept it. What’s more, having lead-written the last edition of Apress’ “Learn AppleScript” book a few years earlier, I was also in the perfect position to get a “Learn JavaScript for Automation” out the door inside the year, and win him his market of JavaScript Automation users without him even having to lift a finger. And Sal took this fantastic market opportunity that his employer entrusted him with, and cratered it. After the first few weeks sending him detailed descriptions of JXA’s numerous design and implementation defects, he simply stopped responding to me—presumably cos I kept telling him what he needed to hear instead of what he wanted to hear. When JXA shipped in Mac OS 10.10, it was flawed, buggy, unfinished software that simply wasn’t fit for purpose. Worse, as soon as it was out the door, Sal promptly abandoned it too. No bug or missing feature fixes, no community support; no proper user manual for existing JavaScripters to learn how to use it; and sod all marketing and evangelization, of course. Not even a public reassurance to early adopters that these issues would all be addressed for 10.11. Nothing. One Million New Users. That’s my blind estimate of what Sal Soghoian’s mismanagement cost Mac Automation, and thus his employer. So, no, I’m not surprised they sacked his ass. Only wish they’d done it years sooner, when AppleScript and its remarkable end-user Automation ecosystem was still healthy enough to save. . Ironic too, as Apple’s Siri continues to flail around looking for something useful to do (other than selling Amazon Alexa and Google Assistant instead), that Apple should all this time be sitting on the largest and most capable and mature user-query powered automation infrastructure in the personal computing world, and still can’t figure how to put 1 and 1 together. “It used to be easy when we were 100 times better than Windows. But now that we're not, you don't know what to do.” I miss those Jobs years too. Amazing times, many incredible lessons. Sadly, increasingly unlearnt.