What do Mac developers want from Apple?

In advance of Apple's annual Worldwide Developers Conference, several longtime Mac developers share hopes, suggestions and even concerns for their primary technology provider. The discussion spans iPhone, graphics acceleration and Apple's strategy for technology licensing.

Revealed: The mysteries of Apple’s logo and other high-tech brands
In advance of Apple's annual Worldwide Developers Conference, several longtime Mac developers share hopes, suggestions and even concerns for their primary technology provider. The discussion spans iPhone, graphics acceleration and Apple's strategy for technology licensing.

Of course, the talk across the industry is about the iPhone. Still, that buzz worries some software developers, such as one developer in the professional graphics market (who declined attribution).

"As a software developer for Mac OS X, I just hope that Apple doesn’t start cutting back there in favor of the iPhone. Now, the iPhone is great, don’t get me wrong, but as far as I know, the Mac still makes more money," he said.

Remember that a year ago Apple said that the testing of the iPhone required it to shift engineering and QA resources from the Mac OS X team away from Leopard testing and bug fixing. This resulted in a delay to the introduction of the long-awaited OS.

"Life often presents tradeoffs, and in this case we're sure we've made the right ones," Apple executives said at the time.

From all we can see from the WWDC schedule, the iPhone and its SDK and tools will be the big target for developers this year. While there's a strong pitch to IT managers over Mac integration, some of that discussion appears to have a strong iPhone bent.

A developer of tools for the professional video effects market, Sean Safreed, co-founder of Red Giant Software, also said he wasn't " particularly interested in the iPhone or the iPhone features from a developer perspective."

However, he was concerned about the performance of Mac graphics and how Apple can help developers to improve its performance.

"My Apple wish list really focuses on helping developers exploit the power of mutli-core and multi-GPU options to increase processing speed, a commodity that is always in short supply for video users. CPUs are only going to get more cores-even laptops will have four CPU cores in 2009 and likely the graphics card will have mutliple cores as well. Users can already load up to 4 GPUs into one machine but few games can even exploit this power fully."

"Today there is array of APIs and methods for addressing multi-threading and GPUs but NONE are completely cross-platform and cross-GPU."

"For example, you could use OpenGL to talk to both Nvidia and ATI GPUs in a Mac and Windows but what if you want a multi-core path for Macbooks? Well, then you have to recode your OpenGL functions to work with the CPU and this can require a radically different approach that is time-consuming and difficult to update.

"Nvidia is pushing CUDA which is an interesting approach to multi-GPU exploitation but this is still in beta for Mac and out of sync with the Windows version. They have promised a CPU-fallback as well but then this leaves out other graphic processors from ATI and Intel."

"There is the RapidMind system but it is extremely expensive to license and not well suited to some graphic tasks and has a lot of coding overhead.

"Unfortunately, Apple Core Image has had little evolution since it shipped and it again is OS specific."

"My ideal would be for Apple to push a coalition that includes Adobe, Intel, AMD/ATI, Microsoft and Nvidia to support a single API for addressing all the disparate processing capabilities inside a machine, whether you are on Apple OS or Microsoft OS."

"The closest thing today to that ideal is Adobe's Pixel Blender API that has been announced as part of the next Flash playback engine. This API looks very similar to OpenGL and can exploit multi-core CPUs as well as the GPU (in the creative suite apps). Unfortunately, this API ONLY runs under Flash which imposes a lot of constraints and overhead on performance intensive apps."

What Safreed wants is a solution that solves the problem of exploiting mutliple cores and GPUs on multiple operating systems — and at the same time, a solution that doesn't force developers (and customers) to pick winners (and losers) in the graphics card and CPU race.

"Users would find a vast array of tools that exploit the power of their machines, rather than a handful of specialty apps that are out today. Make it cheap or free and the world will beat a path to your door," he said.

Of course, system manufacturers and OS vendors see GPU technology and video performance as a value for customers making buying decisions. As the industry becomes more commoditized, such performance metrics, hardware and software architectures may become more important for customers, pushing against Safreed's reasonable request for common APIs.

A Web tools developer I know, who is looking at iPhone programming, still pointed at Apple's apparent reluctance to license its hardware technologies.

"Let's have a third-party licensable MagSafe connector since it's a genius bit of design. It would massively improve life if more devices used it," he said.

This may be more of the same thinking. Technologies such as MagSafe are a solid value and differentiator for Apple products. There's more reason than ever to keep it in-house. Are you clear on the differences between Apple's MagSafe adapters? Check out the support document.