Bill Cheeseman unfortunately wrote:
> I also want to comment on Shane's concern about AppleScript's
future. I've been hearing the same fears of doom ever since 1993.
Probably because AppleScript's been struggling to survive since
almost the day it was born. It's had its positive moments - Cal
Simone's righteous army of print automators saving it being Jobsed
in the late 90s, and the early OS X years when it seemed to find
fresh life - but for pretty much the last decade it's slowly slid
into the weeds. Anyone who doesn't accept it's well into the long
tail section of its life cycle is just fooling themselves.
> Basically, AppleScript has survived all these years because it
fills a need for many of us (including the lurkers on the list who
never pipe up).
AppleScript survived its first decade because it made itself
indispensable to the print industry - who in turn were a critical
core market that Apple could not afford to lose at a time when other
customers were abandoning Mac in droves. Print is no longer a core
Apple market, however, so if the knives were to come out now it's
unlikely they'd save its skin again. Don't delude yourself: all your
personal love and devotion doesn't do shit to keep AppleScript
alive. The only thing that matters to Apple is what brings the cold
hard filthy lucre; and AppleScript is a drop in an ocean these days.
> Also because of the devotion of many advocates both in and
outside of Apple.
Oh, this is golden. Who are these devoted advocates of which you
speak, and what have they done recently to evangelize, educate, and
empower the great unwashed filthy masses of non-believers? Because,
far as I can tell, Shane's pretty much the only one still wearing
the shoe leather these days. Please, give us names and achievements,
not vacuous platitudes, and you might the makings of an actual
arguments. I am all ears.
> It seems to me now, as it has for a very long time, that it is
so deeply ingrained in the system and in important groups of users
that Apple can't afford to drop it.
Well, you're half right: at this point the inertia is such that it'd
be more hassle for Apple to proactively ax AppleScript than just
leave it to putter on by itself. That doesn't mean that if the
AppleScript language - or, more significantly, the underlying Apple
events system - becomes a liability, or just an excessive waste of
resources, that they won't put the boot in. If Apple can win 50,000
new paying customers by burning a couple thousand existing once,
don't think that they won't. Methinks you should check your
calendar: this is 2014, not 2004.
[caution: nuclear response deploys ahead]
> Just look at the broad and deep improvements that Apple has
added to AppleScript in version after version, including Yosemite.
This is absolutely the dumbest thing I have read all year. The ONLY
thing that matters is putting bums on seats: developers creating
scriptable applications, users scripting them. Apple in general and
the AppleScript team in particular have failed miserably at this. As
Shane says, the AppleScript community hasn't seen fresh blood in
years, and the situation outside of that is beyond dire.
There are two reasons for this. First, the AppleScript team's
development work is largely shit. I can think of only two
development in the last decade that weren't cocked up: the
AppleScript 2.0 upgrade in 10.5 (which was merely underwhelming) and
AppleScript-ObjC in 10.6, which was actually a half-decent bit of
engineering - just a shame then they forgot to provide any
documentation worth a damn. The rest is the product of bored
corporate programmers playing around for their own amusement,
failing miserably to solve users' actual problems.
Examples:
1. Scripting Bridge? Killed application scripting uptake amongst
Python, Ruby, ObjC, etc users. Appscript managed to attract maybe
1000 non-AppleScripters to application scripting; SB should've taken
that audience and multiplied it several-fold, converting many app
developers not into providers but enthusiastic *consumers* as well.
Real result: the number of non-AppleScripters doing application
scripting has actually dropped. FAIL.
2. AppleScript libraries? So-so implementation; but that hardly
matters anyway since it's got zero effective adoption anyway. And
why should they: its *own authors* don't even care enough to use it
themselves. Seriously, twenty years on, and AppleScripters still
can't do a simple find-and-replace or list sort without having to
scrabble around for copy-paste code or roll their own. You'd think
at the very least the AS team would bother to test its fitness for
purpose and show its value to users by... I dunno, building a basic
set of libraries to include in the OS as standard? As for developing
an online library repository so users can distribute libraries to
each other? Library installation and management tools? Tutorials?
User training and support? You must be kidding. Look at any other
popular scripting language: look at the library ecosystems and
supporting technologies they've got in place. Look at the huge
multiplier effect that comes from having a huge amount of
general-purpose and task-specific functionality available for free
at the drop of a hat. Hell, even desktop latecomer _javascript_'s
trying to get its act together with CommonJS. FAIL x2.
3. Oh, _javascript_. If you'd asked me a year ago, I'd have told you
AppleScript'd be wrapping up in the next 5 to 10 years: not
necessarily killed by Apple, just slowly starved to death until
there was nobody left to care. It'd only be a matter of time before
XPC Services closed the loop and provided full peer-to-peer IPC,
pushing Apple events to the legacy pile and on its way to
obsolescence. When WWDC13 announced a brand new Objective-C API for
OS X's venerable _javascript_Core framework, the writing was on the
wall: it was obvious this new API was designed to allow application
developers to embed JS directly into their apps, allowing user
scripts to talk directly to their existing ObjC APIs virtually for
free. No more jumping through bizarro Cocoa Scripting hoops just to
please a handful of AppleScripters and their weirdo language; at
last, a language programmers understood (if not liked) and a
potential customer base of millions.
What happened? I have no idea - if I had to guess I'd say a spot of
turf warfare between a couple middle managers over whose empire
should own desktop _javascript_ saw it crash-land in the midst of the
AS team. All I know is that when _javascript_ for Automation was
announced at WWDC14, it suddenly threw everything back in the air.
Needless to say, I threw myself into the seeds in the hopes I could
help make it a success - and needn't have bothered: as soon as I
started raising serious issues, all I got was smoke up my ass, blown
by Sal himself. Gahh.
And now JXA's out, and a few plucky _javascript_ fans are trying to
use it, what's happening? They're struggling to understand how it's
meant to work, tripping on its myriad defects, and starting to
realize that Apple's thrown it on the floor and left it there. I've
not seen a single member of Sal's team stick their head above ground
once in the last six weeks. Are they dead? Are they scared of
criticism? Have they already seen - ooh a shiny new toy! - and
wandered off in pursuit of that, leaving JXA abandoned to fend for
itself? Who knows. Incredibly, *I'm* out there trying to answer
hapless JXA users' problems for them. And I *know* what a sack of
knackers is, so you'd better believe I pull no punches when flagging
its faults. Even so, when early adopters start responding like this:
"I do rather get the feeling that Apple has announced JXA and
then forgotten about it! Despite your helpful suggestions I think
I'll just forget about it too."
or this:
"
or even see their questions go completely unanswered for weeks at a
time, it's clear folks are realizing for themselves they've been
promised the pig and sold the pup. First impressions are everything,
and the AppleScript team's *zero support* of their *own damn
product* says everything. And I'll be happy to amplify this message,
as at this point I believe the only way JXA could be saved is to
break it out of the Automation team's grasp and handed to a
completely different team within Apple, one with a modicum of
technical competence and which actually gives a crap for its own
consumers.
Look at Apple's new Swift for comparison: another half-baked product
off to a wildly rocky start. But its authors are out there, helping
their users, seeking their feedback, taking their licks like
professionals, building their community, repairing user confidence
where damage occurs, and generally working their asses off to make
their baby a huge success over the long run. They put the
AppleScript team to absolute shame.
As a fifteen year AppleScript user, developer, evangelist, and
supporter myself, I am sick of seeing Sal &co. running the
entire AppleScript stack and all its fantastic potential for
empowering us users firmly into the dirt. Don't blame Apple, don't
blame app devs, don't blame users; they don't give enough of a crap
either way to make a difference. This is a problem fundamentally
with the current AppleScript team and their piss-poor curation of
our beloved tech. But I've done my bit and paid my dues, so if some
high muckity-muck at Apple looks a year from now and sees JXA
crashing and burning in embarrassing failure, don't think I'll be
speaking out as they're deciding to wash their hands of the whole
tragic mess: JXA, AppleScript, Apple events, OSA, and all. So you
lot who care about AppleScript, you'd do well to pluck your heads
from the sand and pay attention to what's going on in the world
outside it. Because they can all get along without AppleScript far
more easily than you can survive without them. Maybe it's time y'all
rolled up your sleeves, and start doing something about it.
/rant
has
|