Re: [Meta:] : be aware...
Re: [Meta:] : be aware...
- Subject: Re: [Meta:] : be aware...
- From: Ruth Bygrave <email@hidden>
- Date: Fri, 22 Jun 2007 09:05:35 +0100
I think it's important that you realize before you start that some
aspects of AppleScript are intrinsically DIFFICULT and nobody
should feel bad if they need help.
I was beginning to realise that, and think 'where I need to start is
learning how to think about stuff'. But since this is such a large
list it's a bad fit for anything short of immediate rip-and-shred,
and what was discouraging me was:
I'm not sure whether my idea of doing a spin-off list for chatty
handholding is workable, and I'm not quite sure whether it should be
1) Mac-based for people who came in the way I did and are scared of
formal programming learning and have weird mental blocks like my
Maths Fear (it helped that I can understand (some of) this stuff if I
try slowly enough)
or 2) cross-platform for people like me who have a massive chip on
their shoulder about the fact that trying to learn the proper way
failed for them a number of times, they hacked about and finally
something 'clicked' and they're afraid that learning properly with a
book will be too un-social for them and they could do with a social/
code-lite small list for reassurance purposes.
or 3) one or both of the above in a tag cloud of 'people that feel
they 'click' with me socially and are willing to talk meta'
or 4) any of the above with occasional drop-ins from people with more
fu than I have, and Adrian as a resource for SCARY WORD ALERT moments.
Actually he might actually join it for talking meta about OO design
and how beginners learn (because he has the real-world issue of how
to enlighten me without scaring me off :-) ), but it'd have to be low-
traffic, which would mean 'start with people who 'click' with me and
ban advocacy zealots'.
All I know is, no parochial advocacy-zealotry, because it's bad
netiquette and I hate it even though the Mac/Unixy way works for me :-)
Aha! Enlightenment moment! I was just wondering how to cope with the
fact that I'm comfortable with some Scary Words and use them for
shorthand, but the even-more-newby-than-I-am people won't be.
Suddenly realised use some sort of glossary I could write of Hard
Things explained in Easy Words... but I'll have to ask Adrian :-)
Can anybody give me an idea of where to start with thinking about
this as a mailing-list vs a modded LJ community? *Are* there modded
LJ communities?
In a way, that's good--it means that coding AppleScript for most of
us is inherently a social activity, because there's nearly always
some aspect of whatever we want to do that isn't well documented,
and doesn't work the way we'd expect it to, so we have to consult a
group like this (great) one!
My immediate problem was 'it's too high-volume for anything but rip-
and-shred, so if I talk meta it'll get lost in the flood'... And I
don't want to have following books combined with rip-and-shred scare
me off because it's so 'fix this' rather than 'where do I start'.
AppleScript is easy in some ways, once you get enough experience
with it. But it's kind of a read-only language! (Most languages
I've had experience with over a long career are more write-only:
the author can express what he wants to do and make it happen, but
nobody else can understand what he was thinking without a lot of
work, and even the author can't remember how to read his program
after a while).
Gosh. Enlightenment moment. That explains why all the start-from-the-
ground-up things Adrian tried to push me at gave me the feeling that
I couldn't imagine how to get from where the book started to where I
needed to be.
With AppleScript, it generally seems easy to read a working program
and figure out what it is doing, and often it's easy to modify it a
little to do what you want. It kind of reads like English.
Yes. That gave me the courage to start, because I could 'trick' my
brain into thinking about it as 'like natural language that does
something', because the mental blocks I tend to get are a) maths and
b) the algorithmic/design approach that is so natural to Real-World
developers like Adrian.
But writing a program from zero is really hard, because some of the
details of what you have to write depend on details of which
application you are scripting, and though there's some system and
uniformity to how applications behave in general, the details can
differ a lot, in ways that aren't obvious. Once you have a lot of
experience, you can usually think of the likely variety of ways
that might work to achieve your goal, but often you have to ask a
large group like this "has anyone figured out how to make
application Blah do bletch...?"
That's exactly the problem I was having, but I felt I couldn't dive
in into the meta because it was designed as a rip-and-shred list and
it was a bit of a cheek to misuse it just to find an audience :-)
So, given the history you shared with us, I think it's important
that you realize that when things don't work at first, you should
not take it personally. It's not your fault--AppleScript really
does require certain phrasings sometimes that you're unlikely to be
able to guess or to find in any documentation. They're like magical
incantations. Try several things, experiment, read similar example
programs, and ask for help.
That's it. The problem I was having is that the design of this list
is a poor fit for Before You Code issues. Especially since you may
bump into all the Why Did I Even Start From Here issues.
In some ways, AppleScript is one of the hardest languages to
master. Other languages are more self-contained, in the sense that
they are thoroughly documented (and the documents can be found),
and their behavior is less dependent on the vagaries of the various
implementations of other pieces of software. For example, I
recently learned PHP and MySQL programming, and though it's a very
rich environment with great power, it seems to me much easier than
AppleScript.
So it's not *completely* crazy to try Ruby?
The real-world issue I have with Ruby is that there's all that stuff
on the net about it being friendly and good for newbies and people
are using it on Macs but it's not purely app-glue-based -- but now I
have started trying to plough through the Pickaxe it is Bloody Hard
Work and I'm afraid of being scared off by learning on my own (and
it's rather discouraging that Adrian can pick up the Pickaxe and
instantly understand it when I find starting with OO concepts is such
hard work) -- and I'm beginning to fear that the 'good for beginners'
stuff on the net seems to be Real-World Developers Learn It As A
Second Language rather than people like me :-)
On the other hand, playing with AppleScript on the Mac can be
rewarding, because the results are immediate and, one hopes, useful
to you. I've found Script Debugger to be very helpful...
Haven't tried to play with that yet. Adrian tells me that at the
stage of near-comprehension Like Where I am Now At starting to use
either irb or a debugger would be helpful at the 'type in something
and see what the computer sees' level.
Which works better than the 'start with an IDE' approach of the
Windows-based 'supposed to be friendly' languages for me.
I found it overwhelming that Adrian would give me a Big Thing of
Pretty Pictures and Forms and Buttons and say, This is the Easy Way
To Learn, rather than the Unix approach of, glue stuff together
because you've got a useful toolkit built-in, and see where you get.
Applescript's approach is
1) Try it!
2) If you get on well enough, look up the XCode features and add-on
IDEs and debuggers and stuff.
Unfortunately I am at step 1.5 above :-)
Dave G
Ruth
_______________________________________________
Do not post admin requests to the list. They will be ignored.
AppleScript-Users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
Archives: http://lists.apple.com/archives/applescript-users
This email sent to email@hidden