Teach Yourself AppleScript in 24 Hours
Teach Yourself Applescript in 24 Hours (TYA) from Sams Publishing is certainly up to date: it covers Applescript under OS 10.2 and the use of AppleScript Studio to build GUI applications using the language. That's its strength. The book's first weakness, though, is that it starts too far down the learning curve in my opinion. The first few chapters of TYA could be read by someone almost totally new to the Macintosh -- they cover such basics as running the scripts installed with the OS and getting new scripts from Apple and installing them. At the same time, they introduce basic AppleScript programming terminology not really required for these sorts of tasks such as suites, classes and commands. This material would have best waited a few chapters. It is not really until 'Hour 6', most of the way through the first part of the book, that it really sorts itself out and gets down to really teaching you AppleScript.
The Basics The book is divided into four parts: 'Getting Started With AppleScript,' which covers using scripts and basic programming concepts; 'Writing Scripts With Script Editor,' which takes you through using the Script Editor, details AppleScript syntax and how to script the Finder and various applications and using AppleScript Dictionaries; 'Working With AppleScript Studio,' which covers building AppleScript-based GUI applications using Project Builder and Interface Builder all the way through to complex applications that can store and retrieve documents; and a final section 'Advanced Scripting,' which covers Script Objects, scripting across a network (including SOAP and XML-RPC), and integrating scripts with the terminal and cron.
Each section is then divided up into chapters designed to be worked through in less than an hour ,with a small number of short exercises at the end. I found that most chapters took me about half an hour before I reached the exercises, which then took ten to fifteen minutes.
As you can see, almost everything you could ask for is touched on in this book. Once over the introductory chapters, I found the book to be well laid out, well structured and well written. I particularly liked Part III on AppleScript Studio; it started easily and worked up to quite an advanced little application explaining everything well along the way.
The Bad There are some things missing, however. Debugging is hardly mentioned (3/4 of one lesson), and debugging is not exactly trivial in AppleScript. I also found no mention of my pet demon with AppleScript; its incredibly strong typing and problems with having data in the wrong type; this is a classic problem with files and file names. In reality, this book teaches you the language without really getting down to teach you how to program in the language. A fine distinction, I know, but after just reading Learning Perl Objects, References & Modules, I found TYA to be light on real examples and real world code. Even the best section, the one on AppleScript Studio, didn't touch on many things you will need to know.
Sams have a page devoted to the book at the Sams web site, but frankly the URL is so long and cumbersome I don't dare risk putting it in a post. Go to the site and type 'AppleScript' in the search box. It has the table of contents and a sample chapter and some of the code from the book. The sample chapter is the third chapter 'Running The Scripts You Already Have' and really doesn't give you a good feel for how the book teaches you AppleScript programming. The page to download the code examples says "All the code developed for the book in one convenient download," but in fact all you get are the AppleScript Studio projects and source from four of the chapters. Oh, and the introduction says "There are even a few goodies on the web site that aren't in the book" -- they sure must be good as I couldn't find them.
In conclusion, I think this book starts too far down the learning curve and leaves off too early, with not enough detail. It seems a shame, what we have here is well laid out and well written, I wanted it to be better after I had finished. This book might suit someone absolutely new to the Mac who wanted to learn enough AppleScript to perform a few basic operations, for everyone else it'll be better to wait till October when AppleScript 1-2-3 will be out from Peachpit and AppleScript: The Definitive Guide will be out from O'Reilly, and we might have a better option. If you absolutely need to get some help with AppleScript Studio then borrow someone else's copy or find one second hand.
You can purchase Teach Yourself AppleScript in 24 Hours from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.
Along with Mars day or what?
Why applescript? Why not a scripting language ... Other scripting languages will
that does all that applescript does and is
also crossplatform? This is not meant to bash
applescript, which is a fine scripting language.
It's just that applescript won't run on Win32,
*NIX, VAX
(python, perl and javascript even).
-d
This is actually a book review, not an "Apple story."
"debugging is not exactly trivial in AppleScript"
/me waits for Mac zealots to moderate this as a troll...
No, it is not. I've dabbled in two dozen programming languages, and Applescript is the one I've hated the most. It tries to be normal English but because of its strong typing you have to write the sentences exactly correct, which is annoying and hard to figure out once you get past the simplistic 'hello world' stage.
The way you need to string the words together is not obvious, and is sometimes not even proper English. I really wish Apple would wise up and drop it in favour for something more intuitive on the advanced level, like javascript or python.
Most Mac users I know don't know or do anything with AppleScript, so I don't think it's a mistake to start where it does. I have the old O'Reilly book which is still great as a quick reference, but I'll have to see this one for myself before recommending it to people. IMO, a lot of people who could really benefit from using AppleScript daily aren't because they feel it's too techy for them. Maybe this book is what those people need. On the other hand, I haven't heard anything about 1-2-3, but I've had good experience with a few of Peachpit's books.
Alex.
And who are those people? Graphic designers have loved Applescript for a looong time, because they can write stuff for Photoshop without any hassles. Big advertizing departments will often have a huge collection of legacy scripts they've written for various big tasks -- "See the dimensions of all the graphics in this directory and add those numbers, formatted this way, to the end of the file names." They aren't programmers, their minds don't work that way, but they do have large programmatic tasks they need to get done.
Let's put it this way: I saw that title, "In 24 Hours," and I wondered how it could possibly take that long.
"Fundamentalism" isn't about divine morality. It's about human authority.
And Bookpool.com has it $1 cheaper than Amazon.
8 7
http://www.bookpool.com/.x/dszq2mdc4i/sm/06723251
On a side note, why was the parent modded as a troll? Anything to save me $7.50 should be modded as informative.
This is a very damning problem. One could argue that the O'Reilly book was primarily a reference book. (A reference book dealing primarily with Sys9 and with only a few bits about 10.0 OSX features) But learning Applescript really ought to deal with how to code Applescript.
It is sad that there are not really good books on Applescript. While the language itself is pretty poor (IMO) the concept is excellent. Applescript Studio, while flawed, is a great tool. Most significant, with OSX, you can mix scripting languages to do very powerful things. i.e. most of my scripts are combination shell scrips and Applescripts. I also have a lot of Python/Applescripts. With Apple's GUIScripting additions to Applescript it is an amazingly powerful tool.
The only downside in Apple's toolkit are fairly weak scripting support in some important applications. (cough) Mail (cough). The other downside is debugging, which is surprisingly weak.
If I had a wish, it would be for something like Applescript studio, but with solid debugging and support for shell scripts, Applescripts, Perl scripts, Python scripts and maybe even TCL/TK. It would really be a killer feature for Unix types.