Re: Cocoa et al as HCI usability problem
Re: Cocoa et al as HCI usability problem
- Subject: Re: Cocoa et al as HCI usability problem
- From: Jens Alfke <email@hidden>
- Date: Sun, 18 May 2008 09:41:03 -0700
On 18 May '08, at 4:33 AM, Julius Guzy wrote:
Apple has been less celebrated for the humanity of its programming
interface having, in my experience of Macs from the Lisa onwards,
seemingly taken the attitude that its programmers were hobbyists,
geeks essentially, who because of their enthusiasm would
successfully negociate their way into the machine's innards.
"Hobbyists"? I think "professionals" is more accurate — especially
since in the early days of the Mac you had to spend hundreds of
dollars to become a developer and get access to tools and documentation.
I can see your point about obsessive hackers having the stamina to
overcome complicated APIs, but any platform vendor's main objective in
developer tools is to target professional developers who will create
the products that make the platform attractive to customers.
"Professional" doesn't necessarily imply a big company; I refer
equally to startups and indie outfits, anyone seriously devoted to
creating a product.
In Apple's defense, the task of implementing a sophisticated GUI on
such limited computers was extremely difficult. The top goals were
usability, decent performance, and affordable price. That left no
leeway for making the APIs themselves easy to use — the niceties we
take for granted like object-oriented programming would have used up
way too much of that 128k of RAM and 64k of ROM.
(Yes, some of the first GUIs were written in the first OOP language,
Smalltalk. But the Xerox computers that ran Smalltalk-80 cost $10,000
or more; the ones that ran it with any kind of decent performance (the
"Dorado") cost $50,000 and were basically supercomputers. They all had
ten times as much RAM as the first Mac, and had custom CPUs with
programmable microcode optimized for Smalltalk. Even so, performance
was much worse than the original Mac, and the GUI was much cruder and
harder to use. I'd already been using Smalltalk-80 when the first Mac
came out, and the Mac's speed and aesthetics were just jaw-dropping.)
Anyway.
I have to say I find this whole discussion frustrating. The attitude
of some people seems to be that writing computer programs, of
arbitrary complexity, should be as easy as using a word processor.
That's a Utopian goal at best, and more generally just naïve. Of
course we should be trying to make the APIs and tools and
documentation more useable; that's a constant task, and a very
difficult one, and one Apple's doing a good job at. (The complexity
under the hood is terrifying, and it's already been covered up enough
that in an hour an experienced developer can throw together an app
that fifteen years ago would have sold for $100.)
Face it, any sort of serious creative endeavor is hard! There's no way
around it. And the hardest part is learning the techniques and tools.
If you wanted to build a robot, play Vivaldi on the violin, design a
house, paint landscapes, or cure Ebola, you'd have to accept that it
would take months or years of serious study, that the tools and
documentation would sometimes be hard to use, and you'd have to put up
with frustration before you mastered the skills.
Why on earth is writing the best GUI applications in the world
supposed to be trivial by comparison? Maybe I'm taking this too
personally, but I sense a subtext that some people think the task of
software design itself is somewhat trivial, more like programming a
VCR than like architecture or painting or chemistry.
"Problems worthy of attack
Prove their worth by hitting back." [Piet Hein]
—Jens
Attachment:
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden