Apple may not have wowed consumers with the latest software offerings at its annual Worldwide Developers Conference in San Francisco this year. But it unveiled something that could have a much bigger impact than a new version of its iOS mobile software or even a new iPhone: a new programming language.
Called Swift, it’s meant to offer a faster, easier way to build software for Apple’s products than its existing programming language, Objective-C. And so far, developers like what they see, saying it will be especially helpful for inexperienced coders who may have shied away from developing iPhone apps in the past.
Objective-C has a long history at Apple. First conceived in the 1980s as an extension to the C programming language, it was licensed by NeXT Computer—the company Steve Jobs founded after being ousted from Apple in 1985—and used for its operating system. After Apple bought NeXT in 1996 and Jobs returned to Apple, Objective-C was used in Apple’s OS X operating system and, eventually, in the iOS mobile operating system, too.
Yet Objective-C can be complicated and confusing, especially for new programmers, and it is viewed as clunkier than some more modern programming languages. Swift is simpler than Objective-C and allows users to see their code in action as they write it on their computer screens, rather than running it through a compiler before checking it out. But it is also compatible with Objective-C code, which means it will work with apps already in Apple’s App Store. And it’s meant to be used for development of Mac apps, too.
Apple rolled out a beta version of Swift on Monday to members of its developer program. A final version will come out in the fall.
Introducing Swift to the crowd at Apple’s annual developer conference in San Francisco on Monday, Craig Federighi, Apple’s senior vice president of software engineering, said it’s “like Objective-C without the bulk of C.”
Frank Bentley, a principal research associate at Yahoo Labs who studies the future of mobile and teaches mobile programming at MIT, expects Swift will make it a lot easier for his students to get up and running with iOS apps.
Historically, iOS “tends to trip up some students,” he says, with some of its more complex features that relate to things like memory management and bracket notation. When he took a first look at Swift, he saw that those barriers were gone.
Bentley also thinks students will like the ability to automatically debug and try out things like animation while writing code in Swift (something Apple demonstrated on Monday by making a simple game using Swift and Apple’s Xcode).
“This gives kind of a new way to run things interactively—to just try things,” he says. “Then you can change a couple constants around, see how something works differently. It just lets you play around a little more without having to load it on the phone and try something new every time.”
Scherba says Swift is better suited to developing games and apps with 3-dimensional graphics and will generally make coding clearer and more concise than it was with Objective-C.
“You can imagine if [there’s] some strange, archaic written language that has these really long names, it’s going to be a little bit more scary to learn how to read and write that language than something clear and concise, that makes more sense and is more legible,” he says.
However, there could be one perhaps unintended consequence of Swift: if it does bring in many more iOS developers, Scherba says, it could also bring down the premium fetched by current iOS developers, whose skills have been considered a hot commodity.