TweetFollow Us on Twitter

Review: Mailsmith 2.1

Volume Number: 20 (2004)
Issue Number: 3
Column Tag: Review

Review: Mailsmith 2.1

by William Porter, Polytrope, LLC

E-mail client for control freaks

Introduction

If I were writing this review for MacHome, or even MacWorld, I'd spend time talking about how smart and user-friendly Mailsmith is. I would go out of my way to claim that it isn't just for power users, programmers, hackers and geeks. This would be true. It's not.

But I am writing this article for MacTech. You are a MacTech reader. I am going to make the not unreasonable assumption that you are a power user, programmer, hacker and/or geek, that you are, in short, a control freak. Bare Bones, developer and publisher of Mailsmith, describes it as an e-mail client written by Mac users for Mac users. I want to describe it more aggressively, as an e-mail client written by control freaks for control freaks. Like you.

I am also going to assume that you are not already using Mailsmith, and that you may need more than just a rundown of what's new in 2.x. Now there is a lot that's new. In fact, in versions 2.0 (released fall 2003) and 2.1 (released January 2004), in addition to hundreds of problem fixes, Bare Bones added hundreds of new features or feature enhancements, including PGP support, considerably enhanced integration with OS X, native support for SpamSieve, greatly improved notification options (even support for the Griffin PowerMate), changes to the default mailbox structure, and much more. If you want all the details, you can get them from Bare Bones' web site. But in this review, I am not going to focus on what's new. I'm going to focus on how you, the power user, can make Mailsmith do your bidding.

Customize!

Let me start by noting that there's a lot you can do to customize the way Mailsmith looks, how it works, and how you interact with it. There are different ways to view mail lists and messages. You can change fonts, font colors, and font sizes for lists, for reading messages, for composing messages, for printing. Window size, text wrap on/off, where your favorite AppleScript editor is located, a slew of options relating to spam, attribution line for text quoted in replies--you can control all these, and more. What I particularly like is the ability to add or edit your own keyboard shortcuts, not just for every command in the menus, but also for palette items such as glossaries, stationery, and scripts. I touch my mouse very little when I'm working in Mailsmith.

Getting and Sending

One option Mailsmith does not give you: IMAP. Bare Bones says that IMAP support is on the list for a future version. But, at the moment, Mailsmith is aimed at the ninety-plus percent of us that don't need IMAP.


Figure 1. The advanced tab in the accounts dialog.

That said, Mailsmith 2.1 gives you a lot of control over your POP and SMTP accounts. You can, of course, have as many different user accounts as you like, each independently configured. Usernames and passwords can be stored in the OS X Keychain. Version 2.x adds a number of valuable new features, including secure (SSL) connections, SMTP authentication, the ability to delete messages from the server after n days, faster uploading and downloading, improved handling of signatures, and more. (See Figure 1.) If you have PGP 8 or higher installed, Mailsmith 2 added the ability to cryptographically sign outgoing messages. The POP Monitor, improved in version 2, lets you view messages directly on the server and get them or delete them.

By default now, Mailsmith 2 uses the OS X Address Book to store e-mail addresses. Integration with the Address Book is so smooth, it's nearly invisible.

HTML and "Enriched Text"

Mailsmith does not display "enriched text," that is, font and simple paragraph formatting that may have been added to a message that was written in a program such as Apple's OS X Mail. If someone sends you an enriched-text message, Mailsmith will display it as plain text.

On the other hand, Mailsmith does support full-blown, properly formed HTML messages. To be sure, it does not encourage HTML e-mail. If your mail consists largely of spam, or if the majority of your correspondence is with people who can't express themselves adequately in a single font, well, Mailsmith might not be the best choice for you. But if all you need to do is view the occasional stray piece of non-spam HTML mail, Mailsmith can do it fine. First, it does a great job of extracting the non-HTML content from messages and displaying this in the message window. This lets you see what the message is about without actually having to see what the message is about, if you get my drift. And if you decide you need to see the message in all its decorated splendor, you simply click a button, and Mailsmith passes the message to your default web browser. Mailsmith 2.1 integrates beautifully with Safari in OS X v10.3 (Panther).

I can't help noticing that BBEdit 7.1 now offers HTML preview right inside the app. Is something like this in Mailsmith's future? I do not have any inside knowledge, but I doubt it. It's not hard to switch to a real browser, and you would need to do this anyway if the HTML message being rendered contains clickable links to other web pages. And in any case, Mailsmith was obviously designed by and for people who believe that e-mail should be plain text.

HTML aside, Mailsmith displays photos and even movies fine, not inline, but right in the program, via integration with QuickTime.

Text Editing Heaven

I remember that, when I first saw Mailsmith version 1.0, I thought it was little more than BBEdit with POP and SMTP support tacked on. Even then, that was both unfair, and unobservant. But ironically, while I have come to appreciate how deep Mailsmith's feature set truly is, I've also decided that Mailsmith's text-handling tools are among its very strongest features. This is an e-mail client for users who write a lot.


Figure 2. Mailsmith's Text menu, showing the array of text-editing options. Look familiar? It's identical to BBEdit's Text menu.

When I have to use another mail client, whether it's Apple's OS X Mail, or Eudora, the web mail app on .Mac or something else, the thing I miss the most about Mailsmith is the rich set of compositional options it provides. Heck, I miss these tools even when I'm working in my favorite word processor, Mellel. In addition to the options shown in Figure 2, Mailsmith provides multiple clipboards, unlimited undos (and redos), commands that let you insert a list of a folder's contents, or a file path. Mailsmith makes it easy to define, and use stationery in your correspondence, ditto for signatures.

Best of all, Mailsmith gives you the same powerful glossary feature that BBEdit has. For starters, the glossary feature lets you store, retrieve, and insert bits of reusable text. I use glossaries to store a lot of the things I need to say over and over again in my correspondence with clients: instructions on updating solutions, downloading files from our server, etc.. But, Mailsmith glossaries can go beyond inserting static text through the use of "placeholders." Some placeholders are simply variables that will be replaced by the current date, time, or username. Some placeholders let you manipulate text. For example, I use this glossary with the #SELECT# placeholder to put angled brackets around a selected URL:

<#SELECT#>

I select the URL, then type option-command-U. (That's the keyboard shortcut I've defined for this glossary). Finally, some placeholders can actually trigger calculations. The "#SCRIPT scriptname#" placeholder that runs the script named as a parameter when the glossary is processed. And the "#SYSTEM command#" placeholder lets you send Unix commands to your default shell when the glossary is processed! The SCRIPT and SYSTEM placeholders must return text values, or values that can be coerced to text; the value returned is inserted into the message where the placeholder was originally.

I'm going to pass quickly over one of Mailsmith's most powerful text-processing features, namely, its find-and-replace feature, which, like the same feature in BBEdit, gives you all the power of regular expressions (grep). I use grep in BBEdit fairly often to massage large sets of raw data. I have found that I don't use it very often in Mailsmith.

By the way, Mailsmith provides tools for manipulating text in incoming messages as well. Ever get a message that's been forwarded two or three times and has gotten horribly misformatted? You can't save edits to incoming mail, but you can clean up formatting disasters in two seconds to make messages easier to read. Get mail lists in digest format? Mailsmith 2 will now extract and display the individual messages for you, and you don't need to use a plug-in. And while some might criticize Mailsmith's user interface as austere, those of us who love the program see the same thing, but regard it as a virtue. I prefer to describe it as uncluttered, and elegant. It's a great environment for reading. There's something grown-up about it. By contrast, when I crank up Mail, I always feel like I'm in the Dr. Seuss section of the library.

Message Management

Those who write a lot of e-mail tend to get a lot in return. Mailsmith helps you manage your mail store with power, intelligence, and efficiency. There are scores of nice features to the user interface that make a difference here. Mailsmith gives you a couple different ways to view your mail (either using a unified three-pane browser, or using a separate window for every mailbox). Contextual menus provide access to most of the commands that can be applied to a message selected in a list. Messages can be moved "manually" from one mailbox to another entirely from the keyboard. But, the three keys to controlling your messages in Mailsmith are filters, advanced queries, and its built-in support for Michael Tsai's SpamSieve.

Since I've written about Mailsmith's filters at length elsewhere, I'll restrict myself here to the executive summary: Mailsmith's filtering options are without equal. Mailsmith filters can have as many criteria as you like, and the criteria can be as simple, or as sophisticated, as you like--almost anything is possible, from finding messages from your mother, to grep pattern matching. Filters can also have multiple actions, such as applying a label to a message, moving the message to a folder, sending an automatic reply, or running an AppleScript script. And, since filters can be attached not just to the incoming mailbox, but to any mailbox, they can be triggered automatically whenever a message is moved, something not possible in other programs. My sense is that the designers of Apple's OS X Mail believe that users are not going to bother with filters; that's why filters have been stuck away in the preferences dialog. In Mailsmith, however, filters are front and center. In fact, there are three quite distinct ways to define filters, all ready to hand.

Mailsmith's simple query command is great for finding messages in the current mailbox from senders whose name include "Bob". But the advanced query command can find almost anything. Actually, the advanced query dialog is nearly identical to the criterion part of the filter-definition dialog, but you may find yourself using different aspects of the dialog in queries than you use in filters. I don't have any filters that test for dates, but I query on dates fairly often. The advanced query feature has two significant limitations. You cannot tell Mailsmith to search within multiple, non-nested mailboxes (something you can do in Eudora). And, advanced queries cannot be saved.

I used to filter incoming messages very aggressively as soon as they arrived, and Mailsmith 2 will filter messages into appropriate mailboxes, then open mailboxes that have new mail. But nowadays I let incoming messages sit in the incoming mailbox, so I can read them all in one place. If I need to find a thread, I use the advanced query dialog (or a script) to do so. When I'm done reading, I apply filters manually. I let filters automatically delete list messages that I haven't marked for keeping. I used to have lots of individualized mailboxes with limited numbers of messages. Now I find it easier to deal with fewer, fatter mailboxes. The change in my M.O. reflects the fact that the advanced query command has become a routine part of my interaction with the application.

Finally, of course, there's the headache of spam. Apple Mail has a powerful spam filtering feature built-in. Most other OS X e-mail clients can use Michael Tsai's SpamSieve scripts to achieve a very similar degree of success. The great thing about SpamSieve is that you train it yourself, and you control every aspect of its operation. And SpamSieve, like Mailsmith, is brilliantly integrated with OS X. You can, for example, use your Address Book as a white list. The smart developers at Bare Bones, recognizing that SpamSieve was a winner, decided that the best thing they could do was provide native support for it in Mailsmith, so that is what they did. This gives Mailsmith the advantage over the non-Apple competition, because SpamSieve doesn't need scripts to work in Mailsmith, and also because it can find, and remove spam before any filtering is done on your messages. SpamSieve has the ugliest icon in my Dock, but doggone it, it is effective. It catches close to 100% of my spam, with just one false positive in the last six months.

Finally, Applescript

Like BBEdit, Mailsmith provides deep, and extensive support for AppleScript. You want control? AppleScript gives it to you. You can, in essence, create your own meta-app with AppleScript to make Mailsmith jump through hoops.

Mailsmith is both recordable, and attachable. Recordability works great sometimes. I wanted to write a little script to select text from the insertion point to the end of the sentence. I turned "Record" on in the Scripts menu, opened the Find definition dialog, enabled grep, and typed in a simple regex that finds the next period or other common sentence terminator. Executed the find, then stopped recording. Here's what was generated:

tell application "Mailsmith"
   activate
   find "[\\.\\!\\;\\?\\r]" searching in text 1 of message window 1 options 
   {search mode:grep, starting at top:false, wrap around:false, backwards:false, 
   case sensitive:false, match words:false, extend selection:true} with selecting match
end tell

Worked perfectly. Note the use of two backslash characters. The second "\" escapes the reserved character that follows it ("." and the others), and is required by Mailsmith. The first "\"escapes the second, and is required by AppleScript.

Now, recording does not always work this well, but many of the kinds of things I personally want to do with AppleScript are child's play. Here, for example, is my "quit" script, triggered when I type Command-Q. (Yes, I've reassigned the keyboard shortcut to this script.)

tell application "SpamSieve"
   activate
   quit
end tell
tell application "Mailsmith"
   activate
   quit
end tell

By the time you read this review, Bare Bones may have fixed the bug that makes it currently impossible to attach a script to the Quit command in the Mailsmith menu. When that bug is fixed, I'll get rid of the second part of the script above, and attach this script to the quit command directly. Then it will be run regardless of whether I type Command-Q or invoke the quit command from the menu.

I mentioned above that you can't save advanced queries; you can, however, script them. AppleScript is a great way to fill in the rare gaps in Mailsmith's feature set. Here, for example, is a script I picked up from another user, and adapted just a bit. The script finds messages that have the same subject as a selected message.

tell application "Mailsmith"
   try
      set message_list to selection as list
      set the_message to item 1 of message_list
      set the_container to container of the_message
      set the_subject to subject of the_message
      if the_subject starts with "Re: " then
         set the_count to count characters of the_subject
         set the_subject to characters 5 thru the_count -
            of the_subject as text
      end if
      set the_name to "Thread: " & the_subject as text
      make new mail list window with data every message -
         of the_container whose subject contains the_subject -
         with properties {name:the_name}
   end try
end tell

This script compensates for Mailsmith's lack of a true threading feature. By comparison, Apple's OS X Mail does have a nifty threading feature, but it hardly compensates for the many serious limitations in Mail's support for AppleScript.

If you are already an AppleScript adept, you are going to love what you can do with Mailsmith. And if you're not? Well, neither am I. But as I suggested above, there's a great deal you can do with very simple scripts, and many more complicated scripts can be borrowed. And, Mailsmith may inspire you to learn more. Matt Neuberg's new book on AppleScript is my nightly reading these days. My hope is someday soon to write an AppleScript that will not only get my mail, and read it for me, but draft and send thoughtful replies as well. I really need to get away from the computer a bit, maybe walk the dog.

System Requirements and Purchasing Information

Mailsmith 2.1 requires Mac OS X version 10.1.5 or higher; OS X version 10.2.6 or later is strongly recommended. (Integration with the OS X Address Book requires 10.2 or later.) You can read more about Mailsmith's features and download a fully-functioning thirty-day demo from Bare Bones's web site:

http://www.barebones.com/products/mailsmith/index.shtml

Mailsmith 2.1 costs $79 if purchased as a new product directly from Bare Bones. Upgrade and cross-grade pricing is also available.

SpamSieve is shipped with Mailsmith but separately licensed. You can more information here:

http://www.c-command.com/spamsieve/

The latest version of SpamSieve as of this writing was 2.1.1.

References

In 2002, I wrote three articles on Mailsmith for TidBits, a review of Mailsmith 1.5 (http://www.tidbits.com/tb-issues/TidBITS-638.html), and a pair of articles on distributed filtering (http://db.tidbits.com/getbits.acgi?tbser=1227). I say a lot in those earlier articles that is still pertinent to Mailsmith, and which I didn't want to repeat here. I recommend the earlier review in particular. The articles on distributed filtering later metamorphosed into chapter 9 of the Mailsmith 2.0 user manual.

Bare Bones has a web page intended to list AppleScript scripts for use with Mailsmith, here:

http://www.barebones.com/support/mailsmith/script_library.shtml

As of this writing, only two scripts are listed. Many more scripts can be found here:

http://www.mailsmith.org/scripts/

The Mailsmith Talk list, sponsored by Bare Bones, is frequented by AppleScript mavens, and they're generous in sharing their knowledge. The threading script used as an example above was adapted from scripts shared on the Mailsmith Talk list.

Matt Neuberg's new book is AppleScript: The Definitive Guide (O'Reilly, 2004). Matt hit a homerun with his earlier book on RealBasic; he's hit another home run with this one. As it happens, Matt reviewed Mailsmith 2.0 for TidBits (http://db.tidbits.com/getbits.acgi?tbart=07289). I recommend his review, which takes a quite different tack from this one. It is entitled, "True Confessions of a Mailsmith Switcher."


William Porter, Ph.D., a former professor of Classics and Honors at the University of Houston, now spends most of his time doing e-mail, or building databases. He is the owner of Polytrope, LLC, an independent database development firm in Dallas, Texas. He has written for MacTech in the past about 4D, and FileMaker Pro. He reviewed Mailsmith 1.5 in 2002 for TidBits, and later wrote the chapter on filtering in the Mailsmith 2.0 user manual. You can reach him at wp@polytrope.com.

 
AAPL
$116.47
Apple Inc.
+0.16
MSFT
$47.98
Microsoft Corpora
-0.72
GOOG
$537.50
Google Inc.
+2.67

MacTech Search:
Community Search:

Software Updates via MacUpdate

Cobook 3.0.7 - Intelligent address book....
Cobook Contacts is an intuitive, engaging address book. Solve the problem of contact management with Cobook Contacts and its simple interface and powerful syncing and integration possibilities.... Read more
StatsBar 1.9 - Monitor system processes...
StatsBar gives you a comprehensive and detailed analysis of the following areas of your Mac: CPU usage Memory usage Disk usage Network and bandwidth usage Battery power and health (MacBooks only)... Read more
Cyberduck 4.6 - FTP and SFTP browser. (F...
Cyberduck is a robust FTP/FTP-TLS/SFTP browser for the Mac whose lack of visual clutter and cleverly intuitive features make it easy to use. Support for external editors and system technologies such... Read more
Maya 2015 - Professional 3D modeling and...
Maya is an award-winning software and powerful, integrated 3D modeling, animation, visual effects, and rendering solution. Because Maya is based on an open architecture, all your work can be scripted... Read more
Evernote 6.0.1 - Create searchable notes...
Evernote allows you to easily capture information in any environment using whatever device or platform you find most convenient, and makes this information accessible and searchable at anytime, from... Read more
calibre 2.11 - Complete e-library manage...
Calibre is a complete e-book library manager. Organize your collection, convert your books to multiple formats, and sync with all of your devices. Let Calibre be your multi-tasking digital... Read more
Herald 5.0.1 - Notification plugin for M...
Note: Versions 2.1.3 (for OS X 10.7), 3.0.6 (for OS X 10.8), and 4.0.8 (for OS X 10.9) are no longer supported by the developer. Herald is a notification plugin for Mail.app, Apple's Mac OS X email... Read more
Firetask 3.7 - Innovative task managemen...
Firetask uniquely combines the advantages of classical priority-and-due-date-based task management with GTD. Stay focused and on top of your commitments - Firetask's "Today" view shows all relevant... Read more
TechTool Pro 7.0.6 - Hard drive and syst...
TechTool Pro is now 7, and this is the most advanced version of the acclaimed Macintosh troubleshooting utility created in its 20-year history. Micromat has redeveloped TechTool Pro 7 to be fully 64... Read more
PhotoDesk 3.0.1 - Instagram client for p...
PhotoDesk lets you view, like, comment, and download Instagram pictures/videos! (NO Uploads! / Image Posting! Instagram forbids that! AND you *need* an *existing* Instagram account). But you can do... Read more

Latest Forum Discussions

See All

Ubisoft Gives Everyone Two New Ways to E...
Ubisoft Gives Everyone Two New Ways to Earn In-Game Stuff for Far Cry 4 Posted by Jessica Fisher on November 21st, 2014 [ permalink ] | Read more »
Golfinity – Tips, Tricks, Strategies, an...
Dig this: Would you like to know what we thought of being an infinite golfer? Check out our Golfinity review! Golfinity offers unlimited ways to test your skills at golf. Here are a few ways to make sure your score doesn’t get too high and your... | Read more »
Dark Hearts, The Sequel to Haunting Meli...
Dark Hearts, The Sequel to Haunting Melissa, is Available Now Posted by Jessica Fisher on November 21st, 2014 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
Meowza! Toyze Brings Talking Tom to Life...
Meowza! | Read more »
Square Enix Announces New Tactical RPG f...
Square Enix Announces New Tactical RPG for Mobile, Heavenstrike Rivals. Posted by Jessica Fisher on November 21st, 2014 [ permalink ] With their epic stories and gorgeous graphics, | Read more »
Quest for Revenge (Games)
Quest for Revenge 1.0.0 Device: iOS Universal Category: Games Price: $4.99, Version: 1.0.0 (iTunes) Description: The great Kingdom of the west has fallen. The gods ignore the prayers of the desperate. A dark warlord has extinguished... | Read more »
Threadz is a New Writing Adventure for Y...
Threadz is a New Writing Adventure for You and Your Friends Posted by Jessica Fisher on November 21st, 2014 [ permalink ] In the tradition of round-robin storytelling, | Read more »
SteelSeries Stratus XL Hardware Review
Made by: SteelSeries Price: $59.99 Hardware/iOS Integration Rating: 4 out of 5 stars Usability Rating: 4.5 out of 5 stars Reuse Value Rating: 4.25 out of 5 stars Build Quality Rating: 4.5 out of 5 stars Overall Rating: 4.31 out of 5 stars | Read more »
ACDSee (Photography)
ACDSee 1.0.0 Device: iOS iPhone Category: Photography Price: $1.99, Version: 1.0.0 (iTunes) Description: Capture, perfect, and share your photos with ACDSee. The ACDSee iPhone app combines an innovative camera, a powerful photo... | Read more »
ProTube for YouTube (Entertainment)
ProTube for YouTube 2.0.2 Device: iOS Universal Category: Entertainment Price: $1.99, Version: 2.0.2 (iTunes) Description: ProTube is the ultimate, fully featured YouTube app. With it's highly polished design, ProTube offers ad-free... | Read more »

Price Scanner via MacPrices.net

Save up to $400 with Apple refurbished 2014 1...
The Apple Store has restocked Apple Certified Refurbished 2014 15″ Retina MacBook Pros for up to $400 off the cost of new models. An Apple one-year warranty is included with each model, and shipping... Read more
New 13-inch 1.4GHz MacBook Air on sale for $8...
 Adorama has the 2014 13″ 1.4GHz/128GB MacBook Air on sale for $899.99 including free shipping plus NY & NJ tax only. Their price is $100 off MSRP. B&H Photo has the 13″ 1.4GHz/128GB MacBook... Read more
Apple Expected to Reverse Nine-Month Tablet S...
Apple and Samsung combined accounted for 62 percent of the nearly 36 million branded tablets shipped in 3Q 2014, according to early vendor shipment share estimates from market intelligence firm ABI... Read more
Stratos: 30 Percent of US Smartphone Owners t...
Stratos, Inc., creator of the Bluetooth Connected Card Platform, has announced results from its 2014 Holiday Mobile Payments Survey. The consumer survey found that nearly one out of three (30 percent... Read more
2014 1.4GHz Mac mini on sale for $449, save $...
 B&H Photo has lowered their price on the new 1.4GHz Mac mini to $449.99 including free shipping plus NY tax only. Their price is $50 off MSRP, and it’s the lowest price available for this new... Read more
Check Apple prices on any device with the iTr...
MacPrices is proud to offer readers a free iOS app (iPhones, iPads, & iPod touch) and Android app (Google Play and Amazon App Store) called iTracx, which allows you to glance at today’s lowest... Read more
64GB iPod touch on sale for $249, save $50
Best Buy has the 64GB iPod touch on sale for $249 on their online store for a limited time. Their price is $50 off MSRP. Choose free shipping or free local store pickup (if available). Sale price for... Read more
15″ 2.2GHz Retina MacBook Pro on sale for $17...
 B&H Photo has the 2014 15″ 2.2GHz Retina MacBook Pro on sale for $1799.99 for a limited time. Shipping is free, and B&H charges NY sales tax only. B&H will also include free copies of... Read more
New Logitech AnyAngle Case/Stand Brings Flexi...
Logitec has announced the newest addition to its suite of tablet products — the Logitech AnyAngle. A protective case with an any-angle stand for iPad Air 2 and all iPad mini models, AnyAngle is the... Read more
Notebook PC Shipments Rise Year-Over-Year as...
According to preliminary results from the upcoming DisplaySearch Quarterly Mobile PC Shipment and Forecast Report, the global notebook PC market grew 10 percent year-over-year in Q3’14 to 49.4... Read more

Jobs Board

*Apple* Solutions Consultant (ASC)- Retail S...
**Job Summary** The ASC is an Apple employee who serves as an Apple brand ambassador and influencer in a Reseller's store. The ASC's role is to grow Apple Read more
Project Manager, *Apple* Financial Services...
**Job Summary** Apple Financial Services (AFS) offers consumers, businesses and educational institutions ways to finance Apple purchases. We work with national and Read more
*Apple* Store Leader Program - College Gradu...
Job Description: Job Summary As an Apple Store Leader Program agent, you can continue your education as you major in the art of leadership at the Apple Store. You'll Read more
*Apple* Retail - Multiple Positions (US) - A...
Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, you're also the Read more
Senior Event Manager, *Apple* Retail Market...
…This senior level position is responsible for leading and imagining the Apple Retail Team's global event strategy. Delivering an overarching brand story; in-store, Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.