Tuesday, October 16, 2007

Mac OS X Leopard (10.5), just another cat in the zoo?

Just ten days away from the release of Mac OS X Leopard and already you can pre-order your copy of the operating system for only $129. But is Leopard the next Tiger or just another cat in the zoo?
The Good:
Leopard does bring out some neat and wonderful changes to the Macintosh OS. Among those:
  • Standardized layout across all Apple applications (no more brush metal).
  • Quick look, offers a quick and easy look at various documents and files without actually opening the files. Handy for quick 'looking' at pdf documents and such.
  • The changes to the Finder are actually incredibly useful, recent searches appear in the list (if you want them to). You'll also have a list of other computers (PC or Macs which are sharing files on your network). Coverflow for any files and applications inside of the finder (its not really that useful but it looks pretty nifty if you have lots of cool looking icons.
  • Time Machine: All I have to say is FINALLY. Most Mac users have been manually backing up their files, using 3rd party solutions, or just not backing up at all. Time Machine is truly an innovation in its approach to backing up. I've played around with it enough to say that I love the way it works, though in the WWDC seed it was somewhat glitchy. I'm sure users will find that Time Machine fits every aspect of their backup and event restore needs.
  • The Mail application has also been revamped. Which is good for those of us that don't choose to use entourage to get email. I've not really played around with it that much, but from the few moments I did get to use it, it seemed to work very nice.
  • Spaces... It's a wonderful, useful thing. But haven't almost ALL *nix systems already brought this out to their users? Curious as to why Apple decided to do it now. 
The Bad...
Already Leopard has received dozens of criticisms. Primarily the menu bar and dock. As most already know the menu bar is semi-transparent and supposedly "adapts" to your desktop image. As of the Leopard WWDC07 seed there is no way of controlling this level of transparency from the OS itself. People have been complaining that items in the menu bar are hard to see/read. It will be interesting to see if Apple has provided any way to control this aspect of Leopard. The dock is also different and semi-3d... It also has a reflective surface so that if you were to drag a window through it it would be mirrored in the dock. Nothing useful there, but I imagine its pinging the GPU quite a bit to do all of its magic.
While I attended WWDC07 a Google engineer seriously expressed his views about something new to Leopard. Evidently whenever you download an executable file, package, or disk imagine Leopard will ask you if you are sure you want to run this. Now keep in mind that the OS will only ask you once and you can even turn this feature off... But doesn't this sound remotely familiar with another operating system? *cough* Vista *cough* I don't think its that bad of an idea. As Macs have become more and more popular the users experience level tends to vary even wider now from very experiences to 'how do I right click...' This honestly can pose a problem to any application developer and I understand, not necessarily agree, what Apple is trying to accomplish. Who knows, after the engineer went crazy may they changed it. 

Review from a developers point of view...
Xcode 3.0 is amazing. Its coding structure and debugging features couldn't be more useful, and to my knowledge it boasts one of the only inline debugger yet. With Xcode 3.0 comes Objective-C 2.0. Objective-C in general has had a rocky life despite being a wonderful object oriented language. In my opinion it boasts far more ease of use than its sister languages C++ and C# which have both been tainted by Microsoft. Objective-C 2.0 boasts some incredibly useful aspects namely protocols and properties. Though protocols and properties existed in Objective-C already they are brought to the fore front in 2.0. Properties allow you to create boiler plate code without going through and manually coding all you method getters and setters. Incredibly useful if you don't plan on doing anything special with these methods, but even then you can override the properties and code some yourself as well as use the property define ones.
I could go into much more detail but from an interest of security and the hush hush nature of WWDC and Leopard I will leave it all at that. I wouldn't want to loose my membership after all.

Thanks!
Happy coding, or playing around with Leopard in 10 days.

No comments: