37 of 40 people found the following review helpful
- Published on Amazon.com
[...]AppleScript: The Missing Manual by Adam Goldstein is part of the Missing Manual series of beginner/intermediate books published by Pogue Press/O'Reilly and Associates. The focus of this book series is on computer products that have been released without adequate printed manuals (Mac OS X, iLife '04, Google, iPod and iTunes, Windows XP, Windows 2K among others). Their newest release, AppleScript: The Missing Manual, is a welcome addition to their catalog of smart, funny and user-friendly books.
AppleScript is a scripting language that mimics the syntax of English. As such, it's extremely similar to how sentences are structured and, as a result, is very intuitive and simple to use. However, this doesn't belie the fact that it's a very powerful tool for automation.
Goldstein's Missing Manual is an exciting newcomer to the meager collection of AppleScript introductory volumes. This book covers the current Mac OS 10.3 (Panther) release of AppleScript and includes multimedia support, GUI scripting and AppleScript Studio. While it is intended for the beginner and intermediate user, power-hounds will also find many tricks, tips and hidden tools within its pages.
The book is divided into four parts: "AppleScript Overview", "Everyday Scripting Tasks", "Power-User Features" and "Appendixes".
Part One begins with the usual suspects: where to find the AppleScript folder in Mac OS X, how to enable the script menu and the surprising number of useful scripts you'll find there. In just a few pages, Goldstein hands the reader a collection of valuable scripts that were hiding in OS X Panther all along (I particularly like the "ransom note" script).
Part Two is the main core of the book and covers "Everyday Scripting Tasks". The seven chapters in this section run the gamut of increasing difficulty: manipulating text, controlling files, creating lists, organizing and editing graphics, playing sound and video, internet and network scripting and organizing information in databases. The author quickly takes the reader through a series of simple scripts designed to illustrate AppleScript syntax.
Once the reader whips through the example scripts in Parts One and Two, it's time to get down and geeky. Part Three titled "Power-User Features", is the section of the book for geeks and wanna-be geeks. Goldstein shoves enough advanced techniques in five chapters to make these alone worth the price of the book. The reader learns how to enable folder actions, attach built-in folder actions to specific folders, view and edit these built-in folder actions and run his or her own actions.
My favorite chapter in this section is Chapter 13, Mixing AppleScript and Unix. Goldstein gives a quick terminal lesson followed by a neat trick to display the Expose button ("the blob"). Other helpful actions: use do shell script to run Unix programs straight from AppleScript, run shell scripts with admin privileges, run AppleScripts from Unix thus saving time by bypassing the Script Editor and schedule commands (use an AppleScript to run cron every day, use iCal to schedule scripts). Even users who normally shy away from the terminal will want to try some of these.
Part Four contains the Appendix A through C: "AppleScript Support in Common Programs" (a very useful set of tables of applications, their level of AppleScript support, price and where to get them), "Moving from Hypercard to AppleScript" (options and advice for converting Hypercard stacks to AppleScript and major syntax differences between HyperTalk and AppleScript) and "Where to Go from Here" (AppleScript sources: Web sites, discussion lists and books).
Goldstein's style of writing is exceptionally clear with just a dash of humor that humanizes the experience of reading a technical or "how-to" manual. The reader won't find anything confusing, lacking in detail or dull. This book is eminently satisfying on many levels: the writing style is conversational and humorous (I would imagine this is a pre-requisite for writing for David Pogue), the style of this book series is consistently pleasant to read and the level of technical difficulty satisfies the range of readers from beginner through power-user. The "valuable information:price" ration is, hands-down, in the buyer's favor.
A final note about Adam Goldstein, the author of Applescript: The Missing Manual...he is the teenage founder of GoldfishSoft ([...] a Mac OS X games and utilities software company (my 7 year-old son loves AlgeKalk and FrakKalk, geek that he is). By "teenage", I mean Adam Golstein is 17-ish. He began contributing to this Pogue/O'Reilly series several years ago by writing a few sections of Mac OS X Panther Edition: The Missing Manual (FileVault, journaling and Disk Restore). I suspect we'll be hearing a lot more from Mr. Goldstein...and I'm looking forward to it.
25 of 27 people found the following review helpful
- Published on Amazon.com
This is not a "manual" in any sense of the word. A manual tells you how, where, and when. This is more like a tour guide of Applescript. Sure there are scripts, but few of them make the Mac easier to use than its own OSX interface. The information is presented in such a scattered form, that it is hard to follow for very long, and therefore hard to learn. It's like trying to learn to be a chef by watching the Cooking Channel.
42 of 49 people found the following review helpful
Alan G. Smith
- Published on Amazon.com
Ok, I confess it. I am a programmer. My desire was pretty simple. I wanted a book that would show me all of the parts of Applescript and how to use them.
This is NOT that book. You can see the sample scripts but very little explains how to take that information to make scripts of your own.
This book has lots of sample scripts, but since I am not interested in scripting those applications, it isn't helpful to me.
Perhpas I just wanted too much, but I sent this book back.
15 of 16 people found the following review helpful
- Published on Amazon.com
As a long time hobbyist, im not really impressed. This book doesn't really touch on too many of the 'hard' issues one would face when first getting started with applescript. The languages syntax, for example, is not as intuitive as its description suggests. Its english like, but its not english, and english takes a decade or so to master.
The book says little about the language, and a disproportionately large part of it is just a series of example scripts categorized by the programs being scripted.
This book is more like the answers to the test than the course that would prepare you for the test. I learned close to nothing from it.
Im sure it has its place, but as someone pretty familiar with programming, I find that practical examples _aswell as_ some deeper, language directed discussion is nessesary to get anything other than a weak grasp on any language. Especially a language as slippery as applescript. But I guess I got what I paid for... its a pretty cheap book.
14 of 15 people found the following review helpful
Michael J. Waddell
- Published on Amazon.com
Pros: Humorous, Easy To Read, Numerous Good Examples
Cons: Teaches primarily by example, Little rigorous treatment of the language itself
Recommended for: People with no programming experience who want to automate their Mac and beginning programmers who want to learn the basic principles of programming in an easy-to-learn language
The author, a high school student, gives us a good introductory book about AppleScript. It stays true to the "Missing Manual" philosophy in that if the average Mac user found it in the box with their new Mac, they wouldn't be turned off by it.
However, given the lackluster reception that Automator received with the release of Tiger, it seems to me that the potential audience of people with limited programming experience who want to automate their mac is quite limited. Therefore, I think that the ideal audience for this book is beginning programmers who want to learn the fundamental, and universal, concepts of programming using an easy-to-understand language that is already available on their computer.
Chapter 1 shows how to enable the Script Menu and walks us through each script therein. Chapter 2 shows how to launch and use the Script Editor to open, modify and save scripts. These 2 chapters provide an introduction to what is already installed on each new Mac.
Chapter 3 is the first chapter that begins to introduce the language itself. This chapter introduces dialog boxes and the "tell" statement for controlling other applications. This chapter also introduces the concept of "dictionaries." Dictionaries are the essence of AppleScript in that they outline every command and variable of each program that is AppleScriptable. Much of the book is essentially an overview of key selected items out of the dictionaries of common programs such as the Finder and TextEdit. In fact, a large portion of the most commonly used commands in AppleScript are found in the Finder and Standard Additions dictionaries.
Chapters 4, 5 and 6 introduce key programming concepts such as looping, subroutines, string manipulation and lists. These concepts are introduced as needed to complete particular example scripts. Each of these programming concepts in introduced in a very easy-to-understand method with some concepts, like inheritance, explained using analogies even your mother could understand.
Chapters 7 through 10 focus primarily on scripting specific programs based upon the commands found in each program's dictionary (e.g., iTunes, Safari, iPhoto). However, some interesting concepts specific to AppleScript are discussed as needed. For instance, these chapters introduce the "say" command to invoke Text-to-Speech and the "record" datatype which works much like a hashtable does in PERL.
Chapter 11 introduces folder actions and how to link scripts to them. Chapter 12 discusses the System Events dictionary and how it can be used to script programs that would not otherwise be AppleScriptable. Chapter 13 introduces some basic UNIX commands and how they can be executed from within an AppleScript.
Chapter 14 discusses debugging and introduces AppleScripts's version of try-catch statements. This is a very important chapter for beggining programmers, especially since these concepts are well presented and directly applicable to programming in any language.
Finally, chapter 15 introduces the use of XCode and Interface Builder to create more sophistocated AppleScripts. This chapter is not only a good introduction to building complex AppleScript applications, but it is an easy-to-follow introduction to the concepts in XCode and Interface Builder that are common to all types of projects -- be they in AppleScript, C++ or Objective-C.
My major complaint with this book is that it does not have a list of all of the language's keywords with the syntax for the use of each (similar to what you might see in a "Nutshell" book). Without this, the book is not as effective of a reference tool as simply going to the dictionaries directly. Also, I feel that the book glosses over the fact that although AppleScript is a very "English-like" language, it does require precise syntax.
Overall, it is a good introduction to programming and true to the "missing manual" series. However, a slightly more rigorous examination of the language syntax would take it from "good" to "great."