Originally published May 28, 2005 at 12:00 AM | Page modified May 28, 2005 at 7:35 AM
Practical Mac | Glenn Fleishman
Programmer's seat open to Tiger users
Anyone can write a software program, a sequence of steps that accomplishes an action. Open a programming manual for any computer language...
![]() |
Special to The Seattle Times
Anyone can write a software program, a sequence of steps that accomplishes an action. Open a programming manual for any computer language and you can find commands that cause the computer to spout, "Hello, world!"
But does everyone want to program? Hardly.
Most of us — even me, who programs in several scripting languages — would rather perform a task than produce software to accomplish it.
The disconnect is between our ability to visualize how to carry out a tedious task through repetitive procedures, like renaming 100 digital photographs with numbers that ascend chronologically, and how to cause our computer to do it for us.
In Mac OS X 10.4 Tiger, Apple risks that a percentage of their users will cast off the shackles of prepackaged free or commercial software and start working on their own inventions. Spotlight, Automator and Widgets all involve aspects of programming, and provide a clear set of stepping stones for someone to develop more of an interest.
A programming language consists of a fixed and limited vocabulary of words used in a precise order and with precise expression, called syntax — as in a spoken language but with less flexibility.
Learning those words and the language's manner of putting them together can take weeks or months to master the basics. Apple wants to sidestep that learning curve and put you immediately in the programmer's seat.
Spotlight itself is a single-minded, virtual computer. Programs fed into it are composed of single words or a few restrictive keywords like kind and date.
Apple has posted a list of valid items you can pair with kinds (like image and font) and dates (like yesterday) at www.apple.com/macosx/tips/spotlight.html.
When you enter a search such as Benjamin kind: images date: this year, you're writing a very simple program defined by those parameters. The Spotlight "computer" produces a list of results as its output.
Moving from Spotlight to Automator is a big leap, but still approachable. Automator produces AppleScript code, Apple's long-time scripting language that uses a human-readable approach: tell application "Finder" select file fileName of startup disk is a valid line of AppleScript. But Automator doesn't show you this code unless you want to see it.
When you launch Automator (found in the Applications folder), you can pull together prebuilt actions from programs that support Automator. This includes a large list, and Apple has Automator actions for many of its products. To create an Automator work flow, you drag actions into a visual, numbered sequence.
![]()
A very simple case is how I install Dashboard Widgets. I prefer the Firefox browser even to Apple's improved Safari 2.0 in Tiger, but Firefox doesn't install Widgets automatically the way Safari 2.0 can. (This is itself a security risk that Apple has already addressed since Tiger was released.)
I created an Automator action that has two parts: first, "Get Selected Finder Items," which creates a list of items to act upon, and then, "Move Finder Items," specifying the Widgets folder in the Library folder. I save this Widget as a Plug-In for the Finder.
When I select a Widget on the Desktop and Control-click it to bring up the contextual menu, I can select the workflow from the Automator submenu. Voila: I have created a little program. (You can attach these workflow to folders so that the workflow automatically acts on any item dropped into the folder.)
Speaking of Widgets, Apple's introduction of these mini-programs that appear via the Dashboard, a sort of overlay that you can show and hide, has prompted interest in whether small, tightly focused software can be useful in a world of multipurpose programs.
Widgets are bundles of Web pages with a little bit of scripting and formatting thrown in. Widgets can be entirely composed of HTML (the Web's lingua franca), JavaScript (a common and simple Internet scripting language), and Cascading Style Sheets, used to control formatting like color and type size.
It's a stretch to think that the average user would create a Widget, but the legions of folks who have built their own Web sites and dabbled in JavaScript might also be interested in developing Widgets for their own purpose.
Widgets generally pull in information over the Internet and then display that in a compact form. Early Widgets from developers other than Apple include one that takes the Washington State Department of Transportation traffic map and displays it in compact format.
Apple's early documentation is sparse, and I'd recommend waiting for my colleague Dori Smith's book, "Dashboard Widgets for OS X: A Visual QuickStart Guide" to hit the bookshelves later this year.
Glenn Fleishman and Jeff Carlson write the Practical Mac column for Personal Technology and about technology in general for The Seattle Times and other publications. Send questions to Glenn at gfleishman@seattletimes.com. More columns at www.seattletimes.com/columnists
UPDATE - 09:46 AM
Exxon Mobil wins ruling in Alaska oil spill case
UPDATE - 09:32 AM
Bank stocks push indexes higher; oil prices dip
UPDATE - 08:04 AM
Ford CEO Mulally gets $56.5M in stock award
UPDATE - 07:54 AM
Underwater mortgages rise as home prices fall
NEW - 09:43 AM
Warner Bros. to offer movie rentals on Facebook

Entertainment | Top Video | World | Offbeat Video | Sci-Tech
nwautos
(Daihatsu) Daihatsu FC Sho Case This futuristic four-seater debuted at the Tokyo auto show in December. Its seats can fold flat into the floor and th...
Post a comment
- Madrona dad killed by stray bullet as he drove through Central Area
- SPU surprises neighbors with sale of Queen Anne rec property
- Beer-drinking bridge builders will get training from a counselor
- Matt Flynn has good day in Seahawks' 3-way QB competition
- Boy's pat on president's head captured for history
- Why dealing for Kellen Winslow makes sense for Seahawks | Steve Kelley
- Police arrest New Jersey man who confessed to killing Etan Patz
- Amazon addresses criticism at meeting
- Driver fatally shot in Central Area
- Sources: DOJ sends letters to city blasting police-reform efforts
- Opponents of gay-marriage law say they have enough signatures
710 - Mariners try to extend some other team's misery for a change
337 - Komen controversy hurting Race for the Cure
202 - Madrona dad killed by stray bullet as he drove through Central Area
188 - Sources: DOJ sends letters to city blasting police reform efforts
134 - Typical CEO made $9.6M last year, AP study finds
91 - Driver caught in crossfire, fatally shot in Central Area
89 - Mariners manager Eric Wedge says releasing Chone Figgins not a consideration and that Casper Wells was odd man out
65 - The Seattle area's scandalous lack of adequate transit capacity
61 - It's been great; see you soon in my new columns
58
- Dig into colorful history at Oregon's John Day Fossil Beds
- Madrona dad killed by stray bullet as he drove through Central Area
- Get a sitter — please — for these 10 great date-night restaurants | All You Can Eat
- SPU surprises neighbors with sale of Queen Anne rec property
- Beer-drinking bridge builders will get training from a counselor
- Boy's pat on president's head captured for history
- Zumiez rebounds from recession better than most
- Driver fatally shot in Central Area
- Downtown building fetches $55M, thanks to Amazon effect
- Gates Foundation grants give local groups a boost








