Facebook drains users' cellphone batteries intentionally says ex-employee
phonearena.com
phonearena.com
What I can believe: Engineers at Facebook were micromanaged into dismissing issues such as users' batteries being drained.
I think lots of companies already do stuff like this, for example, Microsoft rolls out updates to smaller groups before doing larger deployments. Google Chrome tests some experimental features before a full deployment.
It would be better if there was simply an opt-out of being part of this testing group. If the user goes to the effort of opting out, then they likely have a good reason for this. Also maybe Facebook also doesn't want to run this on devices with already bad battery performance for example.
Maybe I'm being too cynical, but my interpretation was that they wanted to know e.g. how many would uninstall the app if it consumed more power. Would make business sense to test this, and would be logical to call it "negative testing": do something negative to the user and see if they react.
What's odd to me is that they don't seem to have been comfortable just getting test results from users whose phone battery state is at the desired level naturally (there's no major ethical issue where you, the tester, haven't caused the low battery provided you're not subsequently taking battery down to zero)
From the article:
I said to the manager, 'This can harm somebody,' and she said by harming a few we can help the greater masses. Any data scientist worth his or her salt will know, Don’t hurt people,This is an AdTech business. They’re not curing cancer. How far up your own ass do you have to be to say that?
PS. This does not excuse shitty behaviour of course.
Engineer A: Hey how would we know whether loading this image as a .webp vs a .jpg would perform? Our lab testing is one thing but the different hardware out there vastly differs from phone to phone -- we need some data on the whether the average phone has enough optimizations for one versus the other.
Engineer B: Oh, what if we just run a background task on some of the phones that tries loading an image that we don't show, just to get the metrics?
Engineer A: Hmnn, that could work, we could load just one image across some small % of the user base to get a representative sample and report that data to system X so we can get some statistics and make heuristics based off of that.
Ethics is not a strong suit/required reading for software engineers, so not every engineer will read the above and detect something wrong. Hell, running experiments on wide swaths of users without consent isn't quite above board ethically either, but we've got a whole technological trees and industry dedicated to it.
Most of the time the person with enough ethics knowledge to realize there's a problem here is more incentivized to alert legal (so they can add it to the EULA/ToS that users don't read) rather than stop the behavior.
I suspect many engineers could read the conversation above and not think there was anything wrong there to begin with. And of course, once X teams across Y companies start using this, we've got a problem.
Note that I use engineers for all the roles on purpose -- the idea that it's only non-engineers doing all the sketchy shit is a deflection of responsibility, I for one am pretty proud of George here -- he's turned down what is very likely a lot of money to do the right thing. We can only guess at how many do not take this route.
[EDIT] I want to note that I do not put myself above this conversation -- being able to recognize that this is wrong immediately is not some innate skill that everyone has, it has to be reasoned about, and often where to draw the line comes down to widely-enough-held social mores/morality.
For example, I run ethical ads on my personal blog -- I know that ads incur unnecessary load on user machines that visit, and in-turn burning unnecessary battery on visitors' machines. Am I the same as Facebooks' engineers that work on this system? Probably not, but explaining that completely (and convincing yourself or anyone else) is more complicated -- maybe it's only a matter of degree.
On the other hand, if I ever decided to throw mine on the toilet and work for a company that manipulate people, and perform mass spying on them, then I would go all the way and just do things like this.
You can make a negative case for any of the large tech company.
Yes you can, but it's a spectrum. Microsoft abusing their monopolistic position to strangle competition and adding adware and spyware in an OS people pay for is ethically and morally bad, but is much less bad than Facebook profiting from and doing nothing to stop an actual active genocide. Facebook is by far the worst, ethically and morally, offender of the big tech companies not actively involved in the military industrial complex.
https://en.wikipedia.org/wiki/Invisible_hand
(should also help to obtain the historic criticism of it that has materialized since back then)
It's important to assign some responsibility to those who have/had the ability to prevent it, but it's not clear to me that FB could have prevented it.
In close races like the US presidential election it's plausible that FB was the deciding factor, but places where genocides happen are not known for close races.
And to be clear, it's not like FB couldn't have done a lot more with a lot less money to filter out certain kinds of content, but they intentionally wanted some kind of neutrality, right? And that's probably noble (and the maximally harmless thing) when it comes to - let's say Norwegian politics - but not so great in a lot of other contexts. However engaging in moderation with the intent to prevent social ills is very non-trivial.
To me it looks like they realized they were in a hard place and then basically bailed out from the hard problem and instead went all in on trying to make as much money as they can.
That second question is much more painful to ask if you’re an engineer at a company like this, because it means there’s no changing it from within.
Facebook is designed fundamentally to be a social graph, a representation of people's lives, blablabla. the more time people spend representing their lives on FB, the more attached they are to their online persona/profile/connections (and the dopamine rewards through likes and engagement), the more money it makes.
misinformation bubble? who cares. if that is what people want to represent, FB provides it, sure, but it's not what it is designed for.
There are good things you can do at fb too, e.g. expand the positive areas of FB or work on removing the negatives.
To elaborate, I said “work on removing the negatives”. If you won’t work at fb, others will. But when you work there, you actually have the power to change the place so that they do less of the stuff that you described.
If a 'unit test' is "high CPU load during usage" they kill people though at their scale just by the fact that people can't call 911.
In the same way that everyone who drives a car is a murderer, a ridiculous appeal to emotion.
There's also the question of how much of a lab rat people really consent to being -- given that you can't really know what experiments will be run ahead of time.
What are the disclosure rules? What is an experiment versus what is not? What is legal to use to experiment on people with? This is the kind of place regulation is normally present, and it hasn't caught up yet.
> The document included examples of how to run such tests. After reading the document, Hayward said that it appeared to him that Facebook had used negative testing before. He added, "I have never seen a more horrible document in my career."
Testing a higher-compression image format might effectively be testing relative behavior between an experiment arm with higher data usage and lower battery usage and an arm with lower data usage and higher battery usage. I.e., "testing draining users' batteries."
There are too little details in the blog post or the original article to really figure out what's being discussed.
Hey, Apple is now blocking our ads. They will eat our lunch. What can we do about it?
Hmm... Let's drain the batteries of iPhone users faster. They will switch to Android.
What if we get caught?
We'll just make up some story about A/B testing. Oh and drain some Android user's batteries too, for plausible deniability.
Great plan, implement it!
Not caring about battery use? Yeah sure, even the enlightened developers of HN rarely give a crap about that.
Deliberately draining battery to force people to replace their phones? C'mon.
They're not replacing their phones over this, but for their next phone they're choosing an Android. For battery reasons. Fastforward 2-3 years and most of these folks are switching (with renewal of subscription).
My main question regarding such a scenario: could they find the right balance, ie. drain the battery enough to annoy, but not so much as to attract investigation that'll definitively identify facebook's app as the culprit?
That I doubt.
From a different POV you’re intentionally worsening the experience for 1% of users. Is this a negative test? If so, is it morally different?
It's not clear to me why they wouldn't run a few tests for a few seconds across many/all of their hundreds of millions of users so the battery drain would be unnoticeable, rather than enough on a single user where it would be noticeable.
Of course, if you ruin battery life for hundreds of thousands of users... you're likely to hit at least one user who really would have needed that battery.
I've recently migrated to Pixel 7 Pro with GrapheneOS and noticed that my battery was lasting for about 6 hours. And there was nothing unusual in the battery usage report. Initially I thought that something is wrong with new Pixels or GrapheneOS.
So, I've started reading ADB logs and assumed that something might be wrong with Meta apps - (which I installed in work profile). The logs were full of various messages and stacktraces from their background services. So, I put them (facebook, messenger, whatsapp) into "restricted battery" mode and disabled background data. That was enough to keep battery for 12 hours.
I thought that it might be an issue with Graphene sandbox and bad Meta code, not a deliberately created "feature".
In the end I've also restricted Telegram and now my battery lasts for 17 hours.
So, I went to the extremes and now I do the same (restricted battery + disabled background data) for all the apps by default.
Do notifications for messages still work in restricted mode (sorry if silly question) ?
They are installed into a work profile. Created specifically for all the untrusted shit around. Moreover, the networking in that profile is routed through a VPN.
If you want to figure out what's going on with your battery, grab a bug report (adb bugreport command is one way). Then upload the resulting ZIP into battery historian - https://github.com/google/battery-historian (there's a hosted version somehwere on the web is you're willing to trust it with your debug data).
That will give you a usable graph of what's been keeping your phone awake, using radio and what the state of your signal quality was.
Edit: yeah this is blog spam. The New York Post article it links to has all the same details but with an extra line saying Meta did not respond. https://nypost.com/2023/01/28/facebook-fires-worker-who-refu...
In other words: in my view if you get a smartphone these days you are in fact already buying into a device which can save your life, but needs to maintain a charge to do that. And on which the vendor is essentially already doing as they please, and not to your benefit, since you agreed with that somehow, and all of that drains of course battery. This particular operation is just one of many. Just somewhat more direct.
(shouldn't this link to the original article (https://nypost.com/2023/01/28/facebook-fires-worker-who-refu...) instead of what looks like almost a complete copy-paste?)
so you run a test where you intentionally consume more of some cohort of users' battery power (you could have several cohorts where you consume more and more power, even). and you look to see if the rate at which your app is deleted/force-quit by the cohorts with more power usage goes up. if it does then you can assume that you're overdoing the battery drain. if it doesn't then you can assume users don't really care (or don't care enough; maybe they're unhappy but your app is too important to them to delete).
why this could be useful is when you're deciding what to prioritize - if you've got data saying that users don't care about excessive battery consumption and they'll keep using the app anyway, you can argue against optimizing for battery life in future development, presumably letting your developers do things faster/more lazily. or, it could show that battery life is super important and be a valuable argument to prioritize power optimization work in the name of keeping your users from jumping ship.
personally i'd rather just presume that battery life is important and that optimizing for efficient use of our users' batteries is the right thing to do, regardless of hard data, but i'm sure there are people out there that think differently.
An article like that coming out would bias and invalidate the test.
I'm no fan of Facebook, seriously.
But it's hard to take an article like this at face value.
Was he fired for not doing his job, and his grievance was a reframed legitimate problem (IE doing data analysis in the background will run down the battery)?
Was he just laid off during this most recent round of layoffs and is reframing it as an injustice for him fighting for users?
We only have his word, and there only needs to be a hint of truth to make it easy to digest.
See also: It's hard not to know what you're getting into with Facebook, especially in the role this person took. Data analysis is the name of the game.
I would agree with you if his name was kept anonymous but since he's attaching his reputation to this claim, it makes it slightly more believable
Unfortunately it remains an unfalsifiable claim so I am skeptical, as well, but I won't dismiss this outright
You're free to come to a different conclusion.
FWIW I'm even on the side of the guy, I really don't like facebook.
But even if I don't like something it doesn't mean I should just agree with everything that casts them in a bad light.
I get that there was a lawsuit and the ex employee said that they what they were doing might harm people. But what were they actually doing? Draining the battery on purpose for some reason? Or was it just an unfortunate side effect of something?
I'm assuming the opposite of battery optimizations. Some developers prefer functionality over battery life: https://dontkillmyapp.com/
I was pleasantly surprised to discover on arrival that I still had 100% battery life.
::: ::: domain 'phonearena.com' in active blocklist ::: + phonearena.com
Any thoughts!!?
Edit: Is there a good site or script to run through the Adblock lists, check them and report the location of matches?
Z:\adblock-temp\extracted\adb_list.disconnect (1 hit)
Line 1367: com.phonearena
I did check the .json source files at the disconnect github page (about a month old) and the site is not listed. Beyond that I have better things to do with my Sunday!!Kinda fishy, but the touchstone is simple:
- Does Facebook have an IRB?
- How are experiments documented and vetted?
We did not know about Plutonium Files, either (for the record, these were the experiments where plutonium and other radioactive compounds were injected into pregnant women, prisoners, mentally disabled children etc etc).
I mostly used the app for uploading pictures. Once I stopped using the app, FB started making the mobile site push you into using the app. That's around the time I stopped uploading pictures to facebook.
If they are bumping up battery consumption, either I've never been in the test group or they aren't bumping it enough to be a real risk.
So companies make apps behaviour poorly for a subset of users. In this case run down a battery. Why?
It seems he refuses to roll that out, but Facebook seems to have guidelines about how to do it? This seems bonkers.
Is the idea to find out how far you can go before someone uninstalls? Or what?
I have not had it installed for years.
I think I may still have the Messenger app, though. I need to make sure that's gone, too.
Based on the general fixation on tests at Meta and Alphabet et al, it seems pretty plausible to me that they might try such a thing although:
1) the article is just the employee's claims in the context of employment arbitration, rather than evidence. For example they claim to have been shown a document about running such tests, but it's not clear whether that document has been entered into evidence (and certainly not made public). That document would presumably be subject to discovery in a lawsuit, although in arbitration it's unlikely it would be in the public record unless someone with standing made a freedom of information request (which may or may not reveal it).
2) It seems to me such a test would be unnecessary regardless of the ethics of it. You could just look at instances when a user's battery was low organically without draining it on purpose. The installed base is large enough that this would almost certainly work just as well for most practical purposes.
My phone rarely goes below 10%, and maybe it has seen 5% one or two times. If Facebook waits for that, they will never run the tests. But if they detect my battery is at 10%, then drain it to 3%, launch the controlled failure testing, then drain the phone to complete shutdown, on the next boot they have their very valuable data.
Also there are hundreds, if not thousands, of different phone models. The allegedly used way of negative testing is much better than buying phones, and is virtually free.
Handling low battery states isn’t exactly rocket science anyway. Do less computation. The rest is up to the OS.
If you believe former Facebook employee George Hayward, a data scientist, Facebook can secretly drain the battery on its users' cellphones on purpose.Facebook doesn't retain documents for any significant period of time to the point where they lobotomize their own memory to avoid stuff like this in lawsuits (and to reduce costs of discovery).
The argument is that downloading two images when you only need one is “deliberately wasting battery”.
The apps literally just show the website