General purpose Swift
IBM’s efforts will make Swift more of a general-purpose language. Big Blue has found areas where Swift has to be developed further for it to be used as a systems language – specifically support for concurrency in Web servers. Yet, these are areas where IBM has skilled developers and the company has tasked those teams to add that capability to the Swift language. Because it’s a modern, compiled language where developers don’t have to keep track of memory management so much -- because it is handled in the language itself -- that makes it easier to build apps that are safe from memory leaks and other memory-related problems.
“We know that it can then be very valuable as a systems language,” Buckellew said. “Like C and C++, it can run very fast and that makes it advantageous for a lot of workloads.”
“Swift is a well-designed language with a ‘best of’ feel to it, gathering features from many languages that have become trendy,” Al Hilwa, an analyst at IDC, told eWEEK. “I think in the end how it is evolved and where it is driven by Apple or the ecosystem that forms around it will determine just how deeply it will penetrate the enterprise. Having it in open source begins the process of ecosystem building. One thing that has helped Java is that it has a strong system of governance which the ecosystem participates in. The other thing that has helped Java is the reach from micro devices to servers. We have to wait and see if Swift makes it into the server world. It is definitely early days for Swift.”
Buckellew stressed that IBM sees multi-tier development opportunities for Swift in cloud-based back ends where organizations will have the advantage of a front-end developer that is using Swift to build their front end. The developer will be able to either build new or reuse someone else’s code for the logic for the server-side capabilities of mobile applications. This can now be in the same language. There are also potential benefits around developer tool chains and other aspects of the development process that come with having a single language that can span both tiers.
“This initiative can take Swift beyond being just a client-side development language for iOS, into a development language spanning all tiers,” Diaz said. “The move will make Swift available to a much broader audience of application developers. IBM has committed to help drive it forward and already created more than 55 innovative applications. As our developers immersed themselves, they told us that Swift enabled them to move and innovate at a much faster pace.”
John Ponzo, IBM Fellow and vice president and CTO of MobileFirst at IBM, in a blog post said IBM plans to create new packages for accessing IBM Cloud services, including IBM Watson, IBM Data Services, and Analytics. “This will help streamline developers’ use of Swift for IBM’s cloud services,” he said. “To do this, we are working to provide a wide range of the most common packages developers will need for server-side development. In the future, we will also begin extending our MobileFirst of iOS solution apps to include end-to-end Swift packages that can be used to customize our market-leading solutions.”
Ponzo also raved about the elegance of coding in Swift.
“Our engineering teams like that the applications developed in Swift require less code— a lot less code,” he said. “And they love the reduction in defects they see when they use the language in conjunction with Xcode. From the developer tool perspective, the integrated Xcode environment is proving excellent in helping to optimize our applications with instruments support. The language syntax improves code legibility, which increases our sharing of code snippets, meaning we can do more in less time.”