the beauty of the command line tools (a side note from Re: LC/macOS App Store)
Andre Alves Garzia
andre at andregarzia.com
Sat Nov 10 06:01:03 EST 2018
Bob,
I am hijacking this thread to express some personal opinions about the
terminal, it is not related to the topic of the original message but a
different perspective on the subject you brought up on your reply.
When I first for my mac (A G3 running Mac OS 8.x) and started developing
for it, my first thought was: "Where is the terminal?!", the lack of
terminal was one of the main reason I struggled with development in the
mac for some time because, IMHO there is a beauty to terminal tools that
is no longer available to the current incarnation of macOS (but was
present in earlier versions, more about it later).
The main advantage for terminal tools is composability, which is at the
heart of the UNIX philosophy and remember (the current) "macOS is UNIX".
Having little tools that compose with one another to execute whatever
workflow you need. You generate certificates with one tool, you sign
binaries with another, you pipe the result of one command into the other
and with some clever scripting you automate your whole flow. The power
of UNIX is this toolbox of little tools and the scripting that goes on
top of them to compose them into pieces more powerful and featureful
than each individual component. Thats why in the terminal you can use a
single line to post something to a web API server, get a response,
decode it, parse its JSON reply, reason about it and extract data, just
by piping from "curl" to "jq" to "awk" or "grep" or "wc" or whatever you
need.
GUI tools don't compose. You need to ship new tools to add more features
or you need to update the current ones. Doing web stuff on classic MacOS
was tricky as I couldn't rely on my usual toolset of little UNIX gizmos
(I learned about MPW and other stuff later).
The solution to make GUI tools composable is AppleScript of course, and
I know many who are reading this email thought about that when reading
the second paragraph. With AppleScript we could have all the convenience
of GUI, the kind of easy and amazing UX that Bob was talking about, and
yet be composable thus making each GUI tool more capable than its
features alone. And for a while, this was fantastic but AppleScript is
no longer in favor at Apple and most Third-Party developers seem to have
forgotten it. Each power-user oriented app that allows scripting appears
to be shipping a different solution, so the dream of AppleScript is
lost, it was also never cross-platform, but the little rusty UNIX
toolkit still works, almost 60 years later, and it is
cross-platform-ish. So the Terminal allows Apple and others to reuse
good tools from GNU, *BSD and others and build the workflow they need.
Little terminal tools are the only way to automation these days, all the
other solutions require more buy-in from 3rd party developers or
reinventing the wheel. Thats why it pays of to learn just a bit of
terminal stuff, so that you too can build those little composable
things, so that you too can benefit from 60 years of little tools that
do the job.
Still, I miss AppleScript, and Frontier, and DreamCard, and MacOS Classic...
Om om
andre
PS: I am no longer a Apple user, so if by any chance AppleScript is
back, I am not aware of it, sorry.
On 11/9/2018 10:49 PM, Bob Sneidar via use-livecode wrote:
> It's funny you should say that. Long ago when the first Apple MacIntoshes came out, I fell in love with the GUI simply because I could use a computer without having to type in commands. For years, I would not even work with a PC, because all their was to work with was DOS, and even when Windows came out, it was really DOS pretending to be a GUI.
>
> Later, when I went from being a hobbyist to doing real IT for a living, I was soooo exasperated with PCs because reformatting a hard drive was an evening's work, especially if the manufacturer wasn't real clear about how many sectors, blocks, etc in the sticker on the drive! But I always had Macs to look to, where I could say, "See? NO COMMAND LINE! THAT's how to do computing nowadays!"
>
> Now, even with all the advances Microsoft has made in their OS, some things can *only* be done from a command line, and I think this is just laziness on the part of developers. Apple seems to have fallen in to this developer malaise, where it's easier to just write some terminal code and tell people, "Just type this command..."
>
> People cannot remember commands, especially not terminal commands, with all the arguments and caveats and different ways to put it all together. Apple used to be, "The computer for the rest of us." Now it's just another computer.
>
> Bob S
>
>
>> On Nov 9, 2018, at 14:27 , Rick Harrison via use-livecode <use-livecode at lists.runrev.com> wrote:
>>
>> Hi Kee,
>>
>> Thanks for that. Although I’ve been down that
>> lane for sometime now. Why Apple keeps
>> making things worse and worse instead of
>> the other way around I don’t know.
>>
>> In principle, I believe that no LiveCoder should
>> ever have to be subjected to using the Terminal.
>> Ideally we should have a stack that pulls everything
>> together for our LiveCode users so they don’t have
>> to even touch it.
>>
>> I will let you know what I find out if anything.
>>
>> Rick
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
More information about the use-livecode
mailing list