Bob wrote:
It's a question of marketing really: what type(s) of audience do you wish to promote Python to, and what needs to be done to guarantee each's capture?
From the public documentation, you would trivially construct an Action in PyObjC with the following boilerplate:
# MyAction.py from Foundation import * class MyAction(NSObject): def runWithInput_fromAction_error_(self, theInput, anAction): if somethingBadHappens: result = None error = someNSError else: result = [some output] error = None return result, error
Is that so overwhelming?
For you, not in the slightest. For me, well I've been doing this Python thing a year now so think I can probably cope. So that's the professional and hack markets covered.
Now, what about the newbies, the new blood? The folks who are complete newcomers to Python and/or to programming in general? Try to see it from their point of view:
"What's 'Foundation'? What's a 'class'? Why do I return both a result _and_ an error? How do I hook up my super l33t GUI that I built myself by drag-and-drop? That language looks a bit geeky to me. Ho-hum,
on run {input, parameters, ignoresInput} set output to {} -- process input items into output items return output end run
looks much simpler; think I'll use that instead."
And there went your sale. Ouch.
i.e. It's not that this particular group _couldn't_ use it if they wanted/had to: vast armies of completely self-taught amateur JavaScripters, ActionScripters and PHPers all achieving remarkable results from a total standing start should prove ordinary folk's fantastic ability to adapt and learn when they really need to. But as a general rule, most folk are busy, lazy, disinterested, and/or have much more important things to do with their time than waste it learning some complex new framework and language. So the chances are they don't. They just want to solve their problem in the least amount of time and work so they can get on with the much more important stuff they were doing before, so it won't much matter if Python is the technically superior option because from where they're standing if it looks like they can solve their problem quicker and easier by going to the competition, then that's what they'll do.
Yes, they're a hacktacular bunch and the code that they'll write will make a mature professional man like yourself howl tears of absolute despair at the merest glimpse of it. But just do the math before you write them off, because there's an awful lot more non-programmers out there using Macs than there are programmers. It's the folks like you and me too who are the exception - they're the rule. So if you can bring even a percentage of them into the Python fold then you've just up its marketshare, and getting bums on seats - as any marketing man or Alan Kay will tell you - is the bit that counts most. Build your userbase now, and you can always worry about setting them on the One Path to True Enlightenment later. So again, the question is: do we want 'em; and if we do, how do we ensure Python will be more attractive to them than the competition?
Hey, if nothing else p'rhaps some of them newcomers'll be Babes... Rotten job, I know; but gotta do it for the babes, man. ;)
has
-- http://freespace.virgin.net/hamish.sanderson/ _______________________________________________ Pythonmac-SIG maillist - Pythonmac-SIG@python.org http://mail.python.org/mailman/listinfo/pythonmac-sig