Live data from Hacker News

App suddenly crashing on startup due to FBSDKRestrictiveDataFilterManager.m

github.com

321–330 of 446 posts

Re: App suddenly crashing on startup due to FBSDKRestrictiveDataFilterManager.m

#322
post #298

Earlier quoted context omitted.

Yes there is: a remote kill switch that prevents the third party SDK from loading. That puts you back in control of the software you’re shipping. Fool me once, and all that.

You have to be technically competent enough to know how to dynamically load a framework, though.

For a tech company with a multi-billion dollar valuation this shouldn't be insurmountable

Re: App suddenly crashing on startup due to FBSDKRestrictiveDataFilterManager.m

#323

The most popular apps on one of the most popular operating systems just plainly don't even open. What has this industry become? How are we so goddamn inept at writing software? This is an industry where we can automate testing - not many other industries have this capability - and we still don't have a simple test regime of "check if the app opens" for any of those apps. Somehow, at the most valuable software compani…

>>> I have always been afraid of software engineering becoming a trade similar to medicine or law or (regular) engineering where significant barriers will be put up before you can enter the industry, but this sort of shit makes me feel like it could be for the better. I will have to go and get a degree, but that's the price I have to pay I guess.

This would still happen because A) the programmers that made this mistake probably have the knowledge to pass any certification exam you can throw at them, B) most of the time we are not just building something that has exploded 1000 times before, we are creating new stuff.

The engineering process was the issue here, and sadly the only way to prevent this is not to make personal barriers of entry higher but to slow down the process with more QA, testing or whatever you can throw at it. In other words, make software more expensive. And keep in mind that this would only give better numbers but it would not solve the issue either (see Boeing 737 MAX).

Re: App suddenly crashing on startup due to FBSDKRestrictiveDataFilterManager.m

#324
post #292

The most popular apps on one of the most popular operating systems just plainly don't even open. What has this industry become? How are we so goddamn inept at writing software? This is an industry where we can automate testing - not many other industries have this capability - and we still don't have a simple test regime of "check if the app opens" for any of those apps. Somehow, at the most valuable software compani…

There is more complexity in this. Proximate Issues The app makers cannot easily prevent the crash since it is happening in Facebook provided code. Perhaps the only thing they could do is to code in kill switches. Another possibility would be to modify the Facebook code. That introduces maintainability issues. The crash happened because of a server side change that triggered roughly the Objective-C equivalent of a nul…

Google has recently pushed a payload that crashed any app using Google Maps SDK https://issuetracker.google.com/issues/154855417

This one was a good one because the app cache was poisoned so the only solution was to ask customers to reinstall the app (after Google deployed their fix, which took a while) or upload an update that nuked the SDK cache on startup.

Re: App suddenly crashing on startup due to FBSDKRestrictiveDataFilterManager.m

#325

They never responded to my request for a postmortem on the previous blunder: https://github.com/facebook/facebook-ios-sdk/issues/1385 .

Maybe if Facebook were actually required to provide post-mortems, the developers would be more cautious about creating these outages in the first place. One thing's for certain, the silence is infuriating.

Re: App suddenly crashing on startup due to FBSDKRestrictiveDataFilterManager.m

#326

Earlier quoted context omitted.

I'm pretty sure that's the same agreement that every developer has with Google just by writing an android app and using Google APIs. You can store data on Google Drive that isn't accessible from Google Drive and only that app can read or write it.

> I'm pretty sure that's the same agreement that every developer has with Google just by writing an android app and using Google APIs. But why would WhatsApp store it unencrypted on Google Drive, and encrypted (without giving you any access to the key) on your own SD card or local backup? It makes no sense. Except ... Google and Facebook have agreed that WhatsApp stores the database unencrypted, and in return Google…

I think this statement is being misunderstood by a lot of people here.

The Google Drive backup is most likely still encrypted, just not "end to end" because the key needs to be stored on a Facebook server.

That makes a lot more sense to me.

Re: App suddenly crashing on startup due to FBSDKRestrictiveDataFilterManager.m

#327

The most popular apps on one of the most popular operating systems just plainly don't even open. What has this industry become? How are we so goddamn inept at writing software? This is an industry where we can automate testing - not many other industries have this capability - and we still don't have a simple test regime of "check if the app opens" for any of those apps. Somehow, at the most valuable software compani…

>>> I have always been afraid of software engineering becoming a trade similar to medicine or law or (regular) engineering where significant barriers will be put up before you can enter the industry, but this sort of shit makes me feel like it could be for the better. I will have to go and get a degree, but that's the price I have to pay I guess. This would still happen because A) the programmers that made this mista…

> A) the programmers that made this mistake probably have the knowledge to pass any certification exam you can throw at them

Very unlikely. You probably don't realize how tough some professional exams are in some fields. We are talking dedicated months of study here.

> B) most of the time we are not just building something that has exploded 1000 times before, we are creating new stuff

Most software out there is just CRUD stuff, not really new stuff...

Re: App suddenly crashing on startup due to FBSDKRestrictiveDataFilterManager.m

#328

Earlier quoted context omitted.

Maybe lessons will be learned, maybe not. The industry seems to have very low standards. Let's let these mistakes happen over and over and let's just patch them as we go. No long-term thinking. Someone should collect all these horrible incidents and start a university course on just plainly what NOT to do.

Some of the very brightest software engineers in the world work at Facebook. As much as I would love to rip on Facebook, I also understand that integrated software development is hard, and I guarantee you that Facebook is "doing it better" than most. Don't sit in an ivory tower and throw stones in glass houses. Can you guarantee that your own SDLC house is in order? Because it might be, right up until a sneaky edge c…

> Some of the very brightest software engineers in the world work at Facebook

Like they work in many other companies.

In any case, this is not about being bright but about being diligent.

Re: App suddenly crashing on startup due to FBSDKRestrictiveDataFilterManager.m

#329
post #267

Earlier quoted context omitted.

So there is no way to try {} catch {} it, right?

Yes, but 1. it’s hard to inject that as the crash happens very early at launch and 2. Objective-C exceptions of this type are not intended to be caught.

That's not strictly true, and anyway it's different for the app developer versus a library provider. If you're making a 3rd party SDK that can throw, you need to make it can catch those throws.

Re: App suddenly crashing on startup due to FBSDKRestrictiveDataFilterManager.m

#330

Earlier quoted context omitted.

1. Mock dependency 2. Throw exceptions Don't tell me "No amount of testing" just because you aren't responsible for your own dependencies.

You can't mock it, that is the entire point. Simply loading the shared library of the SDK will execute the broken code.

90% of people in this thread think “native code” is a react plugin
Post reply on HN