Yesterday, IBM (NYSE:IBM) announced what it called the "next phase of its road map to bring Swift to the Cloud." This will allow developers of iOS apps using Apple's (NASDAQ:AAPL) Swift programming language to develop web-based apps and services using Open Swift. This is a major step forward in better integrating iOS apps with enterprise cloud services, and will help advance Apple's presence in the enterprise.
Source: Network World
Closing the Gap
It was only a few weeks ago that I pointed out that Apple had an opportunity to provide more enterprise cloud services to its developers. Apple currently provides for a number of its cloud services to be built into iOS apps, such as iCloud file storage, but doesn't afford developers the most important form of enterprise cloud service.
This is server-side programming, which allows the creation of the so-called dynamic web sites such as Seeking Alpha. Server-side programming can also provide useful services within apps such as offloading calculations. Online role-playing games make extensive use of server-side programming combined with a client side (app) front end for the user interface and graphics display.
I also mentioned in passing that Apple could use its Swift programming language as the basis for server-side programming. IBM had already created the IBM Swift Sandbox as a demonstration of server-side programming using Open Swift, an open source version of Swift.
Swift Sandbox was an intriguing demo, but just a demo, and there wasn't a cloud service available that could run Swift code. With the IBM announcement, that all changes. IBM is making Swift available as a language option for its Bluemix and IBM Cloud services.
Not interested in using Big Blue's cloud services? Not a problem. IBM has made available as open source the Kitura web server that will run Swift apps. Anyone can download and install it on Mac OS X or Linux, if you're into fun things like setting up servers.
Moving Out Rapidly
IBM is clearly trying to leverage its interest and expertise in Swift in the iOS developer community to market its cloud services. The Apple/IBM partnership has understood the value of optimizing iOS apps with a combination of client and server-side programming. Using Swift as the common language for both sides of the programming equation helps to lower the barrier to achieving the ideal combination of both.
But it doesn't eliminate the barrier. This is where my vision of Apple's opportunity in enterprise cloud services somewhat collides with the reality of the Apple/IBM partnership. My vision for AAPL is that developers would have all the programming tools needed for both the client app and server-side programming integrated into a single development environment - Xcode. Xcode is what Apple developers use now for developing apps for any Apple device. Xcode would set up a virtual server (or make use of Mac OS X server) for local testing, and then when the developer was ready, everything would be uploaded to Apple, as iOS apps are now.
AAPL would host the server-side programs on its own cloud infrastructure, charging developers a fee for the service. The company already does this now for the CloudKit data base services it makes available to developers.
IBM taking the lead in implementing Swift-based server-side programming in its cloud services makes a lot of sense. Clearly, IBM is the senior partner here. But the process is far from frictionless or seamless. Developers have to first develop their client apps in Xcode as usual, then move to a separate set of tools for server-side programming for Bluemix or Kitura.
Sure, there's some overlap. A developer can still use Xcode for basic code editing, but the code still has to get uploaded and run on a separate server. Furthermore, Open Swift and Swift for iOS are not exactly one and the same. Numerous APIs that are needed in iOS have been stripped out of Open Swift. In addition to language differences, the key Open Swift tools (compiler, debugger) are all command line based.
Division of Labor
IBM's role was something that probably got decided early in the partnership. Not only does it leave something to be desired by developers, but also it leaves something to be desired by Apple. Developers are being steered into IBM's cloud services, depriving Apple of the revenue it could otherwise receive.
This may be something AAPL deliberately sacrificed in order to partner with IBM and advance the long-term strategic goal of expanding enterprise presence. Let's hope that the terms of the partnership do not preclude Apple providing server-side programming to its developers indefinitely.
Certainly, Apple has been moving in that direction. In 2014, AAPL first introduced CloudKit that allows developers to set up and administer databases on its servers through a separate administrative console. iOS apps can then interact with the database set up by the developer. No server side programming per se.
Apple could deploy a server-side programming option to Swift code developers as soon as this year's WWDC, assuming it isn't precluded by the IBM partnership. Integration within Xcode would be a boon to developers and greatly accelerate the use of cloud services within iOS apps. Apple could even give developers the option of choosing a non-Apple cloud services provider, such as IBM.
Right now, it isn't clear whether the IBM partnership is going to accelerate Apple's move into the enterprise cloud services or hinder it. After WWDC in June, we'll probably have a better idea of where this can go.
The current move to implement Swift in Bluemix could be something of a joint experiment, or it may constitute a long-term strategic thrust. Either way, Apple benefits through greater enterprise presence, but I consider AAPL offering developers Xcode integration to be where this ultimately needs to go. And it will go, with or without IBM, just because it represents the best approach. I remain long Apple and recommend it as a buy.
Disclosure: I am/we are long AAPL.
I wrote this article myself, and it expresses my own opinions. I am not receiving compensation for it (other than from Seeking Alpha). I have no business relationship with any company whose stock is mentioned in this article.