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.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

DiskCatalogMaker 6.4.12 - Catalog your d...
DiskCatalogMaker is a simple disk management tool which catalogs disks. Simple, light-weight, and fast. Finder-like intuitive look and feel. Super-fast search algorithm. Can compress catalog data... Read more
Macs Fan Control 1.3.0.0 - Monitor and c...
Macs Fan Control allows you to monitor and control almost any aspect of your computer's fans, with support for controlling fan speed, temperature sensors pane, menu-bar icon, and autostart with... Read more
Lyn 1.5.11 - Lightweight image browser a...
Lyn is a lightweight and fast image browser and viewer designed for photographers, graphic artists and Web designers. Featuring an extremely versatile and aesthetically pleasing interface, it... Read more
NeoOffice 2014.11 - Mac-tailored, OpenOf...
NeoOffice is a complete office suite for OS X. With NeoOffice, users can view, edit, and save OpenOffice documents, PDF files, and most Microsoft Word, Excel, and PowerPoint documents. NeoOffice 3.x... Read more
LaunchBar 6.4 - Powerful file/URL/email...
LaunchBar is an award-winning productivity utility that offers an amazingly intuitive and efficient way to search and access any kind of information stored on your computer or on the Web. It provides... Read more
Remotix 3.1.4 - Access all your computer...
Remotix is a fast and powerful application to easily access multiple Macs (and PCs) from your own Mac. Features Complete Apple Screen Sharing support - including Mac OS X login, clipboard... Read more
DesktopLyrics 2.6.6 - Displays current i...
DesktopLyrics is an application that displays the lyrics of the song currently playing in "iTunes" right on your desktop. The lyrics for the song have to be set in iTunes; DesktopLyrics does nothing... Read more
VOX 2.5.1 - Music player that supports m...
VOX is a beautiful music player that supports many filetypes. The beauty is in its simplicity, yet behind the minimal exterior lies a powerful music player with a ton of features and support for all... Read more
NetNewsWire 4.0.0 - RSS and Atom news re...
NetNewsWire is the best way to keep up with the sites and authors you read most regularly. Let NetNewsWire pull down the latest articles, and read them in a distraction-free and Mac-like way. Native... Read more
MacUpdate Desktop 6.0.6 - Search and ins...
MacUpdate Desktop 6 brings seamless 1-click installs and version updates to your Mac. With a free MacUpdate account and MacUpdate Desktop 6, Mac users can now install almost any Mac app on macupdate.... Read more

Biz Builder Delux (Games)
Biz Builder Delux 1.0.0 Device: iOS Universal Category: Games Price: $4.99, Version: 1.0.0 (iTunes) Description: Ah, there's nothing like the rhythmic bustle of a burgeoning business burg... especially when you're the one building it... | Read more »
Auroch Digital is Bringing Back Games Wo...
| Read more »
Carbo - Handwriting in the Digital Age...
Carbo - Handwriting in the Digital Age 1.0 Device: iOS Universal Category: Productivity Price: $3.99, Version: 1.0 (iTunes) Description: | Read more »
Draggy Dead (Games)
Draggy Dead 1.1 Device: iOS Universal Category: Games Price: $.99, Version: 1.1 (iTunes) Description: Ditch your dead end job and take up a rewarding career in Grave Robbing today!Guide the recently deceased to a fun filled life of... | Read more »
Bad Dinos (Games)
Bad Dinos 1.0.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0.0 (iTunes) Description: | Read more »
The Apple Watch isn't Great as a Fi...
| Read more »
Show the World What You See With Stre.am...
Live broadcasting is getting popular on mobile devices, which is why you can now get Stre.am, by Infinite Takes. [Read more] | Read more »
PhotoTime's 2.1 Update Adds Apple W...
The latest PhotoTime update is adding even more functionality to the handy photo organizing app. Yep, including Apple Watch support. [Read more] | Read more »
Oh My Glob! Adventure Time Puzzle Quest...
Finn and Jake are taking over D3 Go!'s popular puzzle game series in the upcoming Adventure Time Puzzle Quest. [Read more] | Read more »
Earthcore: Shattered Elements - Tips, Tr...
At first glance, Earthcore: Shattered Elements seems like a rather simple card-battling game. Once you’re introduced to skills that will change quite a bit. Even more so once you start to acquire hero cards. But it’s not so complicated that we... | Read more »

Price Scanner via MacPrices.net

OtterBox Maximizes Portability, Productivity...
From the kitchen recipe book to the boarsroom presentation, the OtterBox Agility Tablet System turns tablets into one of the most versatile pieces of handheld technology available. Available now, the... Read more
Launch of New Car App Gallery and Open Develo...
Automatic, a company on a mission to bring the power of the Internet into every car, has announced the launch of the Automatic App Gallery, an app store for nearly every car or truck on the road... Read more
Memorial Day Weekend Sale: 13-inch 1.6GHz Mac...
Best Buy has the new 13″ 1.6GHz/128GB MacBook Air on sale for $849 on their online store this weekend. Choose free shipping or free local store pickup (if available). Sale price for online orders... Read more
Memorial Day Weekend Sale: 27-inch 3.5GHz 5K...
Best Buy has the 27″ 3.5GHz 5K iMac on sale for $2099.99 this weekend. Choose free shipping or free local store pickup (if available). Sale price for online orders only, in-store prices may vary.... Read more
Sale! 16GB iPad mini 3 for $349, save $50
B&H Photo has the 16GB iPad mini 3 WiFi on sale for $349 including free shipping plus NY sales tax only. Their price is $50 off MSRP, and it’s the lowest price available for this model. Read more
Price drop on 2014 15-inch Retina MacBook Pro...
B&H Photo has dropped prices on 2014 15″ Retina MacBook Pros by $200. Shipping is free, and B&H charges NY sales tax only: - 15″ 2.2GHz Retina MacBook Pro: $1799.99 save $200 - 15″ 2.5GHz... Read more
With a Mission to Make Mobile Free, Scratch W...
Scratch Wireless, claiming to be the world’s first truly free mobile service, has announced the availability of a new Scratch-enabled Android smartphone, the Coolpad Arise. The smartphone is equipped... Read more
First-Ever Titanium Alloy Curved iPhone 6 Scr...
One of the most common problems with mobile phones is damage to the screens. The slightest drop can cause a dreaded spider web of gashes and cracks in the glass panel surface that can cost $hundreds... Read more
Preorder new 12-inch MacBook, $10 off, save o...
Adorama has new 12″ Retina MacBooks available for preorder for $10 off MSRP including free shipping plus NY & NJ sales tax only. For a limited time, Adorama will include a free Apple USB-C to USB... Read more
Will iOS 9 Finally Bring Productivity Friendl...
Ah, the irony. From its original announcement in 2010, Apple has doggedly insisted that the iPad remain “simple,” thus arbitrarily limiting its considerable potential as a content creation and... Read more

Jobs Board

*Apple* Retail - Multiple Positions (US) - A...
Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, you're also the Read more
Architect / Senior Software Engineer, *Apple...
Changing the world is all in a day039s work at Apple . If you love innovation, here039s your chance to make a career of it. You039ll work hard. But the job comes with Read more
*Apple* Solutions Consultant - Retail Sales...
**Job Summary** As an Apple Solutions Consultant (ASC) you are the link between our customers and our products. Your role is to drive the Apple business in a retail Read more
*Apple* Pay Support Readiness Project Manage...
Changing the world is all in a day039s work at Apple . If you love innovation, here039s your chance to make a career of it. You039ll work hard. But the job comes with Read more
*Apple* Solutions Consultant - Retail Sales...
**Job Summary** As an Apple Solutions Consultant (ASC) you are the link between our customers and our products. Your role is to drive the Apple business in a retail Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.