Archive for April 17, 2017

Monday, April 17, 2017

Flume Leaves the Mac App Store

Rafif Yalda (tweet, via Jeff Johnson):

Just minutes before submitting the update to Apple, we received notification from Apple that after re-reviewing our app by seemingly random selection, we had one week to make significant changes or be removed from the App Store.


Flume’s operation is indeed not explicitly authorized by Instagram (said third-party). We make that clear in our Terms of Use. The reference to “third-party social media alterations” is a vague statement however, and the only issue they chose to highlight was Flume’s uploading capabilities.


Unfortunately, as mentioned above, Apple chose to not reply, leaving us with very little recourse.


The inconsistency of the decision strikes us the most however - 39 Instagram related apps still remain live on the App Store, 13 of which provide upload features[…]

Update (2017-04-17): Flume:

Just a quick update - we decided to try once more to get an answer about the inconsistencies and this time, they did reply (<24h ago).

Didn’t really answer our questions entirely, though this was a follow up to the new update which was rejected.

Classic Mac Emulation in the Browser

Internet Archive (via Jason Scott, Hacker News):

After offering in-browser emulation of console games, arcade machines, and a range of other home computers, the Internet Archive can now emulate the early models of the Apple Macintosh, the black-and-white, mouse driven computer that radically shifted the future of home computing in 1984.


The first set of emulated Macintosh software is located in this collection. This is a curated presentation of applications, games, and operating systems from 1984-1989.

James Friend:

This is great because it provides the same level of accessibility and convenience to emulation as you’d expect of playing a media file or viewing a document.

When you start up the emulated computer on these pages of the Internet Archive, you’re running the PCE emulator, originally a piece of software intended to run natively on desktop operating systems, which has been adapted and recompiled to run in your web browser. As the person who did the initial work of porting this emulator, I thought it would be worthwhile to provide a run-down of the tools and gross hacks which made this possible.


I realised that in classic Mac OS, the mouse position is stored in a few fixed absolute locations in the computer’s memory, called ‘low memory globals’. Basically, I directly write the mouse position value into the emulated computer’s memory.


It’s pretty strange to see adding more and more stuff that’s under copyright without explicit permission.

Update (2017-04-19): See also: John Gruber.

Swift ABI Stability Dashboard

Apple (via Slava Pestov):

One of the top priorities for Swift right now is compatibility across future Swift versions. One major component of this is ABI stability, which enables binary compatibility between applications and libraries compiled with different versions of Swift. The Swift ABI Manifesto describes the engineering and design tasks that need to be complete before declaring the ABI stable. The following dashboard tracks the progress of these tasks.

Previously: Deferring ABI Stability From Swift 4, Swift ABI Stability Manifesto.

Robbing a Bank by DNS

Andy Greenberg (via Nick Heer):

Kaspersky believes the attackers compromised the bank’s account at That’s the domain registration service of, the registrar for sites ending in the Brazilian .br top-level domain, which they say also managed the DNS for the bank. With that access, the researchers believe, the attackers were able to change the registration simultaneously for all of the bank’s domains, redirecting them to servers the attackers had set up on Google’s Cloud Platform.

With that domain hijacking in place, anyone visiting the bank’s website URLs were redirected to lookalike sites. And those sites even had valid HTTPS certificates issued in the name of the bank, so that visitors’ browsers would show a green lock and the bank’s name, just as they would with the real sites. Kaspersky found that the certificates had been issued six months earlier by Let’s Encrypt, the non-profit certificate authority that’s made obtaining an HTTPS certificate easier in the hopes of increasing HTTPS adoption.

Ad-Blocker Using Computer Vision

Jason Koebler (via Hacker News):

A team of Princeton and Stanford University researchers has fundamentally reinvented how ad-blocking works, in an attempt to put an end to the advertising versus ad-blocking arms race. The ad blocker they’ve created is lightweight, evaded anti ad-blocking scripts on 50 out of the 50 websites it was tested on, and can block Facebook ads that were previously unblockable.


First, it looks at the struggle between advertising and ad blockers as fundamentally a security problem that can be fought in much the same way antivirus programs attempt to block malware, using techniques borrowed from rootkits and built-in web browser customizability to stealthily block ads without being detected. Second, the team notes that there are regulations and laws on the books that give a fundamental advantage to consumers that cannot be easily changed, opening the door to a long-term ad-blocking solution.


The article puts a significant emphasis on the idea that bulletproof ad-blocking technology, assuming that’s what this turns out to be in practice, will work long-term because of legal restrictions imposed by the FTC. If Google, Facebook, or other multi-billion dollar entities detect an existential threat arising from this or any other technology, rest assured that the laws will change as quickly as is necessary to keep them happy.


Right now all that people on both sides have to know is human psychology. In that future they’ll have to understand the potentially far more varied world of possible AIs - and if that isn’t enough the complex interactions between them and also between the AIs and the humans.

Switching to an iPhone SE

The volume and power buttons on my iPhone 6s stopped working, so for various reasons I decided to try replacing it with an iPhone SE. It’s been great.

The iPhone SE is much more comfortable in the hand, and especially in the pocket. Sometimes when walking or sitting I find myself checking with my finger to make sure that it’s actually in my pocket—that I didn’t leave it somewhere. Whereas, I would always feel the need to remove the iPhone 6s before sitting for an extended time.

Part of the improvement is because it’s smaller and lighter itself. But the SE’s less slippery and sharp shape means that I can use it without a case. This brings the weight down from 6.6 oz. to 4.0 oz., which feels like a big difference. The iPhone 6s’s weight never bothered me, but now that it’s gone I prefer it that way. Plus, there’s no dust stuck between the edges of the screen and the case.

The other big difference is that it’s much easier to reach the upper corners of the 4-inch screen one-handed. Again, I got used to the iPhone 6s, but I didn’t realize how much shimmying I was doing until I no longer needed to. I thought I would miss the larger screen, but I don’t. Perhaps this is because a few months ago I started using a Kindle again, so I’m no longer doing extended reading on my phone. At first, I noticed a big drop in typing accuracy with the smaller screen, but now that I’m used to it again I’m not sure there’s any difference.

The final area where the iPhone SE feels better is the buttons. The layout with the power button on the top just seems more natural and less confusing, and the volume buttons feel better and are easier to find by touch. There’s also no camera bump, although that’s less relevant since my iPhone 6s would lie flat in its case.

What I thought I would miss the most from the iPhone 6s were the better Touch ID sensor (which seems both faster and more accurate) and 3D Touch (for text editing). In fact, I miss these but am getting used to their absence. The main regression seems to be that (like my other iPhones prior to the iPhone 6s), the screen can be hard to see with polarized sunglasses on. I mostly notice this when taking photos. Depending on the position of the sun, sometimes it seems like all I can do is frame the shot, whereas with the iPhone 6s I could more easily see the exposure and facial expressions on the screen. With more high-contrast images, such as when driving with Google Maps, sunglasses don’t cause any trouble, though they do seem to shift the colors more than with the iPhone 6s.

The iPhone SE’s front camera is much worse, and the display quality and speaker volume seem slightly worse, but these don’t bother me greatly. I rarely use the front camera. Also, the older shape makes me think of it as an iPhone 5s with much a improved processor, camera, and storage, rather than as a downgraded member of the iPhone 6 family. The final difference that I notice is that, like the iPhone 5s, the iPhone SE sounds like there’s something loose inside when you shake it.

There seems to be plenty of demand for the iPhone SE, so my hope is that in the future Apple will treat it as more than a budget model. I’d like to see it updated yearly with the latest processor and camera. There’s no need for a new case design. The current shape and finish still look and feel great.

Update (2017-04-18): See also: Kirk McElhearn, MacDailyNews.

Update (2017-05-10): I’ve also discovered that the iPhone SE can’t track flights of stairs climbed, despite having the same M9 as the iPhone 6s, because it’s lacking a barometer.