How Apple's Open Sourcing of Swift Could Boost Windows
Apple's announcement last week that it has released its Swift programming language to the open source community could help Microsoft accelerate its effort to help developers port their iOS applications to Windows, some experts believe.
In case you missed it, Apple last week announced it has fulfilled its promise to contribute its rapidly growing Swift programming language under the Apache 2 open source license with a runtime library exception for building apps that can run on iOS, Mac OS X, watchOS, tvOS and Linux. The Swift open source code, a compiler, library debugger and package manager are now on GitHub. Apple said the open source move, which includes the launch of Swift.org site consisting of various resources, should allow other providers to incorporate Swift with their own software and port it to other platforms, stated Craig Federighi, Apple's senior vice president of software engineering.
It's possible that one motivation for the move from Apple's standpoint is to extend the appeal of iOS and Macs into enterprises. Not surprisingly, IBM, Apple's key partner in building those platforms into enterprises, was the first to release a Swift sandbox for developers.
"The IBM Swift Sandbox is an interactive Web site that lets you write Swift code and execute it in a server environment -- on top of Linux," wrote John Petitto, a Swift developer working in IBM's Innovation Lab in Austin, Texas on the company's DeveloperWorks blog. "Each sandbox runs on IBM Cloud in a Docker container."
Based on recent reports, it appears Microsoft may be looking to further its efforts to help developers port their iOS apps to the new Universal Windows platform with tooling called Project Islandwood, while potentially sidelining a similar plan to provide a bridge for Android apps known as Project Astoria. The future of Project Astoria is now uncertain at best and possibly on ice, which stoked criticisms last week by former CEO Steve Ballmer. Windows Phones must run Android Apps, Ballmer reportedly argued at last week's Microsoft's shareholder meeting. Besides technical problems and developer rejection of Project Astoria, licensing issues with Google parent Alphabet are contributing to Microsoft's waning interest in supporting Android.
Mark Hibben, an independent iOS developer and Seeking Alpha blogger for technology investors posted another interesting analysis:
Windows 10 and Mac OS X and iOS apps are compiled, unlike Android. Compilation takes the programming language code and converts it into the binary instructions that a computer understands. Once the app is compiled, it's relatively straightforward for the operating system to feed those instructions into the processor. The basic similarities between the app architectures of Windows and iOS makes porting iOS apps much easier to do.
Android has a completely different app architecture in which an Android Run Time (ART) takes high level Java and C++ code and converts it into the binary code the processor understands. Each Android app runs in its own instantiation of ART. If it sounds cumbersome, it is.
Consequently, Hibben suggests Microsoft has determined it no longer needs to offer bridges for both platforms, noting just about any app it wants to make available for Windows exists on iOS. Microsoft may have come to the same conclusion. Almost any app that Microsoft would want on its app store is already available for iOS. By open sourcing Swift, Apple could be trying to motivate Microsoft to build a Swift compiler for Windows.
If Microsoft were to do so, such a move could potentially accelerate the delivery of popular apps that are yet to find their way into the new Windows Store.
Posted by Jeffrey Schwartz on 12/07/2015 at 11:56 AM