Apple's Swift Programming Language Goes Open Source This Fall
The open sourcing of Swift demonstrates Apple's pragmatism, but should not be construed as a broad embrace of openness.
Apple WWDC 2015: 10 Best Moments From The Show
Apple WWDC 2015: 10 Best Moments From The Show (Click image for larger view and slideshow.)
Apple developers who opted to learn the company's Swift programming language last year were rewarded during the company's Worldwide Developers Conference (WWDC) on Monday when Craig Federighi, Apple's SVP of software engineering, announced that Swift 2 will become an open source project this fall.
Federighi said he thinks Swift will be the next big programming language for both applications and systems programming. According to Federighi: "We think Swift should be everywhere ..."
... Like a metastatic cancer? Open source software was once described that way. In 2001, Microsoft CEO Steve Ballmer said: "Linux is a cancer that attaches itself in an intellectual property sense to everything it touches." This was based on his belief that the GPL open source license would afflict Microsoft's Windows business.
Ballmer wasn't entirely wrong. The popularity of Linux as an open source operating system for servers, and later as the foundation of Android, forced Microsoft to reinvent itself. Open source won.
Last year, under CEO Satya Nadella, Microsoft open sourced its .NET framework. This year, the company announced that its tools will allow iOS and Android developers to create Windows 10 builds of their code. And Microsoft has allowed for the possibility of open source Windows. Open source has become the ante in vendor competition for developers.
"There is a war going on for the hearts and minds of developers," said Al Hilwa, program director for software development research at IDC, in a phone interview.
Open-sourcing Swift represents Apple's latest salvo in that war.
By making the Swift compiler and standard library available under an open source license, Apple aims to capitalize on the strong interest developers have already shown in the technology. The more developers opt to write apps in Swift, the more that Apple stands to gain from those apps, and the less the company has to worry about cross-platform development, which limits developer adoption of market-differentiating platform-specific features.
Federighi's mention of "systems programming" during his keynote on Monday means that Apple sees Swift as an alternative to programming languages such as C++, Go, Rust, and Microsoft's rumored M#, and also to general-purpose programming languages such as Python that are popular in schools.
The popularity of Apple's products and the revenue potential of its platforms proved enough to generate interest in Swift when it debuted as a proprietary technology. Usage of Swift surged last year, according to Stephen O'Grady, founder of RedMonk. The programming language currently ranks 14th on Tiobe's index of popular programming technologies, and it's likely to become even more widely used as open source software.
The developers in the audience were ecstatic at Apple's announcement. Software engineer Jeremy Johnstone observed in a Tweet that during his years attending Apple's developer conference, "I've never heard such a huge explosion of joy as when they just announced Swift being open sourced."
"Making something open source immediately broadens its appeal," said Van Baker, an analyst with Gartner, in a phone interview. "Apple got an enormous round of applause [announcing that Swift will be made open source], much more than anything else."
However, Apple's embrace of open source can't yet be fully evaluated. The details of the open source Swift project have yet to be revealed, and those details are important. The terms of Apple's license may not suit everyone. Apple so far has only said, "Swift source code will be released under an OSI-approved permissive license" this fall, and that Swift will be made available for Linux, iOS, and OS X.
The open-sourcing of Swift demonstrates Apple's pragmatism but should not be construed as a broad embrace of openness. Apple's decision to extend its Metal graphics API to OS X shows the company trying to encourage game developers to abandon the OpenGL standard for its proprietary graphics layer.
About the Author
You May Also Like