Apple's Swift takes crown of most-loved language among developers

Posted:
in iPhone edited October 2015
Less than a year after its unveiling, Apple's Swift programming language has not only received widespread acceptance but has also become one of software developers' favorite tools, data from a recent survey shows.




Some 78 percent of programmers currently working with Swift were eager to continue developing with it, according to Stack Overflow's 2015 Developer Survey. The data was collected from over 26,000 Stack Overflow visitors in 157 countries, though not all of those respondents were Swift users.

Already one of the most popular languages, Swift is featured in apps from numerous well-known brands including American Airlines and LinkedIn. The most recent iOS 8.3 update brought "noteworthy" updates to the language, which has quickly progressed to version 1.2.

Swift's older cousin, Objective-C, did not make the top ten most-loved list. Objective-C developers did make the most money among U.S. respondents, however, with an average pay --?including bonuses --?of just under $99,000 per year.

Of those who identified themselves as full-time mobile developers, 33 percent worked primarily on iOS, compared to 45 percent who worked primarily on Android. 20 percent were nonpartisan.

Mac OS X was the operating system of choice for 22 percent of respondents, slotting Apple's desktop platform in behind Microsoft's Windows 7, which took 39 percent of the vote, and just ahead of Linux's 21 percent.
«1

Comments

  • Reply 1 of 25
    mstonemstone Posts: 11,510member

    This survey is not very useful. So about one third of the developers currently working with any of the languages are not eager to continue working in that language. It seems that they are all about the same. A more useful survey would be what percentage of full time developers are working in each language. You know a survey that adds up to 100%.

  • Reply 2 of 25
    john.bjohn.b Posts: 2,722member
    Quote:

    Originally Posted by mstone View Post

     

    A more useful survey would be what percentage of full time developers are working in each language. You know a survey that adds up to 100%.


     

    Assuming developers only work with one language, sure...

  • Reply 3 of 25
    nagrommenagromme Posts: 2,834member
    Quote:

    Originally Posted by mstone View Post

     

    This survey is not very useful. So about one third of the developers currently working with any of the languages are not eager to continue working in that language. It seems that they are all about the same. A more useful survey would be what percentage of full time developers are working in each language. You know a survey that adds up to 100%.


     

    That survey would show what people HAVE to use, not what they WANT to use; and it would show info on the present state, not looking forward to future intentions.

     

    Might be interesting too, but for very different purposes.

     

    (At one point, around 100% of iOS developers would have been using WebKit. Interesting, but not a prediction of what they really wanted, nor what the future would hold.)

  • Reply 4 of 25
    wood1208wood1208 Posts: 2,027member
    Swift language could become defacto software development language like C, Java especially in mobile. May be Apple will offer to open standard body for further adoption.
  • Reply 5 of 25
    bradipaobradipao Posts: 145member
    mstone wrote: »
    This survey is not very useful. So about one third of the developers currently working with any of the languages are not eager to continue working in that language. It seems that they are all about the same. A more useful survey would be what percentage of full time developers are working in each language. You know a survey that adds up to 100%.

    Some alternate survey/statistics:

    How many tutorials on a given language are searched in Google
    http://pypl.github.io/PYPL.html

    Language popularity on github
    http://githut.info/

    TIOBE index (more related to people working on a certain language):
    http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
  • Reply 6 of 25
    gatorguygatorguy Posts: 21,286member
    Other interesting stats from the survey:

    48% of respondents never received a degree in computer science. 33% of respondents never took a computer science university course. System administrators are most likely to be self-taught (52%).

    The most popular (most-used?) technology is still Javascript @54.4%

    Most dreaded? Salesforce with Visual Basic a very close 2nd.

    Windows 7 remains the most commonly used desktop platform for developers with 33.8% but OS X is coming on strong with 21.5%

    Most surprising was the "most wanted" category with Android at 17.7% and Javascript at 15.4%. Where was iOS? 7th position just ahead of Raspberry Pi.

    http://stackoverflow.com/research/developer-survey-2015
  • Reply 7 of 25
    rk0542rk0542 Posts: 2member

    I can attest to this as I learned Swift in a little over 4 months and just finished my first app.

  • Reply 8 of 25
    wood1208 wrote: »
    Swift language could become defacto software development language like C, Java especially in mobile. May be Apple will offer to open standard body for further adoption.

    I suspect that Apple will open source Swift at some point.
  • Reply 9 of 25
    gatorguy wrote: »
    Other interesting stats from the survey:

    Most surprising was the "most wanted" category with Android at 17.7% and Javascript at 15.4%. Where was iOS? 7th position just ahead of Raspberry Pi.

    Yes but that is
    "% of devs who are not developing with the language or tech but have expressed interest in developing with it."

    So if most android coders also develop for iOS it makes the data hard to interpret.

    The mobile space is the most interesting to me. The android vs iOS dev % compared to the money to be gained on each OS seems off balance. The numbers are way less than what I would expect - only 1900 out of the 22,000 - my guess because of how they were identified. Also what percentage of these are hobbyists vs corporate.

    It doesn't really address the question do the majority of mobile developers "primarily" work on desktop environments. So the number of "mobile developers" is could be off.
  • Reply 10 of 25
    mstonemstone Posts: 11,510member
    Quote:
    Originally Posted by Dick Applebaum View Post





    I suspect that Apple will open source Swift at some point.



    Doubt it. For Swift to be at all useful it still needs the NS libraries and Apple is not giving that away, especially if they spend a couple billion rewriting them in native Swift.

  • Reply 11 of 25
    davemcm76davemcm76 Posts: 266member
    gatorguy wrote: »
    Other interesting stats from the survey:

    48% of respondents never received a degree in computer science. 33% of respondents never took a computer science university course.

    I dropped out of my Software Engineering degree half way through my second year, but I've still been a professional developer for getting on for 17 years now :)

    Work wise I mainly develop in Progress OpenEdge - a language thats been around in various evolving forms since the mid 80s but that most people I speak to have still never heard of - but I also get to play with javascript and c# with the odd bit of php thrown in for good measure.

    I'm still very much a beginner on OS X / iOS development and attempting self learning in my spare time. When I first started about 18 months ago (spare time hasn't always been in great supply) I almost gave up a couple of times after I really struggled getting my head around Objective-C syntax. Swift seems a lot more natural for my language experience and the pace of learning is now much accelerated as I can concentrate on learning the functional APIs instead of banging my head against nested square brackets and asterisks.
  • Reply 12 of 25
    wizard69wizard69 Posts: 12,898member
    mstone wrote: »

    Doubt it. For Swift to be at all useful it still needs the NS libraries and Apple is not giving that away, especially if they spend a couple billion rewriting them in native Swift.


    I'm not too sure about that. There are advantages to having a language that is maintained by a standards organization. It is one reason why C/C++ have maintained their status for so long, it gives developers some confidence that their code will be supported in some manner well into the future.

    As for library support, Apple could easily partition Swift into a core language and the supporting library. However I would imagine that they would want to standardize at least part of a supporting library. It is just expected these days that a language offers up a core set of library functions. How they deal with the NS libs is an open question but much of what is in NS is just features common to many other language libraries.

    This brings up an interesting question though, would the community consider standardizing a language that didn't come with a reasonable library in version one. By that I mean container classes, strings, system interface classes, date/time classes and the list goes on. I suspect that most would expect such.
  • Reply 13 of 25
    mstone wrote: »
    I suspect that Apple will open source Swift at some point.


    Doubt it. For Swift to be at all useful it still needs the NS libraries and Apple is not giving that away, especially if they spend a couple billion rewriting them in native Swift.

    Ahh ... that's the beauty of it! Give it away and keep it too :D    I guess the NS prefix will morph into Native Swift or New Swift.

    Apple could use Swift internally, and make it available to Apple developers as a:
    • iOS and OSX programming language
    • system level scripting language replacing OAS/AppleScript/Automator
    • Pro app (Final Cut. Motion, etc.) scripting language
    • same for iWorks apps
    • iTunes, Photos, iBooks, etc. helpers
    • iCloud helpers
    • possible new HyperCard-like app -- especially with Playgrounds and Storyboards
    • the above could be used for Mac, iDevice and Watch Extensions

    All of the above could be implemented in both interpreted and compiled formats.


    But, I purposefully left out what I believe offers the greatest potential for Apple and Swift ...

    An open source replacement for JavaScript.

    For WebKit based browsers, the Swift would be compiled -- for non-WebKit browsers interpreted similar to current JavaScript implementations.

    For WebKit browsers, the compiled Swift would be more responsive, faster, smaller (less time to download) and secure -- unlike JavaScript, your web site's Swift source code won't be visible to expose the logic of your web applications.


    Also, an open source Swift offers the potential for a modern replacement for Java ...
  • Reply 14 of 25
    wizard69 wrote: »
    mstone wrote: »

    Doubt it. For Swift to be at all useful it still needs the NS libraries and Apple is not giving that away, especially if they spend a couple billion rewriting them in native Swift.


    I'm not too sure about that. There are advantages to having a language that is maintained by a standards organization. It is one reason why C/C++ have maintained their status for so long, it gives developers some confidence that their code will be supported in some manner well into the future.

    As for library support, Apple could easily partition Swift into a core language and the supporting library. However I would imagine that they would want to standardize at least part of a supporting library. It is just expected these days that a language offers up a core set of library functions. How they deal with the NS libs is an open question but much of what is in NS is just features common to many other language libraries.

    This brings up an interesting question though, would the community consider standardizing a language that didn't come with a reasonable library in version one. By that I mean container classes, strings, system interface classes, date/time classes and the list goes on. I suspect that most would expect such.

    I think that all but the interface stuff could (should?) be made available as a rewritten Foundation library.

    And an immediate benefit to Apple is that anyone who teaches/learns the new, open source Swift implementation is, by definition, conversant in modern Apple programming.


    Edit:

    To my mind the big issue is the UI stuff -- can Apple provide a useable UI Library without giving away the family jewels?

    A possible approach may be a higher level implementation of Playgrounds and Storyboards ...
     
  • Reply 15 of 25
    You seem to (correct me if I'm wrong) view Swift as the "one true language" that will solve everybody's problems. No one language is a panacea. Each language has its own domain and its own set of requirements.

    This is how I view the programming language landscape:

    1) Extremely low-level programming: Assembly
    2) Moderate low-level programming: C, Go, Swift (maybe, due to ARC)
    3) Enterprise/business level programming: Java, COBOL, C#, Ceylon, Kotlin
    4) Systems programming: C++, Rust
    5) Functional programming: Haskell, ML, OCaml, Scala (maybe), Ceylon (maybe), Swift (sort of functional)
    6) Extremely high-level (ease of use) programming: Python, PHP?
    7) GUI programming: HTML/CSS/JavaScript, Dart, Visual Basic, Swift
    8) Scripting: Perl, Ruby, Python (maybe)

    My view of Swift is that is was designed, architected as an Objective-C replacement for GUI programming on OS X and iOS devices. Its #1 requirement (I would assume) is to interoperate with the Objective-C runtime. It is not designed to be cross-platform. It is not designed to be enterprise-y. It is not designed to take on the role of C++/Rust.

    So when you say that you see Swift as being a replacement for AppleScript, Java, and JavaScript in one breath I'm wondering if you've thought this through.

    Specifically, when you say it has the potential to be a modern replacement for Java, well, so do most JVM languages such as Groovy, Scala, Ceylon, and Kotlin (and I could name more obscure ones such as Gosu or XTend). It doesn't mean they will, and as of yet, none looks to be even close to taking the crown away from Java (20 year old language that in many ways is starting to show its age).

    Also, Google tried to replace JavaScript as a browser runtime with Dart, but has since given up. If Google can't upend JavaScript, I doubt anyone else can (beyond supporting languages that run on the JavaScript runtime.

    Again, I could be misinterpreting your comments as simply enthusiasm about the possibilities of Swift. It certainly is a nice language, and certainly more modern than Java, but my personal opinion is there are better languages out there.

    All told, I believe the continuum of languages I outlined above will largely remain intact with no one language spanning the whole continuum and doing so elegantly in each part of the continuum.

    Quote:
    Originally Posted by Dick Applebaum View Post



    Ahh ... that's the beauty of it! Give it away and keep it too image    I guess the NS prefix will morph into Native Swift or New Swift.



    Apple could use Swift internally, and make it available to Apple developers as a:

    • iOS and OSX programming language

    • system level scripting language replacing OAS/AppleScript/Automator

    • Pro app (Final Cut. Motion, etc.) scripting language

    • same for iWorks apps

    • iTunes, Photos, iBooks, etc. helpers

    • iCloud helpers

    • possible new HyperCard-like app -- especially with Playgrounds and Storyboards

    • the above could be used for Mac, iDevice and Watch Extensions


    All of the above could be implemented in both interpreted and compiled formats.





    But, I purposefully left out what I believe offers the greatest potential for Apple and Swift ...



    An open source replacement for JavaScript.



    For WebKit based browsers, the Swift would be compiled -- for non-WebKit browsers interpreted similar to current JavaScript implementations.



    For WebKit browsers, the compiled Swift would be more responsive, faster, smaller (less time to download) and secure -- unlike JavaScript, your web site's Swift source code won't be visible to expose the logic of your web applications.





    Also, an open source Swift offers the potential for a modern replacement for Java ...

     

  • Reply 16 of 25
    misamisa Posts: 827member
    wood1208 wrote: »
    Swift language could become defacto software development language like C, Java especially in mobile. May be Apple will offer to open standard body for further adoption.

    Nobody likes Java... Google has only cemented this as most developers hate all the Java crap they have to deal with just to use their C/C++ portable code.
  • Reply 17 of 25
      
    Your post came at the end of my active day, so I chose not to respond immediately -- but to reflect and give it the attention it deserves.

    I supect that your appraisal of the programming language landscape is fairly accurate, tho (bless her soul) Grace Hopper's CoBOL has survived longer than anyone would have believed (Thought the Y2K fiasco would have been the death knell).

    My history is dated, but includes many, but not all, of the programming languages you mention -- so I'll accept your delineation of each language's usage.

    Your assertion that: My view of Swift is that is was designed, architected as an Objective-C replacement is. likely, true -- it had to perform that fumction or it would have never gotten Apple high-level approval.


    Here's where we begin to diverge;

    I've read recently that Swift is the 9th most popular programming language ... the 9th most popular programming language ...


    How can that be? Swift is proprietary to Apple and only 10 months and 12 days old ... The languages you mention are cross-platform and have existed for decades ...


    This AI article mentions that, while not in the top 10 popularity, Objective-C is the language most profitable for developers ... Objective-C is the language most profitable for developers ...


    Let's do a mini recap here:
    1. Objective-C is the language most profitable for developers
    2. Swift is a modern replacement for Objective-C
    3. Swift is the 9th most popular programming language

    If you are Willy Sutton looking for a long-time career managing/teaching/learning/programming, where would you go ...

    Why, you'd go where the money is: Swift -- or maybe, Objective-C ==> Swift.


    So, I expect that talent entering the IT/IP/Whatever marketplace is going to be Swift aware/conversant.


    So, what does that mean for all the programming languages/usages tou defined below.

    Certainly, some languages/usages will remain as you defined them -- likely, things such as drivers will continue to be written in assembly and native machine code.


    Not trying to be flippant, here, but, I suspect that the bulk of programming, today, is being done to maintain or extend legacy enterprise apps.

    Those legacy enterprise apps will be replaced over time ...

    Why? Because there is a cheaper/better way of doing the jobs that those programs do.

    It won't happen immediately -- but it will happen!


    Let me give you an example that may help illustrate what I mean ,,,

    In 1957, I went to work as a punched card tab operator for a toy company in downtown Los Angeles. AIR, there were about 25 people in the department. The only application we performed was preparing purchase orders -- basically order entry that fed into accounts receivable.

    The process went something like this:
    • the salesmen would handwrite orders (order forms on clipboards) all day
    • the orders were keypunched and processed
    • orders were printed on the night shift
    • a courrier picked up the printed orders at 4:00 AM and drove them to the warehouse (Anaheim, AIR) where they were picked and shipped
    • rinse and repeat

    There were, maybe 100-200 orders on a busy day. I wasn't savvy enough to do the math back then (made $1.75 an hour) -- but I suspect the cost of processing each Purchase Order was more than $50.

    Later, I worked at other companies (Consolidated Electrodynamics, Hoffman Electronics, Lockheed Air Service) where a similar scenario played out for purchase orders ... Better, faster, equipment (at higher costs).

    Some time in the 1960s, a consulting firm reported that it cost ~$40 to prepare a purchase order (an average across all automated industries) -- in 1960s dollars ~= $200 in 2015 dollars.


    Well, we don't do it that way, anymore ... Apple processed over 1 million Watch purchase orders in 12 hours.

    I've written a few shopping carts. and I suspect the cost of placing a modern purchase order is $1-$10. Even of I'm off by an order of magnitude -- it's still much cheaper than it used to be.


    What, I am attempting to illustrate is that the legacy apps of today won't be rewritten in Swift (or any other language) -- they'll just be maintained until the entire process is replaced by a more modern (cheaper, better, etc.) process.


    Enterprise is faced with mounting costs of maintaining esoteric, dated, legacy solutions that fail to satisfy today's needs to remain competitive. Alternatives are becoming available where the bulk of the costs and work is being outsourced to services, with a smaller kernel of work remaining in-house -- primarily the design and programming to exploit and interface the outsourced solution. This remaining, in-house design and programming need not be burdened with the limitations of the legacy baggage of the past.

    Things, like the Apple/IBM partnership are already beginning to replace existing legacy solutions with broader, modern, apps that include mobile, cloud, big data, analytics, etc. Much of this written or accessible with Swift programs.

    Surely, enterprise can try to retrofit / extend existing languages to access these outsourced solutions -- but to what end?

    Swift is modern, fully capable and already here ... and Swift is where the money is / is going to be!


    javacowboy wrote: »
    You seem to (correct me if I'm wrong) view Swift as the "one true language" that will solve everybody's problems. No one language is a panacea. Each language has its own domain and its own set of requirements.

    This is how I view the programming language landscape:

    1) Extremely low-level programming: Assembly
    2) Moderate low-level programming: C, Go, Swift (maybe, due to ARC)
    3) Enterprise/business level programming: Java, COBOL, C#, Ceylon, Kotlin
    4) Systems programming: C++, Rust
    5) Functional programming: Haskell, ML, OCaml, Scala (maybe), Ceylon (maybe), Swift (sort of functional)
    6) Extremely high-level (ease of use) programming: Python, PHP?
    7) GUI programming: HTML/CSS/JavaScript, Dart, Visual Basic, Swift
    8) Scripting: Perl, Ruby, Python (maybe)

    My view of Swift is that is was designed, architected as an Objective-C replacement for GUI programming on OS X and iOS devices. Its #1 requirement (I would assume) is to interoperate with the Objective-C runtime. It is not designed to be cross-platform. It is not designed to be enterprise-y. It is not designed to take on the role of C++/Rust.

    So when you say that you see Swift as being a replacement for AppleScript, Java, and JavaScript in one breath I'm wondering if you've thought this through.

    Specifically, when you say it has the potential to be a modern replacement for Java, well, so do most JVM languages such as Groovy, Scala, Ceylon, and Kotlin (and I could name more obscure ones such as Gosu or XTend). It doesn't mean they will, and as of yet, none looks to be even close to taking the crown away from Java (20 year old language that in many ways is starting to show its age).

    Also, Google tried to replace JavaScript as a browser runtime with Dart, but has since given up. If Google can't upend JavaScript, I doubt anyone else can (beyond supporting languages that run on the JavaScript runtime.

    Again, I could be misinterpreting your comments as simply enthusiasm about the possibilities of Swift. It certainly is a nice language, and certainly more modern than Java, but my personal opinion is there are better languages out there.

    All told, I believe the continuum of languages I outlined above will largely remain intact with no one language spanning the whole continuum and doing so elegantly in each part of the continuum.

    <div class="quote-container" data-huddler-embed="/t/185739/apples-swift-takes-crown-of-most-loved-language-among-developers#post_2709217" data-huddler-embed-placeholder="false"><span>Quote:</span><div class="quote-block">Originally Posted by <strong>Dick Applebaum</strong> <a href="/t/185739/apples-swift-takes-crown-of-most-loved-language-among-developers#post_2709217"><img src="/img/forum/go_quote.gif" class="inlineimg" alt="View Post"/></a><br/><br/><br />
    Ahh ... that's the beauty of it! Give it away and keep it too <img src="http://forums-files.appleinsider.com/images/smilies/1biggrin.gif" class="bbcode_smiley" />    I guess the NS prefix will morph into <i> Native Swift </i> or <i> New Swift.</i><br />
    <br />
    Apple could use Swift internally, and make it available to Apple developers as a:<br />

    <ul class="bbcode_list">
    <li>iOS and OSX programming language</li>
    <li>system level scripting language replacing OAS/AppleScript/Automator</li>
    <li>Pro app (Final Cut. Motion, etc.) scripting language</li>
    <li>same for iWorks apps</li>
    <li>iTunes, Photos, iBooks, etc. helpers</li>
    <li>iCloud helpers</li>
    <li>possible new HyperCard-like app -- especially with Playgrounds and Storyboards</li>
    <li>the above could be used for Mac, iDevice and Watch <i> Extensions</i></li>
    </ul>
    <br />
    All of the above could be implemented in both interpreted and compiled formats.<br />
    <br />
    <br />
    But, I purposefully left out what I believe offers the greatest potential for Apple and Swift ...<br />
    <br />
    An open source replacement for JavaScript.<br />
    <br />
    For WebKit based browsers, the Swift would be compiled -- for non-WebKit browsers interpreted similar to current JavaScript implementations.<br />
    <br />
    For WebKit browsers, the compiled Swift would be more responsive, faster, smaller (less time to download) and secure -- unlike JavaScript, your web site's Swift source code won't be visible to expose the logic of your web applications.<br />
    <br />
    <br />
    Also, an open source Swift offers the potential for a modern replacement for Java ...</div></div><p> </p>
  • Reply 18 of 25
    chelinchelin Posts: 60member
    What a load of statistical BS. I wonder if anyone in the survey even know what a programming language is, the fact that C++ made it to 2nd place is pretty evident that it has zero credibility.

    It reminds me about every time I ask someone who is a self proclaimed C++ expert what the schematics of multiple inheritance is, only once have someone properly explained it.

    People thinks because they know it they are also a 'hacker' because it is perceived as low level. But in fact is it is a high level mess which now is taking its turn into being a pseudo runtime. But also it suffers as most other languages from being statically compiled. Dynamic run times; although slowest to start have the ability to fully utilize the hardware.

    The truth is that most or even the vast majority of all mission critical software is being developed in Java or some other JVM Languague. The issue with all languages today is that they are pretty poor at describing data dependecies. Which in a multi core universe is going to be the thing that will set apart a true Java successor.

    Swift does not invent anything new it is a nice grab bag of features from all other languages but it doesn't address any of the interesting problems. It is more like a new version of VB but for the apple ecosystem. But it isn't a general purpose language such as C/C++ or Java.
    I'm not expecting that apple will reimplement the OS X kernel in it nor do I suspect that they are realistically planning to exchange their Java infrastructure.
  • Reply 19 of 25
    Well, C++ 11 and 14 have some compelling new features, but I guess also still retain a lot of the baggage as well. Also, from what I've read, Apple is a big C++ user and backer of the new features.

    I agree with your assertion that Swift isn't a general purpose language, but is more domain specific. Still, as a mobile development language, it is now superior to the default development language for Android, instead of the other way around.

    What do you mean by "describe data dependencies"?

    Java's replacement, either JVM language or not, will be a fresh start without the existing cruft in the language,

    Null as a type, not a primitive, ie, optional encoded in the language, but with no null pointer exception escape hatch like in swift.
    First class union types
    First class functions/higher order functions/nested functions/function types
    First class modules (not OSGi)
    Refied generics with declaration site variance (no wildcards)
    Type safe metaprogramming
    Type inference
    First class algbraic types
    Immutability by default
    Support for various functional idioms that Java cannot express
    Value types/structs instead of primitives

    chelin wrote: »
    What a load of statistical BS. I wonder if anyone in the survey even know what a programming language is, the fact that C++ made it to 2nd place is pretty evident that it has zero credibility.

    It reminds me about every time I ask someone who is a self proclaimed C++ expert what the schematics of multiple inheritance is, only once have someone properly explained it.

    People thinks because they know it they are also a 'hacker' because it is perceived as low level. But in fact is it is a high level mess which now is taking its turn into being a pseudo runtime. But also it suffers as most other languages from being statically compiled. Dynamic run times; although slowest to start have the ability to fully utilize the hardware.

    The truth is that most or even the vast majority of all mission critical software is being developed in Java or some other JVM Languague. The issue with all languages today is that they are pretty poor at describing data dependecies. Which in a multi core universe is going to be the thing that will set apart a true Java successor.

    Swift does not invent anything new it is a nice grab bag of features from all other languages but it doesn't address any of the interesting problems. It is more like a new version of VB but for the apple ecosystem. But it isn't a general purpose language such as C/C++ or Java.
    I'm not expecting that apple will reimplement the OS X kernel in it nor do I suspect that they are realistically planning to exchange their Java infrastructure.
  • Reply 20 of 25
    Sorry, but I'm highly sceptical of all these surveys that state that language X is popular. They're meaningless in a world where developers employers dictate which language their debs use. The language I'm paid to code in is not my favourite, not even close.
      
    Your post came at the end of my active day, so I chose not to respond immediately -- but to reflect and give it the attention it deserves.

    I supect that your appraisal of the programming language landscape is fairly accurate, tho (bless her soul) Grace Hopper's CoBOL has survived longer than anyone would have believed (Thought the Y2K fiasco would have been the death knell).

    My history is dated, but includes many, but not all, of the programming languages you mention -- so I'll accept your delineation of each language's usage.

    Your assertion that: My view of Swift is that is was designed, architected as an Objective-C replacement is. likely, true -- it had to perform that fumction or it would have never gotten Apple high-level approval.


    Here's where we begin to diverge;

    I've read recently that Swift is the 9th most popular programming language ... the 9th most popular programming language ...


    How can that be? Swift is proprietary to Apple and only 10 months and 12 days old ... The languages you mention are cross-platform and have existed for decades ...


    This AI article mentions that, while not in the top 10 popularity, Objective-C is the language most profitable for developers ... Objective-C is the language most profitable for developers ...


    Let's do a mini recap here:
    1. Objective-C is the language most profitable for developers
    2. Swift is a modern replacement for Objective-C
    3. Swift is the 9th most popular programming language

    If you are Willy Sutton looking for a long-time career managing/teaching/learning/programming, where would you go ...

    Why, you'd go where the money is: Swift -- or maybe, Objective-C ==> Swift.


    So, I expect that talent entering the IT/IP/Whatever marketplace is going to be Swift aware/conversant.


    So, what does that mean for all the programming languages/usages tou defined below.

    Certainly, some languages/usages will remain as you defined them -- likely, things such as drivers will continue to be written in assembly and native machine code.


    Not trying to be flippant, here, but, I suspect that the bulk of programming, today, is being done to maintain or extend legacy enterprise apps.

    Those legacy enterprise apps will be replaced over time ...

    Why? Because there is a cheaper/better way of doing the jobs that those programs do.

    It won't happen immediately -- but it will happen!


    Let me give you an example that may help illustrate what I mean ,,,

    In 1957, I went to work as a punched card tab operator for a toy company in downtown Los Angeles. AIR, there were about 25 people in the department. The only application we performed was preparing purchase orders -- basically order entry that fed into accounts receivable.

    The process went something like this:
    • the salesmen would handwrite orders (order forms on clipboards) all day
    • the orders were keypunched and processed
    • orders were printed on the night shift
    • a courrier picked up the printed orders at 4:00 AM and drove them to the warehouse (Anaheim, AIR) where they were picked and shipped
    • rinse and repeat

    There were, maybe 100-200 orders on a busy day. I wasn't savvy enough to do the math back then (made $1.75 an hour) -- but I suspect the cost of processing each Purchase Order was more than $50.

    Later, I worked at other companies (Consolidated Electrodynamics, Hoffman Electronics, Lockheed Air Service) where a similar scenario played out for purchase orders ... Better, faster, equipment (at higher costs).

    Some time in the 1960s, a consulting firm reported that it cost ~$40 to prepare a purchase order (an average across all automated industries) -- in 1960s dollars ~= $200 in 2015 dollars.


    Well, we don't do it that way, anymore ... Apple processed over 1 million Watch purchase orders in 12 hours.

    I've written a few shopping carts. and I suspect the cost of placing a modern purchase order is $1-$10. Even of I'm off by an order of magnitude -- it's still much cheaper than it used to be.


    What, I am attempting to illustrate is that the legacy apps of today won't be rewritten in Swift (or any other language) -- they'll just be maintained until the entire process is replaced by a more modern (cheaper, better, etc.) process.


    Enterprise is faced with mounting costs of maintaining esoteric, dated, legacy solutions that fail to satisfy today's needs to remain competitive. Alternatives are becoming available where the bulk of the costs and work is being outsourced to services, with a smaller kernel of work remaining in-house -- primarily the design and programming to exploit and interface the outsourced solution. This remaining, in-house design and programming need not be burdened with the limitations of the legacy baggage of the past.

    Things, like the Apple/IBM partnership are already beginning to replace existing legacy solutions with broader, modern, apps that include mobile, cloud, big data, analytics, etc. Much of this written or accessible with Swift programs.

    Surely, enterprise can try to retrofit / extend existing languages to access these outsourced solutions -- but to what end?

    Swift is modern, fully capable and already here ... and Swift is where the money is / is going to be!
Sign In or Register to comment.