10 stories

★ Spotify’s Car Things to Be Rebranded as Car Bricks

1 Comment

Chris Welch, writing for The Verge, “Spotify Is Going to Break Every Car Thing Gadget It Ever Sold”:

Unfortunately for those owners, Spotify isn’t offering any kind of subscription credit or automatic refund for the device — nor is the company open-sourcing it. Rather, it’s just canning the project and telling people to (responsibly) dispose of Car Thing.

“We’re discontinuing Car Thing as part of our ongoing efforts to streamline our product offerings,” Spotify wrote in an FAQ on its website. [...] The company is recommending that customers do a factory reset on the product and find some way of responsibly recycling the hardware. Spotify is also being direct and confirming that there’s little reason to ever expect a sequel. “As of now, there are no plans to release a replacement or new version of Car Thing,” the FAQ reads.

Car Thing was initially made available on an invite-only basis in April 2021, with Spotify later opening a public waitlist to buy the accessory later that year. The $90 device went on general sale in February 2022 — and production was halted five months later.

No word in Spotify’s Car Thing bricking FAQ about when they’re dropping support for Apple Music, Amazon Music, and YouTube Music. Oh, that’s right, they never supported any music services other than their own, despite having spent the last decade petitioning their home-turf European Commission to secure unfettered pay-no-commission access to platforms created by Apple and Google. It actually worked for them with Google.

Spotify and European Commission supporters are likely to respond to the above by arguing that Car Thing is totally different from the iPhone and Android. Car Thing was never popular at all, and iPhone and Android combine to form a duopoly that controls the entire market for phones. “Gatekeepers” must play by different rules to rein in their gatekeeping power, and Car Thing was by no means a gatekeeping platform.

That’s all true, but what do you think Spotify planned to do if Car Thing became a hit product? Do you think they planned to open it up to competing streaming services after it became popular? I doubt it. And if you think they not only would have opened Car Thing up to competing services, but would have done so without charging significant commissions or fees, I have a bridge to sell you.

To be clear, I think it’s fine for companies to create hardware exclusively for the use of their own services. And of course I also think it’s fine (great, in fact) to create hardware that is open to third-party software free of charge. But it’s also fine to create console platforms where third-party software is subject to fees and commissions paid to the platform owner. Spotify’s anti-App-Store rhetoric would lead you to believe that Apple only began extracting 30/15 percent commissions from in-app subscriptions after the iPhone became a dominant platform.

But that’s not what happened at all. When Apple announced the iPhone in 2007, Steve Jobs stated that their goal was to achieve 1 percent market share of the phone market by the end of 2008. At the end of 2008, they surpassed that goal, hitting a whopping 1.1 percent market share:

  1. Nokia, 38.6%
  2. Samsung, 16.2%
  3. LG, 8.3%
  4. Motorola, 8.3%
  5. Sony Ericsson, 8%
  6. RIM, 1.9%
  7. Kyocera, 1.4%
  8. Apple, 1.1%
  9. HTC, 1.1%
  10. Sharp, 1%

2008 was also the year the App Store launched, with support for free apps (no commission charged to developers) and paid apps (30 percent commission). Apple added subscriptions in early 2011, with the same 70/30 split. All of the iPhone’s subsequent success happened with that App Store commission in place, and that commission has only gone down over time — most notably, for Spotify, by dropping the commission from 30 to 15 percent for subscription renewals after the first year, starting in 2016.

The number one free download from the App Store in 2008 was Pandora Radio, a music streaming app. Other early hits included Last.FM and AOL Radio. But when Spotify announced they’d submitted their first version to the App Store in 2009, it was an open question whether Apple would allow it. Paid Content: “Spotify Waves iPhone Buzz Under Apple’s Nose” and “What If Apple Blocks Spotify’s iPhone App?BBC News: “Spotify has been called an ‘iTunes killer’ because of its ease of use and its comprehensive, free library of millions of songs.” TechCrunch: “Spotify in the iPhone App Store – Will Apple Approve It?

And my guess:

But so the big question is whether Apple will accept the app, despite the fact that Spotify is clearly a competitor to the iTunes Store. They should. For one thing, competition is good for Apple. For another, I think rejecting Spotify from the App Store could result in an antitrust investigation from the EU.

Apple did, of course, accept Spotify into the App Store. They eventually added the ability for third-party apps to play audio in the background too. I was wrong only in thinking that allowing Spotify into the App Store could avoid antitrust scrutiny from the EU.

So let’s be clear about Spotify’s position: It’s OK — for them at least — to create a new hardware platform with no support at all for third-party software, but not OK for another company that owns its own music service to create a hardware platform that offers access to any and all competing services, but charges a commission for access, if that platform becomes popular. Once sufficiently popular, it’s only fair to allow Spotify access to those platforms free of charge, despite the fact that Spotify never allowed third parties access to their own platform at all, and built their own success through access to the App Store, at a time when the iPhone had single-digit market share for phones and low-teens market share among “smartphones”. Got it.

Read the whole story
25 days ago
One must really be extra dense not to see the difference here.
Share this story

Netscape Meteors

1 Share

I went on a small journey the last couple days to find the original Netscape Navigator “meteors” animation. This one has a special place in my head and heart because it is so clearly connected to my memories of discovering the web as a kid. Here it is in its original 60×60 px glory:

I started out doing some web searches that turned up several versions. One was promising but far too big: 400×400 px. Worse, after some shoddy resize attempts, the “pixels” had become rectangular.

This would not do.

I continued searching, hoping to find the original animations. I found someone’s mirror of Netscape 5.0 on Github. Then I found some very old versions of Mozilla on a Mozilla FTP server. Sadly, the animations had been stripped out of these archives. :(

Frustrated with hitting several deadends, I complained to Tess and wondered aloud if anyone might have the original images stashed away somewhere. She quipped that if anyone did, it would be Jamie Zawinski.

A little later, I posted about it on Mastodon.

And wouldn’t you know it, a friend tagged @jwz asking if he had it, and a few moments later I got a reply from Jamie himself.

If you don’t know, Jamie Zawinski is well-know for working on several important software projects in the ’90s. He worked on Netscape Navigator, built and maintains Xscreensaver, and several other things. Nowadays, he owns and runs DNA Lounge in San Francisco.

There are a lot of neat bits of web browser history on the page he linked – totally worth a quick look over – but most important to the quest at hand, it had that Netscape meteors loading animation.

The original one has some small artifacts on the left side of frame 10 that render as red and orange pixels. These bothered me enough that I made a version that replaces those pixels with ones that match the surrounding pixels. Here’s the modified 60×60 one and a bigger 240×240 px one, for good measure:

Read the whole story
312 days ago
Share this story

Alphabet Notes

4 Comments and 10 Shares
Listen, you're very cute, but if you rearrange the alphabet to put U and I together it will RUIN the spacing!
Read the whole story
350 days ago
Share this story
4 public comments
343 days ago
Well, thank you for the compliment, but if we were to rearrange the alphabet and put U and I together, it would indeed disrupt the existing spacing and order!
361 days ago
VW..? Product placement in the alphabet?
361 days ago
I've asked that very same question about Q before.
361 days ago
And yet, if I anthropomorphize the letters I can't help but think "Oh, that's so Q!"
361 days ago
Listen, you're very cute, but if you rearrange the alphabet to put U and I together it will RUIN the spacing!
351 days ago
https://noida-escort.com/ https://noida-escort.live https://noidacallgirls.in/ https://noidacallgirls.info/ https://noidacallgirls.biz/ https://noidacallgirls.in/ https://simrankaur.in/ https://callgins.in https://allroundar.netlify.app https://noida-escort.com/ https://noidacallgirls.in/ https://noidacallgirls.info/ https://noidacallgirls.biz/ https://noidacallgirls.in/ https://simrankaur.in/ https://callgins.in https://noidaescort.club/ https://gurugramcallgirls.com/ https://aarjuescorts.com/ https://faridabadescort.info/ https://girlnoida.com/ https://www.alishaescort.in/

Return to Monkey Island

1 Share

I felt bad about the April Fools' joke so over the weekend I whipped up the game so no one was disappointed.

Read the whole story
807 days ago
Share this story

The Case Against Crypto


The Case Against Crypto

These days so much of my free time is booked with calls to explain to people outside the software industry why crypto assets are such a destructive force and why I support forceful regulation to halt this financially corrosive enterprise from spreading further into markets. I basically have to repeat myself on the basic arguments for every call covering the same basic monetary theory, American history and technical limitations. Thus I’m going to summarize the basic argument so we have a reference and I don’t have to keep repeating myself all day.

  1. The technology does not solve a real problem.

The crypto project has had 13 years to try and find a problem to solve. It has not found one.

The real world has fundamental constraints that make the technology unworkable, whenever it has to interact with the outside world the benefits of decentralization disappear and the solutions end up simply recreating slower and worse versions of processes and structures that already exist.

Despite that, for the last thirteen years these projects have done nothing but scam people by creating synthetic asset bubbles for gambling and destroying the environment. There are fundamental limitations to the scalability of blockchain-based technologies, and every use case is better served by another simpler technology except for crime, ransomware, extralegal gambling, and sanctions evasion; all of which are a drain on society not a benefit. Taken as a whole the technology has no tangible benefits over simply using trusted parties and centralized databases.

Crypto coins are simply speculative gambling products that only create a massive set of negative externalities on the world. It is introducing artificial volatility into markets untethered to any economic activity and creates an enormous opportunity cost where the only investment opportunity is as an economically corrosive synthetic hedge against all productive assets. This is not innovation, this is technical regression and flirtation with ecological disaster in a time when we cannot afford to gamble our planet’s fate on pyramid schemes and dog memes.

  1. So called “cryptocurrencies” aren’t actually currencies, and cannot fulfil the function of money.

Money exists to exchange for goods and services in an economy. It is created to mediate the exchange of goods so that we have a common unit of account we can trade instead of bartering goods directly. Money needs to have a reliable and stable value compared to a domestic basket of common goods and services, in order to achieve that the supply of the money needs to be controlled by a monetary authority which can expand or contract the supply according to market fluctuations.

A dynamic money supply is a fundamental necessity for a modern economy. A small amount of inflation discourages hoarding and incentivizes investment into productive enterprises which grow the economy and produce prosperity. Conversely a static fixed money supply encouages hoarding, and is inflexible in times of crisis because it does not allow intervention. Economies do not stabilize themselves and require active intervention to curb recessions.

In an environment in which multiple currencies can commingle there is a perverse incentive to create counterfeit currency or to create parallel currencies. Counterfeit currencies dilute trust in commerce, create counterparty risk and catalyze crime. Parallel currencies introduce exchange risk and create artificial barriers to commerce. The optimal solution within any economic region is to thus have a single currency with a single authority to control the supply, protect against counterfeiting and lower barriers to commerce by discouraging other systems through creating demand. The only possible entity that can fulfil this role is the State and it creates demand for a single currency by requiring citizens to extinguish their obligations to the state in that currency. A single currency and single monetary authority is the inevitable role of the state because of its singular monopoly on taxation and justice.

Historically commodity-based money (so called “hard money”) was based on backing by metals and was used extensively in the 18th and 19th century. Instead of vesting power in democratic controls, it instead vested power in non-elected international parties who could source, mine and mint metals. Under a gold standard, inflation, growth and the financial system were all less stable due to trade imbalances. This led to frequent recessions, larger swings in consumer prices and perpetual banking crises. When these events occurred in one part of the world, the distress would be transmitted more quickly and completely to others and thus created a politically unstable, unequal and more violent world. We saw this in the Gilded Age of the 1870s to 1920s in which hard money created a world of massive wealth inequality, thus ultimately leading up to the speculative market manias that lead to the Great Depression. The United States ultimately devalued its currency with the policies of the New Deal which slowly decoupled the dollar’s dependence on gold and which led to an era of economic growth and prosperity. Conversely Europe largely did not engage in these corrective policies and this era saw the rise of populist strong men and fascists who promised to correct the wealth inequality of the common man, and ultimately plunged the continent into the most violent period in human history.

Money is always going to be inseparable from politics. As much as some libertarians want to believe that value should be determined by a God-given order independent of the will of men, they cannot escape the logical and historical contradictions at the heart of this idea. The fixed-supply ideas of deflationary coins like Bitcoin fundamentally misinterpret the properties of fiat money as bugs when they are in fact features. The crypto project contains unresolvable logical and economic contradictions in its stated purpose. State controlled money embeds control and accountability for fiscal stability and market intervention in the democratic process where it inevitably and rightly belongs.

  1. The history of private money is one of repeated disasters that destroy public trust.

Even playing devil’s advocate and assuming cryptocurrency could function as money—which they can’t—we come up against the hard limitation that everytime private money has been tried in history it creates a form of corporate feudalism coupled to a toxic environment that encourages fraud and discourages commerce. The lessons of history are quite clear on this issue because the United States flirted with such a system back in the Free Banking Era from 1837 to 1863. In this time period there were hundreds of private entities that went about issuing their own private bank notes allegedly created one-for-one with state bonds.

The problem with these so-called wildcat banks is that their reserves were not always verifiably backed and were thus subject to runs on the bank in which customers could not access their funds. The second issue is that unlike public money which is universally accepted at par, the wildcat bank notes had a massive secondary exchange market where notes from different banks would not trade at par. A dollar note from Wyoming bank could be worth $0.60 to a note from a Nebraska bank and these values would fluctuate depending on market conditions. As a merchant this would make business rather complicated as you would be forced to purchase goods in one set of notes, accept notes from customers and give change in a different set of notes. This was great for bankers who had access to non-public information and could arbitrage these notes for their own profits, but for the average person it was a terribly predatory and exploitative system. Private bank notes are a needlessly complicated, risky and inefficient way to run an economy and this was remedied by the National Bank Act of 1863. It was a truly terrible idea.

History tends to rhyme with itself, and today we are flirting with the same bad ideas of the past. Except now instead of wildcat banks we have wildcat tech platforms with the same aspirations. They don’t want to interface with public money, they want to become issuers of private money themselves. A fully vertically integrated form of company scrip that they issue to their investors, employees and customers to create not just a walled garden, but a walled garden where every path has a toll booth that takes only their coin. The elephant in the room that no venture investor in these projects wants to talk about is that creating private money, just like in the wildcat banking era, is a license to print money by creating markets for these coins/notes with massive position and information asymmetries baked into the design. These kinds of private money regimes are just as exploitative today as they were in the 1800s, and the so-called “web3” notion of embedding this form of institutionalized corruption as a first class structure into the internet is a terrible idea that ignores the lessons of history.

  1. Crypto assets are all unregistered securities.

When we logically deconstruct the crypto narrative by tossing out the phoney populism and cult-like structure of faith in economic absurdities, we end up with an inescapable conclusion that fits firmly within our existing regulatory framework. Crypto assets are simply unregistered securities on ventures whose stated aspiration is to develop technology to become digital wildcat banks. They’ve just synthesized their corporate equity and alleged notes into one financial product.

Cryptocurrencies aren’t currencies and have no mechanism to ever become currencies. They are effectively unregulated securities where the only purpose of the products is price appreciation untethered to any economic activity. The only use case is gambling on the random price oscillations, attempting to buy low and sell high and cash out positions for wins in a real currency like dollars or euros. Yet crypto cannot create or destroy real money because unlike a stock there is no underlying company that generates income. So if you sell your crypto and make a profit in dollars, it’s exactly because a greater fool bought it at a higher price than you did. So every dollar that comes out of a cryptocurrency is because a later investor put a dollar in. They are inherently zero-sum by design, and when you take into account the casino (i.e. exchanges and miners) taking a rake on the game then the entire structure becomes strictly negative-sum. For every winner there are guaranteed to be multiple losers. It’s a game rigged by insiders by hacking human psychology.

For cryptocurrency to have any real utility, the volatility needs to cool off. If that were to happen, there would be little reason for the public to speculate on cryptocurrency prices, given that there would no longer be the potential for massive returns. The smart money exits, the liquidity disappears and the bubble collapses. This is the inevitable fate of all cryptocurrencies, and we see this reflected in the simple fact that the median return on all these thousands of flash-in-the-pan coins is zero. Every crypto coin is just on a random walk to zero by a different path.

The argument laid out in this article is a quite complicated edifice, and requires a large amount of knowledge at the intersection of several fields of study that, quite frankly, the public should not have to concern themselves with learning to safeguard themselves against fraud. Public money should just work for most people without them having to be concerned with the details. This is ultimately where cryptocurrencies tap into the ignorance, desperate faith in technical solutionism and political resentment of the public and weaponize it for the aims of these libertarian private money charlatans to engorge themselves. These guys aren’t building a new financial system, they’re just lining their own pockets.

History repeats itself first as tragedy and then as farce. The wild economic oscillations of yesterday’s gold standard is today’s dog meme mania. Human nature is remarkably invariant through the ages and if we don’t learn the lessons of history then we’re doomed to repeat the mistakes of past generations. This time around If we’re very lucky then crypto assets simply end in a market crash and a series of progressive New Deal-like reforms to our financial system. If we’re unlucky then they accelerate the expansion of a shadow financial system used to enrich the already wealthy, increase wealth inequality to historically unprecedented levels, decrease faith in democracy and further fan the flames of populism. These trends ultimately converge to leave humanity’s fate to the wild oscillations of market manias, charismatic demagogues and strong men who promise to save us from ourselves. And we’ve seen how that story ends.

Read the whole story
889 days ago
Share this story

You need neither PWA nor AMP to make your website load fast

1 Share

There has been a trend of new “revolutionary” techniques on the Web that basically let you do stuff possible decades ago.


First, AMP (Accelerated Mobile Pages). Think about it: web, in general, failed to be fast, so Google invents a parallel web where they simply don’t let you use JavaScript. Oh, and they let you use a couple of Google-approved AMP JS components. But wait, can’t regular web run without JavaScript? Of course it can. Can regular web include custom JS components? You bet. Can it be fast? Netflix recently found out that if they remove 500 Kb of JavaScript from a static (!!!) webpage it will load WAY faster and users will generally be happier. Who would have thought, right?

So why was AMP needed? Well, basically Google needed to lock content providers to be served through Google Search. But they needed a good cover story for that. And they chose to promote it as a performance solution.

Thing is, web developers don’t believe in performance. They say they do, but in reality, they don’t. What they believe in is hype. So if you hype old tricks under a new name, then developers can say “Now, finally, I can start writing fast apps. Thank you Google!”. Like if Google ever stopped you from doing so beforehand.

“But AMP is new! <amp-img> does so much more than <img>!”

It might, but what stops Google, if it really has an intention to help, from releasing it as a regular JS library?

So hype worked, lots of developers bought the cover story and rushed creating a parallel version of every webpage they serve with “AMP-enabled” performance boost.


“Hey boss, let’s rewrite our website to make it load fast!”
“Fuck off!”
“But studies show that every second of load time…”
“I said fuck off!”


“Hey boss, let’s rewrite our website with AMP. It’s a new tech by Google…”
“Drop everything! Here, take $$$”
“It also might improve…”
“I don’t care. Get on this NOW!”

I’m not saying practices promoted by AMP are bad or useless. They are good practices. But nothing stops you from following them in the regular web. Nothing has ever stopped you from writing performant pages, from the very inception of the web. Google hardly invented CDNs and async script loading. But nobody cared because old tech and good practices are never as tempting as something branded as “new”.


Enter PWA. Progressive Web Applications. Or Apps. Progressive Web Apps. Whatever.

So the idea was to be able to create a native-like experience but with web stack. What was the Web missing? Installing apps. Offline mode. Notifications (Ew). Working in the background. Yeah, that’s basically it. That’s it.

Again, I’m not going to say these things are wrong. They are not. If you want to create a native-like app using web technologies, you’ll have to use something like that. And it makes sense for apps like a shopping list or, I don’t know, alarm clock?

The problem with PWA is, well, there are two problems.

First is that most apps would be better off as websites rather than apps. Websites load each resource gradually, as it’s needed, unlike apps which have to fetch everything at install (that’s why app bundle sizes are usually way bigger than websites). Sites are more efficient but you can’t use them while offline.

But most “apps” today are online-only anyways! You can’t call Uber while being offline, and why would you open Uber app otherwise? Tinder is useless offline. You can’t date empty chat screens. You can’t join a meetup at Meetup.com without network connection. You can’t choose or book a hotel, you can’t transfer money or check your account balance offline. And nobody wants to re-read old cached tweets from Twitter or yesterday photos from Instagram. It just doesn’t make any sense.

So yeah, I would prefer those “apps” to be just websites. Believe it or not, there are benefits to that. I enjoy smaller download size, especially if I visit a site occasionally just for a quick look. I enjoy that websites do not consume my resources in the background. When I close it it unloads and does not constantly download new versions of its own libraries, which developers frequently need to deploy. I’m more than ready to sacrifice offline mode for that.

The second problem with PWA, and more relevant to our topic, is that it somehow got associated with performance.

The thing is, it has nothing to do with performance. I mean, nothing new. You were always able to cache resources to make navigation between pages quick, and browsers are pretty good at doing so. With HTTP/2 you can efficiently fetch resources in bulk and even push resources from the server for a “more instant” experience.

So managing resource cache yourself, in a ServiceWorker, seems more like a burden than a blessing. HTTP caching is also declarative, well-tested and well understood at this point, in other words, hard to screw up. Which you can’t say about your ServiceWorker. Caching is one of two hardest things in Computer Science. I personally had a bad experience with Meetup.com PWA when an error in their cache code made the whole site unusable to the point where it wouldn’t open meetup pages. And unlike HTTP, it’s not that easy to reset. Nope, refresh didn’t help.

But it would’ve been ok if ServiceWorker was a tradeoff: you pay complexity fee but get exciting new capabilities. Except you don’t. Nothing useful that you can do with ServiceWorker you can’t do with HTTP cache/AJAX/REST/Local Storage. It’s just a complexity hole you’ll sink countless workhours in.

PWA, as well as AMP, doesn’t even guarantee your website would be anywhere near “fast” or “instant”. It’s kind of funny how Tinder case study shows that login screen (one text input, one button, one SVG logo and a background gradient) takes 5 seconds to load on a 4G connection! I mean, they had to add loader for 2-5 seconds so users don’t close this bullshit immediately. And they call it fast.

This is fast:

How did they do it? By fucking caring about performance. As simple as that.

Oh, also not serving a gazillion of JavaScript bundles and not rendering on a client with React served over GraphQL via fetch polyfill. That probably helped too.

ServiceWorker or AMP, if your landing page is 170+ requests for 3.1 Mb for an image and four form fields, it can’t load fast no matter how many new frameworks you throw at it.


So what’s the verdict? To write fast websites with AMP and PWA you still need to understand performance optimization deeply. Without that, the only choice you have is to go with the hype.

But remember that neither AMP nor PWA would magically make your website any faster than say just a regular rewrite would.

Airbnb famous 800Kb index page. I would expect more care perf-wise from 900+ developers with average salary of $290,000/year. Even SublimeText gives up highlighting this bullshit at some point.

Once you understand performance, though, you’ll notice you need neither AMP nor PWA. Just stop doing bullshit and web suddenly starts to work instantly. AMP didn’t invent CDN and <noscript>. PWA didn’t invent caching. Static web still runs circles around any modern-day much-hyped framework.

“But the users! They want our fancy-schmancy interactivity. They DEMAND animations!”

I’ll tell you one thing. No one enjoys staring at the loading screen for 5 seconds. Loader being animated doesn’t make any difference. If you can’t into performance, at least don’t pretend it’s a feature.

  1. Although I don’t think we need more notifications in our life either. Especially not from random web pages we visit. Even not from native apps—I keep my phone in permanent Do Not Disturb mode with a short list of whitelisted apps. ↩︎
  2. By the way, since you first opened this article my ServiceWorker has downloaded 0 Kb of useless data in background. I hope you are on WiFi :) ↩︎
Read the whole story
2025 days ago
Share this story
Next Page of Stories