Deep OS X Tiger Review

I can't remember the last time I got tired from reading a review but reading this extraordinarily detailed review about Tiger, the latest version of OS X being released today, did. It started off fluffy enough but went on and on, diving into the guts about details only developers would care about. Being a developer, I enjoyed every page after page.

I did cringe though when I got to the page about the extended file attributes (aka file metadata) support because it mentioned HFS+. You see, I have painful memories of implementing HFS on top of *shudder* DOS for a client long time ago (can anyone member Dayna Communications?) during my Macintosh days. Files under HFS had two parts, data fork and resource fork. DOS files don't have resource fork which means, to allow Mac users to drag and drop Mac files into DOS diskettes, I had to come up with elaborate schemes to simulate it. The product got rave reviews but I regretted having taken on the contract afterward because the experience was definitely not fun.

Anyway, Apple apparently did the same in OS X to support non-HFS volumes by saving the resource fork under files with '._' prefix. Same file is used to store extended file attributes in non-HFS+ format volumes.

I am not sure if non developers will survive through the middle part of the long review, but I definitely recommended it for developers. Having read it, I pity the pre-Tiger OS X developers. They must have felt like eskimos living on drifting icebergs. Tiger seems like solid ground, however.

Sparklines and Canvas Tag

Since I posted early last year about Edward Tufte's Sparklines, the paper was updated and some implementations have sprung up (via Sam Ruby):

I think the most important aspect of sparkline is the seamless inlining of graphics with text, so sparkline graphics should be resized automatically when the size of the surrounding text changes. I am not sure Mozilla/Safari's canvas tag can do this yet but I hope it does before the canvas tag becomes a de-facto standard.

Online Criminals Near You

With new techniques being used to shore up weaknesses of passwords, online criminals will be forced to focus more on the quality of their targets instead of quantity.

For example, some techniques protects against logins from unauthorized locations which forces the hacker to either find ways around fool the system or relocate near their victims. Since such systems are designed to make workarounds expensive if not impossible, net result is the same: online criminials will have to expend more time and resources per target.

Hardware tokens? Criminals know where they can get it from, don't they? Yup. You. It's the same for biometrics. You are the key and very few of us have bodyguards.

What all this means is that I think we'll see more personalized and/or physical attacks in the future. And we'll see more attention paid to physical security like alarms, stronger door locks and mailboxes.

Advanced Graphics in Eclipse 3.1

One great feature I overlooked in Eclipse 3.1 feature list is Java2D-like advanced graphics support (antialiased lines, curves, alpha blending, and transformation). It's implemented using Cairo Graphics on Linux/Unix and GDI+ on Windows. I don't know what they are using on OS X. Quartz backend for Cairo is being worked on so they may use that or build their own.

I don't know why they are going with GDI+ though. GDI+ is slow, buggy, lacks features, and not present in older platforms. I've heard that Longhorn graphics API won't use GDI+ so why GDI+ when they could have used Cairo's own Win32 backend or, even better, an antigrain-based backend?

Anyway, anyone know if GEF 3.1 will use the advanced graphics?

Desktop Fusion

Woo. Desktop fusion is here, minus the vision of portable fusion power generator. Instead of generating power, that is create more power than the amount put into it, it generates neutrons. Neutron guns? I'll buy one of those.

AdSearch 2.0

I recently revisited the AdSearch idea and had these thoughts to add.

Users search for ads for products and services using related categories, names, brands, or phrases.  Results can be ranked in several ways, click-through normalized over time for example.

Ads are mostly crawled in the beginning but increasing number of ads are submitted directly by advertisers.  This means more metadata can be collected from advertisers and noise can be reduced by rating advertisers.  One of the obvious uses of rich metadata is price comparison.

Advertiser rating is also reflected on result ranking so ads submitted by a well-behaved advertiser will rank higher than abusers or recently joined advertiser.  This will create a new market for advertising service companies leveraging their rating level.

A new market can be created by connecting product reviewers with merchants.  This service works liket this:

  1. Product reviewer creates a reviewer account and submits a review.
  2. Appropriate merchants are notified of the review and signs up as a provider of the reviewed product.
  3. The reviewer buys ads on AdSearch to attract potential buyers with their reviews.
  4. When the buyer gets to the review page through ads or review panels, they will see a list of merchants carrying the reviewed product and prices they are available at.
  5. Clicking on the buy button leads to either the merchant's checkout page or the AdSearch purchase service.
  6. Reviewer is rewarded with either a cut of the sales or a listing fee from merchants.

Reviewers and merchants are also rated to prevent abuse.

That's it for now.  I particularly like the way reviewers become advertisers and the way more metadata can be collected over time.