TweetFollow Us on Twitter

The Difference
Volume Number:10
Issue Number:6
Column Tag:Inside Information

The Difference That Makes A Difference

What’s valuable depends on your perspective. Will that be changing soon?

By Chris Espinosa, Apple Computer, Inc., MacTech Magazine Regular Contributing Author

Nick Negroponte of the MIT Media Lab defines information as “a difference that makes a difference.” On Usenet, you hear about this as the “signal-to-noise ratio,” that is, the kernels of useful wheat in the general chaff of questions, misinformations, rumors, and flames. In most other circumstances, though, information in digital form makes a real difference - and this is most true in developing software.

Every bit of your application makes a difference. At the basic level, each bit has to be a non-buggy bit (as opposed to a buggy bit) or your software will crash, and that could make a big difference to its users and purchasers. A little above that, the bits of your program are carefully compiled to run on a specific family of microprocessor; the system calls in your program are linked to a specific operating system API; and the logical assumptions are based on the performance and capabilities of a certain range of hardware platforms. All of these choices are encoded into your finished product, and they make a substantial difference in who will buy and use it.

Above that, of course, are the features and functions of your product itself. This is supposedly what yo’'re good at, and ostensibly what your customers are paying money for. Of all the investments you make in research and development, the information you learn about how to make your program solve the customers’ problem should be most worthwhile to you and to them, shouldn’t it?

But as you’re probably aware, your choice of platform often makes more of a difference to your customers than your choice of features or technologies. Everybody in the Mac business has been told more than once that ‘your product is great, but if it doesn’t run on IBMs I can’t use it.’ And you spend much of your time and money simply porting your application from one system version to the next, or from one hardware platform to another - and recently, from one microprocessor to another. The differences are significant, because compiler technology, hardware evolution, and new system APIs are not simple things; but at least they make a difference to your customers.

What will happen if these differences stop making a difference? What if, for example, you didn’t have to worry about what instruction set to compile for? In a small way it’s true now - if your application is not speed-sensitive, you can just compile it for the 68K, and the emulator on the Power Macintosh products will automatically run your software on the Power PC-based models. And while emulation is admittedly slower than running native, you could be seeing more processor independence in the future. Apple’s Advanced Technology Group and others in the industry have been researching processor-independent object file formats. With these, you compile and link your application into intermediate code which you ship to customers; then either the Installer or the segment loader transliterates the code into the correct instruction set for each machine. The hardware vendor can use different CPUs, the users get native performance, and you can ship one program that runs on many brands.

And with processors continuing to get faster and cheaper, and multiprocessor designs starting to become available, emulators might be the big win after all. If you can add more processors to run your emulators faster, you might be able to achieve near-native performance through emulation. Just think: if you want to run Windows applications faster, just keep adding more Power PC chips to your Macintosh until it’s fast enough!

Independence from hardware architecture is getting easier as well. In modern OS architectures, a “hardware abstraction layer” separates the OS kernel from the particular hardware implementation, making it easier to port the OS to different hardware platforms. And developers of new platforms are trying an alternative to the defacto standards of Macintosh (controlled by Apple) and the Intel-based PC architecture (controlled by nobody in particular). The result is a set of “reference platforms,” hardware designs that assure certain capabilities in different vendors’ designs. The last major reference platform, ACE, was built around Windows NT and the MIPS chip; the current hot platform, PReP, is based on the Power PC chip and AIX. If reference platforms dominate the landscape in the future, it should be easier to write code that runs indifferently on multiple platforms.

Finally, APIs are crossing the hardware boundaries. Both OpenDoc and OLE 2.0 are cross-platform, though they don’t isolate you from other toolbox calls. Hosting layers like XVT and Novell Appware Foundation add surprisingly little overhead to run the same API on different underlying toolboxes. And future operating systems like Taligent’s Pink system and IBM’s Workplace Shell are meant to host multiple “personalities” on one OS kernel, so your choice of hardware vendor doesn’t dictate your choice of API, and therefore applications software.

So five years from now, our old landmarks - the instruction set, the hardware architecture, and the API - may be rotting and fallen. Will it be a total mix-and-match world? Will people be running Mac code in an emulator box on Windows NT on a Compaq Power PC platform, or x86 OLE objects wrappered by OpenDoc running on OS/2 on a Macintosh with a Cyrix chip emulating the Pentium in microcode?

I say: yes and no. I expect that the majority of successful commercial software will be (more or less) compiled and built for a specific class of microprocessor, hardware platform, and API. It’ll just be easier that way, both technically and in the marketplace. Though the technology might be able to jump through hoops, the channels and customers don’t get over such fundamental taboos as “incompatibility” overnight.

But while compatibility may remain a litmus test, it’ll no longer be a barrier. In-house developers will be able to compile something once and deploy it on their Mac, Windows, and UNIX machines, letting adapters and emulators take care of details. Or you could take a product that’s successful on one platform, test-market it in the emulator community on other platforms and, if it sells, then invest in the native port to increase your market share and competitiveness. Or (for extra credit) you could find clever ways to bridge the various environments, perhaps hooking up TAPI in SoftWindows to the Geoport or AV capabilities on a Power Macintosh.

Old differences die hard. Even after technology has made them irrelevant, the distinctions of architecture will color peoples’ thinking. Most conventional development will probably remain the way it’s always been, but there may be some interesting new opportunities when the gaps between platforms are bridged over.

 
AAPL
$566.15
Apple Inc.
-4.41
GOOG
$600.81
Google Inc.
-8.65
MSFT
$28.94
Microsoft Corpora
-0.18
MacNews Search:
Community Search:
view counter

view counter
view counter
view counter
view counter
view counter
view counter
view counter
view counter

Facebook Releases New Camera App To Stre...
While not a replacement for Instagram, Facebook Camera is a good first step in this month+ old union of the two companies. Released today, Facebook camera looks to streamline the viewing of photos and the uploading of them. The app allows you to apply simple filters to images, tag people, upload multiple images at once, and post a note about the... | Read more »
Missile Monkey Review
Missile Monkey Review By Lisa Caplan on May 24th, 2012 Our Rating: :: FLYING LOWUniversal App - Designed for iPhone and iPad Missile Monkey is a must miss   Developer: Munsey Clan Games Price: $0.99 Version Reviewed: 1.0 Device Reviewed On: iPad 2 | Read more »
Boomlings Review
Boomlings Review By Lisa Caplan on May 24th, 2012 Our Rating: :: FUN FREEBIEUniversal App - Designed for iPhone and iPad Boomlings is a traditional matching puzzle game, with some explosive twists   | Read more »
Dave vs Cave Review
Dave vs Cave Review By Jason Wadsworth on May 24th, 2012 Our Rating: :: WATCH FOR FALLING ROCKSUniversal App - Designed for iPhone and iPad Kid falls down hole, kid gets trapped in cave, kid fights evil rock monsters to escape.   Developer: Origame64 | Read more »
Python Pocket Power: Python Bytes 3 – Mo...
Python fans are certain to welcome the best bits from the penultimate season of the BBC sketch comedy in a new iPhone app: Python Bytes 3 – Monty Python Series 3. If you have a flair for the obvious, you’ll correctly assume this is third in a series of apps that feature the best skits from the cult-classic, Monty Python’s Flying Circus. | Read more »
Slingshot Racing Review
Slingshot Racing Review By Carter Dotson on May 24th, 2012 Our Rating: :: SWING ME AROUNDUniversal App - Designed for iPhone and iPad Slingshot Racing is a racing game where players must race around the courses by grappling and swinging around the slippery courses.   | Read more »
Go to the Cannes Film Festival with The...
For the movie industry the Cannes Film Festival is one of the most important events in which to preview films and watch the stars. The 65th annual festival is happening in France right now, but if you weren’t able to secure an invite or make the journey, hope is not lost. Film buffs and star gazers can keep tabs on the festival with The Hoolywood... | Read more »
David Haye’s Knockout Review
David Haye’s Knockout Review By Jennifer Allen on May 24th, 2012 Our Rating: :: PUNCHING FUNUniversal App - Designed for iPhone and iPad A simple yet satisfying cartoon-style boxing game.   | Read more »
WhosHere Updates, Adds Video Chat for Fr...
A mobile social discovery app, WhosHere, updated yesterday, adding free video chat to the universal iOS build. The app allows users connect with an new emphasis on keeping random hook-ups safe(ish). The developers say “the biggest problem in meeting people online today [is] knowing that the person you are speaking to is exactly who they say they... | Read more »
Are You Smarter Than A 5th Grader? &...
Are You Smarter Than A 5th Grader? & Friends Free Review By Jennifer Allen on May 24th, 2012 Our Rating: :: LACKINGUniversal App - Designed for iPhone and iPad An underwhelming use of a great franchise.   | Read more »
All contents are Copyright 1984-2010 by Xplain Corporation. All rights reserved. Theme designed by Icreon.