I've disabled auto update for all apps on my android. However, Facebook and Messenger still updates automatically. This itself raises suspicion of Facebook's control over my phone.
1. Some big features in Facebook/Messenger already exist in the app, and are just enabled/disabled remotely. This is pretty common in most big apps, it's how they can control rollouts. For example, the Snapchat design update: not everyone got it at the same time because the code was living in the app and they gradually enabled it for each user.
2. Wouldn't surprise me if part of the app were heavily reliant on things that can be updated remotely. Chunks of big apps will sometimes be just views fetching some web components. Facebook created React Native, and iirc it can be updated dynamically, like a web site.
When you have lots of people working on an app you have a high probability of introducing bugs. I worked at a company that shipped a faulty update; it looked OK to users, but it was essentially DDoS-ing the servers. Having to wait for the App Store to approve your app to fix things like that is annoying and costly, so people tend to look for alternatives.
Thank you! The graph is built using vanilla d3, no library on top of it. The code for it lives all in one file, ResultsGraph.js [1]. I pieced together the code from a handful of other attempts online. I am still not 100% pleased with the performance of it with a larger number of nodes (250+), but that seems to be a common complaint with the d3 force simulation layouts.
Sometime back I wished I had a light weight CMS that can serve your content and allow you to program sections of your content so that you can make it more dynamic. For example, I can have something like this as the content:
The sum of @Var1 and @Var2 is #Sum
and then we can program #Sum (we call this an expression) to return the sum of @Var1 and @Var2. Once I pass the values for the variables @Var1 and @Var2 to API, let's say 1 and 2 correspondingly. Then the api would return you the content as: