Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

MacRumors

macrumors bot
Original poster
Apr 12, 2001
59,653
23,810



Apple's new Swift programming language is growing rapidly in popularity according to RedMonk's latest Programming Language Rankings. The analysis ranks the future popularity of programming languages based on the amount of discussion on Stack Overflow and the usage on Github.

redmonk_languages_1q15.jpg
As expected, the top programming languages ranked by RedMonk include JavaScript, Java, and PHP in the top three slots with Objective-C rounding out the top ten.

Though it does not rank as high as its Objective-C counterpart, Swift was singled out by the researchers for growth that "is essentially unprecedented in the history of these rankings." In two calendar quarters, Swift has climbed from the 68th slot in Q3 2014 to the 22nd slot in Q1 2015, a jump of 46 slots. Given this meteoric rise, Swift is expected to become a Top 20 language sometime this year.

According to Chris Lattner, head of Apple's Developer Tools department, the Swift programming language was in development for four years before its official unveiling during WWDC 2014. From its conception, Swift was designed to be more approachable and fun, allowing developers to produce apps quickly and easily. Developers can use Swift code to build new apps or to add it alongside Objective-C into existing apps.

Article Link: Apple's Swift Programming Language Proving Popular With Developers
 

joshwenke

macrumors 6502
Mar 26, 2011
286
1,114
Swift is one of those things that makes Apple great.. and most of us don't even realize it. Swift has increased my development performance and quality. It's actually really amazing!
 

Kensai

macrumors member
Jun 3, 2010
46
3
It will go even higher when (1) Apple rewrites all important system apps in Swift and (2) they announce a date of stopping the evolution/support of Objective-C.

Swift is really wonderful, I really hope Apple step ups with its development and open sources it eventually.
 

sprezz

macrumors regular
May 28, 2014
108
60
Zurich, Switzerland
Swift still has a long way to go in terms of stability in Xcode. Also, some implementations of scenekit are just terrible, buggy and non reproducable in my experience...
 

ArtOfWarfare

macrumors G3
Nov 26, 2007
9,442
5,833
How historic is this really, though?

Go is ahead of Swift right now, and it's also a pretty new language.

Also, I'm surprised SmallTalk ranks so high. I know the language, but it strikes me as mostly being a relic of the past - a curiosity that went on to inspire every other language to use OOP, but not a language that was ever popular itself.

Anyways, Swift was a contributor in my decision to stop developing native applications. Why go through the effort of learning as difficult a language as Swift (the language manual is hundreds of pages long. Not a manual that goes through the libraries - just the manual to explain the core language itself.)

Making bridged applications that mixed Obj-C and Swift looked like a massive PITA.

Mix in seeing demonstrations of Unity 5's WebGL deployment in iOS 8's Safari and I realized that it's better to just write web applications than native applications. Drastically less effort for trivial performance penalties (if you really think the performance benefits are worth it to deal with native code, you may as well skip code which needs to be compiled and just write it directly in assembly.)

My existing Obj-C projects will continue to be maintained in Obj-C, and from here on I have no plans of ever bothering with native again.
 
Last edited:

CFreymarc

Suspended
Sep 4, 2009
3,969
1,149
Swift still has a long way to go in terms of stability in Xcode. Also, some implementations of scenekit are just terrible, buggy and non reproducable in my experience...

I totally agree here. While Apple has done a great job in promoting the language, any new programming language is almost a generational transition. The thirty years of Apple app development has gone from Pascal to C++ to Objective-C and now Swift.

I know of several firms that have a strict "no Swift" policy on production app development due to compiler bug issues. There is only one Swift compiler now with no other third party adopting the language.

Typically it takes a year for a released language to become developer workable. Then there is the issue of finding skilled developers that know the language with a compelling reason to move from Obj-C.

For example, Java was hot almost twenty years ago and it went stagnant til it found a wide audience (servers and Andriod) for practical use.

The C Programming Language is just over fourty years old now and still going strong. It is mostly in the embedded world, Linux and old school MS Windows dev these days.
 

Watabou

macrumors 68040
Feb 10, 2008
3,424
753
United States
How historic is this really, though?

Go is ahead of Swift right now, and it's also a pretty new language.

Not so sure about that, Go is ahead in Github projects, but it has been out for a couple of years. Swift has been out for less than a few months.

I love coding with Swift . I only knew Objective-C a tiny bit before I dove into Swift and it's already been so easy to understand. I even got an app on the App Store after less than a few months of learning Swift. It's even easier to understand understand other programming paradigms since Swift supports so many. Support for functional programming is especially nice.

That said, Go is really interesting and even some iOS developers are starting to use Go. Marco Arment for instance, uses Go for Overcast's backend.
 

gnasher729

Suspended
Nov 25, 2005
17,980
5,563
It will go even higher when (1) Apple rewrites all important system apps in Swift and (2) they announce a date of stopping the evolution/support of Objective-C.

I'd like to see how you justify that opinion.

----------

Anyways, Swift was a contributor in my decision to stop developing native applications. Why go through the effort of learning as difficult a language as Swift (the language manual is hundreds of pages long. Not a manual that goes through the libraries - just the manual to explain the core language itself.)

The language manual is _very_ verbose, compared for example to the C++ Standard. It could probably be written in a third of the space, but obviously would be a lot less readable.
 

Kensai

macrumors member
Jun 3, 2010
46
3
I'd like to see how you justify that opinion.

1) Because then we will have many working examples of Swift's power, both as a system language and as an application language.
2) Because then Objective-C will be a sinking boat.
 

Glassed Silver

macrumors 68020
Mar 10, 2007
2,096
2,564
Kassel, Germany
It will go even higher when (1) Apple rewrites all important system apps in Swift and (2) they announce a date of stopping the evolution/support of Objective-C.

Swift is really wonderful, I really hope Apple step ups with its development and open sources it eventually.

Yeah, how about nope.
Stopping support for Objective-C is a terrible idea.
Also, many parts of OS X better stay at old code and only get the fixes they really need.
There's a good reason OS X is based a lot on an old, but patched-as-needed as well as trusted and proven code.

If something needs a rewrite, I'm sure Apple will consider Swift if it makes sense and then it'll be a sensible choice I think, but to go ahead and rewrite just because...

An OS is there to give you a solid base to execute applications on and Objective-C is and will remain highly important.

I will say though, that increased usage of Swift does seem like a great thing, I'm really looking forward to the day it's the unquestioned go-to language on OS X and iOS.

Glassed Silver:mac
 

proline

macrumors 6502a
Nov 18, 2012
630
1
Stopping support for Objective-C is a terrible idea.
Apple will not 'stop support' for Swift anytime soon. However, WWDC 2015 will bring the introduction of the first Swift-only APIs as well as further Swift-only Xcode and compiler features. All WWDC 2015 sessions and sample code will be Swift. Developers will get the hint.

----------

Anyways, Swift was a contributor in my decision to stop developing native applications. Why go through the effort of learning as difficult a language as Swift (the language manual is hundreds of pages long. Not a manual that goes through the libraries - just the manual to explain the core language itself.)

Making bridged applications that mixed Obj-C and Swift looked like a massive PITA.
Wow, this is more than a little embarrassing. I'm an amateur developer with a full-time job in another field and had no difficulty reading the manual in two evenings and figuring out how to mix Swift code into my Obj-C app. That also took two evenings to learn and I can now convert files to Swift easily. Ultimately, if you don't want to make native apps that's up to you, but users certainly can tell the difference. They will notice the extra lag between when Apple releases new hardware and new APIs and when you are able to support them as well as the slower overall performance. Based on the level of understanding in your post, I wouldn't be surprised if Swift is the only thing you're having trouble with, so I agree that native app development isn't for you.
 

MSlaw

macrumors regular
Aug 11, 2010
108
2
It will go even higher when (1) Apple rewrites all important system apps in Swift and (2) they announce a date of stopping the evolution/support of Objective-C.

Swift is really wonderful, I really hope Apple step ups with its development and open sources it eventually.

1) Because then we will have many working examples of Swift's power, both as a system language and as an application language.
2) Because then Objective-C will be a sinking boat.

I'd love to see Apple implement something like the responder chain without message passing. KVO? Forward invocation?

If they add message sending to Swift, then i'll take a look.
 
Last edited:

-LikesMac-

macrumors 6502
Jun 20, 2010
429
23
Mark my words...

Imagine this: In the future, Apple releases Mac OS XI, which is built from the ground up using Swift. It will be swift. :D
 

TimelessOne

macrumors regular
Oct 29, 2014
236
2
It is a meh thing to me. Swift just has no business reason. Amateur developers sure can go at it and have fun. Business it is more a no. It will be years before you will see business get on board as someone else pointed out dealing with both in the same project can quickly become a headache. Easy to do and being headache are 2 very different things. There are a lot of things that are easy to do but still a headache to deal with.

Example of easy to do but still a headache is writing straight SQL in code to pull stuff in and out of SQLLite DB. Yes we know their is better way and easier way but due to legacy issues we can not make the switch with out weeks of dev time being spent.

The function do that work are easy. Mind numbing but a headache to debug and trace down at time.

Can I see Apple forcing Devs to switch yes because Apple does not really care what devs think.
End of the day Swift is bleeding edge. Amateurs and side projects are fine to be on bleeding edge. Migrating existing stuff over different story. It is high risk low reward type of deal plus a ton of work. Huge no no to do on stuff that already makes you money.
 

Glassed Silver

macrumors 68020
Mar 10, 2007
2,096
2,564
Kassel, Germany
Apple will not 'stop support' for Swift anytime soon. However, WWDC 2015 will bring the introduction of the first Swift-only APIs as well as further Swift-only Xcode and compiler features. All WWDC 2015 sessions and sample code will be Swift. Developers will get the hint.[...]

Did not make the guess they will. :)

It's okay to introduce Swift-only APIs, as long as the old ones keep working and Objective-C in general remains supported for a long time. (ideally they would never drop support, but with Apple you really don't know. I wish they embraced backwards compatibility a bit more.)

Glassed Silver:mac
 

gnasher729

Suspended
Nov 25, 2005
17,980
5,563
It is a meh thing to me. Swift just has no business reason. Amateur developers sure can go at it and have fun. Business it is more a no. It will be years before you will see business get on board as someone else pointed out dealing with both in the same project can quickly become a headache. Easy to do and being headache are 2 very different things. There are a lot of things that are easy to do but still a headache to deal with.

Apple entered into a partnership with IBM recently, with IBM creating tons of commercial applications for the iPad (which they will sell to their gazillions of enterprise customers who will buy iPads for the users, so IBM and Apple are both happy). The first of these apps have arrived, and they are all written in Swift.
 

TimelessOne

macrumors regular
Oct 29, 2014
236
2
Apple entered into a partnership with IBM recently, with IBM creating tons of commercial applications for the iPad (which they will sell to their gazillions of enterprise customers who will buy iPads for the users, so IBM and Apple are both happy). The first of these apps have arrived, and they are all written in Swift.
But it is also safe to say those where made from the ground up in swift. Existing apps not so much and those might never migrate over.


In IBM case did app cut a deal to get IBM to do it. I can see doing it for a deal cut. Just because apple claims it is easy does not mean it does not come with head aches and it's own set of issues.
You still need object c knowledge base for all legacy stuff. It is very rare you have a reason to migrate to a new language.
 

proline

macrumors 6502a
Nov 18, 2012
630
1
Did not make the guess they will. :)

It's okay to introduce Swift-only APIs, as long as the old ones keep working and Objective-C in general remains supported for a long time. (ideally they would never drop support, but with Apple you really don't know. I wish they embraced backwards compatibility a bit more.)

Glassed Silver:mac
The Obj-C APIs will work for a while, 3-10 years, so it depends what you consider "a long time". It also depends what you consider 'support' as Carbon was only deprecated in 2012 (11 years after cocoa) but effectively lost support in 2007 when it failed to go 64 bit (6 years).

Never dropping backward compatibility is a terrible, terrible idea. Supporting obsolete code increases the complexity of an OS immensely and so drives up development costs and increases bugs and security vulnerability. A lot of the reason Windows has become stagnant since XP despite tens of billions of dollars in R&D is the ridiculous effort put on making old software run vs. making new software better. Don't get me wrong, there are some users that want or need that and MS fills that niche well. Apple's users want to use software that is actively maintained to current best practices, not some buggy, vulnerability-laden crap written in obsoletely languages calling decrepit APIs. If that means leaving some people behind, fine.
 

magallanes

macrumors regular
Jul 12, 2008
126
1
South of Jurassic Park
With all respect but for some clueless people, the "popularity of a language" is the same than the number of "jobs wanted".

In the case of swift's popularity is simple : they are a lot of help want about swift. However, most of those jobs are simply temporary works, 1-3 months at most.

So, is it Swift a good bet?. of course no. Right now, its practically to develop stuff for iphone and nothing else much. And most iphone (also Android) applications are simple stuff to fool around.

Plus, most smartphone developers aren't earning enough. The average developer is earning about $50-$200 per month, a small group are earning cents. The gold rush is pretty much gone.

Anyways, for a software language :
-new = bad, lack of support, lack of stability and lack of future.
-tied to a specific vendor = bad.
-tied to a specific technology = bad.
-a new language that nobody asked for = bad
 
Last edited:

theluggage

macrumors 604
Jul 29, 2011
6,917
6,462
Swift just has no business reason

...whereas Objective C does?

These days, Objective C might as well be a proprietary Apple language - its not getting used much outside iOS and OSX, so Swift is no big change in that respect.

Meanwhile, Swift is conceptually far closer to languages like Java, C#, Javascript and C++ than ObjC's Smalltalk-like syntax.

Plus, C (and by association supersets of C like C++ and ObjC) now have a terrible reputation for security. Swift is playing the security card hard.

Hopefully, in the future, Apple will open it up a bit and we'll see it implemented on other platforms. AFAIK they haven't ruled that out once the language spec is stable.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.