ArticleS. MicahMartin.
ApplesAndTigers [add child]

Apples and Tigers


Tiger Tech Talk, Chicago. This was a free, one day, conference held by Apple. The intent was to give developers a preview of the new features and technologies in OS X Tiger, their next os which will be released in the first half of 2005. Wow! A year ago I transitioned from Windows XP to OS X Panther. I fell in love almost immediately. Panther is superior to Windows XP is almost every way. Better graphics, better usability, and much much much more stable. A little over a year later, Tiger will be released. Apple has made progress in leaps and bounds with Tiger.

Perhaps the most impressive new feature will be the Dashboard. Dashboard is invoked by a pressing F12 or some key, at which point a hidden screen will appear on top of the desktop via Expose. If you haven't seen Expose before, find someone with mac and have them show you. It's incredible. Once Dashboard appears there are a bunch of widget that you can run. Dashboard widgets are mini applications, written in HTML, that remain on the dashboard and tie into various applications or resources. The idea being that you can keep these mini apps running out of sight on Dashboard and make them appear only when you need them. Perhaps the most impressive dashboard is opening a new widget that will literally splash onto your screen. The presenter had to show us this mesmerizing ripple effect several times before we were satisfied.

Add Style, Organization, and Efficiency to your Applications Aqua User Interface. This talk made it clear the me that Apple has really thought through it's interface development and had guidelines for 3rd parties to follow when developing for OS X. There were 5 main ingredients:
  1. Planning
    • The major point here was that the best applications often have the smallest feature set. Similar to the Single Responsibility Principle, every application should have one responsibility or solve one problem and avoid the clutter that comes from overloading feature sets. Planning also includes getting users involved so they can help figure out what the problem and solution are exactly.
  2. First Impression
    • In essence, everything should work the first time and the user should be off and running without a hitch.
    • Simple download
    • Simple Installation
    • Easy to use interface.
  3. Fundamentals
    • One menu bar
    • Windows that behave like Mac windows should
    • ...
  4. Design for Aqua
    • The presenter used a nice analogy. Imagine packing all the interface components (button, text-fields, text, ...) into a sawed-off shotgun and shooting it toward the screen. This is a fair representation of many existing application.
    • Components should be grouped together by function
    • The menu bar should have the right menus in the right order
  5. High Performance
    • self explanatory

X Code is indeed an advanced IDE. It supports multiple languages, unique WYSYWIG GUI editing, distributed building, dynamic UML generation, ... This was a very popular session and there were lots of people with questions including me. "When will X Code support practices such as Unit Testing and Refactoring?" I asked. Matt Formica, the presenter, responded by saying that he had been to several meetings on the topic. However, there are no immediate plans to include these agile practices in X Code. I pressed on to see what Apple's general feeling was on Unit Testing and Refactoring. Matt told me that a few developers practice agile practices because they like to but that's it. I was disappointed that Apple doesn't take this more seriously. X Code's lack of Unit Testing integration and automated Refactoring is a HUGE shortcoming compared to IDEA and Eclipse modern IDE.

The last session I attended was about Core Image. This is an image processing library that allows developers to perform over 80 filters to images or applications. The details of the filters was over my head but the concept was very sweet. Core Image will allow developers to spice up their application, by adding elegant transitions and eye catching animations. OS X is full of these graphical pleasantries and it truly improves the user experience.

According to the most recent news, Microsoft intends to release Longhorn in the second half of 2006. This date has been pushed back a couple times so far. By the time Longhorn does come out Apple may already have Tiger's successor out. Longhorn had better be like jarred lightning to keep up with OS X.