Apple brings coding to the iPad with Swift Playground

24

Comments

  • Reply 21 of 74
    nolamacguynolamacguy Posts: 4,758member
    jasenj1 said:
    how and why on earth you would be comparing it to Xcode is a mystery.
    Because the touchy-feely video had people gushing about how they're going to change the world now that they know how to code. Umm... Swift Playground is not "really" coding. It's tiny sketches in a tightly controlled environment. Doodles vs blueprints. Yes, it may help people learn some very simple basics and see if they grok coding. But they'll have a long way to go before being a software developer.
    you watched it wrong. nobody said they're deploying apps from SP. it's a kid friendly tool to teach some basics. then you graduate to real IDEs. 

    its like youre bashing band class for not teaching kids how to compose music. or Paint for not producing artists. get fucking real. 

    some of you are just shockingly negative haters. your lives are very unhappy. 
    edited June 2016 VisualSeedroundaboutnowration aljcdinkinsmnbob1patchythepiratepscooter63ericthehalfbeebrometheusthepixeldoc
  • Reply 22 of 74
    VisualSeedVisualSeed Posts: 217member
    The next step should be to make a hypercard style development environment that lets someone build simple apps using swift as the programing / scripting language. The apps could be imported into Xcode at some point in the future and extended. 
    docno42
  • Reply 23 of 74
    satchmosatchmo Posts: 2,699member
    jasenj1 said:
    I guess I'm old and jaded. As a professional software developer I find it really hard to believe coding on the iPad will produce anything "real". Maybe it will give people a taste of breaking a problem down into steps, working with picky syntax, and introduce some other basic software production concepts. But compared to XCode, Eclipse, NetBeans, IntelliJ, and other "real" development environments, Swift Playground seems almost delusional.
    You're not old and jaded. The examples she showed hid all the programming complexity that will be required for that stupid little buddy to stepForward [determine obstructions, raise up and down., etc] that would be necessary when coding your game. It gives kids a false sense of understanding something that has never been solved: removing the complexity of programming to do the simplest of crap your brain and body do subconsciously.
    I agree. Mimicking by copy and paste is not learning. It's like math...sometimes you can simply plug formula to solve something...but what happens when you can't?  
    True learning is understanding concepts behind what you did.
    That said, this may very well get some kids interested enough to dig deeper.

    Programming to the general lay person is not simple. Not unlike a few years back when Apple showed how easy it was to build an app with Xcode. They then proceeded by showing huge lines of code being cut and pasted. It's just the way it was presented. It's just a bit exaggerated. 
  • Reply 24 of 74
    dick applebaumdick applebaum Posts: 12,527member

    crowley said:
    It wasn't really clear how far Swift Playground extends beyond the hand-holding tutorials, or indeed how far those tutorials go beyond the fundamentals.  The emoji physics simulator seemed to be a bit more extensive and user editable, but could someone learning Swift access a blank swift editor and code from scratch?  Are any Apple frameworks available?

    Not very clear if this is just a coding 101 education app, or if it has any aspiration towards equivalence to Playgrounds on the Mac.

    Won't really know how powerful the Playground iPad App is until I get a chance to play with it.  But, I suspect that it is more powerful than she could demo on stage -- I got the impression that you could write code equivalent to the Swift Playgrounds in Xcode and on the IBM Swift web site.  Also with the enhancements to iOS and macOS you should be able to copy/paste code among them.

    The Playground iPad app possibly could support a power user mode if the iPad has a keyboard attached.

    Also, I suspect that the IBM partnership has a lot to do with a lot of these changes and the use of Swift.


    As to frameworks, Apple has been unclear which frameworks they plan to open source -- but, as I understand it, they are reimplementing them (many? Most?) in Swift.


    edited June 2016
  • Reply 25 of 74
    dick applebaumdick applebaum Posts: 12,527member

    Maybe because the iPad Playground app was not leaked -- I thought that it was the most significant (long term) announcement today!

    mnbob1docno42palomine
  • Reply 26 of 74
    dick applebaumdick applebaum Posts: 12,527member

    Well, I guess The Playgrounds App is quite a bit more powerful than demoed:

    https://www.apple.com/swift/playgrounds/



    tmaymnbob1patchythepirateericthehalfbeenolamacguy
  • Reply 27 of 74
    jasenj1jasenj1 Posts: 923member
    The next step should be to make a hypercard style development environment that lets someone build simple apps using swift as the programing / scripting language. The apps could be imported into Xcode at some point in the future and extended. 
    That would be cool. I know people made a lot of very amazing things with Hypercard back in the day. It was approachable, well-defined, but flexible and with hooks into more powerful capabilities.

    And I'd really like to see this Swift Playground on macOS. Real keyboard, ability to save projects to files, etc. The iPad may be OK for initial concept exposure, but I can't imagine doing any significant amount of writing on it.

    I did watch the keynote. What I heard was "people are going to learn to code by using this app. And they'll change the world!" No. They will dip their toes into programming, get a little exposure to general concepts and tasks, and from that be able to learn whether they want to move on to really learn how to be a developer. Just as with music lessons: you give a kid some lessons, they learn a few things and find out if they have a knack for it and/or enjoy it. They may never be a concert pianist, but they may enjoy playing Christmas carols at family gatherings, and listen to music with greater understanding than others. Or for another analogy: Everyone learns English, but not everyone goes on to be a novelist. Knowing some basic coding I think will become like English or math: everyone knows a little bit, but few are actually very good at them. I felt the demo oversold the Playground app.
  • Reply 28 of 74
    wizard69wizard69 Posts: 13,377member
    jasenj1 said:
    I guess I'm old and jaded. As a professional software developer I find it really hard to believe coding on the iPad will produce anything "real". Maybe it will give people a taste of breaking a problem down into steps, working with picky syntax, and introduce some other basic software production concepts. But compared to XCode, Eclipse, NetBeans, IntelliJ, and other "real" development environments, Swift Playground seems almost delusional.
    I suspect the target is extremely young people. The same people Turtle graphics was targeted at. Watching the clip I wasn't really that impressed myself but then again I'm not an educator. Even so I think Apple has made a big mistake placing to much emphasis on iPad usage when you really need a laptop with its keyboard to program effectively. Now onto the thing that really bothered me about that presentation, the woman on stage really needed to do worthing with her hair. Not to be that guy but I found that hair to be distracting! Mind you I like woman with one hair but the distraction was simply too much.
  • Reply 29 of 74
    palegolaspalegolas Posts: 1,361member
    crowley said:
    It wasn't really clear how far Swift Playground extends beyond the hand-holding tutorials, or indeed how far those tutorials go beyond the fundamentals.  The emoji physics simulator seemed to be a bit more extensive and user editable, but could someone learning Swift access a blank swift editor and code from scratch?  Are any Apple frameworks available?

    Not very clear if this is just a coding 101 education app, or if it has any aspiration towards equivalence to Playgrounds on the Mac.
    It wasn't really clear to me either. But there's s big fat plus sign where you have your project, implying that you could just start your own project from scratch. I also suspect that you need to keep all your code within one document. And probably, possibly can't use any files? I don't know.. It'd be great if you could use iCloud Drive for using custom graphics. On the web page it says: 
    Take things to Xcode.
    Then take them further.
    Because you’re working with real code, you can import and export directly between Swift Playgrounds and Xcode. So you can try out your ideas with the tool pros use to develop iOS and Mac apps.

    http://www.apple.com/swift/playgrounds/

  • Reply 30 of 74
    wizard69wizard69 Posts: 13,377member
    jasenj1 said:
    I guess I'm old and jaded. As a professional software developer I find it really hard to believe coding on the iPad will produce anything "real". Maybe it will give people a taste of breaking a problem down into steps, working with picky syntax, and introduce some other basic software production concepts. But compared to XCode, Eclipse, NetBeans, IntelliJ, and other "real" development environments, Swift Playground seems almost delusional.
    You're not old and jaded. The examples she showed hid all the programming complexity that will be required for that stupid little buddy to stepForward [determine obstructions, raise up and down., etc] that would be necessary when coding your game. It gives kids a false sense of understanding something that has never been solved: removing the complexity of programming to do the simplest of crap your brain and body do subconsciously.
    It is turtle graphics all over again!!!!! Serious it reminds me of Logo in concept with Swift as the programming language. At this point I'm not convinced but hopefully I can have this installed by tomorrow. Apples servers are slow again.
  • Reply 31 of 74
    jasenj1jasenj1 Posts: 923member
    Huzzah! I can finally learn some coding without, like, having to work very hard!

    I wrote a few text games in BASIC on my dad's NorthStar Horizon. It will be nice to tinker on my iPad Amateur and see if I'm interesting in delving deeper.
    Exactly. A person can take a few piano, guitar, drum, violin, etc. lessons and decide if music is something they want to pursue. Perhaps in those lessons they'll learn what octaves, quarter-notes, time signature, and the note names are. But that's a far cry from then declaring, "Look at me! I'm a musician!"
    tmaynolamacguyking editor the grate
  • Reply 32 of 74
    wizard69wizard69 Posts: 13,377member
    jcdinkins said:
    It must be real fun to live with you.
    It is fun. This is complex stuff that being trivialized only adds frustration to the kid [who Tim thinks every kid should become a programmer: an absolutely terrible fantasy] when they discover they cannot master it.
    I'm not sure where the idea that every kid needs to learn coding came from. It is almost as stupid as learning a second language for every kid in school, it really serves no purpose. I think it is a liberal thing where everybody born has the same sets of skills and abilities in their minds. People need to instead realize that people are born with innate strengths and weaknesses, not everyone is a mathematician, nor does everyone have the ability to be an engineer or create fine art.
    patchythepirate
  • Reply 33 of 74
    dick applebaumdick applebaum Posts: 12,527member
    wizard69 said:
    jasenj1 said:
    I guess I'm old and jaded. As a professional software developer I find it really hard to believe coding on the iPad will produce anything "real". Maybe it will give people a taste of breaking a problem down into steps, working with picky syntax, and introduce some other basic software production concepts. But compared to XCode, Eclipse, NetBeans, IntelliJ, and other "real" development environments, Swift Playground seems almost delusional.
    You're not old and jaded. The examples she showed hid all the programming complexity that will be required for that stupid little buddy to stepForward [determine obstructions, raise up and down., etc] that would be necessary when coding your game. It gives kids a false sense of understanding something that has never been solved: removing the complexity of programming to do the simplest of crap your brain and body do subconsciously.
    It is turtle graphics all over again!!!!! Serious it reminds me of Logo in concept with Swift as the programming language. At this point I'm not convinced but hopefully I can have this installed by tomorrow. Apples servers are slow again.

    Yeah, the servers are slow ...

    But while you're waiting have a look at:

    https://www.apple.com/swift/playgrounds/


    It looks like we both will be convinced of the capability one we get our hands on it.  Some of the iPad screen shots look a lot like Xcode -- and the ability to export/import code between them sounds promising.


    Edit:  Also, have a look at the iOS 10 release notes -- they discuss what the Playgrounds app is now, and will be in the future.

    edited June 2016
  • Reply 34 of 74
    jasenj1jasenj1 Posts: 923member
    palegolas said:
    It wasn't really clear to me either. But there's s big fat plus sign where you have your project, implying that you could just start your own project from scratch. I also suspect that you need to keep all your code within one document. And probably, possibly can't use any files? I don't know.. It'd be great if you could use iCloud Drive for using custom graphics. On the web page it says: 
    Yeah. It looks like there's some serious depth there. Fiddle around on the iPad, then move over to XCode on the Mac when you get more complicated.
    mnbob1
  • Reply 35 of 74
    volcanvolcan Posts: 1,799member
    wizard69 said:

    I'm not sure where the idea that every kid needs to learn coding came from. It is almost as stupid as learning a second language for every kid in school, it really serves no purpose. I think it is a liberal thing where everybody born has the same sets of skills and abilities in their minds. People need to instead realize that people are born with innate strengths and weaknesses, not everyone is a mathematician, nor does everyone have the ability to be an engineer or create fine art.
    It is not a 'liberal' thing. Tim is simply suggesting that introduction to coding be a required subject like math or PE. They don't expect everyone to become an app developer any more than they expect them to become a mathematician or play for a professional sports team. Students should get some introductory exposure to coding like any other required subject, because basic understanding of the principles of coding can be a useful skill later in life, perhaps to build confidence to add some simple CSS or JS to a web page for example, and understanding the basics of coding also helps to develop critical thinking. Knowing a little of the basics certainly can't hurt.
    edited June 2016 mnbob1patchythepiratestevehnolamacguytryddocno42
  • Reply 36 of 74
    dick applebaumdick applebaum Posts: 12,527member
    volcan said:
    wizard69 said:

    I'm not sure where the idea that every kid needs to learn coding came from. It is almost as stupid as learning a second language for every kid in school, it really serves no purpose. I think it is a liberal thing where everybody born has the same sets of skills and abilities in their minds. People need to instead realize that people are born with innate strengths and weaknesses, not everyone is a mathematician, nor does everyone have the ability to be an engineer or create fine art.
    It is not a 'liberal' thing. Tim is simply suggesting that introduction to coding be a required subject like math or PE. They don't expect everyone to become an app developer any more than they expect them to become a mathematician or play for a professional sports team. Students should get some introductory exposure to coding like any other required subject, because basic understanding of the principles of coding can be a useful skill later in life, perhaps to build confidence to add some simple CSS or JS to a web page for example, and understanding the basics of coding also helps to develop critical thinking. Knowing a little of the basics certainly can't hurt.

    I think that the plan is that Swift will [eventually] replace client-side programming languages such as JavaScript.

  • Reply 37 of 74
    mdriftmeyermdriftmeyer Posts: 7,503member
    volcan said:
    wizard69 said:

    I'm not sure where the idea that every kid needs to learn coding came from. It is almost as stupid as learning a second language for every kid in school, it really serves no purpose. I think it is a liberal thing where everybody born has the same sets of skills and abilities in their minds. People need to instead realize that people are born with innate strengths and weaknesses, not everyone is a mathematician, nor does everyone have the ability to be an engineer or create fine art.
    It is not a 'liberal' thing. Tim is simply suggesting that introduction to coding be a required subject like math or PE. They don't expect everyone to become an app developer any more than they expect them to become a mathematician or play for a professional sports team. Students should get some introductory exposure to coding like any other required subject, because basic understanding of the principles of coding can be a useful skill later in life, perhaps to build confidence to add some simple CSS or JS to a web page for example, and understanding the basics of coding also helps to develop critical thinking. Knowing a little of the basics certainly can't hurt.
    Becoming multi-lingual is an invaluable tool, throughout life. Force feeding programming has nowhere near the long term value and rationale of traditional educational building blocks. 

    Anyone can assimilate human language showing fluency in a short period of time. Programming is not remotely on the same level of universal understanding: it would be a waste of time vs. making sure computer literacy is strong is invaluable as another tool.
  • Reply 38 of 74
    macapfelmacapfel Posts: 575member
    Looked a lot like Scratch, which is a great tool for kids. 
  • Reply 39 of 74
    MarvinMarvin Posts: 15,320moderator

    Well, I guess The Playgrounds App is quite a bit more powerful than demoed:

    https://www.apple.com/swift/playgrounds/
    Although they are a bit more sandboxed than XCode, Swift Playgrounds should be able to do much of what apps like Mathematica, Matlab etc can do:

    https://itunes.apple.com/app/matlab-mobile/id370976661?mt=8
    http://www.mksg.de/m48/
    https://github.com/uraimo/Awesome-Swift-Playgrounds#mathematics

    The Swift app will do it all natively and free. This is a good way to learn mathematical algorithms and see the results visually. People can write their own classes and learn about data structures. Some students can use it as a visual graphing calculator. It can probably do HTTP requests too so apps would be able to parse data online, perhaps even build a mini search engine/crawler.

    Developers will hit a limit by not being able to make a finished app or design a UI visually but it should cover all the important parts of the language.

    Given that Swift can run on servers, the code developed on the iPad can be uploaded to a server and linked with other code to produce an app. Apple has to lock down the development for now because someone could develop a program that would damage the system, maybe even jailbreak it and they wouldn't have a way to fix it. If they figure out a permissions model that lets them run code without the possibility of damaging anything, they'll be able to let the iPad do more. Apple's new filesystem might be a part of that as it can create expandable filesystem containers.

    There are people making full games without writing a single line of code these days with visual scripting in 3rd party game SDKs like Unity and Unreal:

    http://www.hutonggames.com/showcase.html
    https://docs.unrealengine.com/latest/INT/Engine/Blueprints/





    That's something Apple can do with the touch devices. They can have a node UI with blocks and clicking a block can open a single sheet that contains code and then with touch, developers hook the blocks together. This can be done for building a standard app UI. People would make screens with buttons like with Storyboards but the buttons could move to a new screen view just by linking a node and there could be a data processor node that branches to different outcomes.

    They can have an asset library that brings data in from other apps for sprites/textures and 3D models. Assets can be turned into node blocks then linked code blocks perform actions on those in the scene.

    When a scene is done, there can even be an online service offered by Apple to build it into an app that is ready for deployment. These kind of apps would be easier for Apple to vet as it would be harder to hide malicious code in them. Ideally this kind of development environment should eventually be able to publish a standard 3-swipe, Flappy Bird, Doodle Jump type game, which gives developers the opportunity to earn a living from their work and be able to afford a Mac should they need to take their development further.
    patchythepiratedocno42
  • Reply 40 of 74
    jasenj1 said:
    I guess I'm old and jaded. As a professional software developer I find it really hard to believe coding on the iPad will produce anything "real". Maybe it will give people a taste of breaking a problem down into steps, working with picky syntax, and introduce some other basic software production concepts. But compared to XCode, Eclipse, NetBeans, IntelliJ, and other "real" development environments, Swift Playground seems almost delusional.
    You had me at "old and jaded." So why did you go on?

    I kinda think Apple knows what it's doing. So, let it be, pal.

    I've been trying to learn Apple OS programming for too many years, but none of you smug bastards ever seemed to want to provide any comprehensive path to learning what y'all know. Sure, there's a lot of documentation out there, but that in itself has been a barrier for me: where to start? where to go if I had a problem? how to learn basic concepts and design paradigms?, etc.

    Well, this to me seems like finally a comprehendible bridge into Apple OS programming which finally gives some immediate feedback through Swift's "playgrounds" without the relative complexity of XCode.

    It also gives me a good reason to need and want an iPad. I'm excited!
    mnbob1patchythepiratestevehnolamacguybrometheusking editor the gratedocno42palomine
Sign In or Register to comment.