Archive for September 5, 2018

Wednesday, September 5, 2018

A Farewell to StreamToMe

Matt Gallagher:

I fixed the bugs but now I had a different problem: customers, lots of them, all wanting features. If they all wanted the same features, there might not be a problem but I quickly learned that media is a deeply personal experience and everyone wants to experience it a different way.

Ever wondered why all the major media player are a weird kitchen-sink of features bolted onto each other? Media players are a product-space where everyone uses a tiny slice of the features but no two users use the same slice of features and the entire space is really, really broad.


Like an idiot, I scrambled to add as many features as I could. Unfortunately, I ended up with a huge swath of features that I didn’t really use and the app stopped starting to feel like it properly catered to me. For something that started as a personal passion project, I was starting to feel like an dispassionate observer, rather than a passionate participant.

And as the feature set grew, so did a different class of maintenance problems and these were not simple bugs that could be fixed.

What’s Going on With Cesium

Mike Clay:

What the crash logs showed were that the system was not always returning these properties in a timely way. In fact, the app was crashing because it exceeded the iOS cutoff for inactivity – while waiting for the system player to return. Instances where a property was returned more quickly might avoid a crash, but could still cause a period of unresponsiveness. The logs showed that certain properties were more common culprits, but crashes were caused by a variety of them.


Well, first I could (and have) reported the issue to Apple. Next, I had to look for ways to decrease the number of calls to the system. Unfortunately, not all calls can be omitted or Cs would show no playback info and be pretty useless. But a lot of the queuing stuff could default to the standard boilerplate functionality provided by Apple. There would be less functionality, but there would be fewer system calls, and in theory better performance.

Firefox to Block Trackers

Nick Nguyen:

In the near future, Firefox will — by default — protect users by blocking tracking while also offering a clear set of controls to give our users more choice over what information they share with sites.

Via David Heinemeier Hansson:

Love the strong stance that Firefox is lining up to take on tracking. It’s a grotesque free-for-all by default at the moment. We need both political solutions like GDPR and technical safeguards like those from Firefox and Safari.

John Gruber:

Back in the early 2000s, every web browser other than IE turned toward web standards. It painted IE as the bad player, and drove IE users to switch to Firefox and other standard-based browsers. I think the same thing is happening now with ad tracking, with Safari and Firefox leading the way.

Nick Heer:

Of course, Google still makes the world’s most popular browser. There’s simply no way they can join the club of companies that actually care about user privacy with their current business model.

Previously: Intelligent Tracking Prevention 2.0, Firefox 11.0 for iOS Has Tracking Protection on by Default.

Updates for Mojave

I’ve now updated all my apps for macOS 10.14:

This required more work than for other recent macOS releases because of Dark Mode, the security changes, and a number of framework bugs that I had to work around.

I used to like to wait until the Golden Master build before shipping my updates, but these days there are so many people using the public betas of macOS, and many of them don’t know about my public betas. Also, Apple seems to be making more substantial and undocumented changes in later betas, so even if I waited until the GM there might be changes I didn’t find out about until after shipping. So I’m doing the best I can now, with the understanding that post-Mojave updates will probably be necessary, too.