9 ms·
Apple Developer Indifference
- markgraveline 12y agoForecast!!
- deleted 12y ago[deleted]
- loumf 12y agoA server being down is not a bug -- the app should expect 500 is a possibility and deal with it. In this case, why does Dark Sky need to geocode? My Lat/Long is enough to know my weather.
- ansimionescu 12y ago"location search" Are you sure you've read the article?
- loumf 12y agoI did, but my point still stands. 500 is in the expected result set. Put up an error that says Apple's server is down. If you need a feature to work in the presence of down servers, you need to make your own fallback or perhaps cache some of the results locally.
- cloudwalking 12y agoOr implement a second provider to fall back on.
- redthrowaway 12y agoWhat are the chances Apple allows an app using a competing service into the app store?
- ebbv 12y ago100%. They don't make any money off of you using their geolocation. They provide it as a service to encourage development of iOS apps, not as a money maker.
- deleted 12y ago[deleted]
- josephlord 12y agoA service being unavailable for several days without any available status updates for affected customers is a pretty big failure. I upvoted you because you make a good point about the fact that apps should handle network/service failures appropriately such that ideally it isn't a crisis but that doesn't make it an acceptable level of service.
- mmcclure 12y agoEven though I think this is kind of a snarky comment (and they said lat/long worked, the issue was with searches), I do agree with the underlying premise. As other folks in this thread have said, just letting people know Apple is having a problem is not an acceptable solution...Location search would still be broken, and they would still be sad. Anyway, again, I agree with the underlying premise. It seems like overkill to need to have a fallback geocoding service, but I've use Geocod.io in the past and it seemed pretty cool. I have to say though, for a single application it seems like implementing 2 of every external service you use is a ridiculous thing to expect.
- palakchokshi 12y agoYou bring up an excellent point against all the folks on here saying Dark Skies should just have had a fallback geocoding service in place. By that logic every application that uses a third party service should code in a primary and a fallback. That is unrealistic!!
- smsm42 12y agoWhy is it unrealistic? For most common services, more than one alternative API provider exists. Why not think about "what would happen if that service I do not control goes down?" and have a plan B ready for that? That's like saying deploying a service on more than one machine in different data centers in case one of them goes down is unrealistic. We've long past that and long recognized that it is not only realistic but necessary once you're on certain scale.
- palakchokshi 12y agoThe argument is for a smaller business not for a business at a certain scale. You can argue that at a certain scale you can build out your own solutions and not rely on third party APIs, at a certain scale you can purchase the absolute premium platinum support package so you can be sure your email is answered within minutes. At a certain scale you can do a whole lot of things but this is about when you're not at that certain scale. so let's think about context here.
- deleted 12y ago[deleted]
- locopati 12y agoThis has been Apple's way of 'working' with developers for over 20 years.
- higherpurpose 12y agoSo why not develop your app for Android first (Dark Sky isn't available on Android)? I'm starting to see this too many times. Developers developing for Apple first, and then complaining about how badly Apple treats them. Maybe if iOS wasn't the default platform for all the hipster developers, Apple would start giving a damn about small developers.
- noir_lord 12y agoI've never owned an Apple device (and I'm not a huge fan of the company). That said if I had to develop a phone application for my company tomorrow I'd develop for iOS first and Android second. There are good reasons for picking either platform but Apple has a single big chunk of the market which simplifies development and testing (Android has gotten better at this). > Maybe if iOS wasn't the default platform for all the hipster developers, Apple would start giving a damn about small developers. Nothing in this article mentioned anything about hipster developers no implied it, so apart from making you look a tad silly I'm not sure what the point of that bit was. In addition not all small developers are hipster developers which seemed to be the implication. Companies always provide better service to those customers who earn them the most revenue, this is not something new, try getting an engineer at Google to explain why they broke imap again if you have a dozen people using it then try if you have 10,000. In fact prioritising such stuff by revenue is an entirely rational viewpoint when you have less than infinite resources.
- kevinh 12y agoEven with Apple-related headaches, developing for iOS is far simpler than developing for Android. You don't have to worry with making your application compatible with thirty different version/device combinations—more like eight. Additionally, iOS development is more profitable than Android development, despite having a lower userbase. Your use of the word hipster is unclear. Does that word even have a meaningful definition anymore?
- general_failure 12y agoWhile I agree that parent used some words like hipster 'poorly', I completely disagree with your assessment of iOS and Android development. What you said is just pure FUD. Both platforms have their share of problems and neither of them is 'simpler' or 'harder'. It just the way it is.
- osipovas 12y agoA similar problem exists on the Android Platform. The Geocoding (forward and backward service) is non-reliable, sometimes requiring a device reboot. But, at least there is a public issue tracker! http://developer.android.com/reference/android/location/Geocoder.html http://developer.android.com/reference/android/location/Geoc... https://code.google.com/p/android/issues/list?can=2&q=geocode&colspec=ID+Type+Status+Owner+Summary+Stars&cells=tiles https://code.google.com/p/android/issues/list?can=2&q=geocod...
- thebooktocome 12y agoI don't have a product on the market so perhaps I'm being incredibly naive, but why didn't the OP throw Apple under the bus? It seems to me a better response than panicking, using up all your free support e-mails (to no avail), and etc.
- ebbv 12y agoTelling your users that it's Apple's fault is not a solution. The app is still broken.
- palakchokshi 12y agoTrue it is not a solution but taking the fall for Apple is not good business practice either. In the spirit of full disclosure I would tell my users what was going on, point them to tweets, forum posts that showed that it was indeed Apple's issue and my brand should not take a hit for it.
- ebbv 12y agoWhere are you guys getting the impression that Dark Skies didn't do this? I'm sure they did, but as I said it's not a solution, so it doesn't do anything to relieve the situation. Users won't be happy until the problem is resolved (and they shouldn't be.)
- palakchokshi 12y agoOk agreed it is not a solution but since the functionality mentioned depended on the service Apple was providing, apart from telling the users that there is a problem with Apple or switching to an alternate service (not as easy as it sounds) during a crisis what other solution would you propose? Granted building a fallback into the design at the beginning would have been a better way to do things but I would forgive the OP not doing this since it is Apple they are dealing with and there is a certain expectation that your support tickets will be addressed.
- IBM 12y agoI'm not a developer, but I think it's clear that as a developer you should expect your relationship with Apple to be similar to Google's relationship to users. They rely on both to be successful, but their bread gets buttered by someone else. In Apple's case that's consumers, so you're not going to get the love that consumers would get.
- mrtksn 12y agoActually, Apple's one of the main selling points is the apps(remember "there is an app for that" ads?). Apple definitely wants to make developers happy but I imagine this is very hard thing to do on scale. I don't think that Apple would risk to lose it's developers to other platforms, they should have witnessed how Windows Mobile desperately tries to boost it's app numbers and how Android pushed hard to reach big numbers of apps for everything. Their Mac platform also suffered from "everybody supports Windows" situation. Apple also tried to stop cross platform apps getting in the AppStore by banning apps made with 3rd party tools(I believe they rationalised it by saying that it's about the app quality but later they got less stricter on this). So yes, Apple wants to make developers happy so that IOS platform gets the best apps but it's just hard thing to do. However it would have been better if Apple had a competitor on the premium apps business, Google's money comes from advertisement which probably keeps them unmotivated to transform their store to more premium marketplace. If Android becomes serious money-making platform this probably would push Apple harder to solve developer problems too.
- jobu 12y agoMy perspective is that Apple really cares about their users, and only cares about developers inasmuch as it affects their users. Unfortunately I'm a little jaded by some experiences I had with Apple developers at WWDC. Last year I tried working with a dev there to set up an XCode Bot to make Ad Hoc builds. He basically said we were doing it wrong and would have to use developer signed (not Ad Hoc) builds for QA. I asked him if they had ever talked anyone outside Apple about how they do CI or QA on apps before they came up with Bots... painful silence.
- 12y ago
- smackfu 12y agoSeems odd they have a Developer System Status board, but not an API System Status: https://developer.apple.com/system-status/ https://developer.apple.com/system-status/
- TwistedWeasel 12y agoYou mean this one? Or are you talking about something else? http://www.apple.com/support/systemstatus/ http://www.apple.com/support/systemstatus/
- smackfu 12y agoGood point, it should be on there.
- ebbv 12y agoIt's unfortunate that Apple was so slow to respond to this but since it's not a money making service for them, I'm also not surprised. This more underlines the fact that, as others have pointed out, Dark Skies should have better fallback behavior.
- jgh 12y agoI've had a bug in Apple's bugtracker open since February 2013. I just rechecked the behavior of the bug and while it seems like it's no longer causing a crash, it is now messing up OpenGL's state.
- alexrbarlow 12y agoThis has happened to me before many times, we were working on a large app recently that used in app purchases and the sandbox was down for two whole weeks. Try explaining that someone who is paying you by the hour.. The only reply I ever really had was on an forum with "We're looking into it" and that was a few days before a fix was made
- DenisM 12y agoWhile we're on the subject - any personal recommendations for a fallback Geocoding service?
- Osmium 12y agoGoogle's is nice (unsurprisingly) but I'm not sure what the free tier limits are. If you want to try out a bunch, I recommend GeoPy: http://geopy.readthedocs.org/en/latest/ http://geopy.readthedocs.org/en/latest/ I used it for a personal project recently and it really easily allows you to switch between geocoders, which was useful for the edge case that Google didn't get.
- zacwest 12y agoGoogle says: > Using client-side Maps API services (JavaScript and Flash) in the browser is rate limited per map session. That means that requests are distributed across all your users and scale as the number of users grows. Therefore, client-side APIs should be always preferred and used whenever possible. (pretend the document wasn't written for like 2007) https://developers.google.com/maps/documentation/business/articles/usage_limits https://developers.google.com/maps/documentation/business/ar... Their API limits are pretty amazing for free, if you're able to distribute the load across all your clients, which on iOS is the name of the game.
- mbell 12y agoGoogle's ToS used to, and may still have, a clause that only allows the geocode API to be used in conjunction with maps, i.e. you can't use the geocode results for whatever you want, they have to be intended for display on a Google map. I used MapQuest's free tier awhile back which didn't have the map usage restriction but was limited to 5000 queries a day, enough for what I needed but probably no where near enough for many applications.
- a3n 12y agoI have not used it, but I ran across these guys when I did some reading around a couple years ago: http://dev.maxmind.com/geoip/legacy/geolite/ http://dev.maxmind.com/geoip/legacy/geolite/ http://dev.maxmind.com/geoip/ http://dev.maxmind.com/geoip/
- gress 12y agoConcluding that Apple doesn't care about developers has become a vogue statement to make partly because Marco has taken to saying it routinely. It's not totally unreasonable to needle at Apple because there are lots of things they could do to improve developer relations, and openness about service status and reliability is clearly one of them. On the other hand, taking it as true that they are actually indifferent takes a bizarre leap of logic, given how much effort they put into the tooling, the documentation, WWDC itself, making WWDC content available to those who can't attend, etc. It's obvious that they are overloaded and are having problems scaling support for their developer community. It's far from obvious that they are indifferent. [edit: downvotes - of course, because I'm not vehemently attacking Apple. Bear in mind that I don't think it's bad to needle at Apple, but I think it's only because people know that Apple does care about what developers think that it's worthwhile. Meanwhile let's not get things out of perspective.]
- Spearchucker 12y agoHow do you think they stack up against Microsoft's support for developers?
- mahyarm 12y agoIt feels indifferent because talking to apple is like talking to a wall. You never get a real response, ever. And if you do, it can be the height of laziness. All of those things also benefit apple internally for their own development work.
- jsz0 12y ago> when it comes to small developers, Apple just doesn’t give a damn I don't understand the connection to the geocoding problem. Did it only impact small developers? Was the problem fixed faster for large developers?
- natch 12y ago>We shot off an email to Apple Technical Support — one of the two free emails Apple allows developers to send (after which they cost $99 for a 2-pack). Wow, this statement is such drama. There is no "allowance" for how many emails you can send to Apple. The Apple developer evangelist email is public and emails to it are not limited. The author is confusing emails and TSIs (Technical Support Incidents). You can also call the developer support line, which picks up after a couple rings with a live human. And you can file bugs. And you can tweet to the developer evangelists, which may be the fastest, most effective way to get an urgent problem like this on their radar. The two TSIs that are free with your developer account (and then cost after that, if you ever even use your first two) are for code-level support, meaning "how do I accomplish this with code." This is clearly spelled out (see https://developer.apple.com/support/technical/submit/ https://developer.apple.com/support/technical/submit/). They will get your question answered, if an answer is possible. Apple pulls out all the stops to get these resolved, and it's a huge misunderstanding of their purpose to use them for an outage report, and further to claim that you can only send two emails to Apple without paying. Far from being indifferent, the Apple developer relations team is hitting it way out of the park. Yes, outages happen, and that's unfortunate. But there's no need to make something out of it that it's not.
- deleted 12y ago[deleted]
- twotwotwo 12y agoRather than indifference, could also be a sign of how far Apple has to go to become great at networked services. The processes you need to maintain quality (including uptime) for a service with variable load, potentially frequent releases, actual racks of servers to keep humming, etc. is much different from the way you ensure quality in yearly hardware and OS upgrades. It's not counting Apple out or discounting the strides they've already made to note that Google and other Web-native companies still have a leg up on them here.
- coldtea 12y ago>How does that happen? How does such an important service — the geolocation of addresses — just stop working for three days? And as of the writing of this post, five days after the fact, we have yet to get a response to our support inquiries. It's not like there could be any other response than "It will be fixed as soon as we can". So, what exactly were they expecting to hear? Regarding their customers, I'm not sure if this is an American vs Europe thing, but I never, ever, contact software companies for support. Nor do I know many (if any) people that do. It's 2014. You can read the manual or search for help online. And if a service is down, you wait it out and assume it will get back up. It's not like they don't know it's down, or telling them will make it go up faster. That's just like honking while on a traffic jam. Just adds noise. Were those users really that dependent on a $1 dollar weather app that they had to "deluge" its developers in a 3-day service disruption? I would either wait it out, or download another comparable app.
- nickm12 12y agoThere are absolutely responses beyond "it will be fixed as soon as we can". For clients of network services, it can be useful to know details about the scope of the outage (when did it start? who is affected? are there workarounds?). Yes, during the initial investigation there is often little to say, but even just opening up a communications channel signals to your clients that you take the outage seriously. Once a root cause has been identified, it is often possible to provide an ETA on the fix, which may take hours. Again, being able to say simply "it will be fixed in N hours" and delivering on that statement shows your clients that you know what you are doing. Three days of outage of a externally-facing service with no communication shows that it's still amateur hour at Apple as far as network services are concerned. Full disclosure: I work for another tech company that specializes in network services, among other things.