View Single Post

Old 09-13-2008, 12:43 PM   #7
Northy
Junior Member
 
Join Date: Aug 2008
Location: Cornwall/Deutschland/Österreich
Posts: 344
Thanks: 0
Thanked 0 Times in 0 Posts
Northy is on a distinguished road
Default

Myths of Snow Leopard 4: Exchange is the Only New Feature! June 20th, 2008

Myths of Snow Leopard 4: Exchange is the Only New Feature!

Well, to start, we can just look at the Snow Leopard and Snow Leopard Server pages on Apple.com, and see what is publicly listed as features...

It helps Apple keep its work under the radar for a bit longer, and simplifies current marketing. Apple it seems has several reasons to promote the idea of "no new features", whilst promising overall improvements in how Mac OS X works under the hood (in a kind of "don't tell me how it works, just show it works" way).

Apple has the opportunity to improve its code through:
- code refactoring (Wiki definition: Code refactoring is the process of changing a computer program's code to make it amenable to change, improve its readability, or simplify its structure, while preserving its existing functionality. - Martin Fowler has apparently written in depth about refactoring)
- Beyond code refactoring in it's strictest sense, optimising the code
- adding new features

From the sounds of Quicktime X, Apple will be doing a mix of things. It has the opportunity to make 64-bit versions of apps, optimise the apps, add new features, and also pare the app size down).

(Aside in the article: Bill Gates was a big fan of "new" rather than "better" as can be seen by quotes from him- in an interview with Focus magazine in 1995, he explained why his company cared more about adding new features than refactoring code to fix bugs:

“The reason we come up with new versions is not to fix bugs,” Gates said. “It’s absolutely not. It’s the stupidest reason to buy a new version I ever heard. When we do a new version we put in lots of new things that people are asking for. And so, in no sense, is stability a reason to move to a new version. It’s never a reason.”

Ouch. New features were easier to sell than the concept of good software, so Microsoft took the low road. Touting features, keeping schtum about any lack of improvements under the hood.

Consumers perception is part of the problem - Consumers happily pay for hardware, but hate having to buy software. "They are well aware that the hardware they buy will soon be replaced by a faster model with more RAM at perhaps a lower price, but when it comes to software, every new release that “only” fixes bugs is regarded as something that “should have been” offered for free." It is also typically much harder to track down and eliminate bugs than to simply tack on more new features.

It is possible to sell quality to the consumer though, and in part, Apple can do this by not relying on OS sales for money, and not bothering too much about piracy of the OS - as Apple has a tight reign on the hardware. Apple will be able to inform users as to how Snow Leopard will be a better quality product, and show the doubting Thomas's the proof of the pudding - they'll be able to go into a store and see the improvements, and hear about them in reviews.

Apple has the luxury of doing such things, as it isn’t facing an immediate need to out-feature Windows Vista. The company has announced that Snow Leopard will involve a lot of code refactoring to tighten up performance, improve reliability, and slim down disk consumption. The only new feature, according to Apple, will be new support for push messaging with Exchange Server. That isn’t exactly accurate however.

In some respects, many of the new features in Snow Leopard can be regarded as a form of code refactoring because they will only improve how things work, rather than adding extensive new features. But there will also be a lot of new features that are just plain new.

Apple will be hard at work driving home the point that the "just works" feeling on the iPhones and iPods also extends to the experience when using Macs running OS X 10.5/6.

Why would someone want an upgrade, for something that works reasonably well? Well, with Snow Leopard, the new OS will be able to potentially show a decent performance benefit solely from the OS change, without needing any hardware updates, whilst also showing the performance bar of it's hardware as being raised significantly. Makes a change from people actually paying more, to "downgrade" to XP...

Through iLife 09 and other applications, Apple can bring in many more features which will link in well with iPods, iPhones, and Macs.


Myths of Snow Leopard 5: No Carbon! June 24th, 2008

Is Apple killing Carbon so all apps will be Cocoa only? Not exactly.


Carbon and Cocoa both compete and complement. Should it be ripped out, or slowly faded out? By shifting Carbon out of the frame, Apple can deliver a cohesive, consistent, and potentially more stable user experience while focusing its development efforts around a single strategy.

Currently, Carbon apps include iTunes, Final Cut Pro, Photoshop, and huge assortment of other important apps. Many apps are a mix of both. Whilst pure Cocoa apps can offer a more consistent user interface using less code, and benefit from other features - i.e. represent better technology, the transition from Carbon to Cocoa isn't an overnight one.


Cocoa is the modern incarnation of the object-oriented NeXTSTEP Objective-C (Obj-C) frameworks. Carbon is the extension of the classic Mac OS Toolbox; it was developed by Apple in order to pacify the complaints of existing Mac OS software authors during the development of Mac OS X after they rejected the move to Rhapsody, which would have essentially shifted Mac development to Cocoa in one great leap forward.

It not being feasible to convince developers circa 1997 to write all their software over largely from scratch using a new approach and tools that demanded a significant investment in mastering new concepts. Also, NeXTSTEP’s desktop development tools and frameworks had been sitting in cold storage from around 1994 through 1997 as NeXT worked to repurpose its core technologies into developing web server applications in WebObjects - so developers would have had a hard time using those tools from a cold start.

Apple needed to overhaul and modernize NeXT’s frameworks just as it needed to bring NEXTSTEP’s core OS foundation up to date with the latest software technology that had been delivered by the BSD development community over that period.

Existing Mac developers obligated Apple to spend much of its efforts getting Carbon up to speed first before prioritizing updates to the new Cocoa frameworks. A large amount of functional overlap between the two APIs resulted in a hybrid model where most of the shared foundational core of Mac OS X was written in Carbon-like C/C++ libraries, and exposed as modern, object-oriented APIs using a layer of Cocoa frosting.

In addition to software that had originated on the classic Mac OS and had been ported to native Carbon libraries, Mac OS X can also run POSIX software developed for Unix or Linux. Some of that software has an X Window System user interface (aka X11), which looks rather ugly and out of place on the Mac desktop, but can run just as it does on Linux thanks to integrated X11 support.

Unix software without any GUI can be given one using Cocoa. That includes huge libraries of highly regarded code from OpenGL routines to the GNU FFmpeg media decoding libraries to BSD firewalls. When Apple developed Safari, it used an off-the-shelf, open source HTML rendering engine from KDE to produce WebKit, which it then wrapped in a Cocoa interface to deliver Safari as a Mac application. That modular design has enabled third parties to port WebKit to Windows, Linux, and even Nokia’s smartphones.
__________________
George W. Bush ~ It's clearly a budget. It's got a lot of numbers in it.
Northy is offline