It could have been a rude awakening for Mac developers Monday morning. Apple CEO Steve Jobs kicked off the company’s annual developer conference by announcing that Mac hardware would start including Intel-built processors in 2006 — meaning that Mac software makers would have to redo their programs if they wanted them to run on the new machines.
But instead of being put off by the announcement of Apple’s imminent switch to Intel chips, developers attending WWDC seemed to take the announcement in stride, with many predicting a smooth transition to new processor.
“I’d heard all the rumors, and I slept pretty well [Sunday] night,” said Rich Siegel, president and CEO of Bare Bones Software. “Even hearing all the rumors, I knew that Apple wasn’t going to undertake anything like this if there wasn’t a way to bring developers along.”
“We’ve been writing Mac software since System 7,” said Panic co-founder Cabel Sasser. “So we no longer fear change.”
Developers could be forgiven if they had some fear of a future involving Pentium-powered Macs. After all, such a transition isn’t as simple as swapping out IBM’s PowerPC processors for chips built by Intel. It requires Apple to rejigger its OS X operating system to work on the new hardware. Likewise, software that runs perfectly fine on a PowerPC chip needs to be altered if it’s to work on a Pentium-based system.
The Work Ahead
During his Monday keynote, Jobs outlined some of the challenges facing Mac developers. Widgets, scripts, and Java-based applications should work on an Intel chip without any changes. But applications built in Cocoa using Apple’s Xcode developer tool will require “a few minor tweaks and a recompile,” Jobs said — a process that could take a few days, according to the Apple CEO. Carbon-based applications written in Xcode will require a few more substantial changes and a recompile, which would take a few weeks according to Jobs’ estimates. Carbon-based applications built with Metrowerks’ CodeWarrior will need to be brought over to XCode and then rebuilt in order for them to run natively on the Intel processor.
“The key message is get to Xcode,” Jobs told developers Monday.
To that end, Apple released a new version of Xcode that lets develops create a “universal binary,” allowing them to build programs that will run natively on both the PowerPC and Intel architectures — a move that many developers found encouraging.
“If you’re using Apple tools and following best practices… you’re going to be in pretty good shape,” Siegel said. “Obviously, it’s too soon to scope the effort required to see what it’s going to be like to bring our product line along, but we’re not expecting any big surprises.”
In a demonstration of Xcode 2.1 during Monday’s keynote, Wolfram Research co-founder Theo Gray described the process of converting his company’s complex Mathematica application to work on in an Intel environment. The conversion required Wolfram engineers to change 20 lines of source code out of millions — a process that Gray said took about two hours.
“It’s pretty good when the biggest problem from your port is to figure out what to do with the rest of your weekend,” Gray told WWDC attendees.
Other developers were anticipating similarly smooth conversions. “I’m willing to bet $100 that I will get it done in 15 minutes,” said Wil Shipley of Delicious Monster, which makes the Delicious Library cataloging software. “I’m actually talking to Apple right now about putting up a page with race times.”
Some developers will not be able to make the same wager as Shipley. Programs that directly address the PowerPC processor, including those that take advantage of the AltiVec vector processing capabilities of the G4 and G5 chips, will need to be more dramatically modified. Elgato Systems’ EyeTV, for example, has a large amount of heavily optimized AltiVec code, so that presents a challenge that other programs don’t necessarily have to face.
“Porting the AltiVec code to Intel’s SSE [the Intel equivalent to AltiVec] can be equivalent to a full rewrite — two different code bases need to be maintained, tested, and qualified,” said Dr. Markus Fest, Elgato’s founder and chief technology officer. Nevertheless, Fest stressed that all Elgato products would run natively on Macs with PowerPC and Intel chips and that he expects a “relatively painless transition for end users and most developers.”
For many AltiVec-heavy programs, Apple is recommending that developers use its Accelerate framework, which provides a layer of abstraction that lets developers take advantage of vector-accelerated tasks without writing code for one specific processor type. The Accelerate framework then addresses whatever processor it’s running on, be it a PowerPC or an Intel-built chip.
Another new technology — dubbed “Rosetta” — is aimed at older apps that won’t be recompiled to run on Intel chips by the time the new hardware is shipping. Described by Jobs as “a dynamic binary translator,” Rosetta allows many applications to run on Intel systems in a way that’s transparent to the end user. During his keynote, Jobs ran unmodified versions of Microsoft Office, Intuit Quicken, and Adobe Photoshop CS 2 on a Power Mac with a 3.6GHz Pentium 4 chip without any noticeable performance lags. According to the New York Times, Rosetta is based on the QuickTransit technology developed by Transitive Corporation.
For a company like MYOB, which uses CodeWarrior to build its AccountEdge finance software, Rosetta technology would allow its software to run in an Intel environment while it mulls its long-term development plans. “Short-term, [Apple’s move to Intel chips] is not an issue, as it looks like Rosetta is going to give us something to move forward with,” product manager Tom Nash said.
Past Transitions
Indeed, many developers felt well-prepared for the work ahead, especially compared to previous transitions. “To have an operating system, compiler, and hardware to develop and test with this at this stage of the process is very impressive,” said Jim Matthews of Fetch Softworks. By comparison, when the Mac platform moved from 680×0-family processors to the PowerPC, Matthews added, many developers didn’t have access to the new hardware until it was in the hands of consumers.
The move to Intel’s architecture also doesn’t figure to involve as much work as the transition from the classic Mac OS to OS X. “That was a more significant effort,” said Peggy Chang, Intuit’s senior product manager for QuickBooks for the Mac. “I’m not hearing our developers talk about anything close to that this time. This is more about recompiling and debugging.”
Wolfram’s Gray agrees that there’s no comparison to the OS X transition. “This is just a recompile,” he said. Whereas ten to 15 years ago, porting to another platform was a big deal, Gray believes the Intel port will be a lot easier “because Apple showed good, disciplined cross-platform engineering.”
And that should translate to a smooth transition for Mac users, developers say “For customers, moving to Intel hardware should be easier than moving to a new OS release,” Fetch Softworks’ Matthews said.
Farewell to PowerPC
All the same, some developers are still getting used to the idea of another processor supplanting the PowerPC that’s driven Macs for a decade. “At this rate, I fully expect to enjoy my new Intel-based Mac while drinking a cold glass of refreshing PepsiCoke,” Panic’s Sasser joked.
“Although we think the PowerPC is a more elegantly designed CPU, we’re certainly not married to it,” Sasser added. “If it brings down the cost of Macs, increases their speed, or both, then that’s great. Certainly, the average user is not going to care, as long as their applications run.”
Delicious Monster’s Shipley welcomes the arrival of Intel chips. “I’m a huge fan of the PowerPC architecture… But nobody’s putting the kind of resources they need to get it fast. Intel invests billions of dollars a year,” he said. “We need to be with the company that’s going to be investing several billion dollars a year and making the fastest chips available. What we’re going to get is really freaking fast Macintoshes.”
Like many Mac users hearing about Apple’s new partnership with Intel, developers have some unanswered questions. Some wonder what the chips will mean for performance. Others are interested to hear about Apple’s plans for PowerPC-based systems in the interim. And still others are wondering whether OS X will start appearing on non-Apple hardware. But developers figure those answers will become apparent soon enough.
“There are some fringey technical things which I am still a little bit curious about, which I’m sure we’ll get a better read on as [WWDC] progresses,” Siegel of Bare Bones Software said. “I expect we’ll come back this week with lots of questions answered.
Also contributing to this report were Mathew Honan, Jackie Dove, Jim Dalrymple, Jonathan Seff, Jennifer Berger, James Galbraith, and Jason Snell.