Apple's Swift language -- the company's heir to Objective-C for iOS and MacOS development -- is beginning to present opportunities on the server side of the IT equation. Companies ranging from startup PerfectlySoft to stalwart IBM are seizing on Swift's potential to bring speed, safety, and ease to web application developers.
Introduced in June 2014 and open sourced in December of last year, Swift is a modern language that combines the depth and power of C with the ease-of-use of interpreted languages like Python. As a result, Swift has been quick to draw interest from non-Apple and cross-platform developers.
"I've been writing software for a long time, and it sometimes feels like a new hit language is being hyped every week," said developer Sven Schmidt, who has participated in the Vapor project, a web framework for Swift that runs on Ubuntu, OS X, and iOS. "But Swift is different in that it's backed by a big, big player and ticks a lot of boxes for what people expect from a modern language these days."
Vapor, a modular, server-side framework for developing of cloud-based apps, leverages the type safety in Swift and offers pattern matching to simplify routing. A co-developer of the framework, Logan Wright, sees Swift's potential on the server because it already accommodates iOS developers and can enable code-sharing among different platforms.
"We've already seen an explosion of projects pushing out to the cloud and I think we're just beginning to tap Swift's potential," Wright said. "A few weeks back we saw some indicators of potential Windows support in the code base. As much as there is to do in the cloud, we're seeing potential for an extremely versatile cross-platform community."
PerfectlySoft is tapping Swift for its open source Perfect application server and framework for building Web applications and REST services. Perfect runs on Linux or OS X and is geared to mobile apps requiring back-end server connections. The goal, according to PerfectlySoft CEO Sean Stephens, was to "make an easy on-ramp," to allow developers to leverage Swift on the server without having to be a "genius programmer."
With Swift, development teams could build entire applications for both the client and server. "If you really want to build a team that's able to communicate effectively, you want everybody to be able to use the same language," Stephens said.
Schmidt concurs. "There is a big benefit to being able to write software with the same language on client and server. Components can be shared, obviously, but especially for smaller companies or teams, it means there's less need for specialization." But Swift's move to servers will not happen overnight, Schmidt noted, because it currently lacks the ecosystem of libraries and extensions available to other languages.
Sign up for CIO Asia eNewsletters.