180 karma · joined August 21, 2019
Have we forgotten Google Buzz? Google changed GMail to publicly list the people you email most. In one case, this de-anonymized a woman's blog and enabled her abusive ex-husband to stalk her. https://fugitivus.wordpress.com/2010/02/11/fuck-you-google/
This is IMO the most likely way that "bad stuff" will happen: not maliciously, but through privacy-invading misfeatures connected to pushing people to share more.
1. Exception safety becomes "catch_unwind." You might object that nobody cares about that, but major C++ codebases (Google, LLVM, Mozilla) don't care about exceptions; they are built with -fno-exceptions.
2. Move semantics in C++ are annoying, and so is the borrow checker. In Rust you get hit by things like "this code is fine here, but you aren't allowed to refactor it into a function" because there's no interprocedrural visibility into struct fields.
3. Meta-template higgery-jiggery is real and bad in C++, but has a mirror in Rust. With C++ duck-typed generics you write dumb code that does the thing, and then you can refine it with hilariously awful techniques like SFINAE. In Rust you're googling higher-ranked trait bounds before you can even write the thing. What does `for` do again? I think "strongly-typed language, duck-typed generics" is a bit of a sweet spot and C++ has lucked its way into it.
4. "30 years of cruft" means things like "I speak C preprocessor" which is practical. C compat is why C++ is both so awkward and so successful. There's no smooth ramp from C++ to Rust, the way there was from C to C++; that's a choice and maybe the right choice but it has a price.
Those little ketchup packs get thrown out a lot. The bottled stuff tastes better anyways.
Fallible C++ functions do return an error code. errno is part of C++.
https://www.reddit.com/r/antivirus/comments/on99mk/avg_antiv...
Apple shipped Service Workers in WebKit in 2021. Are web apps much better now than in 2017? Frankly it seems about the same. The best web apps are still exercises in minimalism like Wordle, which don't need Service Workers or Web Push.
1. Divide miner revenue (fees + seignorage) by the number of transactions, yielding the total amount that miners extract. It was $34m today, with ~261k transactions, yielding a cost per transaction of $130. [1]
2. Estimate energy cost at 1,173 kWh per transaction [2]. If you assume cheap electricity at say $.09/kWh you get a cost of $105 per transaction in electricity alone, which ignores hardware capital costs, etc.
Either way the cost is over $100 per transaction, and would be reflected in a falling value of BTC. But it may be masked if there's an influx of new money into the system.
1: https://ycharts.com/indicators/bitcoin_miners_revenue_per_da...
2: https://fortune.com/2021/10/26/bitcoin-electricity-consumpti...
It applies to Google through Android. Amazon sells a Fire TV, which uses AOSP; but now Google's licensing forbids Amazon from also offering an Android TV product.
Perhaps Apple should face antitrust action, perhaps not, but the MS ruling doesn't really apply as Apple does not license their software. The ruling was meant to empower OEMs and Apple IS the OEM.
tsc was designed expecting GC and it makes perfect sense to port it to another fast GC language.