Archive for May 2, 2017

Tuesday, May 2, 2017

JavaScript-Free Discourse


For anyone who has to deal with the pain of reading Discourse message threads, you can append ?_escaped_fragment_ to the URI to get a JS-free page that loads completely immediately and doesn’t unload when you scroll. I have no idea why this user-hostile functionality is present by default. It breaks ctrl+F, ctrl+S, the scrollbar, and loads of other browser functionality.

I still don’t like the Discourse user experience. The mailing list mode is probably the least painful way to use it, but of course that doesn’t help when browsing old threads on newly discovered forums.

Microsoft Surface Laptop

Microsoft (Web site):

Meet the new Surface Laptop. Performance made personal.

Mark Gurman and Dina Bass:

Microsoft has already cracked the professional and creative markets with inventive tablets and a desktop that turns into a virtual drafting table. Now it’s chasing another category many believe is Apple’s to lose: the $1,000 laptop for everyone.

I would have thought so, but the lackluster MacBook starts at $1,299, the $999 MacBook Air hasn’t been updated in 785 days, the $899 MacBook Air was discontinued, and the current 13-inch MacBook Pro (sans Touch Bar) starts at $1,499.

Microsoft set out to make a laptop with better-than-average battery life because students said they wanted a device that would last through a long day of classes. The trick was to design a machine with a bigger battery that was still slim and light. Panay’s team adhered to a “fail-fast” philosophy that emphasized constant experimentation. Fancy prototyping machines were capable of spitting out mockups 24 hours a day; the prototypes were delivered to individual designers, allowing them to constantly refine the design. Working with Intel, the team shrank the motherboard, the circuit board containing a computer’s main components, to provide space for the bigger battery. Intel also helped Microsoft make the machine run cooler.

Andrew Cunningham:

The Surface Laptop ships with Windows 10 S, the new cut-down Windows 10 SKU Microsoft also announced today. Out of the box, the operating system can only run apps from the Windows Store, though it’s possible to upgrade it to a full Windows 10 Pro install for free until December 31, 2017. Afterward, the Pro upgrade will cost $50, the same as it normally will for Windows 10 S users.

John Gruber:

I, for one, don’t find it the least bit odd or surprising that Microsoft has shipped a version of Windows that’s locked to their app store before Apple has done similarly with MacOS. That’s a fundamental aspect of Apple’s dual OS strategy. Microsoft only has one OS, Windows, so if they want to ship a laptop with the advantages of being restricted to software from an app store, they have to do it in a version of Windows. I wouldn’t go so far as to state with certitude that Apple will never ship a version of MacOS that is App-Store-only, but I would bet against it.

John Gruber:

I can see the argument for making the OS App-Store-only by default. I can also see the argument for an iOS-style system where it’s App-Store-only, period. But charging $50 for this feels like a shakedown.

It does. And I can see why this could end up being worse than choosing one or the other. But I think it might actually be a good compromise—and one I’d like to see on iOS. Fully locked down has advantages and drawbacks. So does fully open. A fee that people will think twice about, but which isn’t insurmountable, could be a good way of providing an escape hatch. Anyone who really needs it could use it, but most users won’t bother opening the door to untrusted software.

Update (2017-05-02): Nilay Patel:

All anyone wanted was a MacBook Air with a Retina Display, and Microsoft gave it to ’em.

Ian Betteridge:

Yep. Apple has failed to give people a proper replacement for the hugely-popular Air. Microsoft just delivered that.

Tom Warren:

“The performance on this device is absolutely amazing,” says Panay. Microsoft is using the latest Intel Core i5 and i7 processors, and claims the battery life will last for 14.5 hours as a result. Microsoft claims the Surface Laptop is faster than the i7 MacBook Pro, and it has “more battery life than any MacBook Air on the market today.”

Update (2017-05-03): Daniel Jalkut:

Another alluring aspect to the Windows 10 S lineup is that the most affordable computers will sell for as little as $189. While my understanding is that these computers are licensed, and not manufactured by Microsoft, I wonder if the cutthroat pricing represents a compromise on Microsoft’s part. To allow for computers this cheap, the OEM price for Windows 10 S must be effectively $0. Separately, Microsoft is offering the operating system as a free update to schools that want to update older Windows computers.

Marco Arment:

Apple did finally make the Retina MacBook Air we wanted.

They just called it the MacBook Pro 13” (non-Touch Bar) and charged $500 too much.


The lack of reliable Thunderbolt 3/USB-C docks means that I can’t use my 13” full time with only 2x Thunderbolt 3 ports.

ATP Tipster:

The 12″ is too slow for too many people and the Air’s screen is an abomination.

I don’t think it’s good for the brand for there not to be an affordable laptop for students and such.

The practical result, though, is that people buy the 12″ MacBook and find it too slow to enjoy using. The Air CPU class is special.

Update (2017-05-04): Russell Ivanovic:

The real news here is Windows S is taking on ChromeOS. Not that this shiny laptop from MS will steal MacBook Pro customers.

John Gruber:

Neither allow alternative browsers to be set as the default web browser.


iOS defaults to Google for web search, Windows 10 S to Bing. But iOS lets you change the search engine to Yahoo, Bing, or DuckDuckGo. Windows 10 S doesn’t let you change it.

The Dangers of Using Nonatomic Properties

Quincey Morris:

For some reason, the decision was taken to make properties default to “atomic”, but no attempt was made to convert any pre-existing getter/setter implementations, and no attempt was made to verify that any new custom accessors provided atomicity. The whole thing was broken right from the start.

Although nothing syntactic has ever changed, common usage has changed over the years, to (informally) regard the default (omission of attribute) and explicit “atomic” as different things, in terms of API contract. The usage has come to be that only properties explicitly marked “atomic” can be reasonably assumed to be making an API contract, and that properties without the attribute make no API contract (even if they happen to be atomic as an implementation detail).

John McCall:

I can’t speak to that decision: it pre-dates me. At a guess, probably over-enthusiasm for the idea of eliminating low-level failures due to races, buoyed by the era’s general optimism about the ability of future machines to hide the performance cost. Atomic properties may not provide a (typically) semantically meaningful level of atomicity, but they do prevent races on the property from immediately leading to crashes.

Greg Parker:

Another influence was Objective-C garbage collection. GC was assumed to be The Future, and atomic properties are cheap when you have GC.

Update (2017-05-02): The title comes from this blog post. I actually prefer nonatomic properties myself. Atomic properties can be slow and give a false sense of security.

Hiding Mac Menu Bar Icons

Keir Thomas:

All you need do is install the Vanilla app, which was created by Mac developer Matthew Palmer. There is a “Pro” upgrade available for $3.99 that’s well worth it but the core functionality is entirely free – and there are no nags aside from a prompt that appears within the Preferences dialog box.

Major Apps Abandoning Apple Watch

Neil Hughes (via Dan Masters):

In the last few weeks, the latest update for Google Maps on iOS ditched support for the Apple Watch. Its removal was not mentioned in the release notes, and Google has not indicated whether support for watchOS will be reinstated.

It's the same story with Amazon and eBay, both of which previously included Apple Watch support in their iOS apps. Both were updated in late April, and as of Monday, neither includes an Apple Watch app.

Update (2017-05-03): John Gruber:

It’s pretty clear that despite the significant improvements in WatchOS 3, Apple Watch is not a successful app platform. It’s a successful fitness tracker and notification platform, but not for apps.


It’s just too slow and finicky to even get apps installed on Apple Watch in the first place. And the thing most apps are useful for on the watch — notifications — you don’t even need a WatchOS app for. You can just have the notifications from your iPhone show up on your watch.

Update (2017-10-01): Chance Miller (via Dan Masters):

Earlier today, Apple Watch users noticed that Twitter had seemingly killed off its Apple Watch app with a silent update to the iOS client. Given the release of the cellular Apple Watch, many had hoped developers would have a renewed interest in Apple Watch apps, but this doesn’t seem to be the case for Twitter…