Skip to content
Thoughtful, detailed coverage of everything Apple for 34 years
and the TidBITS Content Network for Apple professionals
Show excerpts


Who needs a Web browser to surf the Internet? Mac OS 8.6’s URL Access opens new vistas for Internet-savvy scripts, and Geoff Duncan opens the lid on its substantial new capabilities. Also this week, Adam adds a few more suggestions for mailing list manners, and we report news of Netscape Communicator 4.6, OpenGL and Dragon NaturallySpeaking for Mac OS, plus the upcoming arrival of iMacs next to the vacuum cleaners and socket sets at Sears.

Geoff Duncan No comments

Dragon Planning NaturallySpeaking for Macintosh

Dragon Planning NaturallySpeaking for Macintosh — In a joint announcement at Apple’s World Wide Developer Conference, Apple and Dragon Systems revealed that Dragon plans to develop Macintosh-compatible speech recognition products based on its market-leading NaturallySpeaking continuous speech recognition products. The lack of continuous speech recognition on the Macintosh has been a thorn in Apple’s side, particularly since Apple helped pioneer speech recognition on personal computers with PlainTalk in 1994. In the past, Dragon representatives have repeatedly claimed the Mac OS isn’t suitable for continuous speech recognition products; that stance and the lack of technical detail in Dragon’s announcement may indicate that products from Dragon will only be available for Mac OS X, which offers substantially different memory and process management features than Mac OS 8.x. Dragon says an American English product will be released in late 1999, to be followed by products for British English, French, German, and Japanese; no pricing details, specifications, or system requirements have been released. [GD]



Geoff Duncan No comments

Netscape Communicator 4.6 Available

Netscape Communicator 4.6 Available — Netscape Communications has released the English language edition of Netscape Communicator 4.6 for Mac OS. This new release contains unspecified fixes for Netscape Communicator’s security and functionality, updated online help, AOL Instant Messenger 2.0, and RealPlayer 5.0.2, but doesn’t offer significant feature improvements compared to Netscape Communicator 4.5, nor does it ship with the recently released RealPlayer G2 for Macintosh. (See "Driving the 4.5 Web Browsers" in TidBITS-465 for an overview of the Web browsing features in Microsoft Internet Explorer 4.5 and Netscape Communicator 4.5.)

< english/mac/>

< src=productsmain>


Netscape Communicator 4.6 requires a PowerPC-based Mac running Mac OS 7.6.1 or later with at least 24 MB of RAM; it’s a 13.6 MB download from Netscape’s FTP servers. Residents of the U.S. and Canada should be able to download a version with 128-bit encryption from Netscape’s Web servers shortly. [GD]


Geoff Duncan No comments

Apple Releases OpenGL 1.0 for Mac OS

Apple Releases OpenGL 1.0 for Mac OS — Following up on its promise from last January’s Macworld Expo, Apple has released OpenGL 1.0 for the Mac OS. OpenGL is an application programming interface (API) for two- and three-dimensional graphics originally developed by SGI and widely adopted as a basis for high-quality, cross-platform graphics development. In addition to its obvious usefulness to games like Quake III, applications for modeling and animation, data analysis, and simulations can also take advantage of OpenGL’s features. OpenGL 1.0 for the Mac requires a PowerPC-based system running Mac OS 8.1 or higher with at least 32 MB of RAM (although G3-based systems are recommended), and includes QuickDraw 3D 1.6 and libraries to accelerate rendering on Macs with ATI RAGE II, RAGE Pro, and RAGE 128 video systems. If you’re a developer eager to start programming with OpenGL, grab the 4.7 MB OpenGL 1.0 package and check out Apple’s OpenGL developer materials; otherwise, gamers and graphics aficionados shouldn’t have to wait long for OpenGL-based products to begin shipping on the Mac. [GD]




Geoff Duncan No comments

iMacs at Sears

iMacs at Sears — Apple announced that Sears, Roebuck, and Co. will begin selling iMac computers later this month in approximately 825 retail locations throughout the U.S. Although Sears sold Macs from 1992 through early 1998 with unspectacular results (see "Apple in 1998: Retreat or Focus?" in TidBITS-416 for some analysis of Apple’s past relationships with Sears and retail outlets), Sears’s renewed interest in Macintosh systems probably stems from the iMac’s continuing success among first-time computer buyers looking for easy-to-use systems. If nothing else, the announcement indicates rising mainstream confidence in Apple and the Mac. Sears also plans to carry selected USB peripherals such as disk drives and printers. Judging from comments in TidBITS Talk and elsewhere, we hope Sears improves on CompUSA’s variable but often pitiful performance. [GD]

< 10applesears.html>




Geoff Duncan No comments

Putting URL Access Scripting to Work

Last week in TidBITS-480, I looked at new capabilities in Mac OS 8.6; this week, I’d like to focus on one new feature I think deserves special attention: URL Access.


Low-Level Power — URL Access is a new system component that enables programs to transfer information to and from the Internet using HTTP or FTP. Around the time Apple introduced Game Sprockets in 1996, several Macintosh Internet developers pushed the idea of "Apple Internet Sprockets" which would give any application basic Internet connectivity. Why is this idea interesting? Before URL Access, any program wanting to access the Internet had to write its own protocol handlers to interact with Web servers, upload to FTP sites, and whatnot, so every developer re-invented the wheel for every Internet application or utility. Wouldn’t it be great if the Mac OS could provide basic Internet functions to any program that wanted them? The project came to life under the codename SubWoofer but was shelved by Apple in the sweeping re-organizations of 1996 and 1997. SubWoofer was adopted by Leonard Rosenthol and other developers, and this year Apple finally decided to roll it into the Mac OS itself.

URL Access provides applications with the capability to upload and download information using HTTP (optionally using 40-bit RSA encryption) and FTP, to access local files using the "file://" URL scheme, to gather various data about URLs, and more. URL Access doesn’t provide all the capabilities needed by a high-end Web browser – especially ones that need to run on versions of the Mac OS prior to 8.6 – but it’s a perfect platform for Internet utilities and custom applications. For instance, Sherlock 2.1 now does all its Internet communication through URL Access. Over time, you can expect more Internet tools to use URL Access to communicate with the Internet, rather than writing their own protocol handlers.

Scriptability — Apple took URL Access one step further by making it accessible to AppleScript and other OSA scripting environments, like UserLand Frontier.


The Mac OS 8.6 Scripting Additions folder contains a tiny application called URL Access Scripting, which enables any OSA script to transfer data to and from the Internet. This simple AppleScript script downloads the TidBITS home page to a file you specify.

   set newFile to (new file)
tell application "URL Access Scripting"
download "" to newFile with progress
end tell

This script (which works only under Mac OS 8.6) prompts you to create a new file, then displays a progress dialog as URL Access Scripting connects to our Web server, downloads the page, and saves it to the file you specified.

URL Access Scripting’s interface is rough around the edges: it was originally intended to be a background-only application with no windows, dialogs, or menus, so Apple didn’t give URL Access Scripting any menus – or even a Quit command. However, URL Access Scripting needs to display interface elements like progress and authentication dialogs, so Apple lets it run in the foreground but didn’t provide a proper menubar, which can confuse both users and scripters. Remember that your scripts must tell URL Access Scripting to quit when they’re finished.

Folder Actions — URL Access Scripting offers many capabilities – decoding files, posting form data, handling authentication – and opens up new possibilities for integrating AppleScript into your workflow. Here’s an example of an AppleScript script you can attach to a folder as a Folder Action. Whenever you drop items into the folder, URL Access automatically uploads them to the FTP directory you specify in the second line of the script, replacing any files with the same names. (Remember that Folder Actions trigger when the visible contents of a folder change, so be sure your FTP folder is open, or attached to the bottom of your screen as a pop-up window.)

   on adding folder items to thisFolder after receiving fileList
set ftpURL to ""
repeat with i in fileList
tell application "Finder" to set thisFileType to the file type of i
tell application "URL Access Scripting"
if thisFileType is "TEXT" then
upload i to ftpURL replacing yes with progress and authentication
— delete the return between "binhexing" and "and" in the next line
upload i to ftpURL replacing yes with progress, binhexing
and authentication
end if
end tell
on error errMsg number errNum
display dialog (errNum as string) & ": " & errMsg
end try
end repeat
tell application "URL Access Scripting" to quit
end adding folder items to

You’ll notice this script will binhex non-text files it uploads to an FTP site (taking advantage of another of URL Access’s built-in features), but there are plenty of ways to add more intelligence. For instance, if you drop multiple files into this FTP folder, you’ll be prompted for a username and password for each file. You could integrate your username and password into the script directly by using a URL in the following form, although it’s not a secure solution:

<ftp://username:[email protected]/ YourDirectory/>

A better idea would be to have the script prompt once for the appropriate name and password, then build an appropriate URL for URL Access Scripting. Similarly, this script could be expanded to handle folders dropped into your FTP folder, to test for the presence of a resource fork to determine whether binhexing is necessary, and to offer error handling in case a problem occurs. You could also add a "removing folder items" script to delete items from the FTP site when they’re removed from the folder.

Even More Elaborate — An important thing to notice with all the possible elaborations on the script above is that the enhancements don’t involve URL Access. Taking advantage of URL Access Scripting would still only require a few lines of code, although the rest of the script would become larger to offer more features, flexibility, and intelligence.

Since getting online stock quotes is commonly bandied about as an example of customized Internet functionality, I’ve thrown together an AppleScript script using URL Access Scripting that pulls stock prices from Yahoo’s finance site. Just type a ticker symbol, and the script sends the appropriate query, grabs the resulting HTML, parses it, and displays a dialog with the pricing information.

< UASYahoo.html>

Again, you’ll notice handling URL Access Scripting is easy: just one line to grab the appropriate Web page, and another to tell URL Access Scripting to quit. The rest of the script is concerned with getting the ticker symbol from the user (capitalizing it if necessary), creating and destroying a temporary file for the Web page, and parsing the results returned from Yahoo’s server. This script could certainly be smarter – for instance, it should handle connection errors and deal with unknown ticker symbols – but, again, those changes don’t involve URL Access Scripting, just the intelligence wrapped around it.

If you want more examples of using URL Access, check out the scripts Apple showed off at this year’s World Wide Developer Conference – they set your desktop picture to images from a variety of Web cams around the world.

< deskcam.html>

Meet a Schedule — Another way to utilize URL Access Scripting is to have scripts run automatically at pre-selected times. Although AppleScript doesn’t have a built-in scheduler, you can use Sophisticated Circuits’ iDo Script Scheduler. A demo version is available for free from Apple, both on its own and as part of Mac OS 8.6’s AppleScript Extras, which is also on the Mac OS 8.6 CD-ROM. The iDo Script Scheduler enables you set up three scripts that run automatically; the forthcoming full version should handle an unlimited number of scripts and offer additional capabilities. Several other scheduling utilities are available on their own or as parts of other products; I’ve been using Late Night Software’s $25 Scheduler for years, and Unix aficionados should check out Chris Johnson’s cron for Macintosh.

< ido.html>

< n11402>

< sched.html>


< index.html>

Script Happy — At long last, integrating the Internet into your custom scripts and workflow is simple and built directly into the Mac OS. Although URL Access can’t do everything that’s possible with lower-level TCP/IP scripting tools like Mango Tree Software’s TCP/IP Scripting Addition or BIAP’s NetEvents, it provides a wide range of common functionality that’s easy to use. Even if you don’t have much familiarity with AppleScript, a little effort can dramatically improve your use of the Internet.



Adam Engst No comments

Mailing List Manners 102

Response to "Mailing List Manners 101" in TidBITS-480 has been tremendous, so much so that I’ve decided to add a few additional suggestions for ways people can improve quality of life on mailing lists. Keep in mind that of these are all suggestions. We should all be sensitive about encouraging people to abide by them rather than being dogmatic about their adoption; oftentimes, circumstances prevent people from following each suggestion as fully as they would like.


First, I owe an apology to those for whom English is not a native language. Although the readers who chided me about this after last week’s article spoke for others, the admonition is well taken. Please do not let my recommendation of grammatical English prevent anyone from participating in mailing lists where English is the standard language. We’re all enriched by the participation of people from other countries and cultures, and to restrict that on the basis of grammar is self-defeating. I also encourage everyone to check to see if the sender of a poorly worded message might be struggling with an unfamiliar language – a glance at the sender’s email address or signature often identifies people for whom English is difficult.

Second, I should have qualified my statement by noting that adherence to grammatical rules is secondary to providing useful information. Several people commented that if they need technical help, they’re not particularly worried about the language in which it’s couched.

That said, there were a few additional recommendations that bear noting. Also, for those of you who asked for a concise summary of all these recommendations, check the end of this article for a tidbit you can clip and send to others.

Avoid File Attachments — We considered discussing file attachments last week but decided not to do so because acceptable behavior varies between lists and because a number of attachments are sent without the user realizing.

In general, unless a list actively encourages the use of attachments to messages, you shouldn’t send them. Most mailing lists consist of people using a variety of email programs under different operating systems. That’s even true for a list devoted to a Macintosh-only program like HyperCard, for instance, since people often read email at work, where they may use a Unix machine or Windows box instead of the Mac they use at home. Then there are Web-based email clients, which may not be able to deal with attachments at all. Thus, it’s likely that any attachment won’t be readable by a significant percentage of people on the list. If you’re thinking about attaching a file that contains primarily text, instead copy the file’s content into the body of the message.

Attachments are also a concern because many people aren’t careful about the size of attached files. Attaching a 1 MB file to a message may be as easy as attaching a 10K file, but that 1 MB file may cause significant problems for the mailing list program itself (consider the disk space implications if the program created a separate file for each recipient of a 600 person list – 600 MB of data) and for individual recipients on the end of slow connections.

Another problem with attachments is that many people send them without realizing that they’ve done so. Now that many email programs support inline graphics, people copy images into their messages without realizing that those images are in fact sent as attachments. Similarly, users of Netscape Communicator may find themselves sending VCard attachments without noticing. In Netscape Communicator, open the Preferences dialog box, switch to the Identity panel, and deselect "Attach my personal card to messages (as a VCard)" to avoid sending VCards with every message. Since most people still use email programs that don’t understand VCards, VCard attachments tend to confuse or annoy recipients. Finally, the Microsoft Exchange email server can generate WINMAIL.DAT attachments (which contain information that Microsoft email clients understand but which aren’t Internet standards) with every message, but it can also be configured to restrict those attachments to destinations known to be running Exchange as well. If you’re receiving WINMAIL.DAT files, ask the sender to ask their email administrator to look into the Exchange configuration.

There are of course cases where attachments are perfectly acceptable. For instance, on the small mailing lists we run for our families, the occasional family picture isn’t usually a problem. And a mailing list run for a publication submissions panel may want everything sent as attachments.

Don’t Send HTML Mail — I commented in the previous article that you should avoid using text styles or colors in messages for mailing lists because there’s no telling what people will see. This point deserves some expansion, because it can be more problematic than I implied.

Many email programs, including such popular ones as Emailer, can’t render HTML-formatted messages, and even as HTML support improves, there will be plenty of people who won’t upgrade or who prefer to use programs that will never support HTML formatting. As with attachments, then, there will be numerous people on almost any mailing list who won’t be able to read your message as you intended. (Eudora Pro offers the option of sending both styled and plain text to avoid this problem.) Worse, depending on how you’ve sent the message and on the email programs of the recipients, they may see the straight HTML markup. And if someone replies to the HTML formatted message, the quoting can render the message even more unreadable.

Some mailing lists explicitly forbid the use of HTML formatted messages for this reason, and even if that’s not specifically true of the lists you frequent, it’s best to avoid sending messages with text styles to mailing lists.

Some email programs generate HTML formatting by default, so you may have to change settings to prevent it. For the programs listed below, I’ve identified the location of the formatting controls. Note that I’m using the arrow (->) as a shorthand notation indicating navigation, so the first item below would expand to: "From the Special menu, choose Settings, then scroll down to the Styled Text settings panel."

  • Eudora Pro (Mac): Special -> Settings -> Styled Text
  • Eudora Pro (Windows): Tools -> Options -> Styled Text
  • Netscape Communicator (Mac/Windows): Edit -> Preferences -> Mail & Newsgroups -> Formatting
  • Outlook Express (Mac): Edit -> Preferences -> Message Composition
  • Outlook Express (Windows): Tools -> Options -> Send

Watch Recipients — Mailing lists that lack explicit Reply-To headers often accidentally encourage another behavior which can prove annoying. If there’s no Reply-To header, most email programs address replies to the original sender of the message. That’s fine. However, if the person replying wants the reply to go to the list, the easiest way to include the list address is often to perform a Reply To All action, which replies to both the original sender and the list. Replying to all has the desired effect of making sure the reply goes back to the list, but it has the side effect of sending two copies to the original sender (one directly, one via the list).

Obviously, this isn’t a major gaffe, but it’s confusing to the person who receives the duplicate messages. I’m never quite sure whether the person meant the reply to be private or public, which can affect how I continue the conversation. Worse, I may reply in one fashion after seeing the direct message, then realize that was a bad idea when a second copy arrives later by way of the list.

My recommendation is to avoid sending messages to both individuals and lists if it means the individual will receive multiple copies. There may be exceptions to this general rule, if, for instance, the direct message is likely to arrive more quickly or if there’s a chance that a list moderator will reject the message.

Respect Other People’s News — This is a somewhat odd suggestion, but I think it’s important. If you learn information concerning another person that might be of interest to a mailing list, respect that person’s right to post their news when and if they see fit. You may wish to query them in private email to check on their plans, but it can range from rude to distressing to break important news for someone else. For instance, if you found out a friend was pregnant and broke the news for her on a list, you’re both stealing her thunder and potentially creating an awkward situation if she didn’t wish to let everyone know. Worse, imagine the nightmare that could result (this has happened) if a well-intentioned person posted a short note about a close friend dying to a public mailing list. List members’ confusion, grief, and desire for details could make it even harder on the people close to the deceased trying to handle the logistics of informing friends and relatives.

A Concise Summary — For those of you who asked for a short summation you could send to mailing lists to remind people of these recommendations, feel free to use the following in its entirety, perhaps with a short introduction explaining why you’re sending it.

<————————– cut here—————————–>

There are a number of things we can do to improve the quality of mailing lists for the benefit of all. Most of these recommendations are simple and require little extra work. If you’d like to read a more detailed rationale for these suggestions, check out the Mailing List Manners 101 and 102 articles published by TidBITS at:


Email Program Settings Suggestions:

  • Turn off features (like VCards) that create attachments.
  • Avoid sending HTML-formatted messages to lists.
  • Send replies either to the sender or the list, but not both.
  • Make sure the time is set properly on your computer.

Writing and Layout Suggestions:

  • Don’t use all capital letters for more than a word or two.
  • Insert blank lines between paragraphs.
  • Include full URL schemes, as in <>.
  • Surround URLs with angle brackets.
  • Try to use proper grammar, spelling, and punctuation.

Message Content Suggestions:

  • Never send unsubscribe commands to the list.
  • Create and maintain descriptive subject lines.
  • Quote original text sparingly in your replies.
  • Don’t include email attachments unless explicitly allowed.
  • Use a short signature containing only essential data.
  • Send welcome or congratulation messages via private email.
  • Respect other people’s news.
  • Civility is always worthwhile.

Thanks for helping to keep mailing lists useful and pleasant places!

<————————– cut here—————————–>

More Suggestions and Caveats — Space still prevents me from covering every possible suggestion for these articles, but a number more have appeared in the related thread in TidBITS Talk. It also contains some alternate viewpoints, along with explanations of why some email programs may force poor list manners.