Leaving the Mac App Store
blog.sketchapp.com
blog.sketchapp.com
* The actual MAS store app itself is a horrible piece of garbage wrapping a bunch of web views. Just make it a real native app and rewrite it.
* Sandboxing is great, but there will always be things that fall outside the sandbox. Have a "Power User / Developer Tools" category and associated checkbox in iTC that says "My app needs to opt-out of these parts of sandboxing". Put those apps through a much more strenuous review process.
* Relatedly, add more entitlements to the Sandbox, even if they also trigger a more in-depth review.
* Both iOS and the Mac app stores desperately need feedback mechanisms and some basic customer support tools. This has been obvious since at least iOS v4. I can only imagine this is due to Apple's inability to do good server-side software (and the organization doesn't value it like they value client software). This should automatically give you at least a private way to send a message to users leaving a bad review, then prompt the user to update their review if the response helped them. Asking users to review is hard enough... getting them to update a 1-star review is nearly impossible.
* Hire more reviewers. There is no excuse for reviews taking so damn long.
Native app is not really a black and white concept when you're talking about an app that mainly just interprets and displays live data it receives. If it's not html, then it's going to be xml/json/some other markup with a custom presentation layer on top. Why would that be better? In this case I just don't think you can point the finger at webview vs native as a problem or a solution. Yes, the app may be crap, but that seems mostly unrelated to the technology used to build it. I'm guessing it's more a factor of lack of resources, team member quality, management, or inter-departmental communication issues in a large corporation.
iTunes Store, App Store, MAS, Apple Music — there is definitely a pattern there, at least on the desktop. I find them all similarly clunky, slow, ugly and unpleasant to use.
Apple almost seems to be inherently incapable of creating a decent store front, and I am curious as to why they have that organizational blindspot.
Because when you have a captured userbase, there's no incentive to improve / innovate?
Even accepting everything else, that seems like a huge incentive to me not to get complacent.
Seeing as in 2009 they had >90% of the market of PC's above $1000 (see here: http://betanews.com/2009/07/22/apple-has-91-of-market-for-1-... ) which is the profitable part of the market, probably they are.
So yes, I believe Apple is probably perfectly happy (in an upper-echelon corporate strategy sense) sitting on their cash cow as opposed to fighting it out for less profitable market share.
If that other 85% is cheap laptops with no margin in them, yes.
All of Apple is just sitting around waiting for jail breakers to innovate for them, no one has any ideas about what to do with their time.
Don't even get me started on hardware! Incorporating all that stuff Samsung & Dell or whoever is doing.
This was years before iOS 7. Though most of the concepts seem to be taken from Android, which took most of the ideas from defunct WebOS. Well, mostly Apple and Google hired former Palm guys for their design teams.
Apple also have the Apple Store, which is a separate thing that's a website - I believe it's a WebObjects app and the iTunes Store is as well.
This might have changed since they rolled the store into the main apple.com site, but as far as I know none of that is public for sure.
Because when looking at the metrics they care about (see: $) they see a runaway success, and dismiss the idea that it isn't already "decent".
It's almost a chicken and egg situation where unless Apple builds top tier web apps they won't attract top tier web devs. Without top tier web devs they of course will struggle to build scalable, fast and user friendly web apps.
I'd imagine inertia also plays a role. Apple clearly have a lot of talent who know Cocoa and Obj-C inside and out. Chances are their current devs prioritise those kinds of apps over the kinds you might see Google or FB prioritise. Heck look at how long it took FB to come out with a decent iOS app. Their first mobile version was HTML with a native wrapper. It took FB time to build the talent base to do a decent app (believe they even had to hire Loren Brichter to consult to help them with it!).
Every company has its specialities. Apple is getting better but as their data loss issues with Photos and Apple Music, as well as their problems with MobileMe show they are clearly finding it hard getting web devs who can build what they need fast enough. It'll take them time - they have enough cash to get there but they sure are alienating a lot of users and devs with these issues.
Edit: For clarity.
What I mean is that using web view make it way easier to layout out networked assets. At least thats my experience having worked with both.
Not sure why this is such a crazy thing to say that I need to be down voted for it.
It doesn't make sense to say that WebViews aren't "native". With a little effort they can be made to blend in perfectly. It's the same CoreGraphics.
There’s also a good deal of power that you gain when writing custom Cocoa widgets; drawing is usually done with Core Graphics, which is a blazing fast, extremely capable C API. There’s a lot you can do in custom Cocoa widgets that would be impractical or dog slow with HTML+CSS+JS.
EDIT: Also, one big, big difference between WebView apps and AppKit apps is that while WebView apps might get their appearance reasonably close to native, they almost always miss the mark entirely when it comes to widget behavior.
Imperative graphics and view hierarchies certainly make simple things tedious, but they'll never match the DOM's ability to occasionally make simple things nigh-impossible either.
I'm curious, if you call drawRect ugly then what do you call the menagerie of frameworks required to strong-arm the declarative environment of the web into the simplest of desktop tasks (shadow DOM, anyone?) Pot, kettle?
> With a little effort they can be made to blend in perfectly.
I'll believe it when I see it. I'll grant you that this works OK on windows, but that's due to MS making the decision to bring the widget kit down to web-level rather than the other way around. Meanwhile, iTunes and the AppStore continue the long and well-established tradition of poor integration.
> It's the same CoreGraphics.
Hidden behind a dozen trendy frameworks, a hundred bloated abstractions, and a thousand crusty layout engine implementation details to glue it all together.
Apps like Uber, Instagram and others use the hybrid approach.
Having played around with apples layout and general UI related stuff myself quite a lot I can tell you that it's a lot harder than webviews. We are talking perhaps 50X for the kind of stuff like the App store.
> I don't think it's as easy as you think.
I've been developing iOS and Mac apps for 8 years so my response is based on that experience. > So don't know how much web you have done.
I've been developing websites since 1998.There is no doubt the App Store is horribly done, but for the kind of content that is going to be in the store I simply don't see why they would choose otherwise.
Keep in mind that the apps also exist on the web. This would force apple to still make a web version and a native version.
Don't see what is gained from this.
It;s probably the buggiest piece of software I have ever had to use. The backend service might be good (or not) but the basic store app feels like something written by an student.
I disagree with this. I like the sandbox constraint; i don't mind opting out of the app store if my needs necessitate dropping the sandbox. I also think the interface of the app store is the least of its concerns.
Everything else you said is on fleek.
Strict sandboxing is not a good fit for the Mac.
It offers a low cost of entry, but also encourages "pump-and-dump" development, in which developers are actively (though surely not intentionally) discouraged from updating their apps once they launch.
It's designed to be the "anti-professional" means of app distribution, and it never reaches any higher.
Someone is going to crack desktop app stores one day and do very well. The cost of entry is high (not necessarily in cash, more in reputation) but there are plenty of players who could do it. There's even scope in the SME market in terms of rolling up licencing and deployment. Hell there's even a use case for families.
It's not that great for me. I've had a bunch of my Steam games put out breaking updates and there's nothing I can do about it but wait for subsequent rollbacks. It's a major flaw in the system that a breaking update can be forced down users' throats.
So now I can't update any of the games I've bought through Steam, or reinstall any I've removed.
Obviously I can't buy any new ones, either - but, even if I eventually update OS X (breaking many older Apps I depend on for work) and am able to run the Steam client again, there's no way in hell I'll ever buy a game through Steam again.
2) Steam "updates" itself every time I launch. I see others saying it only happens once a month, but I literally cannot launch it and have it not update. If I quit and immediately relaunch, it says it's updating and starts downloading stuff. WTF?
3) It shows me ads. Note - it's not like the App store which opens to a list of "what's hot/what's new/what's promoted". It launches, I go to click on something and an ad for a game pops up in a separate window blocking the interface.
4) It shows me ads for games that don't work on any system I've ever used Steam on.
5) Support from Valve is non-existent. If you try to get support for a game, they will by default tell you it's the game vendor's fault, even before figuring out what the problem is. If you try to use their support forums, you are required to use a different login and password than the one you use for the store. WTF? Why would they ever do that?
The list goes on. It's just a terrible app. In my opinion the Mac App Store is lightyears ahead of it in just about every dimension I care about. I no longer use Steam when there's any other option available.
This is pretty easy to disable, there's an option within the Interface tab in the settings.[0]
[0] http://gaming.stackexchange.com/questions/28415/is-there-a-w...
I don't think it's a terrible app given everything it's trying to do (and primarily that it's a retail outlet, not a social network), but it can definitely do with a bit more polish.
I realise this is still better than Mac App Store, but I wish they just let me run a the game without running Steam.
There are also Steam games that don't use Steam's DRM and can be run without Steam. It's up to the individual game developers whether to include the DRM.
All of these mattered very little to me when I went to reinstall a game I hadn't played in two years, after a move and a computer crash. I have games on physical media that I can no longer install, or that I can't find the discs for. Fantastic games like Bioware RPGs, or Borderlands.
With Steam, I can open a fresh machine, install the Steam app, and then install (mac versions of) games I bought in pc-version, or for which I no longer can find the media.
Between Steam's library sharing, access to cross-platform versions of games, and the fact that I can install it from scratch anywhere I have an internet connection, I don't want to buy games any other way. There are many ways to improve, but that ease of recovery and reinstallation (not to mention that it saves my save-games in the cloud for some RPGs) has been well worth any performance hits.
The "whole app" is tiny, and I need to update it maybe once a month. It's not worth complaining about.
Honestly the frequency with which companies are only offering stub installers bothers me. My company has an office in a country with terrible internet, and since Microsoft no longer offers an offline installer for Office (unless you have a volume license key, which we're too small to have), it's absolute hell to have our employees download and install office on their computers when they join the company.
In general, I heartily agree with you. However, because Steam's primary purpose is to download and install huge gobs of data from Valve's servers, I feel that Valve's decision to ship just a stub installer is totally justified.
MSFT's stub Office installer, or Google's stub Chrome installer? Inexcusable.
Edit: Ugh. I should caffeinate. Steam's primary purpose is to let you play video games. However, the way it does that is by downloading gobs of data & etc.
if you don't want steam to be a distraction but still install updates, run it and put yourself in offline mode. the footprint is pretty small, except when it's actually installing.
* Start Steam when you log in to your computer, but have yourself signed out of Friends so you don't get friend activity notifications.
* If you're concerned about data usage, or don't want all of your games to update when you launch Steam, set your games to only update when you launch them. [0] Sadly, there's no way that I can see to make this the default update strategy, so you have to do this for every game in your library that has annoyingly frequent updates. :( Also note that you can configure Steam to not download updates when a game is running [1] and that Steam makes the update game you're trying to launch the highest-priority download.
* Run Steam in Offline mode (assuming you're not playing multiplayer games ;) ) : https://support.steampowered.com/kb_article.php?ref=3160-AGC...
Sadly, I don't see any way to run some sort of "Steam client and game updating" service that runs in the background and just keeps the client and your games updated even while you're not logged in to either Steam or your Windows account.
[0] Right-click on the game->Properties->Updates, change the value of the "Automatic updates" dropdown menu to "Only update this game when I launch it".
[1] IIRC, this is the default setting.
Implying that Steam only runs rarely.
Yeah, that complicates things. :( Best of luck!
Steam uses ~120 MB of RAM on my system. Google Chrome uses 300+ MB of RAM with just the Google home page loaded.
> ...with a task manager icon as only UI,
You can configure Steam to only display a system tray icon when you don't have the Steam window open.
It's not totally straight forward though. You need to unplug your network device (or turn off wifi, etc) so the initial startup times out, and gives you the option to use Offline mode.
There might be a command line switch way to do that too, but I've never looked. ;)
Odd. On my six-year-old potato PC, Steam takes 10 seconds from the time I click on the Steam icon until the time the UI is up and I can interact with it.
> ...if you haven't played a steam game in a while and you want to run one, you might be looking at a good few minutes before the game even starts to load. In the name of what, stopping piracy?
Probably in the name of downloading and applying the most recent game patch. On the off-chance that you weren't talking about patch downloading, I started a game in my library that was installed, but that I hadn't played in over a year. It loaded just as quickly as any other game in my library.
If patching bothers you, run Steam in Offline Mode.
> ...I wish they just let me run a the game without running Steam.
If you want to go that route, you can probably find any number of methods to spoof the Steam DRM.
The key is that Apple has not pulled off a successful App Store concept for MacOS yet, and worse they haven't really internalized some of the things that make App Stores "good" or "bad". As a result, people are leaving.
The response though will be even more interesting, either Apple can give application delivery the focus it needs and become the best in class example, or they can continue to languish, or worse they mandate by fiat use of feature which negatively impacts the brand.
App Stores try to be too many things at once. They started off as discovery, distribution, and payment processors. They have evolved into sort of microservice delivery applications. When the sandbox + App starts looking like a container instance running a unikernel, you've really supplanted the OS entirely. But that model doesn't work well for what many people think of as "productivity" apps.
I hope Apple chooses to give this problem the focus it needs. I could easily see this as the "feature" on which a lot of OS seats are sold.
They really did, for the first year or two of the Mac App Store's existence. It was great. All of the "$10 utility apps" would be there today if not for Sandboxing.
Maybe this wouldn't have included the apps where the 30% or poor support for upgrades/subscriptions would really impact sales (Adobe, Microsoft, perhaps, interestingly, Sketch...), but sandboxing is the only outstanding issue that prevents you from shipping an app to the Mac App Store.
I'll never buy an RTS or a multiplayer-only game, stop showing them to me. I'll never buy an early-access game or a game with 3rd-party DRM, stop showing them to me. I could cull 90% of the stuff in my discovery queues, automatically, with 30 seconds of box-checking.
I'm also surprised that the desktop client has never implemented an "is this machine actually capable of running this game?" check. Non-trivial to implement, sure, but really useful.
The web interface for Steam is better than the app's. Then again, this is what web browsers are there for...
Conversely I still have native apps that are low-res only because updating them to HD-DPI meant shipping a new app.
Indeed. Except that, to get it, you-developer actually had to ship an updated browser with your "app" -- basically the same as any native app, except that instead of being "just turn on this setting in a plist and recompile", it means refreshing your little in-house fork of a massive browser project that barely anyone understands. Clearly Valve cannot be arsed to do that, so Steam keeps looking like shit more than 3 years after these screens appeared.
The universal toolkit is not so universal if every app ships its own custom version.
What would be the problem with finding a curator? It's not unlike how music industry has always worked -- from the era of finding a radio producer you like to the era of following a playlist on Spotify on some genre you like.
I agree that this is not a particularly novel problem, though.
You should have even more trouble finding good curators than finding good games.
But the idea is that you need to find a curator ONCE, and then they suggest lots of games for years.
A curator not being 100% perfect it's OK too -- after all even one's self buying games they read about or even try their demos, will pick some dudes. It's unreasonable to expect a curator (or a recommendation) service to not do that too.
I have been reading movie reviews for close to 20 years now; in all that time I have found just two people whose reviews I respect and whose taste mirrors mine so much that I can follow them blindly. With games it's just as complicated, if not more so.
Of course. You first need to do some work (find a curator you trust), before you can check a game they suggest.
But what would the alternative be? Either you ALWAYS search for yourself, or you search first for some curators and then follow their suggestions (occassionaly checking out stuff on your own too).
The ability to simply blacklist one or two handful tags would make discovery dramatically easier for me. That's all it would take.
It doesn't, really. It has the ability to run the game at its original (1998) level of quality. But the developers chose not to enable this as a fallback. You have to rely on some guy on the Internet that figured out how to hack it so that it would work.
It'd be great if I could, for instance, filter out everything that won't run with the Intel HD3000 graphics unit on my cheapo laptop.
I always buy games on Hubble if they're available on both. Sure my save games don't get backed up, but they are drm free. I'll even pay more if the humble price is higher for drm free.
Most tags actually seem to be spot-on and quite helpful, so the data is already there.
> I'm also surprised that the desktop client has never implemented an "is this machine actually capable of running this game?" check. Non-trivial to implement, sure, but really useful.
I've wondered that as well. A bit of data munching together with user feedback, in a similar manner to online fashion stores ("I found these size 11 boots a bit on the small side") would be quite helpful.
The whole point of the discovery queue is to expose you to a variety of options. If you want to search just those things you want, there are already filters you can manually use. These filters don't have all the options (please, no 'early access', I agree), but they give you the filtered lists that it sounds like you want.
Quite trivial, actually. They already do the necessary data-gathering at your end (i.e. their periodic automated survey), the only "hard" bit is data-gathering at the other end (when a game is listed).
It's so trivial to implement, in fact, that one has to wonder whether there are commercial considerations overriding the technical aspect. Maybe they don't want to piss off hardware and game vendors, maybe Valve would rather have you buy their console to bypass these considerations altogether... who knows.
The problem with that is that dev's stated minimum system requirements are -frequently enough to cause trouble with such a check- either substantially too high, or quite a bit too low. After all, not every studio has enough cash to discover what is actually the lowest-powered machine that one can play the game on.
I'm really hoping this opens the door for more flexible licensing for Sketch. The Mac App store is a bit of a pain for multi-seat licensing and upgrade pricing.
Not only encourages, but forces. Any non-sandboxed apps that were released in the App Store prior to the sandbox mandate can be updated for "bug fixes", but any new features can explicitly not be included.
I know if they did they'd lose me as a customer for anything other that (maybe) phones, but maybe they don't care about that market.
The only way they wouldn't would be if they grew up iOS into something you can do real work with -- allowed end user app installation, emulators and VMs, containers with full Darwin installs that could run homebrew, etc.
It could be done, even without sacrificing ordinary user experience -- just hide the advanced stuff from regular users and require a little magic incantation to unlock it. But it would run counter to the padded room you-don't-own-your-device philosophy of mobile so I can't see the iOS team going that way without being pushed from above.
Of course they have been updating OS X fairly well, so maybe not. Maybe the poor App Store experience is just like the poor Podcast app and other things -- an internal problem with motivation, direction, and focus in certain areas. Organizations can easily forget about things that are important but not 'hot'.
> I keep wondering if Apple wants to kill OSX and take everything toward iOS
Tim Cook: “iPad is the clearest expression of our vision of the future of personal computing.” The writing is on the wall, assuming you count U+1F4A9 as writing.While the Surface and iPad Pro continue to improve, I have a really hard time seeing tablets "killing" laptops like, for example flash drives and cloud storage "killed" CDs.
I'm not quite sure this is a winning strategy for them. There has been hype for a while that tablets will replace laptops. But looking back, there was a huge backlash against Windows 8 and the touch elements of it. Android tablets continue to vie for a segment of the market that feels like they're competing with iPod Touch, iOS, like you mention is still locked down.
By mainstream I mean non-tech-savvy users, non-hackers. That's most people. I can completely understand how wonderful a "managed platform" like iOS is to a non-technical user. No malware! (Or at least greatly reduced risk of it.) No OS rot! No IT! No complicated system administration! It's like replacing a hand-cranked car by one with electronic ignition and an engine that doesn't constantly need retuning.
For most people "freedom" means the freedom to get crapware and malware, spend hours that you can't spare futzing with your computer and getting nothing done, and have to reinstall your OS every year because it gets borked. Non-hackers hate platforms like that with a passion that it's difficult to understand. I often try to communicate it by comparing it to cars: how would you feel if you had to tune your engine every week, manually inspect every tank of gas for adulterants, and periodically stop your car to perform an inspection as you drive down the highway?
At the same time, the car analogy is deeply imperfect. In the computing world when you trade Windows or OS X for iOS you're giving up a lot of capability and a lot of freedom. Tech-savvy and professional users either don't want to give that up or as is the case with developers can't give it up.
But the problem is that non-tech-savvy users are most of the market, especially as computing becomes more and more mainstream, and most of the market is the market for a large company like Apple. Edges of markets don't matter. As such, I see the majority opinion of the market pulling things away from open platforms and rich capability and toward a managed, simplified, jailed, iOS-like future.
I think there's a real risk that the professional will be left with a choice between the awful UX offered by pure OSS and being forced to adapt to iOS or similar platforms.
Hey, maybe it'll prod the OSS folks into really taking UX seriously.
Yeah.
I'm not encouraged by what I see there nor by the combative/ultra-defensive attitude you get in those circles if you bring up this topic. One camp will insist that the latest Linux desktop or Ubuntu phone or whatever is great and is totally comparable to iOS and OSX and call you an idiot (and worse) for daring to think otherwise, and the other camp will just call you an idiot for "needing" UX or even a GUI at all because "real men" blah blah blah and why don't you read e-mail in emacs? I used to wade into those debates from time to time, but I stopped after I wrote a blog post (years ago) about Linux usability with some ideas about how to improve UI/UX development on Linux and the responses were full of insults I hadn't heard since Jr. High... not to mention one DDOS attack against the server.
I'm not trying to defend the MAS, and I think it definitely needs improvement, but are we really worse off for it?
The two things mentioned by the Sketch developers are app review time and sandbox limits. Those same things exist on iOS, but I keep hearing people say the MAS is somehow worse. From Apple's perspective, the sandbox limits are arguably justified by a desire to provide greater security and privacy controls. The review process is basically a consequence of that same goal - though of course, review time could be greatly reduced.
It sounds like the core issue for people is sandboxing. But what specifically about sandboxing is the issue? Are the sandbox limits really too restrictive for most apps (I guess new APIs/permissions could improve that with time), or are there just a lot of developers who prefer not to rework their apps to deal with the sandbox restrictions? Or is the very idea of sandboxing the problem (or perhaps the default security setting for allowed app installation)?
As long as apps can be distributed outside the MAS, I guess I don't really understand the problem. The MAS adds a lot of convenience, but as usual, the convenience comes at a cost, and thankfully users and developers can take it or leave it.
The ability for any normal person to identify, understand and resolve issues caused by the wild west of "desktop computing" should be well understood at this point -- they cannot.
Again, my contention is not that the MAS is perfect, but to say that we're worse off for having it is hard to fathom. If the inconveniences really outweigh the conveniences, then distribute your app outside the MAS. Problem solved.
I can understand similar complaints about the iOS App Store since there are no alternatives (outside of jailbreaking) for native app distribution, but in this case it's just an option. Is the existence of the MAS really worse than not having it as an option (inferior as it may be, depending on your viewpoint)?
Whereas the design and simplicity of iOS has ensured, from the start, that these types of apps cannot exists on that OS.
> Are the sandbox limits really too restrictive for most apps (I guess new APIs/permissions could improve that with time)
The last 5 years have proven that Apple is not interested in granting exemptions to the Sandbox or new entitlements for, say, Accessibility apps.
But again, Apple doesn't require distribution through the MAS (even if the majority of apps can work effectively within the restrictions), so how does the MAS's existence make the OS X ecosystem worse off overall?
If Apple is ignorant enough to leave money on the table by failing to provide a good marketplace/environment for a large number of apps (as may very well be the case), then non-MAS distribution will still flourish. Maybe they'll wise up and improve the situation in response. Maybe not, and we're back to the way things were before the MAS.
And hosting, key generation, payments, etc. are a fairly significant roadblock to shipping an app that the MAS formerly allowed you to completely ignore.
As for the MAS harming devs it's the "official store of OSX" so users are arguably being trained to look there and only there for apps. So sure you can look elsewhere but Apple is fighting against you.
30% cut is very high as well. I think existing payment systems for shareware apps were 5% or less. What do you get for your 30%? Support? No. Discovery? Not really. File Hosting? Ok, maybe but is that worth 30%? Easy upgrade and install. That's about it but usually that would be mostly handled by a free library.
I think the fact that it's mandatory has something to do with why people don't leave the iOS App Store.
For me, low cost of entry means "you put the app up for download, the user downloads it." Like the old days. No certificates, no Apple tax, no hoops to jump through.
I don't distribute Mac apps through the app store, and signing a regular app (no need to worry about sandboxing) with your developer certificate so that it can run without disabling Gatekeeper literally involves clicking a single radio button in Xcode.
It's super slow, constantly hangs, and is just such a bad experience from the consumer side that it undermines the (very real) benefits of having a centralized store of applications you've purchased and installed.
It'd be one thing (and a fairly standard Apple move) if the customer experience was good and they didn't care about trampling developers to get it that way, but the actual customer facing software that is the App Store is a shockingly bad piece of software.
It asks for my password literally every 15-20 seconds. Once I tell it to upgrade everything, it selects only one upgrade, and keeps telling me there are upgrades. While the upgrades are going, it keeps asking me for my password.
At that point I go off and watch TV. When I come back, it's actually downloaded all of the upgrades, and there's a message about how there are more. After I've entered my password a few more times, it tells me I'm up to date.
Then it asks me whether I'd like to upgrade.
I guess once their work experience students get bored working on Xcode they put them on this instead.
This hasn't been my experience at all. I wonder what's going on because that sounds super annoying.
If the reason Apple haven't fixed this is that I personally didn't sign on to Radar and log it as a bug, I can live with that.
That's really odd. It's a bad app but I've never seen that (in fact I've almost never need to enter my credentials). Are you sure it's your iTunes password? Maybe it's your keychain password and you have your keychain locked (which therefore you're going to be prompted for its password every time a service needs to grab the credentials stored within).
To this day, I click on things and assume my click just didn't "take" because nothing seems to be happening. Sometimes that's true, and other times it's because the Mac decided to display progress in the least obvious places.
Ironically the one thing that doesn't update cleanly through the App Store is the OS itself, even though I suspect that was Apple's main reason for creating all this. When El Capitán came out, at first I thought it wasn't even available because it wasn't structured as an "update" to anything (in direct contrast to the way every other upgrade works, including the minor 10.x.x updates!).
And tell me I'm not the only person in the world who has to manage several Apple IDs ...
I think for some class of updates that includes Xcode and OS the App Store uses a separate tool to download and run the update so it has to use some sort of (very) delayed IPC mechanism. Regular apps update through the App Store itself so it shows progress immediately.
So I've installed the identical copies of XCode, iMovie, The Unarchiver, etc., etc., over and over. Then entries with identical versions and release dates very shortly after reappear in the list.
This, on top of countless other frustrations (such as transferring my MBP from my home "battlestation" to offsite causing full system crashes about 1/3 of the time, Time Machine not working properly with my NAS setup, WiFi overheating/malfunctioning FUBAR right after upgrading to Yostemite, various other minor random things breaking and annoyances, and so on, including the generally arrogant attitude Apple takes of its customers and developers), I've had enough. Next computer I'm running back into the arms of Linux, because the main argument against it is that Linux eats up a lot of time configuring, but I'm already wasting way too much time dealing with my OS' issues, one that ostensibly "just works", so I might as well get the benefit of having a working, productive development system at the end of it.
There are so many things wrong with the MAS.
Sandbox is the biggest complaint I have. I can understand it with the iOS to some degree. At least there they are constantly providing new features and hardware changes to help apps keep being innovative.
To give an example of the Sandbox issue.
We are using AppleScript for some of our logic in the background. Because of the Sandbox every time AS is used a little gear pops up in the top menu of OSX.
This started with Yosemite. But worse than that. The implimentation of this security measure was completely sloppy. The gear didn't just appear it also rearranged the top bar icons and I of course got a horde of users complaining. We tried many things to solve this but had to finally give up and just offer MAS users to switch to our non-MAS version.
You would think that at least people would be able to turn off such a thing with apps they knew were ok. But no.
Furthermore reviews can really make you or break you. For a long time we had good reviews because I spent a lot of time making sure people understood why the spinning gear was there. But after a while one star reviews started appearing and we had no way of mitigating that or contact the user and tell them they could switch to the non MAS app if they had that issue.
And so I finally realized that if you want to actually do any innovation with your apps and built a proper business MAS is not for you.
I am beginning to wonder if there is room for an alternate App Store based on the the Developer Certificate or some security setup open sourced.
Anyway. My next product wont even be going on the MAS. It's simply not worth it. It's just a distribution channel for Apple to show their latest features (the only way you get featured)
For instance I don't mind Apples requirement that you have to ask for permission to access various files or folders but it should be possible and not come up with things like a spinning gear skating around your menubar. Those things are just sloppy.
A simple. "I trust this app to do more crazy things with my machine" feature must be possible to do.
There's a difference between limiting and requiring approval for a dangerous but often useful activity and outlawing it entirely.
Or any other kind of wild shenanigan Apple hasn't ever thought of.
Keep that stuff for mobiles.
If PCs also become grandma only territory, how will really interesting apps ever be developed? Interesting almost always involves "dangerous" somewhere along the way.
That's what I've never understood about the Sandbox policy. Those apps will still be shipped... they're just another level removed from Apple's oversight. And it's not like iOS, where not allowing those apps ensures that 99.9% of users will never ever see those apps.
Gatekeeper helps with this to a degree, but why not just allow them in the Mac App Store?
Stuff like that is not natively supported by Paddle but it will be and there are ways to do it through their framework.
And as long as I price my app at around $10 or more it's cheaper than MAS.
I am writing a "year in review" post about Ghostnote where I am going to spill all the beans :)
A few weeks later I wanted to cancel the subscription (app development would take a little longer). But there's no button to cancel. So I wrote them an email and all I got was a reply where they'd like to give me a Skype call to "talk over my decision".
That and their regular "customer engagement" emails (I just want to use your service, I don't want to video chat every weekend) made me choose Devmate instead.
(I still pay the $10/month for the analytics so I guess their plan worked).
I am working on another product too so I am always looking for new opportunties.
If you allow that, then "Amazing Super Awesome Free Desktop Calendars" is going to ask for it as well.
What I am talking about is if I am downloading something from the MAS. If I am using an app and it pops up first time with the spinning gear I should be able to hide the spinning gear for that specific app.
I find it absurdly ironic that such a powerful system doesn't give me that simple ability.
You will always see the gear in the menu bar if you are using Automator.
Not having the spinning gear just because app came from MAS implies a whole level of trust that Apple probably isn't ready to afford. But again I have no idea about Apple internal design mentality.
I think the issue is that sometimes the spinning gear doesn't go away after the script completes confusing users. This is an OSX bug not anything to do with the Mac App Store.
Surely it should be possible to turn of the spinning gear without having to turn of the security measures.
If you let anyone turn it off, then effectively you've let everyone turn it off.
Again. The gear is there to tell you something specific is going on but most people don't care about that. So of course it should be possible to turn it off for specific apps that you actually trust.
This is only an issue with Sandboxed apps not apps outside the app store. And it wasn't an issue until Yosemite.
Not sure why you keep insisting on arguing against something that isn't what is being suggested for a solution.
For example, perhaps the auxiliary application runs a local HTTP server with a REST API. The MAS application simply makes HTTP requests to the auxiliary application such as `POST /applescript/doStuff`.
I was talking with apple support and they basically said that if we even offered some extra component to get rid of the spinning gear we would most likely be banned.
https://itunes.apple.com/us/app/boom-2-best-audio-enhancemen...
Note their reference in the description to an 'optional component' that enables system-wide effects.
Citation of the specific term needed. It isn’t against any of them and plenty of apps do it (Things, Boom or Monity come to mind). Apple requires that the app is functional without extra downloads and the app itself must not download the extra executables. But it’s OK to use them for extended functionality (Things: system-wide popup; Monity: extra sensors) as long as you only point the user to where to download the extra helper and they do it themselves (see e.g. http://www.monityapp.com/helper/ for one such helper download page, linked from in app).
If Apple ever decided to change mac os x to no longer allow external applications, I would switch to Linux right away. I don't want to do that because I do like the os X better a GUI... But there's no way I'd stay on a system that wouldn't allow me to do what I want with it.
Unless they rethink or overhaul their sandboxing system to allow a bigger class of applications (essentially, most of what's out there), they won't be able to move power users to the App Store.
Most big companies commit suicide. If you think OS X and the MacBook Pro users are being neglected now, just wait until they have the car.
It's not as good as Lightroom, but I'd say it's 80% of the way there, and you can replicate some of the missing functionality with other applications.
... but unfortunately that combines 2 proprietary solutions so guess it doesn't exactly fit your criteria.
But there's a big difference between allowing you to do something and allowing you to not change the way you do something.
I've read this sentence 5 times and I'm still not sure what you mean. Can you expound, please?
I'd say that semantics aside, it's pretty black and white: either OSX allows users to install apps as they please, or they don't.
I prefer to edit video on iOS over Windows/OSX but it required me to change how I get video editing done.
Even if that did happen, which it wouldn't, what would stop you from compiling the application yourself, theoretically? If Apple computers allow for compilation of their own software, which they probably always will given that a Mac is the only way you can make OS X or iOS apps at this time, then OS X will never get to a point like the iPad wherein you are very limited in what you can do.
Edit: I see from down votes that people disagree with this idea (no problem with that).
Still, why not?
You need a developer licence for iOS that effectively means that you are restricted to run compilers on iOS.
Why not extend it to OSX?
Are you realizing Mac is used also by creative people that use Adobe tools, tools for 3D and so on and if everything was sandboxed you couldn't do it anymore.
Given that the PC is an increasingly obsolete platform for most people, I don't think Apple's going to expend a lot of energy changing the status quo one way or another. Its style is to start over from scratch.
I.e. not programmers but users of software from big software companies.
and if everything was sandboxed you couldn't do it anymore.
Yes, you could not run arbitrary programs and Apple may see it as a feature.
You seem to be in big denial as it would be horrible thing to happen. I still see this as very likely possibility.
Chrome, Spotify, Outlook, HipChat, Viber, Skype, SourceTree, Atom, Sketch, Dropbox.
All these would be not be usable because they are not sandboxed. Basically I would have to install Windows on my Macbook and I would virtualize Mac OS X so I can use Xcode and I would use Windows for everything else.
It would be suicide for Mac OS X and if you think Apple is so stupid to do it, okay then...
Others are Apple competitors.
It would be suicide for Mac OS X and if you think Apple is so stupid to do it, okay then...
They dried to get rid of Google Maps on iOS.
Control and from there perhaps more money.
I would leave their system and also many others.
Yes, but what if there are only about 100k of such people?
Restriction might be a requirement of special licence.
This would effectively remove ability to execute arbitrary code from most of the users.
The ones who want to run arbitrary code or develop software will have to pay. If someone complains about this, they would be told to shut up and would be explained how this is actually a benefit for majority of the users.
Anyway, I will stop here.
Edit: I think that Apple is not doing it only because it is not their focus at the moment.
The special licence you are talking about actually exists. You can sign your Mac apps with a certificate and it will not ask a user if you want to open it, but this is not restrictive at all. This is actually a benefit because nobody can modify your app so if they would force this, I wouldn't mind. Most of apps that I use are signed anyway.
Instead, they allowed their contract with google to end and built their own clone to prevent google from using it to blackmail apple.
I disagree that's anything like getting rid of google maps, particularly since my partner still uses it on her iphone all the time.
B: Apple never precluded Google from putting their own Maps app into the store, they simply replaced the preinstalled version with their own when (if memory serves) Google both demanded too much user information and declined to offer vector-based maps
What do you do about third party closed source Mac software?
I think that in the current pity world of 16:9 displays, actually Ubuntu has the most logical GUI layout because they conserve the vertical screen real estate as much as possible. This means they merge global toolbar, menu and window title bar when windows are maximized.
I see that OSX has followed this trend but their solution seems to be more ad-hoc and application based that it does not feel natural for me.
And as for linux distro with a good GUI I would suggest looking into Elementary OS which is a ubuntu based and UX oriented. I used it on a daily basis for about 6 months and had good experience (not excellent though, it has some issues but what doesn't?)
That must be the most frustrating/annoying thing in the world.
> there are technical limitations imposed by the Mac App Store guidelines (sandboxing and so on) that limit some of the features we want to bring to Sketch
I'm sure there are good intentions to what Apple is doing there, but it would be nice to know more details.
> and upgrade pricing remains unavailable
Man, the Mac App Store really just needs to up its game.
When selling on Amazon for example, you have a ready to use support platform that allow you to easily interact with customers that seem to be strugling. I feel this really helps avoiding unnecessary frustrations.
Also, the best moment to collect feedback is when people are in review mode. And when your users get in review mode, they got straight to the app store where you can't reach them.
Case in point, it took forever for chrome or opera to come to iOS because they "competed" with the apple product already integrated into the OS, and "provided a less seamless user experience" ... basically, Apple didn't want to be outshined on their own platform...
Yeah, they can display web pages, but iOS Firefox/Chrome provide almost no benefits over the stock safari. Less in fact, since it's a near certainty that Safari is using privileged APIs to integrate with the OS in a way that no other browsers are allowed to.
(Didn't a very prominent company get sued for something along these lines back in the 90s?)
Adblocking is of course now integrated into the OS.
The reason Apple has always given is security. This is the reason they gave for not allowing third party access to the JIT version of the javascript engine. Their critics at the time claimed this was really because they didn't want other browsers competing with Safari, and they'd never let anyone have it because of that. Then when Apple developed the XPC framework allowing secure remote execution, they opened up the JIT engine to third party browsers in a secure way.
So far Apple's actual behaviour has been completely consistent with their stated reasons, which are not the reasons you are 'quoting' from somewhere, and in several respect contrary to the predictions of their critics. Isn't it possible that they are being honest about their motives?
But on the other hand, yes, the Mac App Store is a broken mess. Right now it's part of the problem with app distribution on the desktop, not part of the solution.
This doesn't make sense. You could disable the JIT, compile WebKit to native code, and ship it on iOS without the app requiring any more technical permissions. Apple just doesn't want you to do that for business reasons.
If you want to maintain that it's a security measure, there should be a specific attack concept you can describe that preventing alternative browser engines (suitably modified to work with W^X) stops.
Language interpreters are forbidden to download any code from the internet, so you cannot use JS found on a web page in your own interpreter.
That would not remotely be a practical Web browser in 2015.
> Language interpreters are forbidden to download any code from the internet, so you cannot use JS found on a web page in your own interpreter.
Which is a business decision.
I don't understand why this is controversial; it's well-established that many of the iOS restrictions are business-related. Note that I'm not even arguing here that those business-related restrictions are a bad thing.
The attack vector they're concerned about is to do with the JIT exposing access to shared memory. As for alternate engines, any such engine would need to include a JavaScript engine, which immediately opens up vectors for attack. That's why the ability to download and execute code is restricted. now, thanks to a robust and secure cross process communications framework, many restrictions that were supposedly 'for business reasons' have been lifted.
Apple's renderer. Not your own custom one.
> The attack vector they're concerned about is to do with the JIT exposing access to shared memory.
I don't know what "exposing access to shared memory" means. All applications that download data place potentially-hostile data into memory.
> As for alternate engines, any such engine would need to include a JavaScript engine, which immediately opens up vectors for attack.
Such as? Describe a specific attack that is prevented by forbidding interpreters of remote content.
> That's why the ability to download and execute code is restricted.
Downloading and interpreting code is something that even a PDF viewer does. Why is that not restricted?
> now, thanks to a robust and secure cross process communications framework, many restrictions that were supposedly 'for business reasons' have been lifted.
But not the restriction on alternate Web engines.
Yes, and sometimes it gets even more frustrating when you get rejected for some minor issue like "the app name in the help menu is mis-spelled". An issue that takes you 3 minutes to fix and re-upload. And then you need to wait another 7 days. (If you're unlucky they find something else for 7 days more of waiting time).
It's silly of them to reject apps entirely over checks that anyone could do in advance, if only they knew what to look for.
I sat on it for an entire year because I was convinced nobody buys stuff outside of the AppStore anymore.
A year ago, the project still had really good traction, so I decided to try to sell it directly as a test (using Paddle.com).
Boy, was I wrong! TONS of people buy outside the MAS, and Focus is doing better than ever. If you're questioning it like I was, give it a shot.
People don't use the app store to find solutions to problems, they use google for that.
I had my app all the way up on top selling apps on the MAS and it had no effect on my sales.
- I use Focus, and it's awesome
- I prefer to buy outside of the MAS, and always check to see if the developer sells directly before buying there
I really hope it gets better. I'd contribute if I was knowledgeable enough to do so.
IMHO an app dev is better off implementing the payment system and update than using MAS, for ex in my case there is no way I would wait 7 days to have an update out of the door (eg. I don't automate everything to get blocked on the last step).
There is no communication between you and Apple when you launch applications.
Why does a purchase receipt need to have an expiration date at all? It's stupid. This stuff should be once-and-done.
I guess Apple didn't communicate enough with the developers that they'll start using SHA2.
Understatement of the year right there. Apple didn't communicate this at all. The first time anybody outside of Apple found out about this was when apps started failing to launch.
If Apple had merely told developers a month ahead of time, "Hey, we're switching to SHA-2 certificates, make sure your receipt validation code handles it," this whole thing could have been avoided.
In a crazy hypothetical world where Apple's app store team actually gives a shit about third party developers, they could have even tested SHA-2 certificates against the apps in the store, and directly contacted affected developers to tell them to get stuff fixed.
I commented more fully over here: https://news.ycombinator.com/item?id=10562030
Some apps are still broken for me, and I'm not sure how to fix them aside from deleting and reinstalling
Logic is pretty expensive to upgrade for what usually amounts to a free plugin or two and minor functionality increases...
Furthermore the full price of 199 could very well be mistaken for an upgrade offer - it's a very reasonable price.
Brought by the iPhone. You can install whatever you want on Android, and multiple stores exist.
What's changed is that there are lots of open source options for distribution and patching, so developers need a "store" less and less.
I haven't found it expensive at all. I've been selling apps outside App Stores for over a decade and never needed more than my $9/mth shared web hosting. Accepting credit cards is even easier & cheaper through someone like Fastspring or Kagi, who only take 8 - 9% instead of Apple's 30%.
> It's also really annoying to have to patch your apps without a store.
On the Mac, Sparkle is your friend for auto-updates, it's been around since 2006 (long before the Mac App Store existed): http://sparkle-project.org
On Windows, there's WinSparkle, though it isn't quite as elegant: http://winsparkle.org
I'm genuinely surprised that nobody as set up a 3rd party app store that can compete with apple and microsoft and offer a cross platform solution. Get a big company like Adobe to anchor it and I would jump over in a heartbeat.
Interestingly, the only option I can think of is Steam. They also sell non-game software, but mostly creative tools.
From my own experience (I have a few apps on the MAS + outside of it) something like Devmate+Fastrpring or Paddle makes licensing and payment processing pretty painless. Of course there's other issues like what happens when Paddle or Devmate go belly up ande stop processing license activations. But still it takes only a weekend to get it to work and once you get it to run it just works.
The real problem though is that the Mac software ecosystem outside the MAS is dead. No user goes to those huge software directory websites anymore (my traffic from MacUpdate & co. is almost zero). (Funnily enough before the MAS went live Apple had a list of OS X software. It was a great source of high quality traffic back then. But it wen't offline with the introduction of the MAS).
The only way to get your app infront of users is via SEO (which means that you take your eggs from the MAS basket and put them all into the Google basket) or by spending loads of money on PPC ads which won't give you a positive ROI because $39 is now considered hugely expensive for software.
Social media, blog posts, etc. are all nice in theory but won't convert to paying users. You made a funny cat picture that went viral and sends thousands of reddit users to your website? Great, but no one will download your app. They just want the cat picture.
The same goes for paying $10k for a blog post over at daringfireball. People will visit your website but won't download.
Buying ads directly on blogs, forums or twitter/facebook? No one cares for those. You will just lose money.
Marketing your own software got really hard nowadays and if you're not one of the "famous" developers removing your app from the Mac App Store just means that you will lose most of your revenue.
Great for Sketch that they can pull it off. But most devs can't. Which makes Apple's negligence of the MAS even worse.
I wrote about the MAS exodus [1] more than a year ago and people were skeptical back then. Think again - here's a list of great apps [3] that are only available outside the MAS. Those are not just small time hobbyist apps - those are professional tools.
Pieter (founder of Bohemian, company behind Sketch) listed many problems with the MAS at a recent conference [5]. Wil Shipley (well-known within the community) has also written about it [6].
And now you have another flagship OS X app ditching the MAS due to the multitude problems it creates. The message is loud and clear - if you're a real software business, not a hobbyist at home, don't waste your time with the MAS - it simply does not allow you to run your busienss properly.
When the companies building the flagship apps for the platform publicly state they cannot do business due to the restrictions of the Mac App Store and then abandon the dysfunctional virtual marketplace, then you know Apple have pushed them beyond the edge. No company would just decide to leave the MAS unless the situation is hurting them significantly and holding them back. And unfortunately, there are almost no words to describe how bad the MAS has been for the ecosystem and innovation on the platform. [2]
You also get ridiculous stuff like Intuit because of the limitations [4].
Even if Apple fixes the Mac App Store one day, which is highly unlikely given that in 5 years they have done absolutely nothing, developers have been burned once and will be skeptical. You know, the whole "Fool me once, shame on you, fool me twice, shame on me".
When people say that everything is fine and dandy with the MAS, they seem to be misguided - no one is asking Apple to make everyone a millionare. Developers are asking for Apple not to force simplistic business models and allow companies to have the ability to choose what works for them.
I used to be hopeful for years but no more. I have zero faith that Apple will listen to indies and solve their problem, they've got no leverage. And that's a real pity. Instead of pairing high quality hardware with high quality software, we have a platform encouraging predatory tactics and milking of customers. A truly sad situation. And that's a real shame because the platform I love and have invested a decade in deserves better. It might even be too late - the damage to developers has been enormous.
[1] http://blog.helftone.com/mac-app-store-the-subtle-exodus/
[2] http://mjtsai.com/blog/2015/11/12/no-one-minding-the-store/
[3] http://dancounsell.typed.com/articles/not-on-the-mac-app-sto...
[4] http://mjtsai.com/blog/2015/11/24/quicken-2015-switches-from...
[5] https://twitter.com/tmaes/status/657213874970763267
[6] https://twitter.com/wilshipley/status/669321851793879040
http://jasongriffey.net/wp/2012/04/19/commoditizing-our-comp...
I suggest maybe giving developers a bank of a set number of expedited review passes per year or so, so they can use it when they really need it. Damn it.
Still, any review time is really sucks as a developer. Shipping a big release and having to wait 10+ days to get feedback really slowed us down and hurt my enthusiasm as a developer. Honestly, I'm glad iOS development isn't the main focus of my job anymore - the SDK and tooling is fantastic, but provisioning and App Store submission is awful.
- this is one of the most frustrating things about Mac (and iOS) development. There's no good reason why this cannot be brought down to 1-2 days by hiring a ton of people to the App Review staff. App Review is not really a technical skill that should be very hard to scale up, and one that can't be outsourced to locations outside of Cupertino. Apple is the most cash-rich company in the world; they can easily throw some money at this problem if they cared about developer satisfaction. Far easier to resolve than problems like sandboxing and upgrade pricing, where there is a major cost for customer satisfaction to think about.
Open/save dialogs in sandboxed apps aren’t opened directly. Instead, requests are handled by the privileged powerboxd helper daemon, which then passes back user choices to the sandboxed app. This sounds great in theory, but something that happens somewhat frequently is that some part of powerboxd’s dialog initialization silently fails and doesn’t open a dialog, leaving the user confused as to why his requested open dialog didn’t open. Worse, when it happens, it can happen several times in a row, meaning the user can try several times and not get any kind of feedback whatsoever.
It’s been a known issue since at least 10.7 and last I checked (10.10) it still hadn’t been fixed. This is a showstopping bug for many kinds of apps but it’s simply been ignored.
I’ve been wanting to move off of the MAS but as a one-man shop, writing in serial code support, trial mode, and registration is daunting, not to mention getting old users set up with a new license. I might just delay the move away from MAS until the next major release.
Chris Pirillo gave a great talk about all the issues with the upfront statement that Android Marshmallow runs better on older hardware then iOS 9 on theirs (20min): http://youtu.be/n5iuR8pKBfQ
I dumped OSX and installed Debian on my iMac a couple months ago because Apple's software has just sucked the last few iterations, and if it weren't for Capture One and LightRoom I'd be running OSX on my MBP, too.
If it doesn't get better soon, my next phone is going to be an Android.
For me it's even the killer app for OSX, there's nothing equal for that price on Windows.
Edit: I should mention that in my particular case, the app is an Electron (formerly Atom Shell) app, so a solution that involves an ObjC library might be a bit difficult to implement.
And I dont think that any of the other apps I have on my dock are even available from app store.
I guess it must have an exemption given that it was originally in the app store prior to the mandatory sandboxing deadline[0].
[0] http://www.macworld.com/article/1167055/sandboxing_deadline_...
However I think it's a long way off working for every app and developer.
If an application is in AppStore, it means that Apple got some legal documents from developer, it means that Apple performed some automated scans on application binaries. For me it's enough to have some trust. Sandboxing is not needed and it actually making some apps unusable or even impossible to implement.
Desktop apps always were in control of the entire computer. And they are now, unless you are downloading them from the AppStore. That's why a PC is much more useful than an iPad or iPhone for power users.
Any good link/background about this?
Look on the bright side - losing big-name apps might finally force Apple to fix the MAS, then those devs might come back.
I would much rather they charge a flat review/update/host fee per app with maybe tiered hosting pricing for multi-GB apps (which apart from steam games, I'm pretty sure few people download anyway). It's hard enough trying to run a successful software business and then these companies go out and beat their chest with "WE paid developers billions this year" rather than "we took away 30% revenue from developers".