Thoughts on Swift going open-source
Swift going open-source today is for sure exciting news, but we need to temper our expectations for what that means for the language. For sure it’s better to see an open-source Swift than a closed-source one, but merely being open-source isn’t a panacea for Swift.
Lest you think I’m just being a pessimist, Objective-C is open-source for decades, yet the only people using it to build real apps are building them on Apple-owned platforms. Despite the language’s merit, it’s risky to build your software or your own framework with a language whose roadmap is entirely dictated by another company. This is why many incredibly popular frameworks are built on languages that aren’t primarily associated with a particular company’s platform (for instance, this is why you don’t often see OS X apps written with Mono, or Windows apps written in Objective-C.
Outsiders could now theoretically contribute to an open-source Swift, but that’s almost certainly not going to happen. Typically in the past Apple has worked on open-source work in secret, then released it all to the public once it was unveiled. It’s not super collaborative. Apple might accept a pull request here or there, but they’ll be working on it alone.
The most sure benefit I can see with an open-source Swift is security. With public source code, any security researcher can dive right into Swift’s source code and the source code of the compiler and find potential vectors for attack in a way that’s a lot more difficult if you don’t have source access.
Swift is an incredibly interesting language, though. It lets developers write very high-level code with the performance of a very low-level language. It also gets the head start of being the lingua franca of the army of iOS and OS X developers in the wild. At the same time, there are many other new languages coming into the fray, many of which are offering similar things (high performance, easy concurrency, safety, all with high-level abstractions). If Swift can successfully gain some independent frameworks and communities to grow around them, it just might stand a chance.