4 ms·
I love composability as much as the author, but his opinion is, to put it kindly, not well informed. iOS has a myriad of mechanisms for sharing content within a
by natch 15y ago
I love composability as much as the author, but his opinion is, to put it kindly, not well informed. iOS has a myriad of mechanisms for sharing content within and between apps, bot from the same developer and from different developers, with and without prior agreement, and for composing workflows and experiences that are greater than the sum of the parts.
Some of these mechanisms are new, and the possibilities have not yet been fully plumbed. Some have been around for a while.
But iOS is just getting started. People said the iPad was a "read-only" or "consumption-only" device, but, over time, we have seen tools come out that are great authoring tools for various types of content. The same thing will happen (and already has happened, but is growing over time) with cross-app workflows.
As far as the title, "anti-Unix and anti-programmer," taking the first part, well yes it doesn't provide a built in command line for programmers, if that's what he means, although it does happen to be built on UNIX, and it benefits from the maturity of UNIX (and gives back, with OSS tools like LLVM).
On the second part, the tools it does provide for programmers are truly wonderful - the Objective-C language, the frameworks, an amazing compiler with static analysis (if you don't know what this gives you, the answer is pure joy), the development environment (though Xcode 4 had a rocky rollout, it has proven itself to be a sweet update), the patterns that are used and encouraged, and the architectural choices, are all very well thought out.
Programmers coming from other mobile platforms have told me that they left behind a lot of pain, and found a lot of power on iOS.
"Anti-programmer" is a very odd way to describe a platform that makes programmers who get into it happy with their coding experience, makes them money, and gives users a great experience while keeping their private information secure from abuses by ill-intentioned programmers.
I can't help but be baffled by where he is coming from. I love UNIX, the command line, and composing commands, but then I love cooking in the kitchen too. Different environments come with different tools.
If we want to compare just mobile development environments, iOS is one that has clearly been developed with a careful deliberative process intended to preserve good battery life, protect user data, and avoid painting itself into any architectural corners. There are constraints. There always are.
But iOS is growing, with very exciting (for programmers) features with every update, including deep stuff that goes down to the core architectural level of how your data flows in your program, in ways that promise a very, very happy life for iOS programmers on multiple core devices. The future is very bright for iOS programming.
The "anti-freedom" charges, the locking out of certain features, you get the same stuff on any platform. Just try to publish an app that abuses the Android logo in any Android market. Not that you would want to, but then, I wouldn't want to publish an app that steals user data, and that's exactly the kind of thing iOS does not give me the "freedom" to do... and that's a good thing. All the mechanisms for preventing abuse could have been done in a much more heavy-handed way, such as by being tied to a central email account that you use to authenticate to dozens of critical services you depend on in your life, that can be yanked and shut down at any time, with a very tenuous appeal process. As developers we are lucky to have a platform that has done things in such sensible ways.
- aninteger 15y agoiOS does not provide tools for programmers. At least not an Objective-C compiler. I don't think any modern OS comes with a built in C compiler though. Apple has provided these things for iOS
- drcube 15y agoGNU gcc? Or did you mean to say "mobile" when you wrote "modern"?
- leviathant 15y agoIIRC, if you have the .NET Framework on a Windows computer, you've got a command-line C# compiler, csc.exe, usually located in in C:\Windows\Microsoft.NET\Framework\vWhatever
- vacri 15y agoThe "anti-freedom" charges, the locking out of certain features, you get the same stuff on any platform. Just try to publish an app that abuses the Android logo in any Android market. Really? "Android isn't free because you can't 'abuse' the brand's logo"? That's the best counter-example you could come up with?
- zwaldowski 15y agoYou mean besides the fact that you can't call your build of Android, Android without Google's permission? The fact that Google still hasn't released the sources to a 7-month-old "open source" OS? Yeah, Android is totally "open."
- vacri 15y agoWould you like to have another try? From what I glean from your comment, you equate Google's protection of it's name and the fact that one version of the OS hasn't been open-sourced to the iron-fisted grip of Apple and their control. (by the way, if you want android source, here you go, courtesy of the folk who "don't open source their OS" http://source.android.com/source/downloading.html http://source.android.com/source/downloading.html ) Control of branding is a stupid argument to base "is this free" on. Hell, even Debian, the freeest operating system ever, amicably forked firefox to iceweasel - the only difference being the name and artwork. Firefox is totally free for you to do anything with at all... except for the branding. It's to protect themselves from someone turning it into malware and distributing it under the official name. Branding is a stupid thing to claim as the be-all and end-all of whether something is 'free'. Hell, even the BSD license that allows you to do anything with the code, sell it, free it up, throw it against the wall, even this extremely free licenses has branding requirements - Neither the name of the <organization> nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.. And even then, Android does allow you to modify the logo. You can have the logo in a police uniform (see android police) or on a skateboard (see cyanogenmod). You just can't put a derogatory version on the android market. How very onerous - clearly those are stifling conditions for developers to work under! Compare to Apple who won't even give permission to use the word 'free' with their products (as in, they won't help you if you run a competition to win a 'free' ipad). As for "yeah, totally open" - it seems to me that there's a ton of people modding android code because they can, but on the Apple side of things, where is the opened source... at all? Why have you set a much, much higher bar for openness for one product but not the other?