What does the open sourcing of Swift mean for me?

Apple announced they’re making Swift open source!

At Apple’s worldwide developer conference (WWDC) they announced that their Swift programming language will be open sourced. It came as big news for most of us, as in many ways it had seemed like a particularly unlikely step. Craig Federighi’s announcement was brief and whilst it received a big reaction from the audience, he didn’t really unpack it in a meaningful way. Many of the mainstream news roundups of the event don’t even mention this change, yet it could well have a big impact on the way we develop. For those of us in the world of app development then, the move leaves us asking what it will mean for us in practical terms.

What we’d like it to mean

The really desirable advantage that we, as an app development firm would want to see from an open source Swift would be a newfound portability of code between platforms. Perhaps this seems like a big ask, but it would be a real game changer and Apple’s got all the right cards in hand. At the moment the only real options for portable code are C and C++, both of which are far from being developer favourites. Swift is definitely a prefered option for iOS development at Ekreative; easy to pick up, safe and with great features, it’s the go to choice for many of our programmers when creating reliable, high quality apps. If it became possible to port that code for use on Android devices as well, then this announcement could well have a big impact on the way we do business. The key moment here though will be the extent to which the rest of the Swift environment is also made open source, libraries, SDK’s and API’s. For portability to become a real option, it will take more than just the language itself to become available, so until we get to see the details on launch day and beyond, we’re not going to let our hopes get too high.

What Apple says it means

In Apple’s Swift developer blog they try to assuage our fears a little, by expanding on the announcement and laying out a few of the details and the implications that they want us to take away. In amongst the vague language about “dramatically improving software” and “the opportunities an open source Swift creates for our industry” we’re told that the code will be released under a permissive OSI approved license and that community contributions will be accepted and encouraged. These certainly sound promising. If they can live up to their words then this amounts to a real commitment to opening Swift up and though we’ve seen in other Apple open source projects a prohibitively high bar for entry into collaboration, still we’re encouraged by a lot of the language connected with the Swift announcement, which appears to be pushing for wide adoption and use across a range of platforms.

What we suspect it actually means

Whilst we might have reservations about the game changing nature of Swift’s “open source” status, we’re still hopeful that it will bring some meaningful change. For a start, if given real access to contribute, for example to the compiler (which the announcement mentions specifically as being included) this could really help clean up the developer experience, currently one of Swift’s weaker sides. With lots of bugs and constant crashing, there’s plenty of room for improvement and rooting out bugs is one of open source’s noted strengths, something Apple is likely counting on during the months immediately following the codes release. Again, this may depend on how much of the infrastructure surrounding Swift gets open sourced, but as an obvious benefit to the open sourcing process, we’re hopeful that this is one way that Apple will make sure open source Swift will make our lives that little bit easier.