Apple In Trouble With Developers
geek writes "According to Marco Arment, the creator of Instapaper, Apple may be in trouble with developers. According to Arment, the new sandboxing guidelines from Apple are pushing developers away in droves. 'I've lost all confidence that the apps I buy in the App Store today will still be there next month or next year. The advantages of buying from the App Store are mostly gone now. My confidence in the App Store, as a customer, has evaporated. Next time I buy an app that’s available both in and out of the Store, I’ll probably choose to buy it directly from the vendor. And nearly everyone who’s been burned by sandboxing exclusions — not just the affected apps’ developers, but all of their customers — will make the same choice with their future purchases. To most of these customers, the App Store is no longer a reliable place to buy software.' Arment also comments on the 'our way or the highway' attitude Apple often takes in these situations and how it may be backfiring this time around."
Remember, that line didn't even work out for Vader and he had Star Destroyers and millions of clone troopers at his command. If you have the upper hand you can sometimes force people to accept a one sided deal. But if you go beyond that and keep changing the terms on it eventually everyone figures out they might as well take their chances because they are hosed anyway. You have to leave them some hope of survival.
I especially liked how the article has this:
"This even may reduce the long-term success of iCloud and the platform lock-in it could bring for Apple. Only App Store apps can use iCloud, but many Mac developers can’t or won’t use it because of the App Store’s political instability."
Anyone who would write that, in the context of it being a good thing!, is obviously a Kool-Aid drinker. When you are driving those people away it is a warning sign.
Imagine how badly Microsoft is going to bungle this same gambit. Notice how Valve is already running for the exits? Uh huh, good times ahead for everyone!
Democrat delenda est
These are the things you get with the lack of openness - in favor of the One True Platform where everything must submit to the One True Experience
Twitter supports and protects racists - by smearing their critics with the "Hate Speech" label.
This summary contains the word "App Store" a few more times than necessary...
I figured a year or two before Steve being gone would doom the Appleistas. Happened a lot faster than I thought.
Perhaps they'll have less profits to hide in tax structures in other countries so they don't have to pay Uncle Sam.
not the App Store most people are thinking of (the iphone/ipad one). TF summary is misleading.
The mobile App store's always been restrictive, and it seems to have done okay... nothing to see here.
According to Arment, the new sandboxing guidelines from Apple are pushing developers away in droves.
Though nothing in his blog post actually says or even hints at this. But it's fun to pull things out of our ass, eh?
I loathe Apple. They are probably one of the most detestable companies in the technology sector right now. I see them as a modern version of 90s Microsoft.
But this? I think this is a move in the right direction. The added security benefits sandboxing brings far outweigh any negative consequences a few developers too lazy to implement something Apple's been telling them they need to implement for the better part of a year might experience (at least according to the OS X review a few days ago from Ars Technica). And it's not like these developers have no recourse; as long as they register with Apple or whatever, the default OS setting will allow users to go download those products from the vendor's website.
There are plenty of reasons to hate Apple. Their push toward better security practices is not one of them.
What was that about the cheesemakers?
systemd is Roko's Basilisk.
Apple probably doesn't care. When one merchandiser leaves, another one will gladly take its place.
My AC stalker: " I personally agree with your posts most of the time, but that won't keep me from modding you troll"
As a developer I see what he is saying.
But as a user the changes only make it MORE likely I would look in the app store first for something. I know something from there will work along with the system security restrictions.
With more people looking in the app store, the simple truth is more developers will have to service that market somehow or lose users (or at least not grow at the same rate as the mac install base does).
Apple has already changed some ways in which sandboxing works, to accommodate some application needs. And they will do more of that going forward - but historically Apple implements overly strong security to start with, and then whittles it away as required instead of letting users get used to an overly permissive model.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Developers think "Great, I can release an App Store version... I just need to remove x and y." So they do that, and people buy the App Store version. Then the developer realizes his App Store version now can't do Z, which makes it much harder to keep making in parallel with his native version. So he stops updating the App Store version. App Store customer sees non-App Store version getting updates and gets angry.
Many, MANY people buy Macs because they believe that they are better/more stable/more secure than the Windows machines they've used for the past decade. Whether they are or are not is an endless Slashdot debate that is completely tangential to my point, because what's at question here is the perception, not the reality.
If people perceive the Mac to be the stable part, software that doesn't work will likely be blamed on the developer, not Apple. To them, a sandbox is a place young children play in, not a computer security model. A developer trying to explain this to someone who truly doesn't understand the security model will make himself look foolish to the customer, not enlighten the customer.
The App Store will still be used by many Mac users in the same way Origin is used by EA customers. Few (if any) EA customers desired Origin, it's just necessary for Battlefield 3, Mass Effect 3, and The Sims. Similarly, even if many Apple developers ditch the App Store, the fact that Final Cut Studio, Logic, and Aperture are available through it will keep a huge demographic begrudgingly using it. Adobe is probably the one company who can likely keep a working trigger finger on Apple preventing conventional software installations, but their pushing their 'Creative Cloud' model may weaken their grip on said trigger. Ableton and Serato may be in a position to help pick up the slack a bit, but they definitely don't have the same level of clout.
Finally, long time Mac incumbents may be wary of the Mac App Store, but newcomers who love their iPhone/iPod/iPad may be more inclined to start at the App Store since that's "where software comes from". It's part of the vertical solution that they feel they bought from Apple. The question will be whether developer A's FOO_APP skiddishness in being included in the App Store will be the golden opportunity for similarly-functioning FRA_APP to eat its lunch. Again, Adobe may be able to keep itself afloat with selling stuff through adobe.com/journeyed/cdw/staples, but searching the App Store through functionality puts developers on much more even levels for those that would be affected by the sandboxing and not having a legal team at their disposal to go RIAA on their posteriors.
Apple hinted to sandboxing being mandatory at WWDC11, they announced it would happen later that year, then forced everyone to a few months ago. So, where does this "new" come from exactly?
They're just realizing this now? A walled garden controlled by one single company that gives you zero control whatsoever might maybe have some undesirable results? Did they think Apple wasn't in complete control when they bought their iOS device or something?
What I've seen is that many apps are starting to have 2 versions:
a) The internet version
-- designed the way the developer wants
-- paid upgrades
-- weak or weaker tie to iOS version
b) The app store version
-- designed the way Apple wants
-- free upgrades (or rarely 100% rebuy upgrades)
-- strong tie to the iOS version via. iCloud
That's a really interesting choice. So far I've always gone for the internet version because the app store worries me. I like the idea of iCloud integration, but most of what I want I could get though dropbox and sym/hard links. I could get the update management the more traditions way (http://www.macupdate.com/desktop/) but frankly all the apps check by themselves at this point mostly.
But I don't know the App store is "in trouble". I think there is likely to be a fork in what you get where. The App store might have lots of inexpensive simple applications, free demos, desktop support for phone apps and other apps that are single purpose while the retail side focus on the $20 on up apps which are more versatile. I don't think it is good that the market is forking creating two software ecosystems with different tastes.
I love that people on here bitch endlessly about how insecure OSes are. Then Apple makes a move to require devs to code in a more secure manner, result? They freak out. Did I miss anything?
"There are four boxes to be used in defense of liberty: soap, ballot, jury, and ammo. Please use in that order." -Ed H
Problem is, I read the linked post and can't tell if he's right or wrong. He refers to developers leaving, he refers to customers being burnt, he refers to sandboxing exclusions... but he doesn't give a single example to illustrate his point!
So what exactly are you talking about, Marco Arment?
#DeleteChrome
Will iTunes run in the "sandbox"? QuickTime? Safari? Keynote? Numbers? FinalCut "Pro"?
As a newcomer to the Mac, I was not at all interested in the App Store. Maybe I'm too cynical, but goddamn it, I'm proven right too often to change my ways. The App Store does not solve any existing problems for me, as a user. If I can find some app in their, then I could have Googled for the author's web site just as easily. I actually prefer apps that self-update, rather than having to open the inflexible App Store client. I don't need a 3rd party getting between me and the developer, isn't that the whole point of a global network ? We don't need no stinkin' middlemen!
Another peeve is how their delivery method makes it difficult to back up the installation files. I don't want to redownload the dumb thing every time I set up a test box, or follow their annual OS upgrades (from scratch - fuck inline updates!) For regular users, I'm sure the experience is seamless, but as soon as you start messing in a terminal, the messy parts become painfully apparent. It's kind of like that last bit in Portal, where you break out of the test area and run around the broken-down maintenance hallways.
It's a fine model for the iPhone/iPad, but desktop/laptop computers have a long legacy that predates this sort of integration and far greater diversity in how people use them. Tell me how to use my computer and I'll tell your company to go fuck itself.
-Billco, Fnarg.com
I've had the iPhone since shortly after they first introduced it to the market. In that time I purchased many apps, but few paid apps have failed to disappoint. Making things worse Apple allows developers to convert a 10$ app into a "free" app with in game purchases. Particularly disappointing was Oregon Trail. The only thing I found appealing on early Apple computers (I had a PC so I was spoiled) when I found them in my school. I payed almost 10$ for that iPhone app, and it was worth it when I bought it as it was VERY close to the original, as I remembered it. Greedily the developer converted my paid app to a "free" one and completely ruined the game adding content not in the original to prompt users to pay for in game items that shouldn't have even been there. Apple then removes an app from the store that puts a spotlight on shady apps.
Apple, IMHO, isn't very customer oriented. Well, unless the customer is other businesses and we are the product.
Right now the Mac app store makes no distinction between system/developer utilities and regular consumer applications. As a result, the list of available entitlements are too narrow. Regular users are baffled by the file system and getting it out of their faces is a great idea. Locking down apps is also good from a security perspective for most apps and users.
Apple just needs to make a special more rigorous review process for these sorts of apps and only allow those apps to request admin access or touch the file system outside the sandbox. In fact only the Developer and Utility categories need allow this sort of thing.
On a related note, Apple needs something like Windows' contracts so apps can specify the types of data they can provide or accept and let the system manage the interaction. This gives a safe clean way for apps to share data... The primary drawback of Apple's current "share nothing" model.
Natural != (nontoxic || beneficial)
The summary is misleading. The article is about the MAC app store for desktop applications. Was anyone else left scratching their heads about how the heck they would deploy iPhone apps to the public without the app store?
Sandboxing is a standard security term. And it's a fairly stupid one at that. It's more like you're in prison. But the prison warden doesn't want you to talk with other prisoners and plan a riot, so you're put in solitary confinement and there's limited input/output (food through a hole, mail is censored, talk to your lawyer once a week, etc). That's sandboxing. (I guess whoever came up with the term had a bad childhood that involved bing locked in a room with sand on the floor). A normal app can read/write to any file anywhere (assuming appropriate permission). A sandboxed app can only read/write files with explicit user permission (open/save dialog or dragging the file icon). For many applications, that's fine. But it doesn't play well with a lot of utilities or power tools. And some standard apps can't implement advanced features since they no longer have permission to do that.
Do you even lift?
These aren't the 'roids you're looking for.
Notice how Valve is already running for the exits?
You may not have noticed, but the main reason Valve (and specifically Gabe Newell) feels that Windows 8 is the worst thing ever hoisted on humanity may have something to do with the fact that Windows 8 has a built-in facility (the Metro app store) that has ability to overtake the virtual monopoly that Valve has built with Steam for the digital delivery of PC games.
Win8 is really a shot across the bow of Valve's business model. They'd better have a plan B in place -- and no, Linux is not a viable plan B.
If you go back to the article Ament links to, their complaints are:
None of these, save the last one, have anything to do with sandboxing. The last one does, but I don't understand it, because access to the user's calendar and photos are explicitly-defined entitlements that you can access, all you have to do is check a box in Xcode. A sandboxed app cannot access the filesystem of the computer, except for paths specifically named by the user in an Open or Save dialogue (the dialogue boxes are run by a separate daemon that passes the paths to the client application over IPC, so you can't futz with it to pick open more of the user's fs than they specifically let the application see.) Obviously this is deadly to bulk renamers, but I don't understand the complaint in the context of document creation, utilities or accessories, games, or really anything but document indexers -- which would have to just be sold the old fashioned way, on a website.
Don't blame me, I voted for Baltar.
I suspect people reading here dont' have a clue about sandboxing or what a BFD it is. Sandboxing is massively overdue. It's been available for years and years in OSX but there has been a zero adoption rate. I came across it in Xgrid, an apple application which relied heavily on it.
Xgrid is a job server that lets other people run jobs on your computer---safely. How the heck do you do that safely and still have left an environment that can do anything at all. You can't do this with linux permissions or firewalls. But you can with sandboxing. in sandboxing you specify in detail what resources every application has access to. What parts of the file system it can't see even if it has unix permissions. What parts of a network it can access. How much memory it can use. etc... It's a universal wrapper that can be created for every program.
Since firefox can be wrapped it's insane to use any browser without wrapping. If some roque plug in contains the ability to do something nasty you dont' care because it can't. it can't access resources it needs. You are essentially shutting down bad behaviour not bad apps.
So why is it not default?
Cause it's annoying to set up. If you take shortcuts in your application based on giving it more privledges than it needs you get punished by the sandbox.
lazy developers hate it.
time to force the issue. it's good for consumers.
It doesn't do anything for apple, other than make the OS better.
Some drink at the fountain of knowledge. Others just gargle.
If you're reading Slashdot, you're expected to know what "sandboxing" is in general, or at least be able to look it up on Wikipedia etc. And the guy's blog is obviously meant for readers of that blog and should be taken in context, which is OS X software development.
Apple Defence Force!
ASEMBLEEEEEE!!!!
Has anybody else noticed that the Haterade Addicts are calling four meetings a day now?
"I like to lick butts!" by MobileTatsu-NJG (#32700246) (Score:5, Informative)
I agree, sandboxing has been a bitch. Should be able to turn it off for apps the user trusts...
The user can choose to install and run applications that are not sandboxed. Apple just doesn't sell or distribute such apps on the app store. Once an app works sandboxed, there is no point in being able to turn the sandbox off.
But sandboxing is not only about the user trusting an app. I may trust that an app is not intentionally malicious. That doesn't mean it can't have bugs that could be exploited by a hacker, and at that point sandboxing means that the hacked application is _still_ restricted by the sandbox.
And as a developer you can (and should) split your app into parts so that the complicated parts that are more likely to be attackable cannot actually do any harm. Like your image reading code that could be hacked by a maliciously designed image file would be sandboxed so that it can't do anything but return valid images, so an attacker would be stuck in a sandbox that can't actually do anything bad.