Swift programming language evolution powered by developer community
When the Swift programming language was initially released as a beta in 2014, there was a general understanding among developers that nobody outside Apple was an expert. This meant there was not yet a prevailing status quo. Developers didn’t have to push against cultural inertia when putting forward their good ideas on how things could be done. Everyone was excited to contribute their knowledge and to learn from others, and together, a strong community formed from the best of a diverse group of new experts.
As the adoption of Swift grew, developers learned together. Many shared their knowledge with others as they progressed and started to provide resources and tutorials online. Community Swift Meetup groups were created to discuss best practices and provide a place for people to pair-program. Newsletters and mailing lists were started to share knowledge and interesting projects. Eventually, Swift conferences such as the Swift Summit and AltConf were organized as the community grew and developers became more certain and passionate about Swift.
The developer community applauded Apple’s decision in late 2015 to give S wift an open source license. Swift developers now have a GitHub repository that allows them to directly make proposals for changes and enhancements to the Swift language. This has contributed enormous value to Swift. There have been many bugs and issues that have been fixed by pull requests from non-Apple employees, and the language has evolved through community contributions and input. Within the current community of Swift developers, intelligent solutions to problems have emerged from the best people, who have taken the best ideas from other languages and adapted them in a “Swifty” style.
Today, to the best of the community’s knowledge, Apple is not the company with the largest Swift codebase in production. Although it continues to manage and champion the Swift language project, other companies have also invested heavily in the language, rewriting their apps in Swift to capitalize on the technical advantages. This means there are many types of production environment issues Apple doesn’t have firsthand experience with that teams from other companies have both experienced and solved. An example of this is using Swift in a very high-scale environment, which provides many unique challenges. Uber engineers gave a talk on this at the Swift Summit, where approximately 150 mobile engineers worked on its Swift rewrite.
Swift on the server and Linux
With the open sourcing of the language, the prospect of Swift being used on non-Apple platforms has suddenly become real. Projects were released with the aim of allowing Swift to be used on Linux and Swift on the server. Even though some of these are hobby projects, some companies have invested heavily in supporting this new ecosystem for Swift programming outside of Apple. Swift has gone from being a closed project at Apple to an open-source language the community can help shape and evolve on many development platforms. With the support of the wider community, the evolution of Swift is looking very positive as users get ideas from a wide range of technical perspectives.
In the two and a half years since the beta version was released, Swift programming has come a long way due to the community and the dedicated engineers at Apple. It will be exciting to see what’s in store for Swift in the future as it spreads. The language now has the potential to grow beyond what anyone could have expected when the language was just a small project at Apple, and it’s exciting to see what the community will do with it next.