3 ms·
Serious question: Why would Apple then create Swift and Swift Playgrounds for iPad in order to get more people to program? Seems like they are giving us some to
by donkeyd 10y ago
Serious question: Why would Apple then create Swift and Swift Playgrounds for iPad in order to get more people to program? Seems like they are giving us some tools.
- hvidgaard 10y agoThink of tools as apis to use and integrate existing services in their ecosystem into your own. A programming language is not that.
- chriswarbo 10y agoI'm not an iPad user, but hasn't Apple had a long-running policy of forbidding any app which includes an interpreter? I've seen this being mentioned for years by various programming communities (e.g. Squeak Smalltalk), where the only work around is to buy a Mac, buy OSX, buy the Apple developer tools ("Xcode"?) and pay a $99 subscription fee in order to transfer your own app to your own iPad.
- osxrand 10y agoI think your info is a bit outdated (and some incorrect). Buy a mac (or ignore the Eula and run OS X in a VM), install the dev tools (free), install the app on your iPad (free). If you want to publish, there's a fee (per year).
- eru 10y agoThey don't forbid interpreters. But they forbid downloading code into these interpreters. Ie running what the user types is OK. (At least as far as I remember.)
- deleted 10y ago[deleted]
- rdsnsca 10y agoYour free to down load code now, many of the interrperters come with build in support for version control now.
- masklinn 10y ago> I'm not an iPad user, but hasn't Apple had a long-running policy of forbidding any app which includes an interpreter? That policy was rescinded almost 6 years ago: http://daringfireball.net/2010/09/app_store_guidelines http://daringfireball.net/2010/09/app_store_guidelines and had been instituted only a few months earlier: http://daringfireball.net/2010/04/why_apple_changed_section_331 http://daringfireball.net/2010/04/why_apple_changed_section_... IIRC there's a policy against running downloaded code (at least automatically downloaded code) in anything but the bundled JS runtime, but bundling an interpreter in an application and running user-provided code is not an issue. You can run a Python app on iOS (e.g. via Kivy) and there are Python interpreters in the appstore. > buy the Apple developer tools ("Xcode"?) That's free (with a mac and OSX obviously): https://itunes.apple.com/app/xcode/id497799835 https://itunes.apple.com/app/xcode/id497799835 > and pay a $99 subscription fee in order to transfer your own app to your own iPad. The developer account is only necessary to publish in the store, since Xcode7 and iOS9 you can sideload applications with a regular appleid: http://www.howtogeek.com/230225/how-to-sideload-apps-onto-an-iphone-or-ipad-without-jailbreaking/ http://www.howtogeek.com/230225/how-to-sideload-apps-onto-an...
- gergles 10y agoTo be clear, you can sideload to a device without paying, but you still can't use all the features. If you want to make an app that uses App Groups, for example, you have to have a paid account. There's no way to even test it without paying your annual Software Development Tax.
- gergles 10y agoI don't understand why this has been downvoted so aggressively. I didn't say anything inaccurate. You can't develop an app that uses App Groups without a paid developer program account. You can't even test such an app locally on a simulator without a paid account.
- TeMPOraL 10y agoMy current theory: they need more programmers making stuff they can sell for iOS. Popularizing Swift is beneficial to them because it still technically keeps people locked in the Apple ecosystem (a kind of soft lock-in - they've opened the language, but it's still primarily supported by Apple). Increasing the pool of hirable developers does not otherwise exclude selling computing toys to the general population. I haven't heard of Swift Playgrounds for iPad before. I've just finished watching its demo - I must say, it looks nice and has some cute solutions for entering code via touch interfaces (like that for-loop dragging thing) that I hope will spread around to other applications. That said, it's an educational app - I can learn some Swift with it. But what can I actually program with it? Can I use it to make my calendar talk with my SMS app? Or with my Bluetooth headset? That's the thing I complain about when I say that mobile devices are developed as toys, not tools. You're always limited to some functionality provided by the vendor and third party apps. Apps that don't talk to each other, that restrict your choices to few operations their authors thought about. Not to mention apps that increasingly want to suck out and monetize all your data, but that's beside the point. On Android we have Tasker, which is something that I believe should be a default component of Android (albeit it could use some ideas from Swift Playground to make UX better). But it isn't, and the current trends in mobile, web and desktop suggests it'll never be - the end user is forbidden from using the computer, they must only ask their apps for services.
- pjmlp 10y agoYes you can. Swift Playground has full access to the iOS APIs. https://developer.apple.com/videos/play/wwdc2016/408/ https://developer.apple.com/videos/play/wwdc2016/408/ I applaud Apple for this, as it makes the developer experience closer to the Xerox PARC ideas. EDIT: typo have => has.
- tfinniga 10y agoI think rather than assuming malice, assume either incompetence or different goals. The saying I've heard is that most people want elevators, but we've been selling them helicopters and blaming them when they crash. Someone who is largely computer illiterate can download and run apps without any fear of messing things up. There is essentially no malware for iOS. They can always exit the app. They can always delete the app. If the app wants to get the user's location, or email, or documents, or pictures, it has to ask for permission from the user. The app will not mess with things that the user can't figure out - there are easy ways to check (and in some cases limit) space usage, bandwidth usage, and battery usage. Apps are now safe. This is an amazing achievement! However, apple has not yet figured out how to safely enable development at the same time. They're getting closer, but they're not there yet. It is obvious that that was not their top goal. There are already lots of general purpose computing devices, and if you want development access to your device, you can get it as a developer.