Friday, January 13, 2017 [Tweets] [Favorites]

Swift 3 Protocols

Brent Simmons:

I first learned protocol-oriented-programming with Objective-C, and I was very pleased to see the Swift team emphasize this style.

But, at least at this writing at the end of 2016, I still run into problems when I use this style of programming in Swift.

Dave Abrahams:

Protocols (a.k.a. concepts) are not just bags of syntax; unless you can attach semantics to the operations, you can’t write useful generic algorithms against them. So we shouldn’t have DefaultConstructible for the same reason we shouldn’t have “Plusable” to represent something that lets you write x + x.

Via Ole Begemann (tweet):

Yet, by conforming a type to Equatable you also guarantee that your implementation follows the protocol’s semantics, which are listed in its documentation.


One problem with a generic init() requirement without additional context is that T() means very different things for different T[…]


The fourth argument against the DefaultConstructible protocol is that it clashes with Swift’s policy to not initialize values to “zero” or some other default. In contrast to many other languages, Swift doesn’t zero out memory for variables — the compiler forces the programmer to initialize every variable with an explicit value.


I’ve found these two papers particularly enlightening:

Safari Can’t Play New 4K YouTube Videos

Mike Wuerthele (via Rosyna Keller):

The shift appears to have taken place on Dec. 6, according to a Reddit thread delving into the issue. Google has been pushing the open and royalty-free VP9 codec as an alternative to the paid H.265 spec since 2014, but has never said that it would stop offering 4K video on the YouTube site in other formats, like the Apple-preferred H.264.

Videos uploaded to the service prior to Dec. 6 in 4K resolution can still play back in full 4K resolution on Safari from the YouTube homepage. Additionally, Mac users utilizing Chrome still have the ability to play back new videos in 4K, as Safari is the only holdout among the major browsers that doesn’t support the codec.


David Smith (tweet):

This situation gave me the idea for a little side project, PodSearch, empowering the same quick podcast recall for anyone. The concept was simple. Take a few of my favorite podcasts and run them through automated speech-to-text and make the result searchable.


I found that even though this an awful transcription, it is actually pretty good for keyword searching. Is Shutting Down

Dalton Caldwell (Hacker News, Slashdot):

Ultimately, we failed to overcome the chicken-and-egg issue between application developers and user adoption of those applications. We envisioned a pool of differentiated, fast-growing third-party applications would sustain the numbers needed to make the business work. Our initial developer adoption exceeded expectations, but that initial excitement didn’t ultimately translate into a big enough pool of customers for those developers.

Clark Goble:

Big benefit of ADN was having enough characters to comments on links and requotes. Hard in Twitter. Tone often comes off wrong.

Riccardo Mori:

But after a few weeks something clicked. I was loving the place. I thought the first interactions and mutual follows would involve people I knew (and knew me) from Twitter; instead I was welcomed by others I didn’t know from anywhere. A sense of ‘community in the making’ was quite palpable.

And things only got better from there. I’m speaking about my experience, of course. ADN felt like the early days of Twitter, possibly even better. A basic feature like having 256 characters available in a post, instead of Twitter’s 140, turned out to make a huge difference. Conversations lasted longer, got deeper, and with longer posts, people could explain themselves in a much better way than the average quipping in Twitter’s exchanges. Private messages, too, could be longer (2048 characters). The whole atmosphere was different than Twitter’s.

The closest alternative is probably Gab, although that does not seem to have native apps nor any traction in Mac/iOS tech circles.

More interesting are the decentralized alternatives, which include Manton Reece’s new

Today, most writing instead goes into a small number of centralized social networking sites, where you can’t move your content, advertisements and fake news are everywhere, and if one of these sites fails, your content disappears from the internet. Too many sites have gone away and taken our posts and photos with them.

I want to encourage more independent writing. To do that, we need better tools that embrace microblogs and the advantages of the open web. We need to learn from the success and user experience of social networking, but applied to the full scope of the web.

I first set out to build a new service just for microblogs. It has a timeline experience like a social network, with replies and favorites, but it’s based on RSS, with the main posts pulled from independent sites.

I’ve backed his Kickstarter.

Previously: State of the Union.

Update (2017-01-13): Nick Heer:

The biggest difference between and is that the latter can be self-hosted, and is entirely decentralized. If Reece were to stop development of in ten years, existing installations would continue to work as long as the programming languages that power it remain compatible.

Thursday, January 12, 2017 [Tweets] [Favorites]

100 Days Without the App Store

Bogdan Popescu:

All of Dash’s App Store revenue has migrated to direct sales, with a slight increase.


Dash for iOS was never a significant part of my revenue and like most iOS apps it was never sustainable. I should have open-sourced it a long time ago, as it now brings in more revenue by promoting Dash for macOS.


Dash for iOS returned to the App Store just a few days after I open-sourced it, thanks to He Tiancong and Jie Wang. This is despite the fact that I specifically chose a license that’s incompatible with the App Store. I highly recommend avoiding Dash on the iOS App Store, as I do not know what modifications they have made to my code.

Previously: Apple Removed Dash From the Mac App Store, Apple and Kapeli Respond About Dash.

Update (2017-01-12): Both of the iOS apps are called Dash and have the same icon. And one of them even uses Kapeli’s name. Apple’s reviewers should catch stuff like this.

Bad Uncle Leo:

@appstore did the same to @i0n1c over his App SysSecInfo. Other App clones w same functionality were approved. Just not his.

Update (2017-01-13): Bogdan Popescu (tweet):

Two more developers just released Dash on the iOS App Store as paid apps: Cuilian Su and Zuogen Zhang.

Apple Is Becoming HBO

Shira Ovide:

Apple is making the rounds in Hollywood, seeking to buy high-quality original TV series and perhaps movies. The idea is to supplement the Apple Music streaming song service with more digital video, the Wall Street Journal reported on Thursday. Think of Apple creating shows with similar quality and buzz to Netflix’s series “Stranger Things” but available only to subscribers who pay $10 a month for Apple Music.

Mitchel Broussard:

Apple executives have told Hollywood that the new original content will launch by the end of 2017, according to the new report. In terms of specific genres, HBO’s Westworld and Netflix’s Stranger Things were both used as comparisons for what Apple is aiming to produce on Apple Music. These proposed series and movies “don’t have any particular relationship to music,” unlike Carpool Karaoke and Vital Signs.

Zac Cichy:

Not that Sony is a bad company. But I think we could all agree that Apple becoming Sony would be very bad.

We live in an age where there is more good video content available than one could reasonably watch. But there’s only one good combination of a desktop OS and hardware, and it’s being neglected. Apple doesn’t have the resources and attention to make sure that PDF files work or that their customers have a good Wi-Fi experience. And of course there’s plenty of iOS and cloud work to do, too. TV and movie content seems like an unnecessary distraction. Apple should focus on the things that only they can do.

Update (2017-01-13): Dan Moren:

Granted, that might mean that those content providers are less enthusiastic about doing business with Apple, especially since their own shows would presumably take a backseat to Apple’s prominent marketing of its in-house efforts, such as in the new TV app that’s now front-and-center on Apple’s set-top box.

Six Colors’ 2016 Apple Report Card

Jason Snell:

“Apple TV has effectively stood still in 2016, despite needing significant attention in UI and remote design, performance, bugs, and reliability,” said Marco Arment. “Third-party apps and games have mostly failed to materialize, with Apple making no meaningful changes to address this.”


“I’ve been using Apple computers since 1980, and this is the first year where I feel like Apple is just another company rather than the computer that delighted me through all these decades,” said Brent Simmons. “It feels like Apple is no longer the company for people who make things.”

“This is a company that has lost touch with its users,” said Kirk McElhearn. “They’re harming their reputation with long-time users, they’re killing themselves in the ‘pro’ sector, where Apple used to be the main provider, and even ‘average’ users are starting to question whether it’s worth buying Apple products.”

Unlike much of the panel, I did not see a software quality improvement in 2016.

Previously: Apple’s 2016 in Review, Six Colors’ Apple Report Card.

Update (2017-01-12): Nick Heer:

From my perspective, Apple’s 2016 was uneven, at best. Unlike the panel, I thought the iPad had a pretty poor 2016: the 9.7-inch iPad Pro was introduced in the spring, and then it seemed like they forgot all about the iPad’s hardware and software for the rest of the year. My Apple TV gets lots of use, but mostly as a Netflix and YouTube box; very few streaming services are available in Canada. The Mac story is frustrating, and software quality is still rough. Over the course of many of the products and updates introduced this year, I’ve also felt that Apple has struggled to establish clear narratives and compelling rationales.

On a positive note, the reliability of Apple’s cloud services have noticeably improved, iOS 10 fixes many of my biggest complaints — while introducing some new ones — developer relations seem improved, and the company’s commitment to privacy is a particular highlight.

Static Typing vs. Testing

Robert C. Martin (Reddit):

My problem is that both [Swift and Kotlin] have doubled down on strong static typing. Both seem to be intent on closing every single type hole in their parent languages.


But before you run out of fingers and toes, you have created languages that contain dozens of keywords, hundreds of constraints, a tortuous syntax, and a reference manual that reads like a law book. Indeed, to become an expert in these languages, you must become a language lawyer (a term that was invented during the C++ era.)


Why are these languages adopting all these features? Because programmers are not testing their code. And because programmers are not testing their code, we now have languages that force us to put the word open in front of every class we want to derive from. We now have languages that force us to adorn every function, all the way up the calling tree, with try!. We now have languages that are so constraining, and so over-specified, that you have to design the whole system up front before you can code any of it.


All these constraints, that these languages are imposing, presume that the programmer has perfect knowledge of the system; before the system is written.

Drew McCormack:

Not in total agreement with the post, but quite a lot of agreement.

Joe Groff:

A type system is only as static as the code it describes. If you can change code, you can change types! The machine can even help you.

Chris Eidhof:

I don’t think it’s an either/or situation at all: we can have a solid type system and write “manual” tests.

A type checker actually does testing for you. It’s not a replacement for TDD, but it allows you to completely get rid of a whole bunch of tests.


In Swift, once you change foo to return an Int?, the compiler will now show an error for each time you call foo. This makes it easy to make that change, because until you have reviewed every single call to foo, the program simply won’t compile. I think of the compile errors as a todo-list, not as a speed bump.

Krzysztof Zabłocki:

I’m pro testing but I think this matches my thoughts exactly, almost anything you can do to get errors earlier in dev process is worth it.

I like both testing and types. The problem is that sometimes types get in the way. It would be nice to be able to do some work in a more dynamic style and then nail things down before shipping. That is the promise of type inference, but it’s not the reality of developing in Swift today.

Update (2017-01-12): Isaiah:

i wish i could have both. static typing is really useful sometimes. really a burden other times.

David Owens II:

My main problem with Swift has always been this: far too pedantic about types and complete lack of a dynamic runtime.

Update (2017-01-13): Mark Bernstein:

Reading this debate, I was startled to realize one thing I’d overlooked: I almost never make type errors. I make plenty of errors – for me, programming is always about correcting errors – but type errors are once in a blue moon affairs.

I wonder if strong typing is a solution to a problem we don’t really have, or whether I’m just Doing It Wrong.

I concur. I think Swift’s optionals solve a real problem. The stronger typing, e.g. for collections, can make calling APIs more concise and help with auto-completion, but I don’t see this preventing many errors for me.

Update (2017-01-14): Robert C. Martin:

To be clear, and at the risk of being repetitive, that blog was not an indictment of static typing. I rather enjoy static typing. I’ve spent the last 30 years working in statically typed languages and have gotten rather used to them.

My intent, with that blog, was to complain about how far the pendulum has swung. I consider the static typing of Swift and Kotlin to have swung too far in the statically type-checked direction. They have, IMHO, passed the point where the tradeoff between expressiveness and constraint is profitable.


You might therefore say that the type system is a kind of “test” that fails for all inappropriate invocations of f. I might concede that point except for one thing – the way f is called has nothing to do with the required behavior of the system. Rather it is a test of an arbitrary constraint imposed by the programmer. A constraint that was likely over specified from the point of view of the system requirements.


So what the type system is checking is not the external behavior of the program. It is checking only the internal consistency of the program text.

Wednesday, January 11, 2017 [Tweets] [Favorites]

The Inside Story of BitTorrent Inc’s Collapse

Jessi Hempel (via Hacker News):

But transforming this technology into any kind of business has proved elusive. By last spring, BitTorrent had already endeavored to become a media company, twice. There was BitTorrent Entertainment Network, launched in 2007, which was a storefront for movies and music that made no money and shut down a year later. And then there was the BitTorrent Bundle, launched in 2013, which was a competitor to iTunes and Amazon that let artists distribute their work directly to fans at a fraction the cost. In 2014, the company even announced plans to produce its own original series, a scifi show called Children of the Machine. But by early the next year, BitTorrent had given up on this strategy, too.


The latest chapter of BitTorrent’s saga begins in earnest in 2015. By then, many of the company’s executives and directors were exhausted. They still couldn’t agree on a path forward for the company. Some people believed it should double down on its technical business, building products people loved. They’d developed a product called Sync, for example, which was a decentralized version of Dropbox. Others wanted it to be an entertainment company, striking deals to send content to those people. With no focus, the company had reached an impasse. Earlier that year, BitTorrent had laid off nearly a third of its 150 employees.


Perhaps the lesson here is that sometimes technologies are not products. And they’re not companies. They’re just damn good technologies.


In early 2016, Resilio Inc. was spun out of BitTorrent Inc. to bring the power and resilience of distributed technology to the modern enterprise. Resilio started with core BitTorrent technology and hardened it for commercial use while adding the centralized management and control required for modern IT.

Previously: Replacing Dropbox With Resilio Sync.

Bringing Wide Color to Instagram

Mike Krieger (via Craig Hockenberry):

In other places — like when initializing a CGContext for other drawing operations — it’s common to use CGColorSpaceCreateDeviceRGB when creating a CGColorSpaceRef. This will create an sRGB colorspace on most devices, and we’ll lose our wide color information. Most of the initial work for wide color on Instagram was tracking down everywhere that this color space was hard-coded.

Instead, we can see if our screen supports wide colors (using UIScreen.mainScreen.traitCollection.displayGamut), and if so, use CGColorSpaceCreateWithName(kCGColorSpaceDisplayP3). Again, we found that creating a wrapper that returns the appropriate colorspace for that device was helpful.


Instagram uses OpenGL for most of its image editing and filtering. OpenGL isn’t color managed; it operates on a range (say, 0.0 to 1.0), and it’s up to the output surface to determine what colors that actually maps to.

The good news is that this meant we had to make very few changes to make our GL pipeline wide-color compatible. The biggest change was to ensure that when we extracted pixel buffers from our GL surface, we were using the appropriate colorspace before converting from a CVPixelBufferRef to a CGImageRef.

I can see the Instagram logo in their canary image even though my Mac doesn’t have a P3 display.

Tony Fadell’s Stories About the First iPhone

Dave Lee:

Apple had many of the best brains in the business, but until that point it hadn’t ever made a phone of its own.

And so Fadell planned a fact-finding world tour to meet experts and check out research labs of telecoms experts.

It began with one manufacturer in Malmo, Sweden - a trip which ended with all of their bags, notes and equipment being stolen from their cars while they were inside a restaurant having dinner.


“Until you can agree with us you can’t come back in this room,” Fadell recalled Jobs saying to pro-keyboarders. “If you don’t want to be on the team, don’t be on the team.” The disagreements soon stopped.


“I thought, ‘We must make this work with a stylus’,” Fadell remembered. ”Because we knew it was right, even though Steve was making a philosophical point initially saying you can just use your finger. We knew there will come a day when you’re going to need a stylus.

“We did it without his knowledge, it was behind the scenes. He would’ve ripped my head off.”

App Extensions Are Not a Replacement for User Automation

Sal Saghoian (via Federico Viticci, Todd Ditchendorf):

Let’s imagine that Apple decided to combine their engineering resources to form app teams that delivered both iOS and macOS versions of applications.

In such a scenario it may seem logical to retain application features common to both platforms and to remove those that were perceived to require extra resources. Certainly Automation would be something examined in that regard, and the idea might be posited that: “App Extensions are equivalent to, or could be a replacement for, User Automation in macOS.” And by User Automation, I’m referring to Apple Event scripting, Automator, Services, the UNIX command line utilities, etc.

This is pretty much what I feared was Apple’s thinking.

Based upon the information presented in this overview, it is clear that App Extensions do not provide the same abilities and functionality as the User Automation technologies of macOS, and objectively should not be considered a comparable replacement for them.

Previously: Tell Us Your Mac Automation Stories, Thank You, Sal.

Update (2017-01-12): John Gruber:

I’d prefer to see iOS gain serious automation capabilities — even if it’s an altogether new technology. But I’m dreadfully afraid of a future where MacOS is devolved to iOS’s state, with no supported automation technologies.

Tuesday, January 10, 2017 [Tweets] [Favorites]

How Adobe Flash Fell, and Why Flash Content Is Worth Preserving

Keith Collins (via Hacker News):

The earliest signal of Flash’s fall came in 2007, when Apple decided not to support it in the newly introduced iPhone. At the time, the fifth version of HTML was about to emerge, and promised to replace some of the functionality Flash provided. With the nascent mobile web in mind, developers across the world began moving away from Flash and toward HTML5.


HTML5 became a catch-all term for the New Web: a pure, plugin-free internet experience that worked as well on the phone as it did on the desktop. […] By 2011, that idea had gained enough momentum that even Adobe acknowledged the changing tide. It ceased production of the Flash Player for Android and released a product called Edge Animate—a new way to create HTML5 content.


Facebook isn’t the only tech giant with a stake in Flash’s future. Earlier this month, Google announced changes to its Chrome browser that will block Flash by default. Users will still be able to access Flash content by clicking an opt-in button, but the move suggests a ticking clock on Chrome—the most popular web browser in the world—dropping support for Flash altogether. When that day comes, trying to play Flash games or watch Flash cartoons will be much like trying to play a cassette without a tape deck.


The Internet Archive and the Archive Team are currently saving Flash files. The website, which allows visitors to access archives of the internet past, provides emulations of vintage browsers, which will be necessary for viewing Flash content should modern browsers stop supporting the plugin entirely.

Previously: Thoughts on Flash.

Amazon’s 1-Click Checkout Patent Expires in 2017

Mike Arsenault (via Hacker News):

Amazon filed the 1-Click patent in 1997 and it was granted by the USPTO in 1999. In fairly broad terms, it protects any E-commerce transaction executed with one-click using stored customer credentials to validate.


Together with Amazon Prime, Amazon has put forth what are probably the two biggest game changing products in online retail over the past two decades. The 1-Click patent is scheduled to expire in 2017, but my guess is that Amazon doesn’t really care.

AirPods vs. the Competition

Jordan Kahn:

In the lead up to Apple’s release of AirPods late last month, I had tested just about every pair of cord-free earbuds already on the market. But now that AirPods are here and I’ve been using them daily for an extended period of time, the difference is even more striking than I anticipated.

With AirPods, Apple has done what it does best: taken an emerging product category with a frustrating user experience and delivered a polished product made possible by its control over both the hardware and software. And the AirPods are one of the best examples of that in a long time.

The AirPods continue to work well for me. Every few days there is a little glitch, but it’s short-lived and usually corrects itself. This is a big improvement over the Bluetooth headsets I had been using, and the audio quality is much better. Physically, the AirPods are a bit too slippery and easy to drop, and it takes two hands to get them out of the case. I wish they came in black.

Owen Williams:

AirPods are actually one of the few Apple inventions in recent memory that ‘just work’ like the company is famous for. From the moment you take them out of the box and flick the charging case open, they’re paired with your phone and automatically pop up on the screen, which actually shocks you for a second — you mean that’s it? It is.


When asking to change the volume, or skip a song not only would it rarely recognize me awkwardly tapping on the side over and over, it’d often do the opposite of what I asked, or even just randomly call someone. On top of that it’s incredibly slow, so by the time you’ve managed to do what you started out trying to do, it’d have been faster to pull out your phone, unlock it, do it and put it back again.

We all know Siri is crap on the iPhone, but putting it in your ears doesn’t make it any more convenient, instead, it made me resent how bad it really is.

I don’t think the idea of voice control is fundamentally flawed, but Siri is just too slow and unreliable.

I’ve seen a lot of reports of trouble with the double-tap gesture, but it’s almost always worked for me the first time. I expected to play/pause by temporarily removing one of the AirPods. But in practice I find myself using the double-tap nearly every time. When I’m pausing the audio, it’s usually also at a time when my hands are wet or dirty or I don’t have a good place to put the AirPod.

Serenity Caldwell:

I’d just about given up on listening to music wirelessly during my warmup — and then came the AirPods. Their tiny shape makes them a perfect candidate for slipping into my ears during warmups without having to remove any of my gear, and my helmet keeps them in place easily while I skate. And thanks to their lengthy Bluetooth range, I can put my iPhone by our bench, do laps, and never worry about losing my connection.

Previously: My AirPods Experience.

Update (2017-01-10): See also: The Talk Show.

Update (2017-01-12): John Gruber shows how to remove the AirPods from the case.

It would be nice, when the Mac and iPhone are together, if the Mac could “steal” the AirPods without having to first deselect them on the iPhone.

Lex Friedman’s way of removing the AirPods from their case is even better.

Update (2017-01-13): Park Silkenson compares the two methods.

Explanation for Consumer Reports’ Battery Results

Rene Ritchie quoting Apple (tweet, MacRumors, AppleInsider, Hacker News, ArsTechnica):

We learned that when testing battery life on Mac notebooks, Consumer Reports uses a hidden Safari setting for developing web sites which turns off the browser cache. This is not a setting used by customers and does not reflect real-world usage. Their use of this developer setting also triggered an obscure and intermittent bug reloading icons which created inconsistent results in their lab. After we asked Consumer Reports to run the same test using normal user settings, they told us their MacBook Pro systems consistently delivered the expected battery life. We have also fixed the bug uncovered in this test.

It sounds like they are referring to the “Disable Caches” setting in the Develop menu. It’s not front and center, but I wouldn’t call it “hidden” since it can be enabled from within Safari’s own Preferences window. It’s not a defaults write preference.

The setting definitely is used by customers, e.g. Web developers, though probably not by most consumers.

It does seem legitimate to me for Consumer Reports to turn off caching when repeatedly loading the same Web pages. A test that just reads from the cache would not be representative of real-world use. Maybe it would have been better to test a series of unique pages with the cache enabled. Either way, it’s hard to say what would be a fair, controlled test involving servers run by third parties from around the world. Consumer Reports tried to control for some factors by loading pages from their own server, but that introduces other problems.

Regardless, their main finding was the inconsistent battery life, and it sounds like that is explained by the Apple bug.

Previously: Consumer Reports on the New MacBook Pro’s Battery Life.

Update (2017-01-10): Consumer Reports:

We communicated our original test results to Apple prior to publication on Dec. 22 and afterward sent multiple rounds of diagnostic data, at the company’s request, to help its engineers understand the battery issues we saw in our testing. After investigating the issue, Apple says that the variable battery performance we experienced is a result of a software bug in its Safari web browser that was triggered by our test conditions.


Separate from Consumer Reports’ test findings, many MacBook Pro owners have posted in user forums about episodes of remarkably short battery life, and both CR’s findings as well as these consumer posts have caused much discussion and debate in the tech press and on user forums.


At Consumer Reports, we test every laptop from every manufacturer in a comparable way. Because people use laptops differently and because their usage can vary from day to day, our battery tests are not designed to be a direct simulation of a consumer’s experience. Rather, we look to control as many variables as possible, then perform a test that gives potential users a reasonable expectation of battery life when a computer’s processors, screen, memory, and antennas are under a light to moderate workload. This test has served as a good proxy for battery life on the hundreds of laptops in our ratings.


Many of these settings are set by default to extend battery life. That’s generally a good thing. But because these settings are so variable and situation-dependent, we turn several of them off during testing. For instance, we turn the screen auto-dimming features off on all laptops and set the displays to a constant level of brightness. […] We also turn off the local caching of web pages.

John Gruber:

I still think something was/is wrong with Consumer Reports’s testing, but I don’t think it’s fair to say that disabling the caches is unfair or a flawed method. And while the preference setting is obscure, I wouldn’t call it “hidden”.

Geoff Hackworth notes that none of this explains how Consumer Reports got a high of 19.5 hours, when Apple claims only 10 hours of “wireless web.” It will be interesting to see the times when they re-test.

Jason Snell:

At Macworld we built a lot of different lab tests over the years. It’s hard to test real-world performance in automated tests. You want to produce a result that represents what regular people would experience when using the product, but it’s a constant battle against software and hardware that’s designed to reduce power consumption at every turn. You can’t just use a human to do the testing, because in addition to being wildly inefficient (these tests take a days to perform, per system), they won’t be exactly the same on all the different systems.


There are judgment calls like that at every turn when you’re building lab tests.


My guess is that this bug is more likely the cause of the battery-life disparity than anything specifically weird or unfair in Consumer Reports’ laptops tests, but I suppose we’ll see when it revisits its findings.

Marco Arment (tweet):

Consumer Reports has a spotty history with calling Apple out on product flaws. […] But almost every time, the problem they’re reporting is real — especially in retrospect, after everyone’s defensiveness has passed and we’ve lived with the products for a while. It’s just debatable how big of a deal it is in practice.


Apple’s framing here is almost Trumpian, evading responsibility for the real problem — Apple’s bug — by attempting to insult the test (“does not reflect real-world usage”), discredit and imply malice by Consumer Reports (“a hidden setting”), and disregard the bug as irrelevant (“obscure and intermittent bug”).


But disabling the browser cache during a battery test to make results more consistent is reasonable, Apple’s browser offers that feature, and it’s neither very well hidden nor unused by any customers.

Andrew Hart:

They did contact Apple about the results, and Apple sent them a canned statement.


Apple declined to help until after CR published. That’s Apple’s MO.. they don’t acknowledge problems.

It would be interesting to know how long they waited before publishing, but it’s hard to fault them for doing so if that was Apple’s only response.

Nick Heer:

The [Apple] statement goes on a little longer, but the nutshell version comprises these three sentences. And I have issues with all of them.

Update (2017-01-13): Consumer Reports (Glenn Fleishman, John Gruber, Hacker News):

With the updated software, the three MacBook Pros in our labs all performed well, with one model running 18.75 hours on a charge. We tested each model multiple times using the new software, following the same protocol we apply to hundreds of laptops every year.

There’s still no explanation for the unexpectedly long battery life that they saw. And why did the bug fix reduce the time from 19.5 to 18.75 hours?

I’d also like to point out that people seem to be misremembering Antennagate, perhaps because of Jobs’ masterful presentation. The iPhone 4, even with the bumper, had worse reception than all previous iPhones. In the area where I live, this was the difference between the phone working and not working. The Apple Store wouldn’t acknowledge this and made it difficult to return the phone.

Chris Lattner Is Leaving Apple

Chris Lattner (MacRumors, Reddit):

I’m happy to announce that Ted Kremenek will be taking over for me as “Project Lead” for the Swift project, managing the administrative and leadership responsibility for This recognizes the incredible effort he has already been putting into the project, and reflects a decision I’ve made to leave Apple later this month to pursue an opportunity in another space. This decision wasn’t made lightly, and I want you all to know that I’m still completely committed to Swift. I plan to remain an active member of the Swift Core Team, as well as a contributor to the swift-evolution mailing list.

John Voorhees:

Lattner’s contribution to Apple’s developer tools has been enormous. His departure is a big loss for Apple.

John Gruber:

The Apple developer community is still in the middle of the transition to Swift. I’m a little surprised he’d leave in the midst of the upheaval. It’s a thriving language, but it is far from a completed project — neither the language itself nor the OS frameworks.

Makes one wonder why Apple couldn’t keep him, but depending on what he ends up doing this could be very good for Swift.

Update (2017-01-10): Andrew Pontious:

I always wondered if Lattner would be happy under several layers of Apple management.

Company is very top-down.

For someone of his talents and ambition, you either work your way up to the top, or you leave.

Lattner is doing an AMA on Slashdot.

Wil Shipley:

I’m very sad to see Lattner go after Swift 3, but remember Parkhurst left NeXT after NeXTstep 3, and Cocoa’s had a 28-year run so far.

He’s going to Tesla (tweet):

We would like to welcome Chris Lattner, who will join Tesla as our Vice President of Autopilot Software. Chris’ reputation for engineering excellence is well known. He comes to Tesla after 11 years at Apple where he was primarily responsible for creating Swift, the programming language for building apps on Apple platforms and one of the fastest growing languages for doing so on Linux.

Jeff Johnson:

I hope Teslas will crash less than Xcode.

Dan, writing before the Lattner news (via Zac Cichy):

Apple’s poor ability to attract and retain artificial intelligence and services talent is the most serious effect. Apple rarely acquires AI or services companies; however, the odd occasion when they do, key staff depart soon after— often to work on competitors’ products[…]

Nick Heer (Hacker Newsx):

Also making news today is Daniel Gross’ announcement that he’s leaving Apple for Y Combinator. Gross directed many of Apple’s machine learning initiatives, while Lattner created Swift; these are two of the highest-profile initiatives within the company.

Update (2017-01-11): John Gruber:

Now, it feels like Apple is out of the car game, and Tesla is gunning for Apple’s lead in computing. You can’t overstate what a star Chris Lattner is.

USA Today:

Tesla Motors CEO Elon Musk famously called Apple a “Tesla graveyard” where his failed employees go to toil.

That was a nifty bit of Musk-esque verbal sparring in what is a growing talent war between the tech titans. But it seems he’s now robbing the graveyard.

See also: ArsTechnica, Reddit.

Seth Weintraub:

Chris Lattner isn’t the only high profile Apple executive who departed for Tesla over the past month, rather than sticking around to work on Titan. 9to5mac has learned that Matt Casebolt, a high profile Senior Director of Design for Apple’s Mac lineup left the company last month for a role at Tesla as Sr. Director Engineering, Closures & Mechanisms. A job meant for a man named Casebolt …

Over the past two and a half years Casebolt led the development of the MacBook Pro with its standout and sometimes controversial Touch Bar feature. Before that, he led the team working on the iconic ‘trash can’ Mac Pro and was previously instrumental in the design of the first generations of MacBook Air. These are some of Apple’s most iconic Mac products over the past decade.

Chris Lattner:

Ted has been one of the quiet but incredible masterminds behind Swift (and Clang, and the Clang Static Analyzer) for many years. His approach and modesty has led many to misunderstand the fact that he has actually been running the Swift team for quite some time (misattributing it to me). While I’m super happy to continue to participate in the ongoing evolution and design of Swift, I’m clearly outmatched by the members of the Apple Swift team, and by Ted’s leadership of the team.

Update (2017-01-13): Ben Lovejoy (Hacker News):

Business Insider reports that Lattner had found Apple’s extreme approach to secrecy wearing, especially as his role was to create open-source developer tools, including Swift.

Julie Bort:

“He always felt constrained at Apple in terms of what he could discuss publicly — resorting to off-the-record chats, surprise presentations, and the like,” the person told us. “Similarly, I know he was constrained in recruiting and other areas. Eventually I know that can really wear people down.”


This wouldn’t be Apple’s first time losing someone in a big public way because it insists on secrecy over collaboration. As we previously reported, Apple’s entire networking team quit within a one-week period back in 2015 when Apple asked the team to build a bulletproof network and then refused to allow it to collaborate with others outside the company in its field doing similar work via an organization called Open Compute Project.

Chris Lattner:

My decision has nothing to do with “openness”. The “friend” cited is either fabricated or speculating. Folk just want to make 🍎 look bad.

Update (2017-01-15): See also: Accidental Tech Podcast, Core Intuition.

Monday, January 9, 2017 [Tweets] [Favorites]

Tell Us Your Mac Automation Stories

Adam C. Engst:

What should we make of Sal leaving? Apple didn’t lay him off specifically, it instead eliminated the position of Product Manager of Automation Technologies. It’s my understanding that multiple groups within Apple wanted to hire Sal afterward, but Apple was under some sort of hiring freeze that prevented him from migrating within the company. So it doesn’t look as though Apple was trying to get rid of Sal personally, which is good. What’s less good is that it would appear that Apple doesn’t see the need for having a position that evangelizes user automation internally.


Sure, Apple could have plans to replace AppleScript and Automator with super secret magic unicorn technologies, but based purely on what the company has done and said, it’s hard to believe that.


Even so, it’s obvious to anyone who uses iOS that there is still an important role for automation. I can tell Siri to “Change ‘Floating’ to 8 AM” to adjust the time of my wake-up alarm, but I have no way to automate the five taps necessary to play the audiobook we listen to every night in the Hoopla digital library app. Five wasted taps every night isn’t the end of the world, but if you can’t automate the little stuff, you certainly can’t automate the big stuff.


If Apple’s seeming indifference toward automation worries you because you rely on scripts, macros, workflows, and more to get your work done quickly, effectively, and accurately, here’s what I’d like you to do. Leave a comment on this article outlining how you depend on Mac automation tools in your job.

Previously: Thank You, Sal.

Voice-Based Personal Assistants

Spencer MacDonald:

The Alexa app on iOS is clearly a hybrid app, in fact I would say it is predominately web based. There are a few strange behaviours with navigation (sometimes you press back and it appears to pop an entire web view from the navigation stack, thus you actually go back multiple steps) and it doesn’t use native controls which can be quite jarring at times. The app works, but I’m pleased that besides the initial configuration you don’t have to use it. It does have a nice feature where it shows you all the events you have triggered, and also (rather creepily) allows you to playback the audio from any of your requests that triggered Alexa, which is good for when you ask yourself “Why did it do that?”.


Obvious I couldn’t review Alexa without making the comparison to the other assistant in my life, Siri. After living with the Echo for a few months, the detection and transcription capabilities of Alexa on the Echo is leaps and bounds ahead of Siri on the iPhone 7. Alexa is also better at answering general questions, like the weather, unit conversion etc. However I feel that Siri’s intents API implementation means that for the few supported domains (8 as of iOS 10), your interactions feel a lot more natural compared to when interacting with a Skill. In short they are both coming at the problem from different directions, Alexa is currently winning but in my opinion that has a lot to do with the hardware.

Ben Thompson (Hacker News):

In short, Amazon is building the operating system of the home — its name is Alexa — and it has all of the qualities of an operating system you might expect[…]


That leaves the business model, and this is perhaps Amazon’s biggest advantage of all: Google doesn’t really have one for voice, and Apple is for now paying an iPhone and Apple Watch strategy tax; should it build a Siri-device in the future it will likely include a healthy significant profit margin.

Amazon, meanwhile, doesn’t need to make a dime on Alexa, at least not directly: the vast majority of purchases are initiated at home; today that may mean creating a shopping list, but in the future it will mean ordering things for delivery, and for Prime customers the future is already here. Alexa just makes it that much easier, furthering Amazon’s goal of being the logistics provider — and tax collector — for basically everyone and everything.

Dan Moren:

As a happy Amazon Echo user for nearly two years now, you might think I wouldn’t be in the market for any other voice-controlled virtual assistant—and you’d be wrong. Dead wrong.

Upon returning home from my lengthy trip last month, one of the boxes awaiting me contained a Google Home that I’d ordered while abroad.


The other big comparison point against the Echo is sound quality. I don’t pretend to have an audiophile’s ear, but to me the Google Home sounded like it had a little more bass than the Echo but an overall muddier sound. While it’s definitely superior to the Echo Dot—low bar there—it’s certainly not too hard to find a better-sounding speaker than pretty much anything in this class.


In any case, voice recognition and synthesis are table stakes for these devices. The real question is whether or not the Google Home has any functionality so compelling that I’ll switch to using it over my Echo. The answer to that, so far, is…not really.

Khoi Vinh:

Alexa is clearly able to understand your commands—and act on them—better than Siri is able to, but it doesn’t feel leagues better. In practice, it’s not uncommon to have to issue commands three, four, five or more times before Alexa understands what you’re trying to say—or until you learn the way Alexa wants you to say it.


At home we also received an Echo Dot as a present, a product which I think could be a home run. For just US$50, you get everything that the Echo does except for the higher quality speaker (which means Amazon is basically charging you US$130 for the full fledged version’s speaker, when you think about it). At that price point, I could easily imagine having a Dot in each room of the house, which would make for a really powerful system.


And finally, design. The Google Home comes in a nicer package, is a much nicer form factor, and is just gorgeous. It’s a very handsome expression of impressive technology

Colin Cornaby:

Still finding that Alexa/Echo is horrible for home automation compared to Siri. Rare bright spot for Apple.

Stephen Hackett:

[Echo is] an open platform, meaning developers can write applications — dubbed Skills — that users can enable with just a tap in the Alexa mobile app.


HomeKit, on the other hand, is a closed system. Apple has a rigorous approval process before allowing a device or service to be listed as a supported partner. From a security standpoint, this is a big win.


People are all up in arms about headphone jacks, USB-C, and dongles. When the real issue is Apple completely missing huge new markets.

Apple had Siri out and was in the lead with voice control, then they wasted it. I never use Siri, she is nearly worthless, but I do use Alexa multiple times a day. Amazon is Leading the voice assistant market, and Google is right on their heels.

Home automation was supposed to get better with HomeKit but arrived basically stalled. They announced all these partners and sold their products at the Apple Store. Then when HomeKit finally was ready none of those products worked with HomeKit.

Steven Levy (via Dan Moren):

“That’s really important,” Schiller says, “and I’m so glad the team years ago set out to create Siri — I think we do more with that conversational interface that anyone else. Personally, I still think the best intelligent assistant is the one that’s with you all the time. Having my iPhone with me as the thing I speak to is better than something stuck in my kitchen or on a wall somewhere.”

Madison Margolin:

Gatebox is new holographic home assistant that’s similar to the Amazon Echo’s Alexa, only more anthropomorphic—and creepier. Made by the Japanese company Vinclu Inc, the device is a transparent, voice-activated cylinder that displays a tiny holographic character named Azuma Hikari (presumably, other characters can be added later). […] It seems designed specifically to appeal to lonely bachelors.

See also: Accidental Tech Podcast, The Talk Show.

Previously: Developing for the Amazon Echo, SiriKit.

Update (2017-01-10): See also: The Talk Show.

Atlassian Acquires Trello

Frederic Lardinois (Hacker News, Slashdot):

Atlassian today announced that it has acquired project management service Trello for $425 million. The vast majority of the transaction is in cash ($360 million), with the remainder being paid out in restricted shares and options. The acquisition is expected to close before March 31, 2017.

This marks Atlassian’s 18th acquisition and, as Atlassian president Jay Simons noted when I talked to him last week, also it largest. Just like with many of Atlassian’s other acquisitions, the company plans to keep both the Trello service and brand alive and current users shouldn’t see any immediate changes.

Michael Pryor (tweet, Joel Spolsky):

More than 19 million users later, Trello is used by everyone from the family planning their next vacation to employees at the largest enterprises in the world. Companies like Google, National Geographic, and even the United Kingdom’s government use Trello daily. Organizations like the United Nations and the Red Cross rely on Trello to accomplish their missions.


We’re excited about partnering with Atlassian because we both share a philosophy of empowering teams everywhere to work in their own style. We envision a world where hundreds of millions of people collaborate in teams however they like, with their imaginations being the only constraint for what they can accomplish. As part of Atlassian, Trello will be able to leverage investments in R&D that will enhance the product in meaningful ways. Our team will be able to focus on improving the core experience of Trello for all users. We are certain that Atlassian understands the unique and novel reasons why Trello is so successful and well-loved.

Mike Cannon-Brookes:

One of Trello’s strengths is its flexibility. You control how the board looks and operates so you can mold it to how your team works, and track progress in stages that reflect your processes. You can take this flexibility a step further by integrating the tools you already use with Trello as Power-Ups that extend the functionality of the boards to meet your team’s unique needs.

The JIRA family of products will continue providing purpose-built experiences such as JIRA Software, the #1 tool for agile software teams; JIRA Service Desk, a beautifully simple service desk solution for IT and business teams; and JIRA Core for project and process management.

JIRA tools excel at work that benefits from a well-defined, traceable, and repeatable process, whilst Confluence is great for teams creating and collaborating on documents and rich content. Trello perfectly fills a gap between the structured workflows of JIRA and the free-form collaboration of Confluence and will give teams the option to find the right Atlassian tool for the type of work they need to complete. Keep an eye out for integrations between these products in the near future.

Anil Dash (tweet):

Fog Creek and Trello don’t just share cofounders, we share a lot of the same DNA, and we even share the same beautiful office as our NYC headquarters. The same innovative process that resulted in Trello’s invention has yielded Gomix, which we think has the same potential to change the way people work and collaborate and create. And while there are ways we’ll be competing now (we really do think you’ll love FogBugz as an alternative to Jira!) we’re mostly just proud to see our sibling company succeed.

Previously: FogBugz, JIRA, and Wasabi.

Update (2017-01-11): Benjamin F. Wirtz:

For Atlassian, I believe this was exactly the right move. One of the questions that remain is: With that much overlap between their tools, how will a user who has not heard of neither Trello nor JIRA or Service Desk figure out what’s best for them? How will JIRA users decide between JIRA Agile boards and Trello once the products are integrated?

LG Ultrafine 5k Reviews

Colin Cornaby:

I picked up the Thunderbolt 3 to Thunderbolt 2 adapter, and hoped my [2013] MacBook Pro would be able to drive this display.


There were pretty obvious signs that this wasn’t an Apple product. The display was wrapped in a foil textured sort of wrap instead of the soft paper Apple uses. And the display very unhelpfully came with an Energy Star sticker pre-applied directly on the screen, which was at least easy to peel off. I’ve only bought Apple displays (with a display I borrowed for a gaming PC being the only exception), so the noticeable decline in packaging quality was bittersweet.


I downloaded SwitchResX which revealed something very interesting about how Apple handles the LG Ultrafine on older Macs. Apple is rendering the screen at 5k, but then downsampling it to 4k and sending it to the display. So my computer acts as if it is attached to a 5k display, even though it can push a 4k image. That’s a really clever enhancement that almost makes this display worth it for older Mac owners. Even with only 4k output, it could be a great drop in replacement for an Apple Thunderbolt Display, with a noticeable increase in image quality and P3 support (with a bit of help from SwitchResX.) Apple has clearly thought about the Apple Thunderbolt Display sized hole that is being left in their lineup for Macs that haven’t rolled over from Thunderbolt 2 yet.

Rene Ritchie:

That’s not to say Apple didn’t have a lot to do with the engineering — everything that makes it work so well with a MacBook Pro using just one Thunderbolt 3 cable. But the outside, what we look at, is nothing like Apple.

There are also compromises here. That gorgeous image and convenient charging all in one cable comes at a price — there’s precious little bandwidth left for other ports and peripherals.


That asterisk is Apple recommending you not use the LG display as the primary display on a Mac mini or Mac Pro, since it may not light up until after you boot, rendering pre-boot options unusable. Sadness.


Rumor has it the LG UltraFine 5K display uses the same if not a very similar panel to the iMac with Retina 5K display. To my eyes, though, it isn’t as glossy. That’ll please those who prefer more matte displays. Personally, though, I find the slight difference distracting and would have preferred if LG had finished it to match the MacBook Pro exactly. It’s especially noticeable when looking at both the MacBook Pro and the LG display at an angle.

Robert Gottlieb:

I have to plug in my ethernet to usb-c directly to my laptop to get the full speed out of it. I’m guessing something about the 5 GB connections on the back is limiting it somehow :( I’m thoroughly unimpressed with this monitor now. I do like the display but there are so many inconveniences so far that I’m seriously considering taking it back. But then I’m stuck with: What do I replace it with? Do I adapt a display port to usb-c and use up another port to power my mac with it’s power brick?

Luk Vandal:

If I had to do it again, I’d keep my iMac 5K/rMBP combo and wait a year or 2 until Apple solves USB-C and DisplayPort issues.

Peter Zignego:

It’s almost as if by not controlling the product start to finish Apple is sacrificing quality here.

Previously: MacBook Pro Ethernet Adapter Benchmark.

Update (2017-01-12): Ken Yarmosh:

After just a day of use, we’re planning to return the new LG UltraFine 5K monitors to Apple. Performance issues and poorly designed.

James Dempsey:

Just got told by @AppleSupport to contact LG support about 5K monitor. This was so much better when Apple made the whole widget.

It’s my newly delivered LG 5K display in its little-known ‘Two Pixel Mode’.

Its either this or blank connecting new MBP in clamshell mode.

Max Schoening:

1 out of 5 times plugging in the 5K LG monitor into a MBP throw a kernel panic. 1 out of 8 connected peripherals don’t work.

Ortwin Gentz:

Received my UltraFine 5K display today. Sadly it’s DOA. Works only with Apple Power brick attached and then kernel_task spins up to >100%.

Apple Removes LinkedIn App From Russian App Store

Cecilia Kang and Katie Bennerjan (via MacRumors):

Smartphone users in Russia can no longer download the LinkedIn app on iPhone or Android devices, following a similar move in China to block The New York Times app on iPhones.

The demand by Russian authorities to remove LinkedIn in Apple and Google app stores comes weeks after a court blocked the professional networking service for flouting local laws that require internet firms to store data on Russian citizens within the nation’s borders.


Direct blocking of websites has been done by China, Russia, Turkey and several other nations for years, usually through their state-run internet service providers. But civil rights groups say the pressure authoritarian governments are now placing on Apple and Google is a new wrinkle.

“Apps are the new choke point of free expression,” said Rebecca MacKinnon, who leads a project on open internet tracking at New America.

Previously: Apple Removes New York Times Apps From Chinese App Store.

OPML File Type on Macs

Brent Simmons:

I was fixing a bug in OmniOutliner where it wouldn’t open a file with an uppercase .OPML suffix. I did some digging, and the fix was to register the app as handling the file type.


OPML — Outline Processor Markup Language — was invented in 2000 by Dave Winer at UserLand Software. It’s not Apple’s format, and the correct file type is org.opml.opml.

I seem to recall a similar issue with a non-standard UTI for Markdown.

Friday, January 6, 2017 [Tweets] [Favorites]

Unsafe Swift: Using Pointers and Interacting With C

Ray Fix (via Greg Heo):

MemoryLayout<Type> is a generic type evaluated at compile time that determines the size, alignment and stride of each specified Type.


Unsafe Swift pointers use a very predictable naming scheme so that you know what the traits of the pointer are. Mutable or immutable, raw or typed, buffer style or not. In total there is a combination of eight of these.


This example is similar to the previous one, except that it first creates a raw pointer. The typed pointer is created by binding the memory to the required type Int. By binding memory, it can be accessed in a type-safe way. Memory binding is done behind the scenes when you create a typed pointer.


Never bind memory to two unrelated types at once. This is called Type Punning and Swift does not like puns. Instead, you can temporarily rebind memory with a method like withMemoryRebound(to:capacity:). Also, the rules say it is illegal to rebind from a trivial type (such as an Int) to a non-trivial type (such as a class). Don’t do it.

Previously: Passing an Array of Strings From Swift to C, Swift 3.0 Unsafe World, Swift and C Libraries.

Bitter iCloud Truth

Daniel Jalkut:

The first thing to do was obviously to take care of those duplicates. Contacts on the Mac features a couple seemingly handy menu items for dealing with this problem: “Look for Duplicates” and “Merge Selected Cards.” I cannot recommend using either of these features.


After painstakingly merging cards in this manner for an hour or so (!), I had stopped paying close attention to whether conflicting data was being persisted well or not. At one point I stumbled upon the realization that I lacked the phone number for a contact whom I had sent an SMS message just within the past week. Other contacts were missing key data, too. An outdated email address here, a missing mailing address there. Whoops! Abort mission! Time to recover from that backup file.


I began to panic. Had I actually lost all of my Contacts data? In spite of dutifully backing up my local data and making a proactive archive from Contacts, the app had a very different idea of what my Contacts “truth” was.

On my Mac, the archive does seem to contain the data from iCloud, but I don’t dare to try restoring from it. It’s not clear to me what I would lose by creating a local vCard export instead of a Contacts Archive.

Chuq’s Advice for Apple

Chuq Von Rospach:

If I could only offer one thing to Apple, it’s this: “it’s okay to slow down — a little”. The iPhone has to ship a new version ever year, and you can’t take your eye off that for a minute, but other parts of the product line don’t need that kind of continuous update. MacOS would be okay with a new release every 18 months or two years, or a feature release as a tick and a performance release as a tock in a two year cycle.


When people are nervous, when they don’t know what might happen to the things they depend on in their life and work, they start speculating. And when there’s nothing to fill the space in the social media and online conversation space, that speculation ends up taking on a life of its own, especially the speculations of the better known, louder enthusiasts and influencers. The best antidote for that is to get in front of it with enough information to prefer the speculations from catching everyone’s attention in the first place.


I find it interesting that Apple seems to have chosen the “Tim writes an internal email that he likely knows will get leaked” as a tactic here, because I’m guessing it being a leak prevents it from being liable to the same kind of SEC “forward thinking” rules and regulations that his more formal communications might be held to. Nice hack.

Previously: Apple’s 2016 in Review.

The State of Safari Extensions

honestbleeps (via Peter Steinberger, Hacker News):

A little over a year ago, Apple announced that Safari extension developers would no longer be able to develop extensions for free. Instead, they had to pay the same $100 per year that iOS and MacOS developers do. The benefit, they alleged, is that you’d get the tools and support to develop iOS and MacOS apps in addition to Safari Extension development. According to them, this “simplified” their program.


All of the browsers’ extension galleries require that you submit your extension for review. Each of them, except Safari, has some automated processes to ensure you’ve checked all the right boxes and included all the right files and data. The fact that we waited two weeks to be notified of such a simple omission, and one that wasn’t noted in the first rejection, is pretty awful.

So, we submitted yet again, once again providing documentation of our license to use the term “reddit” in the name, just in case. What happens? We wait a few weeks and are once again rejected for using the term “reddit” in the name of our extension!


All four of the other browsers use effectively the same APIs — Safari is potentially going to change that in some ugly ways.

To develop a Safari extension may eventually require Xcode, rather than whatever editor a developer prefers to use.


The difference with Edge vs Safari is that Edge spent time getting extensions right. They worked directly with extension developers (including me!) to ensure that Edge supported as much of what RES needed as possible. I was even flown out to Microsoft to work with their developers for a day and help them get RES running.

Microsoft showed us a great deal of kindness and respect. Apple has essentially given us the middle finger.

OmniFocus 2.8 for Mac

The Omni Group:

In OmniFocus 2.8, basic search works the same way it has since 2014: Click into the Toolbar Search field or hit ⌥⌘F and type the string you’re looking for. The outline and sidebar are filtered to show just items in your current view that contain that string (if there are any). The part that’s new in 2.8 is that instead of being limited to just searching the current view, you can click the magnifying glass icon in the search field and expand the scope! The three search scope options (Here, Remaining, and Everything) mirror the search options available in OmniFocus on iOS.

Previously, I would have to create a new window that showed everything—I have a perspective for that—in order to do a global search. It turns out that I still prefer the perspective way because I can drive it from the keyboard. I can have a keyboard shortcut to open the perspective and then just close the window when I’m done. With the new global search, I have to use the mouse to change the search scope to global before the search and also to change it back afterwards.

See also: the full change list.

Stringify Automation Service

Jeff Porten:

Stringify sounds to me like the Internet automation service IFTTT on steroids (and if you’re not sure what IFTTT does, see “IFTTT Automates the Internet Now, but What Comes Next?,” 20 December 2013). IFTTT allows for one condition and one event; Stringify has multiple conditions and creates “macros” for the real world, like “if it’s after 7 PM, my motion sensor outside is tripped, and I’m not home, turn on my lights and send me a text.” Better yet, Stringify integrates with IFTTT so one can trigger the other and vice versa. Just as with IFTTT, I’m unclear on how Stringify plans to make money.

Previously: IFTTT Drops Pinboard and, Blames Them.

Thursday, January 5, 2017 [Tweets] [Favorites]

Renewing Medium’s Focus

Ev Williams:

As of today, we are reducing our team by about one third — eliminating 50 jobs, mostly in sales, support, and other business functions. We are also changing our business model to more directly drive the mission we set out on originally.


Upon further reflection, it’s clear that the broken system is ad-driven media on the internet. It simply doesn’t serve people. In fact, it’s not designed to. The vast majority of articles, videos, and other “content” we all consume on a daily basis is paid for — directly or indirectly — by corporations who are funding it in order to advance their goals. And it is measured, amplified, and rewarded based on its ability to do that. Period. As a result, we get…well, what we get. And it’s getting worse.


So, we are shifting our resources and attention to defining a new model for writers and creators to be rewarded, based on the value they’re creating for people.

John Gruber:

Sounds good, but with no details as to what this “different — and bolder — approach” is, it’s hard to judge.


Does anyone actually like those “highlights from other users” on Medium? I find them distracting and gross, and the more popular an article is, the more of them I see (and the more nonsensical some of them are).

Dave Winer:

Through all the zigging, the thing that has remained constant at Medium is the high quality and usability of the software. But it’s possible for others to do what they do, to be as easy to use, without the uncertainty about its future as an archiving system.

This became especially relevant as people in government, including the president and members of Congress, used Medium to publish official statements. Those should be preserved at a constant location over time. Yes, they will be in, but we should strive to do better.

Manton Reece:

On Monday, I launched my Kickstarter project about independent microblogging, with a focus on owning your own content and making blogging easier. On Tuesday, Lindy West left Twitter in a post about Twitter’s inability to deal with harassment. On Wednesday, Ev Williams announced that Medium would lay off 50 employees.

The message is clear. The only web site that you can trust to last and have your interests at heart is the web site with your name on it.

Previously: Anywhere But Medium.

Apple Removes New York Times Apps From Chinese App Store

Katie Benner and Sui-Lee Wee (tweet, Hacker News, MacRumors):

Apple, complying with what it said was a request from Chinese authorities, removed news apps created by The New York Times from its app store in China late last month.

The move limits access to one of the few remaining channels for readers in mainland China to read The Times without resorting to special software. The government began blocking The Times’s websites in 2012, after a series of articles on the wealth amassed by the family of Wen Jiabao, who was then prime minister, but it had struggled in recent months to prevent readers from using the Chinese-language app.


Apple has previously removed other, less prominent media apps from its China store. It is unclear how the company evaluates requests from Beijing to take down apps and whether it ever resists them.


When the Chinese government began blocking the Times websites in 2012, it also prevented users with Times apps from downloading new content.

But readers in China can still gain access to The Times using software that circumvents the government’s firewall. And in July 2015, The Times released a new version of its Chinese-language app that adopted a different method for retrieving articles, one that the government appeared unable to stop.

So the app would still work if only people were able to get it. But Apple doesn’t allow iOS users to download and install apps directly; you have to go through the App Store.

Update (2017-01-06): John Gruber:

I don’t think Apple had any choice here, other than pulling out of China.

And given that The Times’s website has been blocked in China since 2012, the closed, proprietary App Store has given Chinese readers four years of access to The Times that they couldn’t get over the open web.

Update (2017-01-11): See also: The Talk Show.

Intel Core i7-7700K Kaby Lake Review

Mark Walton (Hacker News):

The Intel Core i7-7700K is what happens when a chip company stops trying. The i7-7700K is the first desktop Intel chip in brave new post-”tick-tock” world—which means that instead of major improvements to architecture, process, and instructions per clock (IPC), we get slightly higher clock speeds and a way to decode DRM-laden 4K streaming video.

There are apparently power consumption improvements, however.

Dan Luu:

Dear linkbait authors, I’m pretty sure Intel is trying. If you look at research $, they appear to be trying exponentially harder over time.

Marcel Weiher:

We are in an effective post-Moore’s law world, and have been for a couple of years. Yes, we can still put more transistors on the chip, but we are pretty much done with single core performance, at least until some really big breakthrough.


Most of the things that go into squandering CPU don’t parallelize well, so removing the bloat is actually starting to become cheaper again than trying to combat it with more silicon.

Lloyd Chambers:

[There] are at least a few reasons why the Intel ‘Kaby Lake’ release is significant:

  • Improved graphics performance.
  • My understanding is that the Kaby Lake ‘H’ series supports 32GB memory, thus making a MacBook Pro with 32GB of DR 23000 DRAM possible. But whether the power draw is viable on a laptop is unclear (meaning what we could expect from Apple, given the rationalizations seen with the Nov 2016 MacBook Pro).
  • The i7-7920HQ 3.1 GHz (turbo boost to 4.1 GHz, 4 real CPU cores) might be suitable for a MacBook Pro.
  • The i7-7700K 4.2 GHz (turbo boost 4.5 GHz) shoudl be suitable for an iMac. This perhaps is the “standstill” point—that’s only 5% faster than the 4.0 GHz iMac 5K that sits on my desk today—at the cost of a 95 watt TPD.

Paul Haddad:

Every PC manufacturer today announced Kaby Lake updates. I’m guessing Apple will wait until at least April to announce a MacBook with one.

Razer’s “Project Valerie” Triple Display Laptop

Juli Clover:

Razer, known for its gaming laptops and accessories, today unveiled its latest product, the world’s first triple display laptop. Project Valerie features a Razer laptop that’s equipped with one main display and two fold out side displays, all of which are 4K.


According to Razer, though its equipped with three displays, Project Valerie has a form factor that’s comparable to other 17-inch gaming laptops on the market, fitting neatly into a laptop bag so it can be taken anywhere. It’s about 1.5 inches thick and weighs approximately 12 pounds.

Apple once made a MacBook Pro with a single 17-inch display, and it was great. I don’t really expect Apple to make something like this, but it’s not as crazy as it sounds. Many notebooks are transported from one location to another and not used on the go (making battery life irrelevant). I would love to be able to work remotely with a larger display or (better) multiple displays. The weight and dimensions compare favorably with lugging an actual external display, which I’ve considered, though I’ve not tried one like this.

Update (2017-01-05): I meant to also link to the new Acer laptop (via Mike Rundle):

As if gaming laptops weren’t already bulky and expensive enough, Acer is taking things a step further in the new year with its massive Predator 21 X, whose pricing it announced at CES 2017 today.

The $9,000 (not a typo) machine features a curved 21-inch display that offers a resolution of 2560×1080 pixels with 120Hz refresh rate, as well as G-Sync support to eliminate visual artifacts and issues like screen tearing.

Under the hood, it packs a 7th-gen Intel Core i7-7820HK Kaby Lake processor paired with not one, but two GeForce GTX 1080 GPUs in SLI configuration. They’re accompanied by 64GB of RAM and there’s room for five storage drives – a 1TB HDD and four 512GB SSDs[…]

Previously: New MacBook Pros and the State of the Mac.

Hiya: Filter Spam Calls

Katie Floyd:

Out of desperation, I’ve tried a few of these Apps claiming to screen or block suspected spam callers as they’ve popped up in the App store. Thus far the only one I’ve found that has worked somewhat reliably is Hiya. (Glenn Fleishman writing for Macworld has a more extensive review)


One concern of note, Hiya requires users to provide access to their contacts, a request that always makes me leery. Hiya told Macworld the data is required to add contacts to its whitelist and the information is kept private. Still, be aware. After a few months of use I’ve found Hiya overall accurate with a few bugs that have been fixed by uninstalling and reinstalling the app.

Update (2017-01-09): Marco Arment (tweet):

I had Hiya installed for weeks and it never identified a single spam call, during which time I got about ten. I followed all of their voodoo troubleshooting steps, but it just never worked, so I deleted it. (Too bad I can’t un-send them my contacts. Thanks a lot.)

Wednesday, January 4, 2017 [Tweets] [Favorites]

The Leap Second

Jack Forster:

UTC used to be based on the rotation of the Earth around its axis, as observed at Greenwich. Once upon a time – a simpler, happier time – the second was exactly 1/86,400 of a day. By the mid-1950s, however, clocks had gotten accurate enough that we’d figured out that the Earth’s rotation on its own axis was irregular, so in 1952, the International Union Of Astronomers decided to define the second as a fraction of one orbit of the Earth around the Sun: a second would now be 1/31,556,925.9747 of a tropical year.

However, the year turned out to have the same basic problem as the day; it’s irregular, changing slightly in length from one year to the next. (This is different, by the way, from the problem that requires the insertion of an extra day in a Leap Year; the Leap Year is inserted to keep the Gregorian Calendar in sync with the seasons, but the reason for the Leap Year, is that there isn’t a whole number of days in a year, not that an astronomical year varies slightly in length from one year to the next.)


As it turns out, atomic clocks are much more stable than the Earth’s rotation around its axis, or its orbit around the Sun, and it soon became clear that while an atomic clock-based time standard (UTC) was great to have, it meant that there was going to be a cumulative difference between UTC, and observed mean solar time. While both the astronomical day, and year, are irregular, the day overall has been getting slightly longer for at least the last few centuries. To keep UTC and mean solar time in sync, a Leap Second is occasionally added to UTC.

Via Nick Heer:

Accurate time is also essential for things like HTTPS certificates and, apparently, Cloudfare’s CDN services.

Previously: Intercalation.

Getting a New 2013 Mac Pro in 2017

Chris Adamson:

Waiting isn’t really an option, with my 2008 machine not supported by Sierra.

I think my needs, for development and especially for video work (Motion and Wirecast, mainly) are best served by the Mac Pro. Even the pathetic, three-year-old Mac Pro, because what I want is lots of cores, silent operation, and expandability of RAM and storage, something the iMac and MacBook Pro can’t offer.


If Marco’s right, then the choice is either today’s Mac Pro, or no Mac Pro.


I’m honestly not sure Apple is even a consumer electronics company anymore. I’m starting to think they’re more a fashion and luxury goods company instead. […] The whole reason I bought AAPL in the first place was from reading Motley Fool back in the day (on AOL even! yes, I’m old!), whose emphasis on buying single stocks came from knowing what a company did and how it could be profitable doing that. I understood Apple in the 90s and believed that if they kept doing the right thing, they would succeed. They did, and I was rewarded handsomely for believing in them. But now, what the heck am I supposed to think when they’re maybe making a car, or making $300 coffee table books to celebrate how great they are? This makes no damn sense to me, so it’s time for me to be out.

I’m always amazed at just how small the Mac Pro looks in photos.

Previously: How Apple Alienated Mac Loyalists.

Update (2017-01-11): See also: The Talk Show.

OWC DEC MacBook Pro Dock

Juli Clover (via Paul Haddad):

Other World Computing today announced the OWC DEC, an attachment designed to snap onto the bottom of a 2016 MacBook Pro to add additional functionality to the machine.

The OWC DEC adds 4TB of storage, an SD Card Slot, USB Type-A ports for using standard USB devices, and a Gigabit Ethernet port. According to OWC, additional features will be introduced at a later date.


When installed, the OWC DEC and MacBook Pro will be as thin as a 2012 MacBook Pro, allowing this advanced solution to retain the attractive light weight design that users favor.

Previously: New MacBook Pros and the State of the Mac.

Tuesday, January 3, 2017 [Tweets] [Favorites]

Apple’s 2016 in Review

Chuq Von Rospach (Hacker News):

Apple’s model of who its users are and what they want seems to be different than what happens out in the real world among its real users. And that to me indicates potential problems of all sorts, since that misjudgment affects not only forecasting, but product design, feature choice and performance specifications all tie back into this. And given the criticism of the MacBook Pros by many long-time Mac users, that’s a worry.


Apple’s always been a data driven company, but I think they’ve gotten overly reliant on data to drive business decisions. Spreadsheets can tell you where the sweet spots in the market are and how to hit them, but they struggle at finding and bringing forward strategic areas that also need coverage. That was, actually, one thing that Steve excelled at. It means you need people in leadership who understand their user base and which bits are strategic and need to have product coverage.


There are far too many details of bugs slipping into releases, weird design choices (the chaos of trying to use stickers in messages, for instance), usability problems and general “lack of polish” and the trend line on the quality of OS and app releases is headed in the wrong direction.


My worry is that Apple isn’t seeing this, because it’s looking at the sales numbers and they look fine, with many products under backlog and strong demand (including the new MacBook Pros). If you just look at the numbers, things are okay. But what Apple’s always been good at is looking beyond the numbers to the things they don’t say — and I worry they’ve lost that.

Previously: How Apple Alienated Mac Loyalists, New MacBook Pros and the State of the Mac.

Update (2017-01-03): Gus Mueller:

I really miss the previous generation of Mac Pros.

Andrew Abernathy:

I personally wish Apple would stay in the wifi game, and improve their products, if for no other reason than I trust them most on security.

John Gruber (tweet):

Something is clearly wrong with the AirPort line. Either it should have been updated long to remain state-of-the-art, or it should have been discontinued.


“What the hell happened with the Mac Pro?” is the most interesting question about Apple today. Because something clearly went way wrong with this product. I’m not convinced the basic idea for the design is unsound — the idea is that expansion would come in the form of external peripherals, rather than things you install inside the box.

I’m not sure that makes sense given the price of RAM and the improvements in SSDs and GPUs. If I’m going to keep the CPU for a long time, which given its slower rate of improvement is likely, it would be really nice to be able to upgrade the stuff inside the box. I’d rather not have appendages.

Updates to the same basic design would make sense. An all-new design would make sense. Getting out of the Mac Pro game would make sense. Selling 1000-day old pro workstations at the same prices as in 2013 makes no sense. Whatever the explanation is, this situation is an unmitigated disaster.

Update (2017-01-05): Philip Elmer-DeWitt (via Chuq Von Rospach):

The must-read Apple rant of the week is Chuq Von Rospach’s Apple’s 2016 in review. The veteran of a dozen Silicon Valley firms—including 17 years at Apple—Von Rospach has written a critique of Apple’s annus horribilis so sharp and on-the-mark that even die-hard Apple apologists are recommending it.

Nick Heer:

Forgive me for pointing out the obvious here, but Apple, unlike its peers, is the only company that makes hardware that can officially run MacOS and iOS. Google and Microsoft may now have their own integrated hardware and software products — in the form of the Pixel and Surface, respectively — but other companies make hardware that runs Android and Windows.

This puts Apple in a position of incredible power and responsibility. Their platforms are exceptional. Even as I complain at length about the myriad bugs and quality issues in MacOS, I’ve also used Windows recently and I can assure you that there’s a gigantic gap. Yet this responsibility, I feel, is something that they haven’t always treated with the respect it deserves.

Rene Ritchie:

Fixing it, of course, is non-trivial. Should Apple go back to doing less but doing it better?


Update (2017-01-11): See also: The Talk Show.

Finding an Alternative to Mac OS X

Wesley Moore (Hacker News):

I deeply value the consistency, versatility, reliability and integration of Mac OS X and the excellent quality hardware it runs on. However the current state of the Mac has me considering whether it’s still the right platform for me.


At the end of November motivated by the lacklustre MacBook Pro updates I installed a bunch of different OSes to see if I could find one that met my requirements. These are what I tried[…]

If Apple drops the ball with the Mac, I doubt we’ll ever see anything like it again.

Update (2017-01-04): John Siracusa:

The last time Mac users were seriously passing around articles like this was during the transition from Mac OS to Mac OS X.

John Gruber (tweet):

The truth is, for most of us, there is no good alternative to MacOS. Nothing. And it took so long — not years but decades — for MacOS to get to where it is that I don’t think any other OS could ever catch up. That’s what’s driving the arguably paranoid fear that Apple is abandoning the Mac. It’s not so much the evidence (lack of updates to Mac Pro and Mac Mini, and concerns about software quality) as the high stakes: if the Mac goes away, the world will be left without a Mac-quality desktop OS.

I think a lot of the hardware issues are temporary, and Apple could change course relatively quickly if motivated. The software quality is a more serious concern. Apple is one of the richest companies in the world, but it has built up a staggering amount of technical debt. I see no signs that this is being addressed. The best case—that Apple recognizes the problem and decides to do something—would probably take at least five years to pay it down.

Update (2017-01-05): Billy Chitkin (via Chuq Von Rospach):

The prospect of changing over to a new software ecosystem is scary. We totally get it, switching out the platform that you pay your bills with is a big deal, and certainly not a decision to take lightly. You’ve grown comfortable over the years with the OS that you love and the ecosystem around it, but now the future of Motion Design on the Mac looks a bit uncertain. We know that you have a lot of questions about making the switch, so let’s take a look at some of the bigger ones and see if we can’t ease some of those concerns.

Anil Dash’s Advice for Twitter

Anil Dash:

I don’t think that smart people at Twitter haven’t thought of these ideas: I’m merely emphasizing that nobody on the outside can tell if they did or not. So you have to ship. You have to launch new features, tell users what they are, and explain why you made them.


Your relationship with Wall Street investors (and, to some degree, with advertisers) is fundamentally broken because you’ve gotten trapped into using the wrong metrics to measure the success or progress of Twitter. […] Meanwhile, do you know how many new video creators joined YouTube this quarter? Me neither! You know why? Because all the good videos are on YouTube! What percentage of people who visit YouTube each month are logged in? What percentage ever uploaded a video? Answer: Nobody gives a shit. Because YouTube inarguably drives culture, and people (and advertisers!) want to be part of that.

Via John Gruber:

By measuring the wrong things, not only is Twitter not being rewarded for what it is doing well, but it’s also providing motivation to Twitter to allow bad behavior.