Apple Inc's new Swift language a "huge leap forward for iOS ecosystem," offers "enormous opportunity

24

Comments

  • Reply 21 of 72
    rayzrayz Posts: 814member
    reydn wrote: »
    So, will Swift make it easier for a programming noob to develop basic apps?

    It'll make it easier for them to get started, yes. After that, it's down to perseverance, like everything else.
  • Reply 22 of 72
    rayzrayz Posts: 814member
    bugsnw wrote: »
    Or is there an "Android Insider" forum chock full of rabid Android fans?

    Yes.
    You're in it.
  • Reply 23 of 72
    Quote:

    Originally Posted by Paul94544 View Post



    Windows OS has - a problem, which was this: most of the people using it were unhappy for pretty much of the time. Many solutions were suggested for this problem, but most of these were largely concerned with the movement of small little files around the desktop, which was odd because on the whole it wasn't the small little files that were unhappy

     

     

    Quote:

    Originally Posted by Paul94544 View Post

     

    The future holds much for the Sirius Cybernetics Corporation. A merger with Microsoft is very likely in the future, benefiting both companies. However SCC has expressed concerns that its Quality of Product could be adversely effected. However, Bill Gates Has assured he will oversee and 'Captain' the proposed merger; SCC shares continue to fall.


     

     

    Quote:

    Originally Posted by GTR View Post





    That's depressing.



    And here I am, brain the size of a planet...

     

     

    Thanks guys. You reminded me about one of the most enjoyable books I ever read!

    So long Douglas.. and thanks for all the books!

  • Reply 24 of 72
    igerbiligerbil Posts: 7member

    Not only basic apps. Swift will replace Objective-C in perspective making your life much easier as a developer; after all C is 30-years old dinosaur, but no one dares to admit that; only now people are lifting their heads..

  • Reply 25 of 72
    asciiascii Posts: 5,936member

    So that's the plan for Swift, an enterprise language like Java or C#. 

     

    The reason enterprise apps are ghastly though, is that enterprises just want something basic and functional that works as cheaply as possible. They are not interested in pretty GUIs or even polish. The GUIs we are used to on the iPad come from competing for the consumer's attention. Replacing the PC with the iPad + a new programming language is not going to change any of these underlying enterprise priorities, so won't cause a revolution in enterprise apps. 

     

    What it might do however is reduce the cost of developing and maintainging the same old apps, since the iPad will be cheaper to administer than a PC. And maybe speed up development of apps, depending on how successful the playground is in real life (that is still an unknown). The new language and Cocoa frameworks alone won't reduce cost because the Java and .NET frameworks are largely equivalent these days. Unless of course Apple add some amazing new frameworks that leverage IBM's services, that Java and .NET have no equivalent of.

  • Reply 26 of 72
    misamisa Posts: 827member
    reydn wrote: »
    So, will Swift make it easier for a programming noob to develop basic apps?

    99% of the people are simply not software engineers. The smaller portion of people can learn software engineering, tend to cling to what they know for as long as possible, even when the writing is on the wall.

    For example. Java and Flash are two things you should absolutely not be using to write software. The future of Java is unclear because Oracle has a record of propietarization. Likewise with Flash, Adobe has done the same since it acquired it from Macromedia. All those Flash things people made with ActionScript2? Those were easy for Noobs. AS3, forget it. Java and Flash are full of exploits now because they are being used in ways they were never intended to be used as.

    The more OOP-required complication a language gets, the less new people will use it. I've seen this happen with Perl, PHP and even Javascript. If you want people to actually use good OOP practices, it has to be there from be beginning (eg C#) and developers who learn it, will not really be able to apply that knowledge to other OOP languages. Learn C and you can learn anything. My beef with Java comes from it being taught in college like C was obsolete back when Java was 1.02 .

    So consider me highly skeptical when any new programming language comes out. I learned Perl and PHP because that is what people were using, now almost nobody uses Perl and all web content is PHP. Yet PHP's evolution as a language has made it unusable for new developers, because all the simplicity has been taken out of it, like with Flash.

    A Noob wants to do this:
    print "Hello World"
    Not this:
    include "somelibrary" into namespace
    const string helloworld = "Hello World"
    program main:
    print somelibrary.stdout(helloworld)
    exit
    or even this:
    #include <iostream>
    using namespace std;

    class helloworld {
    public:
    void hellow(){return("Hello World");}
    };

    int main () {
    hello = new helloworld;
    cout << helloworld.hellow();
    return 0;
    }

    This is the problem with software development today. Is that we keep layering "frameworks" on top of things that don't need it. So for a new developer to learn something, they aren't taught what or how those frameworks do anything, so it seems like a whole bunch of wasted space in the source code that does nothing important, leading to bugs later from improper initialization, and circular dependencies (*cough*zlib*.)

    So Swift's ability to see what is going on immediately with the Playgrounds puts it a lot closer to how flash used to be usable for newbies, but time will have to see if Swift gains traction, or developers continue to use C crossplatform libraries like SDL or wxwidgets, just to avoid having to do things differently on every platform.
  • Reply 27 of 72
    relicrelic Posts: 4,735member
    Quote:
    Originally Posted by Phone-UI-Guy View Post

     

     

    Swift can make it be a much easier transition for all those enterprise Java programmers. It is really interesting to think that Apple had the creation of Swift on their to-do list in part for getting deeper into Enterprise. There are obviously other benefits, but that is certainly looking at the chess board several moves ahead of the game.


    As a Java Enterprise programmer, why would I want to use a programming language that isn't cross platform compatible, isn't that the whole point. No, I see web driven apps replacing Java not Swift, maybe a few will utilize it for specialized apps that require their apps to be ran locally.

  • Reply 28 of 72
    igerbiligerbil Posts: 7member

    Computer should serve men, not vice-versa.... That paradigm should apply also to development, not users... You can learn any language (Java, Objective-C, Swift) but being a real developer is a different story. How many in the world can speak English and how many wrote Tales of Mistery and Imagination ?

  • Reply 29 of 72
    Many articles about the Apple/IBM alliance focused solely on iPads and iPhones.

    I do not remember which site covered the Swift angle last week by getting a direct quote from IBM about Swift.

    I thought the author was definitely forward thinking about Swift.

    Some articles mentioned the Mac being a missed opportunity by Apple to really compete with Microsoft on the desktop.

    Once I learned about the Swift connection, I realized Apple did not have to talk about the Mac connection in the alliance.

    The Mac is the trojan horse in the alliance.

    Why?

    Any developer wanting to program Swift is required to have a Mac.

    By not emphasing the Mac, Apple is able to keep the message on mobile while selling more Macs directly to businesses to develop mobile apps using Swift.

    "Mobile First" is funny since Macs are needed to develop the mobile apps in the first place.
  • Reply 30 of 72
    richlrichl Posts: 2,213member
    Quote:

    Originally Posted by sflocal View Post

     

    I can tell you right now, that after my 25+ years of programming experience... just because you can hold a hammer, most will have no business building houses with it.



    I suspect we'll see the emergence of more "I am rich" crap apps, and weekend wannabe coders suddenly proclaiming themselves to be software engineers because they were able to compile a "Hello World" example.


     

    I really disagree with this. Swift is a lot easier to get to grips with that Objective-C (especially pre-ARC Objective-C) and I think that it's a great thing.

     

    Yes, we'll see a lot of crap apps but there's already plenty of crap apps out there. Apple does a pretty good job of rejecting bad apps. However, we'll also see some really creative ideas from people who wouldn't normally be able to write iOS apps.

     

    This has already happened in the PC indie games market as games have gotten to make. We'll see the same thing with iOS apps. The democratization of app development will be a wonderful thing.

     

    On a side note, I'm really enjoying Swift so far. It's such a versatile language - I've used it for everything from simple image processing scripts to full-blown iPad apps. I can't wait until more of the APIs are native rather than being bridged Objective-C APIs.

  • Reply 31 of 72
    MarvinMarvin Posts: 15,322moderator
    richl wrote: »
    sflocal wrote: »
     
    I can tell you right now, that after my 25+ years of programming experience... just because you can hold a hammer, most will have no business building houses with it.

    I suspect we'll see the emergence of more "I am rich" crap apps, and weekend wannabe coders suddenly proclaiming themselves to be software engineers because they were able to compile a "Hello World" example.

    I really disagree with this. Swift is a lot easier to get to grips with that Objective-C (especially pre-ARC Objective-C) and I think that it's a great thing.

    Yes, we'll see a lot of crap apps but there's already plenty of crap apps out there. Apple does a pretty good job of rejecting bad apps. However, we'll also see some really creative ideas from people who wouldn't normally be able to write iOS apps.

    I think it will produce better results overall too. The Unreal or Unity IDEs don't make people produce bad games because they are easier to use than developing your own game engine.

    Python, Ruby, PHP, Javascript are easier languages to use and learn than C. You don't have to think about memory allocations at all, they let you focus on the problem you want to solve. Speed optimization should be done by the compiler, programmers shouldn't have to constantly reinvent the wheel.

    The smartphone camera has led to a huge mass of amateur selfies compared to decades ago where people only invested in photography if they were making something worthwhile but it's progress and it creates a stepping stone for people. The smartphone can help them learn composition and effects and if they want to move up to more manual camera control, they can do that. Swift will let children learn programming quickly and if they eventually migrate to other languages, that's fine because the syntax now has more in common with other languages, unlike Objective-C.
  • Reply 32 of 72
    MacProMacPro Posts: 19,727member
    There is a very good write up in Wired: http://www.wired.com/2014/07/apple-swift/
  • Reply 33 of 72
    dick applebaumdick applebaum Posts: 12,527member
    reydn wrote: »
    So, will Swift make it easier for a programming noob to develop basic apps?

    Yes!

    If you are running OS X Mavericks. you can download the XCode 6 beta (registered Apple developer account required):

    https://developer.apple.com/xcode/downloads/


    Then, download the Swift guided tour:

    https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/GuidedTour.html


    Double click the downloaded guided tour file and it will open in an Interactive Swift Playground:

    Then, Menu-->View-->Assistant Editor-->Show Assistant Editor  (So you can see the interactive Swift output)

    And you get:


    1000


    Interactive Swift (The Playground) uses a process called REPL (Review, Evaluate, Print, Loop) that executes anytime you type or change anything on the playground.

    Have fun!
  • Reply 34 of 72
    MacProMacPro Posts: 19,727member
    paul94544 wrote: »
    The future holds much for the Sirius Cybernetics Corporation. A merger with <a href="http://uncyclopedia.wikia.com/wiki/Microsoft" style="background-image:none;color:rgb(11,0,128);" target="_blank" title="Microsoft">Microsoft</a>
     is very likely in the future, benefiting both companies. However SCC has expressed concerns that its Quality of Product could be adversely effected. However, <a href="http://uncyclopedia.wikia.com/wiki/Bill_Gates" style="background-image:none;color:rgb(11,0,128);" target="_blank" title="Bill Gates">Bill Gates</a>
     Has assured he will oversee and 'Captain' the proposed merger; SCC shares continue to fall.

    If Bill Gates is involved then he has surely found somewhere to copy, reverse engineer or steal the information from. Leopards don't change their spots.
  • Reply 35 of 72
    dick applebaumdick applebaum Posts: 12,527member
    blastdoor wrote: »
    I hadn't thought of the connection between Swift and IBM enterprise apps for iPad, but it seems pretty obvious now that it's pointed out :-)

    If Apple can actually meet cook's goal of going from 20 percent enterprise penetration to 60 percent, that would be a pretty big deal. 

    I too didn't expect there to be a connection between the Swift language and the IBM partnership. I hadn't heard the 20% to 60% numbers before. When did Cook say that? If that is their goal, then that will indeed blow the lid off of sales of iDevices. In fact a 60% penetration of Exxon alone would be worth breaking out the century-old champaign.

    That hole out behind Microsoft's Redmond offices needs to be expanded to hold all the Surface Pro 3s. When filled and covered, I understand there will a break dance exhibit done on the mound... that is after Ballmer does his obligatory monkey dance.

    What's seldom mentioned is that enterprise programmers (IT?) will, likely, be writing their mobile apps using Xcode/Swift -- running Macs.
  • Reply 36 of 72
    dick applebaumdick applebaum Posts: 12,527member
    sflocal wrote: »
    reydn wrote: »
    So, will Swift make it easier for a programming noob to develop basic apps?


    I can tell you right now, that after my 25+ years of programming experience... just because you can hold a hammer, most will have no business building houses with it.


    I suspect we'll see the emergence of more "I am rich" crap apps, and weekend wannabe coders suddenly proclaiming themselves to be software engineers because they were able to compile a "Hello World" example.


     


    True ... but there will be some diamonds among the dross!

    Just think, some school kid learning to program properly with Interactive Swift Playgrounds ...

    I suspect that somewhere inside Apple -- someone is programming with Swift Playgrounds running on an iFad.
  • Reply 37 of 72
    dick applebaumdick applebaum Posts: 12,527member
    Cocoa Frameworks are the big draw. If Swift makes C++ devs more comfy than I can see IBM being influenced more to partner up. But it's Cocoa that does the heavy lifting, not unofficial best of Objective-C and C without C baggage [Swift] and several modern features of Systems Programming.

    When Swift becomes part of LLVM/Clang proper then I know how serious IBM is with this partnership.


    Mmm ...
    Chris Lattner

    Chris Lattner (born 1978) is an American software developer, best known as the primary author of the LLVM project and related projects, such as the clang compiler. He currently works at Apple Inc. as the Director of the Developer Tools department, leading the Xcode, Instruments and compiler teams.

    https://en.wikipedia.org/wiki/Chris_Lattner

    Fast and Powerful

    From its earliest conception, Swift was built to be fast. Using the incredibly high-performance LLVM compiler, Swift code is transformed into optimized native code, tuned to get the most out of modern Mac, iPhone, and iPad hardware. The syntax and standard library have also been tuned to make the most obvious way to write your code also perform the best.

    Swift is a successor to the C and Objective-C languages. It includes low-level primitives such as types, flow control, and operators. It also provides object-oriented features such as classes, protocols, and generics, giving Cocoa and Cocoa Touch developers the performance and power they demand.

    https://developer.apple.com/swift/
  • Reply 38 of 72
    dick applebaumdick applebaum Posts: 12,527member
    ascii wrote: »
    So that's the plan for Swift, an enterprise language like Java or C#. 

    The reason enterprise apps are ghastly though, is that enterprises just want something basic and functional that works as cheaply as possible. They are not interested in pretty GUIs or even polish. The GUIs we are used to on the iPad come from competing for the consumer's attention. Replacing the PC with the iPad + a new programming language is not going to change any of these underlying enterprise priorities, so won't cause a revolution in enterprise apps. 

    What it might do however is reduce the cost of developing and maintainging the same old apps, since the iPad will be cheaper to administer than a PC. And maybe speed up development of apps, depending on how successful the playground is in real life (that is still an unknown). The new language and Cocoa frameworks alone won't reduce cost because the Java and .NET frameworks are largely equivalent these days. Unless of course Apple add some amazing new frameworks that leverage IBM's services, that Java and .NET have no equivalent of.


    Another productivity benefit of Swift is the Swift Compiler is not forgiving -- it rigorously checks for proper syntax, constants and variables must be initialized, Optionals, etc.

    It pretty much guarantees that if an app compiles it will not crash at runtime. (The programmer can overtly make constructs that will cause runtime crashes -- but he knows when he is doing it).
  • Reply 39 of 72
    dick applebaumdick applebaum Posts: 12,527member
    richl wrote: »

    On a side note, I'm really enjoying Swift so far. It's such a versatile language - I've used it for everything from simple image processing scripts to full-blown iPad apps. I can't wait until more of the APIs are native rather than being bridged Objective-C APIs.

    Yes!

    Swift Playgrounds is (are?) addicting!   A missing piece is interactive integration with the Storyboards UI ...

    I suspect that in a future release of Xcode you'll be able define and test the UI interactively,

    You can kinda do this now:

    '1000


    If you click the eye icon in the sidebar, the UITableView will be displayed in a popup -- can't scroll it, though ... yet! :D
  • Reply 40 of 72
    SpamSandwichSpamSandwich Posts: 33,407member
    When 'programming' gets to the point where one can create their own assets and then verbally or textually describe to Siri or Watson what you want done with those assets (in other words, the A.I. performs the coding for you), then I'd do nothing but 'program' all day.
Sign In or Register to comment.