Designed solely for the purpose of server-side Swift development, Perfect is a Web application server for OS X and Linux created by a lesser known Canadian startup historically connected to Apple, PerfectlySoft.
Apple introduced Swift at WWDC 2014, making it open source in December 2015. The language has enjoyed “meteoric” growth since launch, and has also been adopted for enterprise applications by IBM.
The number of jobs requesting Swift in the last full year versus the previous full year climbed by 600 percent. Apple’s decision to announce Swift Playgrounds will stimulate even more interest when it ships in fall.
What is Perfect?
So what is Perfect?In simple terms it is a framework for developing Web and other REST services in Swift. It provides a framework and an HTTP/HTTPS server for creating such services for both client-facing and server-side applications.
To learn a little more about Perfect’s significance and history I spoke with the company CEO, Sean Stephens, at WWDC. “The history of Perfect is anchored in the history of the Lasso programming language,” he began. In the late 1980s, Claris was formed as an Apple spinoff to provide business users with the software they needed. Those products included the likes of MacPaint, MacDraw, and FileMaker. Claris acquired the rights to Lasso, a still very popular programming language that maintains its own passionate developer community and in which Stephens has extensive experience. He is also CEO of LassoSoft.
“Perfect is a Swift-based development framework. Without the Swift programming language, Perfect would not exist,” he said.
The first version of Perfect appeared in December 2015, ten days before Apple officially declared Swift an open source language.
“When Apple said it would make the Swift programming language open source, an alarm bell went off in my mind,” he said. “Because much of what is Swift is strikingly similar to Lasso, it was easy for CTO Kyle Jessup to begin building the Perfect framework in and for Swift, so developers can use Swift and Perfect together to write server apps.”
He thinks his language matches current developer needs. “There’s a real desire among developers for less fractionalization in programming,” he explains. This is the trend among developers to want development tools to be as easy to use as the applications they develop, and a desire to be able to achieve great results using fewer languages. Perfect lets developers use Swift to build an entire project, including both front- and back-end services, Stephens claims. Developers interested in taking a look at what’s on offer can visit Perfect’s Github repository and explore the company’s clear and extensive resources site.
“Most of the programming languages that are widely used today are a decade old or more such as Java – a proprietary language that does not provide developers with a joyful user experience,” Stephens said.
The implications of Swift on enterprise IT will be highly significant. “The vast majority of applications (especially business applications) require server-side software to pass data back and forth,” he said. “More often than not, most server apps today run on an old proprietary language like Java. Swift has a lot of potential to change that because it's got that Apple pedigree, it’s open source, and developers love using it for building mobile apps for the iPhone and iPad.”
Looking around video chat app, Smirkee might be a nice example of an accessible mobile app built using Perfect and Swift. It uses server side algorithms to identify people’s facial expressions in real time. Perfect 2.0 will ship once Apple introduces Swift 3.0, probably in September.
Move over Java, Perfect’s in town
With Apple rapidly becoming a key player in the evolution of the digital enterprise, and with key partnerships in place to extend its influence in the space, Stephen’s sees good opportunity for Perfect and Swift in enterprise IT. After all, when every enterprise is a digital enterprise, then a cross platform server side open source developmental language can only become more popular.
Google+? If you use social media and happen to be a Google+ user, why not join AppleHolic's Kool Aid Corner community and join the conversation as we pursue the spirit of the New Model Apple?
Got a story? Drop me a line via Twitter or in comments below and let me know. I'd like it if you chose to follow me on Twitter so I can let you know when fresh items are published here first on Computerworld.