I've spent the last few months extracting myself from big tech platforms. Not because it's trendy. Not because of some ideological purity test. Because they keep proving - with my money, my data, and my time - that they don't think any of it belongs to me.
This is the story of seven companies that lost a customer, and why I'm building software that can't do what they did.
Meta: "Prove You're You Or We Delete What You Paid For"
I don't have Facebook. Social anxiety and a general distrust of Meta as a company kept me away. But the Quest 3 is a genuinely nice piece of hardware, so I took a chance - bought the 512GB model sometime around spring 2025. My daughter loved it, so for her birthday in August we got her her own Quest 3S (256GB). Two headsets, two Horizon Plus subscriptions, games for both of us. Her friend from next door would hop on mine so the kids could play together in the same world. It was a family thing - exactly what Meta markets the Quest as.
I knew the hardware was wrapped in Meta's ecosystem. I accepted that tradeoff. What I didn't expect was for Meta to prove every concern I had about them in the span of two weeks.
Then I got this email:
"It looks like a child under the age of 13 is using your Meta account. We'll suspend your account in 11 days unless you can show that you're old enough."
Eleven days. Confirm your age or lose everything. No appeal process. No family account option. No nuance. Just a threat.
Here's what they were holding hostage - 17 purchases totaling $277.93:
| Date | Game | Price |
|---|---|---|
| Jun 30 | Meta Horizon+ | $64.79 |
| Jun 23 | I Am Cat | $15.11 |
| Jun 21 | PianoVision | $6.47 |
| Jun 21 | Fruit Ninja | $10.79 |
| Jun 6 | Among Us 3D | $10.79 |
| May 23 | Strayed | $14.03 |
| May 23 | Creed: Rise to Glory - Championship Edition | $12.95 |
| May 23 | Wall Town Wonders | $17.27 |
| May 23 | Resident Evil 4 | $29.15 |
| May 23 | Dungeons Of Eternity | $23.75 |
| Apr 29 | Last Call | $3.77 |
| Apr 29 | Vader Immortal Series | $11.33 |
| Apr 29 | Star Wars: Tales from the Galaxy's Edge | $9.17 |
| Apr 25 | LEGO Bricktales | $12.41 |
| Apr 25 | Ship Battles | $3.77 |
| Apr 17 | Whimsy and Wonder Bundle | $30.23 |
| Mar 31 | Saint Lucia | $2.15 |
| Total | $277.93 |
Every one of those purchases was made with the same credit card they later declined for age verification. Plus two active Horizon Plus subscriptions they were billing monthly.
The Verification System That Couldn't
Fine. I'll verify. Two options: a $1.00 credit card charge (refunded in 5-7 business days) or upload a driver's license.
Simple enough. I entered the same Visa card that Meta had been happily charging for every VR purchase and both Horizon Plus subscriptions. The same card that had been on file with them for months.
On Edge - "Something went wrong. We're having trouble completing your request. Please try again."
I switched to Chrome and tried again.
"Card declined. Please try again with a different payment method or contact your bank."
Contact my bank. As if my bank was the problem. The same bank that had approved every single Meta charge without issue. The same card that worked everywhere else.
I had six browser tabs open - edit account, orders and returns, Meta Quest, profiles, subscriptions - trying every avenue they offered. Same result everywhere. Two browsers. Same card. Same errors.
That same credit card verified my identity on X without a hiccup. The card was fine. Meta's system was broken.
The Driver's License Attempt
They also offered driver's license verification. "Results usually take 1-2 minutes." I submitted it. This is the page I got back:
A language settings page. No confirmation. No acknowledgment. No follow-up. Just silence and a ticking clock.
What Meta Was Actually Saying
- Meta: "A child is using your account. Prove you're an adult or we delete everything."
- Me: "Here's my credit card - the one you've been charging."
- Meta: "Card declined."
- Me: "Here's my driver's license."
- Meta: silence
- Me: "Can I talk to someone?"
- Meta: there is no one to talk to
Thirteen days. A broken verification system. No human support path. And a very clear message: we'll take your money, but we won't take your identity.
I wasn't hiding a child from Meta. My 10-year-old daughter was playing on a Quest that I bought. That's not a policy violation - that's a family using a family device. Meta could have built a family account system with child profiles - like Xbox, PlayStation, and Nintendo have had for years. Instead, they chose the nuclear option.
I cancelled both Horizon Plus subscriptions that same day. Mine and my daughter's. Not out of anger - out of clarity.
The Punchline
Days later, after I'd already cancelled everything, this showed up:
"Hi Todd, We reviewed your account and found it does follow our Terms of Service. This means restrictions on any accounts you manage have been removed."
They figured it out. Eventually. After the broken credit card verification. After the silent driver's license submission. After the 13-day threat. After I'd already cancelled both subscriptions and walked away.
"Thanks, The Meta Team."
You're welcome. Two Quest headsets sit in a drawer now. I'd happily pay more for equal hardware from someone else just to avoid Meta. That's what they've earned - a customer who will actively spend more money to not give them any.
Microsoft: "We're Rebooting Your PC Now. You're Welcome."
You bought the hardware. You paid for the license. It's your machine. Microsoft disagrees.
Windows Update doesn't ask. It tells. It doesn't care that you're in the middle of a compile that's been running for 20 minutes. It doesn't care that you have unsaved work in six applications. It doesn't care that you specifically scheduled your work around known downtime. Microsoft decided your PC needs to restart, and Microsoft's decision overrides yours.
But it's not just the reboots. It's what comes with them.
After a forced update, you might find new apps pinned to your Start menu that you never installed. Candy Crush. Spotify. Disney+. LinkedIn. These aren't operating system components. They're advertisements. Microsoft is using its position as your OS vendor to install third-party software on hardware you own, without asking, during updates you can't refuse.
This is your PC. You paid for it. You maintain it. And Microsoft treats it like a billboard they have perpetual access to.
The forced reboot pattern is especially revealing. Microsoft could let you schedule updates at your convenience. They could make reboots optional. They could at least wait until the machine is idle. Instead, they designed a system that actively overrides user autonomy. Your workflow doesn't matter. Your open files don't matter. Microsoft's update schedule matters.
I've watched a forced reboot kill a long-running process on my development machine. Not once - multiple times. Every developer on Windows has a story like this. We've all lost work to an update we didn't ask for, installing software we didn't want, on a machine we paid for.
In the TV show Space Force, there's a scene where the team is trying to prevent a satellite from crashing into Earth and killing people. Mid-crisis, the laptop starts a forced Windows update. John Malkovich's response is the only appropriate one:
It's supposed to be comedy. For anyone who runs Windows, it's a documentary.
I run a Windows Home PC as a server - it hosts VMs that run web APIs for my projects. I had to intentionally disconnect it from the internet to prevent Microsoft from force-rebooting it. No notification. No way to postpone indefinitely. No way to say "this machine is running services that other machines depend on - do not restart." Microsoft doesn't care. So I cut the cord. My own server, running my own VMs, deliberately gimped with no internet access because I can't trust the operating system not to kill my workloads whenever Microsoft decides it's update time.
That's where we are. I had to break my own infrastructure to protect it from the company I paid for the OS license.
Then there's Visual Studio. Microsoft shipped a release with a bug in a bundled JavaScript debug adapter (vsDebugServer.bundle.js) that made Blazor WebAssembly debugging completely impossible. I tracked down the exact cause, found the one-line fix, cited the upstream commit that broke it, and shared the workaround with every developer stuck on that issue. Microsoft's response? It would be fixed in the next monthly Preview release.
Weeks of broken tooling for an entire developer community. The bug was identified, the fix was known, and the company that charges for Visual Studio licenses told its users to wait. Meanwhile, a community member (me) found and published the workaround because developers actually need their tools to work. That fix got dozens of reactions from grateful developers - which says everything about where the real support comes from. Not from the company charging for the product, but from the community using it.
Google: "Your Data Lives Here. We Decide the Terms."
I recently spent days extracting 118,096 files from Google - 263 GB of photos, documents, emails, and other data spread across two accounts (mine and my daughter's). I built custom tools to verify the extraction because I didn't trust Google to do it right. I was right not to trust them.
I wrote about that experience in detail in a separate article, but the short version is:
Google Takeout - their official data export tool - strips metadata from your files, mangles filenames, splits exports into arbitrary zip files, and makes the process just difficult enough that most people give up. This is your data. Photos of your family. Your daughter's childhood. Documents you created. And Google makes you jump through hoops to get a degraded copy of it back.
Then there's the pricing trap. Google gives you 15 GB free, trains you to depend on their cloud, and then charges you when your family photos fill it up. Want to leave? Good luck downloading 263 GB through a web interface designed to time out. Want to delete your data after leaving? The deletion pages returned 404 errors when I tried to access them.
Google doesn't delete your data easily because your data is their product. Every photo you upload trains their AI. Every email you send trains their models. Every document you create feeds their advertising machine. When you try to leave, you discover that "your" data was never really yours - it was theirs, stored on their servers, subject to their terms, exportable only through their broken tools.
And then there's Chrome on Android. Firefox on Android supports extensions - ad blockers, privacy tools, developer utilities. Chrome on Android does not. This isn't a technical limitation. It's a business decision. Google's entire business model is advertising. Ad blockers eat into that revenue. So Chrome on Android - the most popular mobile browser on the most popular mobile OS, both made by Google - deliberately withholds a capability that Firefox proves is perfectly possible.
Your phone. Your browser. Your screen. Google's ads.
There's also Google's Chrome Web Store. To publish a free extension - software I'm giving away for free - Google requires my full legal name, home address, and phone number on a public listing. A solo developer working from home has to publish their home address to the world just to share a free tool. But if I need to talk to a human at Google? There is no phone number. There is no support path. They demand my personal information to let me give things away, but they won't give me a way to reach them when their systems break.
The tools I built to escape are open source: github.com/LostBeard/free-your-data. Because nobody should have to reverse-engineer an exit from a service they're paying for.
Proton: "Privacy For Everyone" (Terms and Conditions Apply)
Proton markets itself as the privacy-first alternative. Proton Mail. Proton VPN. Proton Drive. The whole pitch is "we're not like the big tech companies." I believed them. I signed up and paid for six months via PayPal.
Then I discovered that Proton had quietly added themselves to PayPal's auto-pay. Not a one-time payment for the subscription I chose. An automatic recurring authorization that I never agreed to and wasn't told about.
I removed the auto-pay entry from PayPal - because I don't let companies set up unauthorized recurring charges on my payment methods. Proton's response? They immediately cancelled my account. Not at the end of my prepaid period. Immediately. Six months paid for, service terminated, because I had the audacity to remove an auto-pay I never authorized.
They did not refund the remaining prepaid time. I had to open a PayPal dispute to get my money back.
This is the company that sells itself on trust and transparency. "We don't do what the big companies do." Except the part where they sneak auto-pay authorizations into your payment method and then cancel your prepaid service when you notice.
Amazon: "Your Review Has Been Removed"
I ordered a new MSI Radix router from Amazon. What arrived was clearly a used unit. The router's box was damaged on the bottom (the shipping box was fine). The box wasn't taped shut. Contents had been removed and put back. Items that should be factory-sealed were loose.
For a router - a device directly tied to your network security - receiving an obviously used, previously opened unit is a real concern. Someone else had this device on their network. The firmware could have been modified. I had no way to verify its integrity.
I left an honest review describing exactly what I received. Amazon removed it.
Not because the review was fake. Not because it violated any content policy. Because it made Amazon look bad. A customer paid full price for a new product, received a used one, described that experience honestly, and Amazon's response was to silence the review.
This is the pattern at its most brazen. When the customer's honest experience conflicts with the company's image, the company doesn't fix the problem - they hide the evidence. Amazon would rather delete a legitimate review than address the fact that their fulfillment pipeline is shipping used products as new.
I contacted Amazon support through X (where I'm @LostIt1278). I was told to provide my order number. I did. The support experience was about as helpful as Meta's verification system.
Apple: "There's an App Store for That" (And You Will Use It)
This one is personal to me as a web developer.
Steve Jobs stood on stage and told the world that web apps were the future of the iPhone. The original vision for third-party iPhone software wasn't the App Store - it was the web browser. Build your app in HTML, CSS, and JavaScript. Deliver it through Safari. No gatekeepers. No 30% cut. The web was supposed to be the platform.
Then Apple discovered they could charge 30% of every transaction if they forced developers through the App Store instead. The vision died.
Today, Safari on iOS is the last major browser that deliberately cripples Progressive Web Apps (PWAs). Features that work perfectly in Chrome, Firefox, and Edge are broken or missing in Safari. Push notifications were withheld for years. Background sync is limited. Web Bluetooth, WebUSB, and other hardware APIs are blocked. WebAssembly performance lags behind other browsers.
This isn't incompetence. Apple employs brilliant engineers. This is strategy. Every capability that Safari withholds from web apps is a capability that can only be accessed through a native app - which means through the App Store - which means through Apple's 30% tax.
Apple almost went further. In early 2024, in response to the EU's Digital Markets Act, Apple announced they would remove PWA support entirely from iOS in the EU. They would have literally broken existing web applications that people were already using. The backlash was severe enough that they reversed course, but the intent was clear: Apple would rather destroy web app functionality than let developers bypass the App Store.
For developers like me who build Blazor WebAssembly applications - full-featured apps that run entirely in the browser with no server dependency - Apple's Safari is the constant obstacle. Every missing API, every performance gap, every "works everywhere except iOS" bug is a reminder that Apple actively fights the open web to protect their revenue stream.
Steve Jobs was right in 2007. The web should be the platform. Apple killed that vision because it wasn't profitable enough.
Roblox: Punishing Kids for Using Their Own Store
My daughter builds worlds in Roblox. She's 10. She found an animated character in the Roblox store - content that someone else uploaded, that Roblox approved for their marketplace - and used it in a world she was building. She didn't even publish the world. It was private, unpublished, just her experimenting with the creation tools.
Roblox banned her for three days.
The content - some creepy animated character - apparently violated their terms of service. But my daughter didn't create it. She didn't upload it. She didn't distribute it. She used an asset from Roblox's own store in an unpublished world. Roblox made the content available, a child used it exactly as intended, and Roblox punished the child.
The person who uploaded the offending content to the store? Who knows. But a 10-year-old who browsed the store and clicked "use" got a three-day ban.
I told my daughter to stop creating worlds after that. She'd built a lot of them and loved doing it - it was her creative outlet. But if the platform is going to ban her for using assets from their own store, it's not worth the risk. A 10-year-old shouldn't have to worry about getting banned for browsing a content library that the platform itself provides.
Between her grandparents and us, we've spent over $500 on Roblox in the last couple of years. Cosmetics, subscriptions, Robux. Over five hundred dollars from a family that was actively engaged with the platform - and their response to a child using their own store is a ban.
This is the platform that markets itself as a safe, creative space for kids. The same platform that makes billions from kids spending their parents' money on Robux. They can't police their own content store, but they can ban a child for using it.
The Pattern
These aren't isolated incidents. They're the same business model expressed seven different ways:
| Company | What they control | How they justify it | What it costs you |
|---|---|---|---|
| Meta | Your purchased content | "Child safety" | $277.93 in hostage games, weeks of broken verification |
| Microsoft | Your hardware | "Security updates" | Lost work, unwanted apps, forced reboots |
| Your data and your browser | "Cloud convenience" | Mangled exports, 404'd deletion, no mobile ad blockers | |
| Apple | The web platform | "Security and quality" | Crippled PWAs, blocked web APIs, 30% App Store tax |
| Proton | Your prepaid service | "Payment processing" | Unauthorized auto-pay, immediate cancellation, PayPal dispute |
| Amazon | Your honest feedback | "Review guidelines" | Deleted reviews, used products sold as new, silenced customers |
| Roblox | Your kid's creativity | "Community safety" | 3-day ban for using content from their own store |
The justifications are always noble. Child safety. Security. Convenience. Privacy. Quality control. App quality. But the implementations consistently prioritize the company's interests over yours. Meta could build family accounts - they build threats instead. Microsoft could make updates optional - they make them mandatory instead. Google could provide clean exports and allow extensions - they mangle data and protect ad revenue instead. Apple could support the open web - they cripple it to protect the App Store instead. Proton could honor prepaid terms - they cancel accounts instead. Amazon could stop shipping used products as new - they delete reviews instead.
This is what happens when software is built by corporations, for shareholders, controlled by executives who will never meet the people their decisions affect.
And here's the part that keeps me up at night: I'm a lifelong nerd. I've been building software since I was a kid. I know how to extract 118,000 files from Google with custom tools. I know how to recognize a phishing email by a misspelled "noreply." I know that when Meta says "contact your bank," the bank isn't the problem. I know how to file a PayPal dispute. I know that Safari cripples PWAs on purpose.
And this stuff still stresses me out.
Now think about everyone who isn't a developer. Your parents. Your neighbors. The single mom who just wants her kid's photos backed up. The grandparent who bought their grandchild a Quest for Christmas. The teenager who doesn't know that Roblox's own content store can get them banned. These systems are designed to create urgency, confusion, and compliance - and they work. Not because people are stupid, but because these companies have armies of engineers building systems specifically to make you feel like you have no choice.
If a developer who does this for a living has to fight this hard, what chance does everyone else have?
Software By People, For People, Controlled By People
I'm a developer. I build open source tools for the web. My project, SpawnDev.BlazorJS, brings C# to the browser through WebAssembly - full client-side applications that run on YOUR machine, process YOUR data locally, and don't need anyone's server or permission to function.
This isn't an accident. It's a direct response to everything described above.
When your application runs client-side in WebAssembly:
- Your data stays on your device. No cloud required. No server that can hold your files hostage. No terms of service that can change underneath you.
- Nobody can force-update your running application. The code executing in your browser is yours for that session. No silent restarts. No surprise installations.
- Nobody can revoke your access. There's no verification system between you and your own data. No 13-day countdown. No "card declined" on functionality you already have.
- The source code is open. You can read it, modify it, fork it, host it yourself. No black box. No "we reviewed your account and found it does follow our Terms of Service" - because there are no terms. It's your software.
I'm also building SpawnDev.ILGPU - GPU compute that compiles C# into WebGPU, WebGL, WASM, CUDA, OpenCL, and CPU code. Real GPU computing, in the browser, on your hardware. No cloud GPU rental. No API keys. No usage limits. Your GPU, your code, your results.
This is what software looks like when it's built by someone who has been on the receiving end of the alternative. Every design decision I make is informed by the question: "Could this be used against the person using it?" If the answer is yes, I design it differently.
The Lesson
I kept the receipts from Meta. All of them. I kept the screenshots of every broken verification attempt, every error dialog, every threatening email. Not because I plan to sue anyone - but because when a company takes your money and then can't verify that you exist, you keep the proof that you did.
I built the tools to extract my data from Google and published them for free. Not because I'm trying to hurt Google's business - but because 118,096 files of someone's life shouldn't require custom software to recover.
I put up with Microsoft's forced reboots because I need Windows for my development tools. But every application I build is designed to run in the browser, on any platform, with no OS-level dependencies that can be weaponized against the user.
The trend is clear. Big tech companies have decided that your purchases, your hardware, your data, your browser, and your voice are theirs to control. They'll hold your games hostage over a broken verification system. They'll reboot your computer mid-work to install Candy Crush. They'll make you build custom extraction tools to recover your own family photos. They'll block ad blockers to protect their ad revenue. They'll cripple the web to protect their app store. They'll sneak auto-pay onto your PayPal. They'll delete your honest reviews when the truth makes them look bad.
The answer isn't to accept it. The answer is to build software that can't do those things by design. Software where the user's data never leaves their device unless they choose to send it. Software where updates are optional and non-destructive. Software where "your account" is just a folder on your hard drive that you can copy, back up, or delete without anyone's permission. Software that runs on the open web - not through an app store, not behind a paywall, not at the mercy of a platform owner.
Software by people. For people. Controlled by people.
That's what I'm building. And after what Meta, Microsoft, Google, Apple, Proton, Amazon, and Roblox have shown me, I'm more motivated than ever.
One Last Thing
This article is full of frustration. Companies that take your money and treat you like a suspect. Systems designed to control instead of serve. Hostility baked into the products we use every day.
But hostility is a choice. And so is the opposite.
If you're a developer, build things that respect the people using them. If you're a user, support the projects and people who treat you like a human being. If you see someone struggling with a broken system, share the fix. If you can contribute to open source, contribute. If you can be patient with someone who's frustrated, be patient.
It won't fix everything. But every small act of decency is energy spent building instead of tearing down. The world has enough hostility. It doesn't need more from us.
To quote Bill and Ted: "Be excellent to each other."
A simple ask. Worth the effort to make it happen.
I kept the receipts. You should too.







Top comments (0)