Pinterest Stumbleupon Whatsapp
Ads by Google

A year ago, Apple released the Swift programming language How Does Apple's New Programming Language Affect Me? How Does Apple's New Programming Language Affect Me? From the get-go, developers knew Apple's new Swift was going to be big. But why should you care? Read More to the public. Not long after that, Microsoft open sourced the .NET Framework A GNU Beginning For Microsoft: What An Open Source .NET Framework Means For The Rest Of Us A GNU Beginning For Microsoft: What An Open Source .NET Framework Means For The Rest Of Us Microsoft just released a significant part of its code under a permissive open source license. This move breaks with years of tradition. But why and what does it mean for you? Read More . And almost as if in rebuttal, Apple just announced that Swift too will be made open source WWDC '15: Everything You Need to Know About Apple's Event in One Place WWDC '15: Everything You Need to Know About Apple's Event in One Place This year's WWDC didn't disappoint, with new versions of iOS, OS X and watchOS announced among a range of new features, surprise developments and updates to old technology. Read More . Plot twist after plot twist.

Here are two companies that sit at the top of the technology food chain, both known for their proprietary schemes and designs. To see them officially adopt the open source philosophy What Is Open Source Software? [MakeUseOf Explains] What Is Open Source Software? [MakeUseOf Explains] "Open source" is a term that’s thrown around a lot these days. You may know that certain things are open source, like Linux and Android, but do you know what it entails? What is open... Read More , at least to some degree, feels extremely out of character for both, but it’s ultimately good news for all of us.

It’s nothing short of monumental, marking a huge milestone in the evolution of the programming industry. Even if you aren’t a programmer yourself, these developments will impact you. Want to know why and how? Keep reading.

What the Heck Is Swift?

Have you ever wanted to create an iOS or OS X app So You Want To Make iPhone Apps? 6 Projects For Beginners So You Want To Make iPhone Apps? 6 Projects For Beginners Why not try learning Swift, the language that will let you create iPhone and iPad apps? Read More ? You wouldn’t be the first, considering how widespread the Apple ecosystem is and how profitable those users can be when it comes to app purchases.

The one big problem, until recently, was that Apple apps had to be coded in Objective C, a not-so-modern programming language that lacks the relative user-friendliness of alternatives like Java, C#, and Python. Swift aims to address that, and more.

Ads by Google

Long story short: Not only can Swift get more done in fewer lines of code than Objective C, the language itself is less prone to bugs and errors. For app developers, this means a drastic reduction in overall development time and stress:

Lyft asked one of its engineers to begin experimenting with Swift about six months ago. It soon decided to rewrite its entire app with the language and expects to complete the process in July.

The ride-hailing app coded in Swift will have only about one-fifth the number of lines of code as its previous iteration, and subsequent updates will also take less time.

“Going from months to days is pretty nice,” Morelli says. “That’s the main benefit.”

HT: Bloomberg

Seriously, these benefits are not being exaggerated. One of the largest programming communities on the web, StackOverflow, ran a survey for developers and found that Swift was the most-loved programming language of 2015. For a language that’s barely a year old, that’s a massive accomplishment.

As of now, Apple supports both Objective C and Swift for app development.

Give it a few more years, however, and it seems a guarantee that Apple will completely drop Objective C and shift everyone over to Swift. When that happens, Objective C may finally be put to rest for good.

Open Source: What It Means For Swift

According to the official Swift 2.0 release, here’s what Apple means by “open source”:

So what’s the big deal here? The fact that Swift is now open source doesn’t mean anything on its own. It’s the implications that we care about, which is why our attention should be trained on bullet point number four — the compiler is now open source.

Here’s the thing about Apple: up until now, if you wanted to develop apps for iOS or OSX, you had to develop on an Apple system. You could write code on Windows or Linux, but you wouldn’t be able to compile that code unless you were on a compatible system. Compiling is the process of translating written code into an executable that computers understand.

apple-swift-open-source-example

Some people have tried to get around this by reverse engineering the Swift compiler. When you know how the language is supposed to work, you can theoretically write your own compiler that translates written code in the same way. There are lots of nuances to consider, though, and no third-party compiler will ever be as accurate as the official one.

But now that the inner workings of the Swift compiler are open to the public, third parties can produce a compiler that recreates the exact same translation as the official one. The result? Developers will soon be able to develop iOS and OS X apps on non-Apple systems and have assurance of 100% compatibility.

apple-swift-open-source-apps

It goes even further. Up until now, Swift could only be used to develop iOS and OSX apps. Now that the language has opened up, it can be forked Open Source Software and Forking: The Good, The Great and The Ugly Open Source Software and Forking: The Good, The Great and The Ugly Sometimes, the end-user benefits greatly from forks. Sometimes, the fork is done under a shroud of anger, hatred and animosity. Let's look at some examples. Read More in ways that allow Swift to be used elsewhere. Maybe in the future, Swift will be used for Windows applications, server daemons, or client-side web apps.

And if you, as a developer, find flaws or performance issues in the language, you have full capacity to browse the language’s source code and contribute improvements. You, along with every other brilliant mind in the world, can have a say in the direction of its development.

One indirect-but-still-important benefit is that other languages can now improve themselves based on the design and implementation of Swift. Without a doubt, this is a huge step forward for all programmers.

How This Benefits You and Me

Everything above is like a candy shop for programmers, but most of us aren’t programmers and these details may be flying over your head. We don’t care as much about making apps as we do about using the ones that are on the app store. So, do we have reason to celebrate?

We sure do.

apple-swift-open-source-users

Almost immediately, this is going to bring in a flood of new developers who have always wanted to create iOS and OS X apps but couldn’t due to ideological differences or lack of proper resources. If Swift really does take off now, which it seems liable to do, then you can expect a lot of great new apps to come out over the next few years.

Also, as mentioned before, since Swift will usher in faster development times over Objective C, you can expect apps to be less buggy overall and patches to be pushed out much faster than before. Coupled with the forthcoming release of iOS 9 What's New in iOS 9? What's New in iOS 9? Want to know what features your iPhone will be getting with the release of iOS 9 in September? Curious as to whether your device will be compatible? You're in the right place. Read More , things are looking up.

How excited are you about Apple’s future? If you’re an app developer, will you be tinkering with Swift any time soon? Tell us what you think in the comments below!

Image Credits: Icons collection Via Shutterstock, App Store Icon Via Shutterstock, New to App Store Via Shutterstock

  1. Arashi
    June 28, 2016 at 2:08 pm

    Hopefully we will soon have an open-source IDE that has all features of Xcode....

  2. Dudeuy
    June 12, 2016 at 8:51 pm

    The real deal is when Swift is available for Android programming (thus mobile App development getting a whole lot easier) coupled with Swift based web servers - i.e. full stack end to end compiled Swift code - that's truly game changing!

  3. linuxer
    December 8, 2015 at 6:44 pm

    Apple's just kept the "diamond" point. This means many great software (specially needed by linux users) will be available soon. Also this means Redmond has a new and big pain in the a**.

    Ok. As I linux user I can pay for some "great" software those will solve my real life business problems.

    According to news Open Sourced Swift has already number one on Github.
    http://www.itworld.com/article/2832689/github-data-shows-developers-are-turning-to-swift.html

  4. Boris Prak
    December 1, 2015 at 12:44 pm

    This article sounds like lazy research to me, its full of obvious holes and half-though ideas. I will point out two things here. First of all, Apple has been involved into open source for a very long time now. Half of their OS is open-sourceand they regularly release open source libraries. Second, the ability to compile Swift on other platforms does not meant that you can develop OS X and iOS apps on other platforms. You still need the system frameworks (Cocoa and friends), which are certainly NOT being open-sourced.

  5. Brian Topping
    November 3, 2015 at 8:18 pm

    This article hits it on the head, although there's a hidden nuance here. Being able to develop code that works across platforms is great, but what's really huge is being able to learn a compiled functional language and have that learning investment be usable across platforms.

    There are so many great languages out these days, but many of them are interpreted or require a VM like JVM or .NET. A LLVM-based compiler with bare metal deployment means the code is going to be super fast.

    I think this is going to be a very popular option for Wall St. as well.

    • Joel Lee
      November 8, 2015 at 4:10 am

      Thanks Brian, that's a good point. Seems like some of the Swift hype has died over the past few months, but let's hope that it regains some momentum!

  6. Vincent O'Sullivan
    September 27, 2015 at 10:49 am

    Allowing iOS apps to be developed on non-iOS hardware is probably not such a big deal. However, creating apps using Swift that can run on both iOS and non-iOS hardware would be an extraordinary step for Apple.

  7. I?ja Ketris
    September 10, 2015 at 1:02 am

    Client-side web apps in Swift?? Do you know something that we don't? Such as that Apple is secretly shipping Safari with Swift instead of JavaScript?

    • Drew Youngwerth
      September 20, 2015 at 4:54 pm

      A swift to javascript transpiler wouldn't be all that difficult to make. With webassembly on the horizon using swift to develop client side web apps may even be a good idea.

  8. Josue Gisber
    August 7, 2015 at 4:18 am

    I think swift is clean and neat programming language. And the fact that they will provide ports for Linux it's great. I'm a Linux fan which is the reason why I like apple, they are very similar. Kudos to Apple!

  9. Boris Miljkovic
    June 24, 2015 at 9:11 am

    Writer of this article never heard of Flex. I have been compiling ios apps on windows for years.

    • Joel Lee
      July 11, 2015 at 3:06 pm

      Flex is not a native solution. It's certainly possible (and has its uses as a cross-platform framework) but it will always have disadvantages vs. native code, which up until Swift was only possible through Objective C. Disadvantages include performance hits and reliance on a third party.

  10. Karan Balakrishnan
    June 19, 2015 at 12:52 pm

    Great news for developers like me. But its all in theory now. Lets see how swift progresses after its made open-source. Anyway, kudos to apple for stepping into the open-source world.

    • Joel Lee
      July 11, 2015 at 3:07 pm

      Yeah, it's still too early to tell for sure, but it's a wonderful surprise coming from Apple. Kudos indeed.

Leave a Reply

Your email address will not be published. Required fields are marked *