Facebook Code Change Caused Outage for Spotify, Pinterest and Waze Apps on iOS
upstart writes in with an IRC submission:
Facebook code change caused outage for Spotify, Pinterest and Waze apps - TechCrunch:
If you're an iPhone user, odds are fairly good you spent a frustrating portion of the morning attempting to reopen apps. I know my morning walk was dampened by the inability to fire up Spotify. Plenty of other users reported similar issues with a number of apps, including Pinterest and Waze.
The issue has since been resolved, with Facebook noting that the problem rests firmly on its shoulders. A log page notes a sudden spike in errors stemming from Facebook's iOS SDK, dating back several hours.
[...] "Earlier today, a code change triggered crashes for some iOS apps using the Facebook SDK," the developer team writes. "We identified the issue quickly and resolved it. We apologize for any inconvenience."
[...] After the second major issue in recent memory, it's easy to imagine many reconsidering their relationship with the social network - after all, a bad experience can put people off an app entirely, as social media debates around Apple Music versus Spotify appeared to point to this morning. Many users will ultimately place the blame at the feet of a given app, rather than a third-party SDK that caused the crash.
A detailed timeline and very readable analysis of what happened is available at Bugsnag:
Some key takeaways
- Now the issue is, this absolutely should not crash an application. One of the tenets of good SDK design is that SDKs SHOULD NEVER CRASH THE APP.
- Defensive programming, and better handling of malformed data from the server could have meant that instead of crashing the application, the facebook initialization could have just been skipped, or better still, fall back to some kind of default settings if the server responds with junk data.
- Additionally, by having some kind of API data validation in place, this situation could have been avoided entirely. Services like Runscope offer this.
See, also: Robustness Principle.
Read more of this story at SoylentNews.