Friday, May 24, 2019 [Tweets] [Favorites]

Why Does Windows Use Backslash As the Path Separator?

Michal Necasek (via Hacker News):

Microsoft reportedly wanted to use the forward slash as path separator, but IBM nixed the idea because it would have created an incompatibility with DOS 1.x, which already used the forward slash as a switch character, separating command options.


Changing the slash semantics had a clear potential for destroying data, especially when running batch files written for DOS 1.1. Something like ‘COPY FOO + BAR /A’ has rather different semantics when /A is a switch vs. when /A is a file or directory in the disk’s root directory.


There have Microsoft’s own word that the forward slash came not from CP/M, not from IBM, but from DEC, and there’s an explicit mention of TOPS-10.

How Effective Is Basic Account Hygiene at Preventing Hijacking?

Google (via Kevin Beaumont):

We found that an SMS code sent to a recovery phone number helped block 100% of automated bots, 96% of bulk phishing attacks, and 76% of targeted attacks. On-device prompts, a more secure replacement for SMS, helped prevent 100% of automated bots, 99% of bulk phishing attacks and 90% of targeted attacks.


Given the security benefits of challenges, one might ask why we don’t require them for all sign-ins. The answer is that challenges introduce additional friction and increase the risk of account lockout. In an experiment, 38% of users did not have access to their phone when challenged. Another 34% of users could not recall their secondary email address.

Facebook Sharing Data With Phone Carriers

Sam Biddle (via John Gruber):

Offered to select Facebook partners, the data includes not just technical information about Facebook members’ devices and use of Wi-Fi and cellular networks, but also their past locations, interests, and even their social groups. This data is sourced not just from the company’s main iOS and Android apps, but from Instagram and Messenger as well. The data has been used by Facebook partners to assess their standing against competitors, including customers lost to and won from them, but also for more controversial uses like racially targeted ads.


The source, who discussed Actionable Insights on the condition of anonymity because they were not permitted to speak to the press, explained that Facebook has offered the service to carriers and phone makers ostensibly of free charge, with access to Actionable Insights granted as a sweetener for advertising relationships. According to the source, the underlying value of granting such gratis access to Actionable Insights in these cases isn’t simply to help better service cell customers with weak signals, but also to ensure that telecoms and phone makers keep buying more and more carefully targeted Facebook ads. It’s exactly this sort of quasi-transactional data access that’s become a hallmark of Facebook’s business, allowing the company to plausibly deny that it ever sells your data while still leveraging it for revenue.

Previously: A Privacy-Focused Vision for Social Networking.

Understanding Real-World Concurrency Bugs in Go

Tengfei Tu et al. (PDF via Susan Potter):

In this paper, we perform the first systematic study on concurrency bugs in real Go programs. We studied six popular Go software including Docker, Kubernetes, and gRPC. We analyzed 171 concurrency bugs in total, with more than half of them caused by non-traditional, Go-specific problems. Apart from root causes of these bugs, we also studied their fixes, performed experiments to reproduce them, and evaluated them with two publicly-available Go bug detectors. Overall, our study provides a better understanding on Go’s concurrency models and can guide future researchers and practitioners in writing better, more reliable Go software and in developing debugging and diagnosis tools for Go.

Thursday, May 23, 2019 [Tweets] [Favorites]

Privacy Preserving Ad Click Attribution For the Web

John Wilander:

The combination of third-party web tracking and ad campaign measurement has led many to conflate web privacy with a web free of advertisements. We think that’s a misunderstanding. Online ads and measurement of their effectiveness do not require Site A, where you clicked an ad, to learn that you purchased something on Site B. The only data needed for measurement is that someone who clicked an ad on Site A made a purchase on Site B.

Today we are presenting a new technology to allow attribution of ad clicks on the web while preserving user privacy.


The browser should act on behalf of the user and do its best to preserve privacy while reporting on ad click attribution. We achieve this by:

  • Sending attribution reports in a dedicated Private Browsing Mode even though the user is in regular browsing mode.
  • Disallowing data like cookies for reporting purposes.
  • Delaying reports randomly between 24 and 48 hours.
  • Not supporting Privacy Preserving Ad Click Attribution at all when the user is in Private Browsing Mode.


Privacy Preserving Ad Click Attribution is in the early stage of being proposed as a standard through the W3C Web Platform Incubator Community Group (WICG). Please join the discussion and file issues to discuss how this technology fits with your use cases.

See also: John Gruber.



Cabel Sasser:

After more than 20 years of making quality apps you love for Mac and iOS, Panic was ready to try something new…

…and that something was hardware.

Playdate (tweet, Hacker News, MacRumors):

It’s yellow. It fits in your pocket. It’s got a beautiful black and white screen. It’s not super cheap, but not super expensive. It includes brand new games from some amazing creators. Plus it has a crank.


Panic built every part of Playdate from scratch, starting with early board designs (using the hotplate in our kitchen to flow solder), our own Playdate OS, a full-featured SDK supporting C and Lua development, a Mac-based simulator and debugger, and more.

We then brought Playdate to one of our favorite companies on the planet — Teenage Engineering, the Stockholm-based creator of synthesizers and so much more — to begin a cross-company collaboration, designing and engineering Playdate’s look.

No, it’s not April 1st. They’re really building this. I don’t play video games, but I’m so happy to see Playdate. I love the ambition to try something new of this difficulty and seeing the care and craft that’s gone into it. So often we think of technology at massive scale. It can be powerful and useful and even dangerous. But this is like a statement that it can also be a little product, not intended for everyone yet not elitist, that exists because some people wanted to have fun trying to brighten your day.

John Gruber (tweet):

In today’s world all the new computing devices and platforms come from huge companies. Apple of course. All the well-known Android handset makers building off an OS provided by Google. Sony. Nintendo.

Panic is almost cheating in a way because they’re tiny. The Playdate platform isn’t competing with the state of the art. It’s not a retro platform, per se, but while it has an obviously nostalgic charm it is competing only on its own terms. Its only goal is to be fun. And aspects of Playdate are utterly modern: Wi-Fi, Bluetooth, apps and software updates delivered over-the-air.

Anil Dash (tweet):

You can read up on all the details elsewhere, but suffice to say, this little game machine looks like one of the most fun and joyful new efforts that any company has done recently, and that a tiny indie software company in Oregon has the ambition to even attempt such a thing makes it only more endearing.


I don’t know if Playdate will succeed in the market. I don’t know what kind of risk it represents for Panic as a company. But I know that people see this cute little device, and are reminded that they used to get excited when they saw cool new technology, instead of wondering how it would warp their reality, or steal their information. Here’s hoping for a return to tech that’s fun, that’s thoughtful, and that’s created with a little bit of soul.

Eli Schiff:

Almost no one realizes that @panic’s @playdate has @Kenichi Yoshida’s fingerprints all over its design. It wasn’t just Teenage Engineering @jugendingenieur.

Icon designers deserve more credit in this world.

Update (2019-05-24): Jesper:

What I love about it is a recently recurring theme that’s, amidst a polarized and increasingly de-humanized society, been easy to disregard: the glimmers of hope. A group of under a dozen people can still create a little thing like this, including its own damn OS, just because they love the feel of technology built by those who care.

There were a thousand reasons to not build it. There were a thousand reasons to run in the opposite direction, to give up, to completely cede the ground to consoles and touch and game streaming, to things that can be screen captured to Twitch.

Pádraig Kennedy:

My connection with Apple is largely thanks to Panic; back in 2003 their lovely polished apps are what made me want to make Mac software.


Playdate in 24 Hours:

• 70,000+ people on the wait list
• Thousands of interested devs
• Some skeptics (we understand)
• 23k Twitter followers (hi!)
• Most importantly… an overwhelming flood of positivity + excitement from people who also want this weird thing we want (!!!)

GitHub Sponsors

GitHub (tweet, Hacker News):

Funding developers through GitHub Sponsors is one more way to contribute to open source projects you appreciate. Help developers get the resources they need, and recognize contributors working behind the scenes to make open source better for everyone.

With Sponsors, any GitHub user can sponsor any open source developer in the program.

Owen Williams:

Yes, GitHub is swallowing the cost of those transactions entirely to give the creator as much of the money as possible. But, what’s even wilder is that it’s matching every dollar contributed in the first year, an outrageously bold commitment that’s only possible with the backing of a company like Microsoft.


Most importantly, this helps to change the open source narrative: you shouldn’t feel like you need to work for free, especially if companies are actually making money off of your work. Sponsorship right there on the page with the installation instructions helps pave the way for companies to actually fund the work they rely on, and that matters.

David Heinemeier Hansson:

I’m sure GitHub had all the right intentions here. And I’m sure this will work out well for a select few developers who will amass enough donations to ignore individual claims to their time. But I think it’s a grave risk to the culture of open source.

If your initial reaction was just “oh, OF COURSE donations are good. End of story!”, then I have a keynote for you to chew on.


A New Core Playlist for VLC 4

VLC (Hacker News):

One major design goal is to expose what UI frameworks need. Several user interfaces, like Qt, Mac OS and Android, will use this API to display and interact with the main VLC playlist.

The playlist must be performant for common use cases and usable from multiple threads.

Indeed, in VLC, user interfaces are implemented as modules loaded dynamically. In general, there is exactly one user interface, but there may be none or (in theory) several. Thus, the playlist may not be bound to the event loop of some specific user interface. Moreover, the playlist may be modified from a player thread; for example, playing a zip archive will replace the item by its content automatically.

Wednesday, May 22, 2019 [Tweets] [Favorites]

Mac Toolbar Labels and Accessibility

James Riordon:

My Dad (90 yrs old) has developed cognitive issues, including the inability to reconcile symbols. He can’t use Apple Mail anymore as Mail compose window removed the ability to show text labels with buttons. Thanks @tim_cook Happy Global Accessibility Awareness Day on May 16

Rob Griffiths:

This continues a depressing trend—Safari hasn’t had text labels available on its buttons for many years now.

Apple may have done this to save vertical space, which is ironic, as using “text only”—when available—takes the least amount of space possible.

I prefer to see both the icons and the text. This is an option in NSToolbar, which the app can set and the user can configure. However, if the window uses NSWindowTitleHidden to hide the title (another accessibility problem) and put the toolbar in the title bar, the toolbar gets locked in icon-only mode.

At first, I thought this title-free design was intended for single-window apps, but Apple also uses it Safari and Xcode. And it’s been appearing in third-party apps like MarsEdit, OmniFocus, and ReadKit—a shame.

Update (2019-05-23): Daniel Jalkut:

Ideally Apple would fix this mode so that some kind of appropriate compromise could be made to support the streamlined title-bar-free mode, while also supporting the display of labels. I’m not holding my breath on that, though. Hopefully this workaround [for MarsEdit] will give those of you who either prefer, or outright depend upon the labels for accessibility reasons, something to tide you over.

Peter Saathoff-Harshfield:

I often find that VoiceOver is the only way to discover what a button with an inscrutable icon does.

Also, these windows with no distinct title bar leave little space for me to click and drag the window, so I’m zooming way in to find a tiny grab spot.

Brent Simmons:

There’s a hugely important aspect to this: developers follow Apple’s lead when it comes to app design. I’m trying to find Apple apps that allow for buttons and titles, and all I’ve found so far is Mail and the iWork apps. (The iWork apps are document-based, which means their windows need titles.)

The most obvious example is Finder, which allows button labels and is not document-based. Automator, Preview, and Script Editor do, too, and are document-based. Then again, Xcode supports multiple windows, and is document-based, yet it doesn’t allow window titles or button labels. I think this style is basically the new brushed metal—used haphazardly by Apple and therefore by third-party developers as well.

OmniFocus is not document-based, but it supports multiple named windows. It puts the titles in giant text below the title bar, so it actually leaves less room for the content than in the previous version that did allow toolbar labels. However, the colored text can help show where you are, and it is visually consistent with the iOS app.

In fact, lots of Apple apps — and third-party apps — don’t even have configurable toolbars at all. This is a shame. At least with Safari — and the apps Michael mentions, and NetNewsWire — you can rearrange items to your liking, and choose the items you want to see.

Simmons’ NetNewsWire is an app that doesn’t use a window title, but it does have a hidden preference to change that, and then you can enable the toolbar labels.

John Gruber:

I think it’s a real accessibility issue, and another instance of something that looks better but, for at least some people, works worse. I also think the problem is exacerbated by the current style where icons are just simple one-color hairline outlines objects, not colorful illustrations of actual objects.

Update (2019-05-24): macOS Human Interface Guidelines:

A title bar should be visible, but can be hidden in an immersive app like a game.

Provide a title unless there’s enough context that one is unnecessary.


Provide a short, descriptive label for every toolbar item. Users see these labels when they configure the toolbar to show icons and text, or text only.

That seems to be the extent of Apple’s guidance.

Qualcomm Loses U.S. Antitrust Ruling

Ian King and Kartikay Mehrotra (Hacker News, MacRumors):

U.S. District Judge Lucy Koh sided with the Federal Trade Commission in a case brought in 2017 accusing the company of anti-competitive practices.


“Qualcomm’s licensing practices have strangled competition” in certain modem chip markets “for years, and harmed rivals, OEMs and end consumers in the process,” the judge wrote. She also found that Qualcomm’s key role in manufacturing modem chips for smartphones using 5G made it likely that its behavior would continue.

Neil Cybart:

Qualcomm must negotiate or renegotiate licensing agreements, license patents to rival chip makers at fair and reasonable prices, be monitored for 7 years.

Florian Mueller:

What was an even greater failure for Qualcomm was the extreme degree to which its senior executives’ testimony contradicted their own handwritten notes, emails, and presentation slides, including but not limited to the question of whether Qualcomm explicitly threatened device makers with a disruption of chipset supplies unless they agreed to certain patent licensing terms. As a result, “the Court largely discounts Qualcomm’s trial testimony prepared specifically for this litigation and instead relies on these witnesses’ own contemporaneous emails, handwritten notes, and recorded statements to the IRS.”


Later, Apple had to agree to total exclusivity, where any shipment of a non-negligible quantity of devices with non-Qualcomm modem chips on board would have made them lose certain benefits going forward and entitled Qualcomm to a clawback, and that is the basis for one of the FTC’s monopolization claims.


Some Users See More Twitter Ads

Kurt Wagner (via Cabel Sasser):

Some journalists first noticed and started tweeting about seeing more ads on Twitter earlier this week. Not all Twitter users have the same ad load, which means the experiment won’t affect everyone. Some people see more ads than others depending on a variety of factors, including how the number of ads influence their use of the platform. (Facebook and Instagram do something similar.) Three years ago, Twitter shut off ads for some of the network’s most prominent users as part of an effort to keep them engaged. Some users still have an ad-free Twitter.

As I recall, John Gruber has wondered why he doesn’t see any Twitter ads. I guess this clears up that mystery.

I still don’t understand why Twitter doesn’t do more with other revenue models. I think lots of people would pay for an ad-free experience or other extra features.

Update (2019-05-22): Brian:

I think @gruber was actually saying he didn’t see IG ads, not Twitter. But now he does so it’s moot

Intel vs. Qualcomm Cellular Modem Speed

Juli Clover:

In testing on LTE band 4 with good signal, there wasn’t a lot of difference in performance between the iPhone XS Max, the newer smartphones from Samsung and OnePlus, and the LG V40, which PCMag added in because it was 2018's best performing phone in terms of cellular speed.

All of the smartphones performed similarly, but the Samsung Galaxy S10 did see some of the slowest speeds, and at peak signal, the iPhone XS came in behind the OnePlus 7 Pro and the LG V40.

In a test with poorer LTE signal, the iPhone XS Max saw the slowest speeds and was outperformed by all of the Qualcomm chips. The iPhone XS Max was quite a bit slower than the Galaxy S10 and the OnePlus 7 Pro specifically.

Previously: Qualcomm and Apple Agree to Drop All Litigation.

Tuesday, May 21, 2019 [Tweets] [Favorites]

MacBook Pro 2019

Apple (Hacker News, iMore, MacRumors, tweet, The Verge):

Apple updated MacBook Pro with faster 8th- and 9th-generation Intel Core processors, bringing eight cores to MacBook Pro for the first time. MacBook Pro now delivers two times faster performance than a quad-core MacBook Pro and 40 percent more performance than a 6-core MacBook Pro, making it the fastest Mac notebook ever.

Looks like a good speed bump. Longer term, I hope Apple will make the Touch Bar optional, make the trackpad smaller, make the display (optionally) larger, fix the arrow key layout, add more ports, add more thermal headroom, bring back matte displays, and stop charging ridiculous prices for SSDs.


Apple has determined that a small percentage of the keyboards in certain MacBook, MacBook Air, and MacBook Pro models may exhibit one or more of the following behaviors[…]


The program covers eligible MacBook, MacBook Air, and MacBook Pro models for 4 years after the first retail sale of the unit.

The repair program now covers the 2018 MacBook Air and MacBook Pro, and even the just-released 2019 MacBook Pro. Some are saying that this shows Apple doesn’t have confidence in the revised keyboard. However, regardless, I think it’s great to know before purchasing that this model will be covered. Previously, you could actually get longer coverage by buying an older model with known problems than a new one! I still think that the keyboard program should cover a lot more than 4 years, though. A new pro Mac bought today should last a long time.

Jason Snell (tweet):

Apple says these new models also feature a fourth version of the butterfly keyboard design, in response to customer complaints that the keyboard would end up in a sad state where key presses were ignored or doubled. While Apple is quick to say that the vast majority of MacBook Pro customers haven’t experienced any keyboard issues, the company still keeps tweaking this design. It claims that the change made in these new MacBook Pro models will substantially reduce the incidence of ignored or doubled characters.


Where Apple’s laptop keyboard designs go from here is also a question. By extending its repair program and seeking to improve the turnaround of keyboard repairs in Apple Stores, the company is seeking to reassure customers that they won’t get stuck with a laptop with a bad keyboard. But the company also keeps tweaking the design in order to try and make it more reliable—an admirable attempt, but the sheer number of tweaks also send the message that Apple hasn’t really had a handle on the fundamental weaknesses of the design. Whether this new tweak is the one that finally solves the problem, or if it won’t be truly solved until this design is discontinued and fades into memory, remains to be seen.

Matthew Panzarino:

Apple is saying that it is doing 3 things about the MacBook keyboard situation. First, it is changing the mechanism.

Second, it is including all current butterfly keyboards in the new Keyboard Service Program

Third, it is improving repair times at stores and replacing 3rd gen membrane keyboards with the new keyboards.

Steve Troughton-Smith:

TL;DR: we didn’t totally fix the keyboard, the next-gen MBP isn’t ready yet, and we don’t plan to apologize


Apple still doesn’t mention anything about the keyboard changes nor does it list the keyboard revision on the MBP specs page. Clearly they want to starve this problem of oxygen and pretend it never happened.

Marco Arment:

Important clarification: the new 4th-gen design will be installed during repairs, but only for 3rd-gen-keyboard models: the 2018 Air and the 2018 13/15” with Touch Bar.

Colin Cornaby:

Getting harder and harder for me to justify holding on to my 2010 Mac Pro. But the risky thermals on the MacBook Pro, especially with 8 cores, are a problem. I’d also need to get an eGPU and the only ones that support Thunderbolt output are Blackmagic’s ridiculously priced ones.

There’s also the ongoing problem of putting a large amount of money into a machine where I can never upgrade the RAM or storage. $4000 is a lot for a machine that might run out of internal storage, and doesn’t change with my needs.


I love my 15” 2018 but sticking two more cores in the same body is just insanity. It is way too thermally constrained as it is.

Mark Munz:

My 7 y/o MacBook Pro has never had a keyboard problem EVER.

Now Apple has a keyboard service program that lasts 4 years. I guess I’m supposed to feel more confident. 🤷‍♂️

Would feel a lot better if they had announced a “new” scissor-switch designed keyboard.

Steve Troughton-Smith:

I still don’t understand what is so hard about putting out a press release addressing the butterfly keyboard problem, explaining today’s half-fix, explaining repair & replacement program, & saying that a redesigned keyboard is in the works. Apple’s handling has been infuriating

By now, somebody needs to be fired for the handling of the keyboard situation, and the longer it takes, the higher up the management chain they should be looking. You don’t get to 5 years of ignoring it by accident. The reputation damage will last a decade, nevermind support cost

Today’s keyboard materials update could fix the problem in 99% of cases, but we won’t know from anecdata for years. And Apple’s not prepared to stand by in public what it’s telling press in private. If they don’t have confidence in the fix, why would anybody else?

Craig Hockenberry:

I have a 2013 MBP and my only criteria for upgrading is the keyboard. Size is secondary, and speed is a distant third.

In real estate, the things that matter are “location, location, and location.”

With keyboards, it’s “travel, travel, and travel.”

Mathias Meyer:

Good, now I can send in both my 2016 12" MacBook and my 2018 MacBook Air for repairs. Both have become unbearable to type on.


We repair these as part of our business, and to be clear, both the keyboards and the screens are failing on these at an alarming rate.

iFixit detailed the issues with the screens, which (in Apple’s unending quest for “thinness”) use a thinner flex cable to connect the display to the rest of the laptop. This thinner cable is prone to breakage, and we are already seeing 2016-2017 MacBook Pros in our shop regularly for this issue.

Since Apple built the flex cable into the display, the only solution (even from third parties like us) is a new display. At $600-$700 each, this is unacceptable.

And, like the keyboards, this is a part that’s pretty much guaranteed to fail (unless you basically never open your laptop.)

Apple hasn’t announced a fix yet, even with a petition with over 11,000 signatures, and more screens failing by the day.

Marco Arment:

SSDs are so cheap now that 512 GB should be standard on any Mac ending in “Pro”.

Greg Hurrell:

I’m not in the market or a new laptop, but every now and again I check up on the prices. Amazing how easy it is to spec up a MacBook Pro deep into “frickin’ ludicrous” territory.

For the same money you can get an absolutely monstrous machine from System76 to run Linux. Twice the RAM (64GB), more than twice the disk (10.5 TB!), an actual function keyboard…


John Gruber (tweet):

Personally, I’d like to see them add more travel to the keys, go back to the upside-down T arrow key layout, and include a hardware Esc key on Touch Bar models (in that order).


The best that we could hope for while waiting for a true next-generation keyboard design — which for all we know might be a year or more out — is a mid-generation tweak. At the very least, talking about this material tweak and including all butterfly keyboard models in the service program is an acknowledgement that last year’s keyboards were not good enough. That was the worst case scenario — that Apple didn’t see a problem.

But what pleases me more is that Apple is updating Mac hardware on an aggressive schedule. I wrote “just speed bumps” a few paragraphs ago, but speed bumps are important in the pro market. Apple shipped new MacBook Pros last July, added new high-end graphics card options to those models in October, and now has updated the whole lineup with new CPUs. They also just updated the non-Pro iMac lineup in March. This seems like an odd thing to praise the company for — updating hardware with speed bumps is something a computer maker should just do, right? The lack of speed bumps in recent years naturally led some to conclude that Apple, institutionally, was losing interest in the Mac.

Nick Heer:

This year, however, Apple directly addressed keyboard reliability in their conversations with media. Even though they didn’t mention keyboards at all in their press release, I still see it as a noteworthy acknowledgement.

Benedict Cohen:

One more thing for the MacBook wish list: MagSafe

Steve Troughton-Smith:

OK, perhaps it’s just me; let’s do this one: Do you trust Apple’s ‘butterfly’ MacBook/Air/Pro keyboards (before or after today’s update)?

Paul Haddad:

The replacement program for keyboards is still limited to 4 years. Sucks if you bought a MacBook 12” when it first came out in April 2015…

Ellen Shapiro:

GAH, new 13” MBPs still don’t support 32 gigs of RAM.

I travel too much to really want the 15”, and I often run Xcode/Simulator + Android Studio/Emulator at the same time, so on a new laptop I’d be a lot happier with 32GB RAM.

Kyle Howells:

My 2015 15" MacBook Pro slows to a craw when I plug it into a 4K monitor, because of thermal throttling. I have to have a desk fan pointed directly at it at all times to cool it sufficiently to use.

The idea of putting an 8 core i9 into a thinner case design, makes me nervous.

Joanna Stern (tweet):

Stop me if you’ve heard this before: Apple Inc. is promising to fix the MacBook keyboard issues. Yes, again.

Ed Bott:

The butterfly keyboard is Apple’s Windows Vista, a reputation-destroying slow-motion train wreck.

Keith Calder:

You know how people with MacBooks have been having keyboard problems where a random key gets stuck? That just happened to my "delete" key while I was in an important email folder, and all the emails were deleted. Fun times!

Colin Devroe:

As I wrote, I want to switch back to the Mac but only after they produce a laptop with an entirely new, reliable keyboard. I’ve seen the current keyboard in action and I think I would have pitched my laptop into the sea out of frustration if I had owned one.

Jason Cross:

To me, the biggest issue here is that it’s terrible reliability may be giving Apple a black eye, but it’s not like it’s good even when it works.

At best, people seem to think it’s just okay. At worst, they HATE it. This as a replacement for the most beloved laptop keyboard ever?

Marcin Krzyzanowski:

I had this crazy idea to get my Macbook for a keyboard repair to Apple Store while in Berlin. To benefit of fast-path announced yesterday


1. Apple doesn’t recognize keyboard issue as a frequent issue
2. not a single slot for genius appointment for the upcoming week

Marco Scheurer:

And that ESC key... it is not just inconvenient when you use it but also when you don’t. I keep hitting hit by mistake.

Rui Carmo:

Living in a country that, to this day, still lacks an official Apple Store and where support centers (even if competent) don’t provide anywhere near the same turnaround times as in first world countries, I don’t find it the least bit reassuring.

Jacob Kastrenakes:

Apple will offer free repairs to owners of 2016 MacBook Pros with backlight issues — a problem that’s increasingly started to appear on the laptops as they age. The repair program, announced this afternoon, covers only the 13-inch MacBook Pro model that debuted in 2016, though both the Touch Bar and non-Touch Bar versions are eligible. Repairs will be covered for four years after a laptop was first purchased.

See also: Why are Creators Leaving the MACBOOK PRO ??.

Colin Cornaby:

It’s funny because the MacBook Pro has reached a point where I should seriously be considering not even using a desktop anymore. But the compromised thermals and lack of swappable memory/storage keep the MacBook Pro from really being a desktop replacement.

Update (2019-05-23): Juli Clover:

In a Geekbench benchmark uploaded this morning, the new MacBook Pro with a 2.4GHz Core i9 chip earned a single-core score of 5879 and a multi-core score of 29184.

Comparatively, the high-end 2018 MacBook Pro has earned an average single-core score of 5348 and a multi-core score of 22620. Single-core speeds are up almost 10 percent, while multi-core scores are up an impressive 29 percent.

However, it’s not clear how long the thermals will let it run at that speed.

Update (2019-05-24): Quinn Nelson:

Update: the new i9 MacBook Pro doesn’t throttle under even the most stressful benchmarks. It gets mighty close… but doesn’t ever dip under base clock. Good job, Apple!

iFixit (tweet):

Apple’s newest MacBook Pro is its fastest yet, featuring an optional eight-core processor—a first in a MacBook—and a mysterious new keyboard material. Since it’s unlikely that Apple’s going to expound on this ‘material,’ and we’re never satisfied with an unsolved mystery, it’s time once again to take a closer look at the infamous butterfly keyboard.

Dieter Bohn:

My take: when it comes to consumer trust in Apple’s butterfly keyboard design, different materials won’t make a material difference.

Microsoft Edge for Mac Preview

Microsoft (Hacker News):

Microsoft Edge for macOS will offer the same new browsing experience that we’re previewing on Windows, with user experience optimizations to make it feel at home on a Mac. We are tailoring the overall look and feel to match what macOS users expect from apps on this platform.


Examples of this include a number of tweaks to match macOS conventions for fonts, menus, keyboard shortcuts, title casing, and other areas. You will continue to see the look and feel of the browser evolve in future releases as we continue to experiment, iterate and listen to customer feedback. We encourage you to share your feedback with us using the “Send feedback” smiley.

John Gruber:

I’m glad they put quotes around “Mac-like” because this is not very Mac-like. It looks and feels a lot like Google Chrome, which makes sense, because it’s a fork from Chromium. But even Chrome uses the Mac’s standard contextual menus (what you see when you right-click) — Edge even fakes those.

The whole thing does feel very fast.

Marcin Krzyzanowski:

Isn’t it ridiculous that soon we’ll end up with Chrome, IE Edge, Firefox, Safari, where 3/4 uses the same engine and none of it is 100% compatible with any other? How did we manage to end in this ridiculous situation?

Wojtek Pietrusiewicz:

I don’t trust Google or Microsoft’s priorities (Google’s especially), and Chrome needs to lose some market share for our benefit. History has shown that a monopoly in the browser department doesn’t end well. Apple had the unique ability to challenge Google on competing desktop OSes and they forfeited that fight.

See also: Inside Microsoft’s surprise decision to work with Google on its Edge browser (tweet).


Beyond the Tablet: Seven Years of iPad as My Main Computer

Federico Viticci (tweet):

My iPad journey began in 2012 when I was undergoing cancer treatments. In the first half of the year, right after my diagnosis, I was constantly moving between hospitals to talk to different doctors and understand the best strategies for my initial round of treatments. Those chemo treatments, it turned out, often made me too tired to get any work done. I wanted to continue working for MacStories because it was a healthy distraction that kept my brain busy, but my MacBook Air was uncomfortable to carry around and I couldn’t use it in my car as it lacked a cellular connection. By contrast, the iPad was light, it featured built-in 3G, and it allowed me to stay in touch with the MacStories team from anywhere, at any time with the comfort of a large, beautiful Retina display.

Today’s MacBook Air is easier to carry around than an iPad Pro with a keyboard, and it has an even larger Retina display. Inexplicably, Apple still hasn’t added a cellular option.

Today, the iPad Pro is my laptop, the iPhone is my pocket computer, and the Mac is the third device that's better at specific tasks.


At a fundamental level, after seven years of daily iPad usage, I believe in the idea of a computer that can transform into different form factors. The iPad is such a device: it gives me the freedom to use it as a tablet with 4G while getting some lightweight work done at the beach, but it becomes a laptop when paired with a keyboard, and it turns into a workstation when hooked up to an external display, a USB keyboard, and a good pair of headphones. For me, the iPad is the ultimate expression of the modern portable computer: a one-of-a-kind device that morphs and scales along with my habits, needs, and lifestyle choices.

It doesn’t seem like Mac hardware is on track to be able to do all the things iPads can do (cellular, transformable, pencil, fast displays), but neither does it seem like iPad software is on track to be as powerful and flexible as Mac software.


WWDC 2019 Preview

Becky Hansmeyer:

WWDC is now just two weeks away, so I thought I’d share what I’m hoping for in the way of developer tools/APIs.

Nick Heer:

For old time’s sake, I wanted to put together one of those part-retrospective part-speculative pieces where I point out some of the new things I’d like to see this year. Maybe some of these things will be introduced, and that would be cool; I wouldn’t bet on too much of this list, though. These are just a few things that have been swirling in my head.

Damien Petrilli:

My WWDC 2019 wishlist:

- fix the documentation


Update (2019-05-23): Jason Snell:

Here’s what I’m hoping to see in iOS 13 when Apple unveils it on Monday, June 3.

Update (2019-05-24): Jordan Morgan:

At this point it’s all conjecture, so let’s ready up with the fifth annual Swiftjective-C WWDC Pregame Quiz!

Monday, May 20, 2019 [Tweets] [Favorites]

Google Pulls Huawei’s Android License

T.C. Sottek (Hacker News 3):

Following the US crackdown on Chinese technology companies, Google has cut off Huawei’s Android license, dealing a huge blow to the besieged phonemaker. Reuters first reported the news, and The Verge subsequently confirmed Google’s suspension of business with Huawei with a source familiar with the matter.


Speaking to Reuters, a Google spokesperson confirmed that “Google Play and the security protections from Google Play Protect will continue to function on existing Huawei devices.” So while existing Huawei phones around the world won’t be immediately impacted by the decision, the future of updates for those phones as well as any new phones Huawei would produce remains in question.

Horace Dediu:

Huawei is nearly the world’s biggest smartphone vendor. Their exclusion from licensed Android and fork away from Google is the biggest news in smartphones since, well, Android.

Update (2019-05-21): Ben Thompson:

Huawei’s preparation for this moment likely started last year when a similar ban was placed on the sale of American component to ZTE[…]

Update (2019-05-22): Tom Warren (tweet, Hacker News):

Chip designer ARM has suspended business with Huawei, threatening the Chinese company’s ability to create its own chips. BBC News reports that ARM employees have been instructed to halt “all active contracts, support entitlements, and any pending engagements” with Huawei due to the US trade ban. The US has banned any US companies from doing business with the Chinese telecom giant without permission from the American government, but ARM is based in the UK and owned by the Japanese SoftBank group.

ARM is concerned it is affected by the US ban, with an internal memo reportedly revealing that its chip designs include “US origin technology.” ARM develops some processor designs in Austin, Texas and San Jose, California, which could place it under the US restrictions.

Timery for Toggl

John Voorhees:

Time tracking helps me weigh the value of the time I spend on every project, identify inefficiencies in the way I work, and acts as an early warning system to avoid burnout.


I’m still using Toggl in a Fluid browser on my Mac, but since last summer, I’ve been using the beta of Joe Hribar’s Timery on iOS and loving it. In fact, Timery is so good that even when I’m at my Mac, I find myself turning to it to start and stop timers instead of the web app.


Timery has helped me make peace with time tracking. Where years ago, it was a tedious process of recording detailed notes by hand, now it’s a simple, streamlined process. Instead of being an interruption and something that fed an invoicing system, time tracking has become a tool that helps me work better than before.

I have been using Hours, which can optionally work completely on-device, without a Web service.

Previously: Timing 2 for Mac.

Beware iCloud Video Syncing

Tyler Hall:

Get home, back on WiFi, start uploading everything to iCloud and Google Photos. After an hour or two everything’s synced.

Problem: All videos, of any length, stutter, stall, and skip frames in both (macOS) and Google Photos on every Mac I try.


This is a core competency of iOS that should never, ever fucking break for any reason. Apple markets iPhone’s camera as a top selling point – if not THE selling point.

Lucky for me, I’m tech savvy enough to know about Image buried inside macOS’s Utilities folder. So I give it one last try using that to transfer the corrupted videos manually off my phone and into and Google Photos.

It works. My memories are safe.

Wow, I guess I need to check all our family videos now. It’s possible I’ve been backing up damaged versions, and the good copies would be lost if I pruned our iCloud Photo Library to save space. Hopefully they weren’t already lost when my wife upgraded her iPhone last year. This is not the sort of thing that can be recovered from a backup because iOS cloud backups don’t include the contents of the Photos library if you’re using cloud syncing.


The State of Apple’s Developer Documentation

Scott Anguish:

It appears that most of the old iOS conceptual documents have been moved to the documentation archive and are now unsupported.

Is there really no iOS Text Programming concepts? Or are the indexes just that bad?

That is more than a decade of work by dozens, just being abandoned.

I can’t even grasp how that’s any solution.

If this is the case every single iOS developer should be screaming from the rafters. It’s by far the stupidest move I’ve seen in a decade.

You can’t write apps without authoritative docs.

It’s bad enough the reference doc has reached the point it has.

It’s surprising how much of the documentation is marked as legacy, archived, not up-to-date, or was never written in the first place. At first I thought this was because of some sort of internal transition, but it’s been going on for years now and does not seem to be getting any better.

Steve Tibbett:

As far as I can tell, this is the only documentation on IAP receipt validation. This is part of a current system that’s making Apple billions of dollars. There are errors in it, and it’s “no longer being updated”.

Martin Pilkington:

Fun fact: when I was looking up docs for Help Books for my Appreciating AppKit post, one of the few Mac features already supported in Marzipan, it took ages to find as they’re only available in the documentation archive

Matt Stevens:

If you’re struggling to find an Apple developer document you know exists, it’s not just you.’s robots.txt disallows /library/archive/, where all of the old docs now live. Apple’s own “Search Documentation Archive”…doesn’t search the archive.


Update (2019-05-21): Wood Borer:

I remember the good old days when people were annoyed that you couldn’t figure out Cocoa bindings without the stuff mmalc posted on his personal website. That was nothing compared to when the doc browser turned into a lousy webpage instead of Cocoa views and Search Kit.

Randy Scovil:

I’m wondering how much has really disappeared. I used to point students there all the time for source code examples and now I find most any search for those comes up empty. Que?

Jonathan Fischer:

For what it’s worth, DuckDuckGo seems to be ignoring that robots.txt entry for /library/archive. I usually find what I’m looking for without much trouble:

Francisco Tolmasky:

Died Apple just not document AppKit anymore? I can’t find anything about NSWindowTab. Is all information just in like WWDC videos?

See also: Hacker News.


Sad but true. 10 years ago when I were starting to learn iOS development it was one of the best documentations I’ve ever worked with. And now it’s more like Microsoft’s in it’s dark age.

Update (2019-05-22): macshome:

One of my biggest issues with the new docs page is discoverability. And yes, I’ve filed radars on it.

Kyle Howells:

This is now my number one WWDC wishlist item.

Anything else is a bonus, but Apple’s documentation has fallen so far the knowledge about how the platform works is now being buried in archived documents, old WWDC videos and release notes.

Friday, May 17, 2019 [Tweets] [Favorites]

Three iOS Keyboard Changes Apple Should Make

Dan Moren:

I’ve become more and more puzzled about autocorrect in recent years. In my personal experience, it’s become both worse at fixing legitimate typos and more aggressive about taking actual words and turning them into nonsense. The latter is many times more frustrating; I’ve watched more than a few sentences turn incomprehensible before my very eyes.


Personally, I’ve been impressed with swipe typing when I’ve used it in other keyboards—the biggest thing holding me back is that it’s not available on the system keyboard. Third-party keyboard support is still limited on iOS, and it’s often buggy and crash-prone.


Apple already offers a way to search for emoji on the Mac, it’s more than a little puzzling that it wouldn’t make a similar feature available on iOS.


Microarchitectural Data Sampling (MDS) Mitigation

Ross Mcilroy et al. (via Hacker News):

This paper explores speculative side-channel attacks and their implications for programming languages. These attacks leak information through micro-architectural side-channels which we show are not mere bugs, but in fact lie at the foundation of optimization. […] As a result of our work, we now believe that speculative vulnerabilities on today’s hardware defeat all language-enforced confidentiality with no known comprehensive software mitigations, as we have discovered that untrusted code can construct a universal read gadget to read all memory in the same address space through side-channels. In the face of this reality, we have shifted the security model of the Chrome web browser and V8 to process isolation.

Liam Tung (via Reddit):

Major slowdowns caused by the new Linux 4.20 kernel have been traced to a mitigation for Spectre variant 2 that Linux founder Linus Torvalds now wants restricted.


It’s hard to believe it has now been more than one year since the disclosure of Meltdown and Spectre. There was so much frenzy in the first days and weeks that it has perhaps obscured the fact any solutions we currently have are temporary, barely secure, spackle-everywhere stopgap mitigations, and now that the dust has settled on that, I thought I’d look at what researchers and other contributors have come up with in the last year to provide secure processors – without of course requiring all of us to rewrite all our software from scratch.

Apple (via Benjamin Mayo):

Intel has disclosed vulnerabilities called Microarchitectural Data Sampling (MDS) that apply to desktop and notebook computers with Intel CPUs, including all modern Mac computers.

Although there are no known exploits affecting customers at the time of this writing, customers who believe their computer is at heightened risk of attack can use the Terminal app to enable an additional CPU instruction and disable hyper-threading processing technology, which provides full protection from these security issues.


Testing conducted by Apple in May 2019 showed as much as a 40 percent reduction in performance with tests that include multithreaded workloads and public benchmarks.

John Gruber:

It’s good that there are no known exploits using these techniques, but even if there were, the overwhelming majority of Mac users — almost everyone — would not need to enable this mitigation. These MDS vulnerabilities enable malware on your computer to do bad things. But these vulnerabilities are not ways for malware to get onto your computer.

However, it sounds like the fix is finally a way to work around the hyper-threading bug that can lead to data corruption on my iMac, amongst other Macs.


Dynamic Equality Checking and Equatable

Tanner Bennett (tweet):

Note that the arguments for == are defined as Self rather than Equatable. This has some implications and benefits[…]


The use of Self as in Equatable’s definition restricts how Equatable can be used. You cannot declare collections or variables as a protocol type, like you can in Objective-C.


Many APIs vend Any, such as JSONSerialization’s .jsonObject(_:_:) methods. For testing purposes, you may want to compare the output of these methods to one another. You’ll quickly find you can’t[…]

See also: Adding a polymorphic Equatable?, Protocol-Oriented Programming in Swift.


The Potential Advantages of a JavaScript Whitelist

Brent Simmons:

What I want is two related and similar things:

  • The ability to turn off JavaScript by default, and turn it on only for selected sites. (For me that would be sites like GitHub.)
  • The ability to turn off cookies by default, and, again, turn them on only for selected sites.

If it‘s the opposite — if I have to blacklist instead of whitelist — then I’d be constantly blacklisting. And, the first time I go to a site, it gets to run code before I decide to allow it.

Nick Heer:

When you think about it, it’s pretty nuts that we allow the automatic execution of whatever code a web developer wrote. We don’t do that for anything else, really — certainly not to the same extent of possibly hundreds of webpages visited daily, each carrying a dozen or more scripts.


It’s baffling to me that trackers, ad networks, cryptocurrency miners, and image lightboxes are all written for the web in the same language and that there is little granularity in how they’re treated. You can either turn all scripts off and lose key functionality on some websites, or you can turn everything on and accept the risk that your CPU will be monopolized in the background.

What if pages were allowed a certain amount of JavaScript CPU time, beyond which they had to request more from the user?

I would also like to see a report of what the JavaScript is doing, i.e. which information it’s reading and which servers it’s contacting. Part of the reason things have gotten so out of hand is that users can’t see what’s happening. I like how the iCab browser would always report whether a page had valid HTML, and how the macOS battery menu shows which apps are using significant energy.

Kyle Howells:

My number one feature request for Safari, a whitelist for Javascript use, defaults to disabled when whitelist enabled. Battery life doubled in one feature!

Previously: Intelligent Tracking Prevention 2.2.

Update (2019-05-21): It looks like Chrome already implements what Simmons is suggesting.

Thursday, May 16, 2019 [Tweets] [Favorites]

How Safari Puts Weblocs on Pause

Howard Oakley:

Safari 12.1.1 can make perfectly good webloc files from its bookmarks, for example by dragging them from Bookmarks in the sidebar. But when they’re dragged in a folder from the Bookmarks page, it refuses to close and release them so that other apps can move or, in many cases, even open them. The only solution is to quit the Safari app, which automatically releases those webloc files so that they can work normally.

It seems to be an issue with file coordination, rather than the file being left open in the Unix sense. The latter, which I tend to see when creating PDF files, is arguably worse because you’re allowed to copy and manipulate a file that may be in the process of changing, whereas the Safari bug prevents you from using the file but doesn’t put you at the risk of data corruption.


Detaching Safari’s Downloads Popover

Ricky Mondello:

Did you know that you can drag Safari’s Downloads popover by its title into being a detached, free-standing window, so you can more easily monitor your long-running downloads?

This is actually a general feature of popovers in macOS. For example, you can also use it to detach multiple Calendar events to compare or to leave on-screen for reference. (However, it doesn’t seem to work with Fantastical events—I guess they are either not standard popovers or detaching has been disabled.)

Previously: More Undiscoverable Gestures.

PDFpen 11


Top features you’ve requested in v11:

  • Split-view mode for editing
  • New Font Bar for expressive font control
  • Import scans from Continuity Camera
  • Customize page-number locations
  • Add multiple items to the Library at once
  • Option to turn off guides
  • Medical/Legal dictionaries for OCR (English language)
  • Automatic deskew independent of OCR
  • […]

Interestingly, they are offering an upgrade path from the Mac App Store to their store:

  1. Download PDFpen 11 or PDFpenPro 11 from our site.
  2. Launch v.11. It will prompt you to locate your Mac App Store app so that we can verify the receipt.
  3. If your upgrade is…
    – Free you’ll be prompted to enter your name and email address, and will be issued a free license for v.11. Finished!
    – Not free you can click on “Buy an upgrade license” for upgrade pricing.
  4. Go through the screens to purchase the US $30 upgrade to v.11 or the US $50 upgrade to PDFpenPro from PDFpen.
  5. Complete your purchase and PDFpen/PDFpenPro will register with your new license. You will also receive an email of your new license for your records.

This sounds like what Omni tried back in 2013 but had to retract. The difference, I guess, is that Omni actually generated a full serial number for the old version (which was then eligible for upgrade pricing), whereas Smile is just giving you the upgrade pricing directly. Based on Apple’s stated reasoning before, I would expect for them to have a problem with this, too. But perhaps (hopefully) the unwritten rules have changed again.


Valve’s Steam Link App Now Available

Juli Clover:

Valve’s Steam Link app, which is designed to let you play Steam games on your iPhone, iPad, or Apple TV has finally made its way to iOS and is available for download as of today.

Valve first announced the Steam Link app in May 2018 and planned to launch it soon after, but Apple ended up rejecting the app due to “business conflicts.”


Valve said that it would remove the ability to purchase apps from within Steam Link in an effort to get Apple to approve the app, which may have allowed it onto the App Store. When connecting Steam Link to a PC or Mac, the main view is of your library, aka the games you’ve already purchased, and there is no readily apparent option for purchasing content directly on your iOS device.

Apple is always looking out for the customer experience.

Steve Troughton-Smith:

I’m sure the antitrust ruling had nothing to do with its sudden appearance

Thomas Clement:

Users scared Apple might arbitrarily kill a third-party app availability (SteamLink). That’s the world we live in now.


It seems bizarre to me that it took a year to resolve this, but I’m glad Apple decided it correctly.

Wednesday, May 15, 2019 [Tweets] [Favorites]

Designing a Dark Theme for OLED iPhones

Vidit Bhargava (via Ryan Jones):

In an OLED display, the black pixel is essentially a pixel that’s turned off. It doesn’t consume any power. This is why OLED are able to show such rich dark colours and why dark themes are power-efficient.

However, When an interface that uses a black theme for its background starts displaying content on the screen, the pixels needs to switch on before they can display the content. So, when you’re scrolling through the content in a black background, the pixels find it hard to keep pace with your scrolling, resulting in a smear on the screen.

He solves this by using dark grey, which still uses significantly less power than white.

Previously: Upgrading From an iPhone SE to an XR.

My Google Activity


Stop what you’re doing and turn on “Auto-delete your Web & App Activity” in your Google account.

Set it to the minimum “Keep for 3 months”.

Once you’ve done that, also turn off as many tracking options as you can here.

In some cases, you can also prevent activity from being saved in the first place. I have everything turned off except for location history, which really improves the experience in the Google Maps app.

Amazon S3 Path Deprecation Plan

Jeff Barr:

Even though the objects are owned by distinct AWS accounts and are in different S3 buckets (and possibly in distinct AWS regions), both of them are in the DNS subdomain Hold that thought while we look at the equivalent virtual-hosted style references (although you might think of these as “new,” they have been around since at least 2010)[…]


Support for the path-style model continues for buckets created on or before September 30, 2020. Buckets created after that date must be referenced using the virtual-hosted model.

Image Resizing Techniques

Mattt Thompson:

There are a number of different approaches to resizing an image, each with different capabilities and performance characteristics. And the examples we’re looking at in this article span frameworks both low- and high-level, from Core Graphics, vImage, and Image I/O to Core Image and UIKit[…]

Jeff Nadeau:

If you want to cache a downsampled rendition of some source image, try a block-based NSImage. It’ll cache for you, and it’ll maintain it in the right backing format for display. Pretty low effort for broadly desirable performance characteristics.

Tuesday, May 14, 2019 [Tweets] [Favorites]

macOS 10.14.5 Whitelists Kernel Extensions

Howard Oakley:

Until 10.14.5, AppleKextExcludeLList.kext contained one Property List, KnownPanics.plist, which detailed kernel extensions known to Apple to be the cause of kernel panics, thus excluded from loading in Mojave; that hasn’t changed in 10.14.5. That kext now contains a second property list, ExceptionLists.plist, which is a long dictionary of “secure timestamp exceptions”.

Each entry consists of a string of hex digits, which is presumably an identifier or hash, together with the kext ID (such as com.thiscompany.mykext) and its version number. These appear to be an exhaustive list of over 18,000 existing kernel extensions which have been granted exceptions to the notarization requirement.


iOS 12.3’s TV App

Chris Welch:

The redesigned Apple TV app, first announced back at the company’s March event, is being released today on iOS, Apple TV, and Samsung’s latest smart TVs. To make that happen, Apple is rolling out updated versions of iOS and tvOS with a refreshed look and support for a new lineup of paid Apple TV Channels, including HBO, Showtime, Starz, Epix, and other networks. Users can subscribe to Apple TV Channels directly from the Apple TV app, and all content can be watched from right inside the app as well.

Chaim Gartenberg (tweet):

There’s simply no way around it — actually watching video using Apple’s native TV app is just an appalling user experience. Here’s how it works: if you’re watching a video on the TV app — presumably, one that you bought or rented on iTunes, streamed through one of Apple’s native partner channels, like HBO or Showtime, or whatever the method for using Apple TV Plus will be — on an iOS device, it will play in portrait. It also looks terrible.

If your device is set in rotation lock — as most iPhones tend to be in my experience — there is no way to watch video in landscape. The only way is to disable rotation lock, which requires swiping down into the control center (since there’s no way to access it directly on the playback screen), and then rotate the device. There is also no way to lock it in landscape mode once rotated, so better make sure to hold that phone steady.


It was only when Apple released iOS 11 that portrait was made default, and it’s been stuck that way ever since.

Meek Geek:

Failing at the basics.

Video playback isn’t hard: If it is 16:9 or wider, lock the device to landscape and only allow it to be rotated 180°. This should be an OS-level default that developers have to override, so everyone benefits.

Mike Hay:

Hey @tim_cook, the Apple apps are supposed to set the standard right?

The subscription text is so small here that any 3rd party app would have been rejected immediately.

Damien Petrilli:

And still no chapter in movies like the old Movie app did since day 1.

Walt Mossberg:

Got the new AppleTV app on iPhone, iPad & Apple TV. Unlike what every review says, I have no “For You” section on any of them. Also, I have an entire row of what’s playing on @hbogo, & the shows play great. But also a huge offer to subscribe to @hbonow.

Ryan Jones:

What the F is this centering. And tap-down state.

Previously: The Sad State of iOS 11’s TV App.

Update (2019-05-16): Dan Masters:

If anybody has tried playing music videos in Apple Music, they won’t be at all surprised by this.

Warren Buffett’s Paper Wizard

Joe Rossignol:

While the game’s developer is listed as Wildlife Designs, Inc on the App Store, the app is copyrighted, maintained, and operated by Apple according to its terms and conditions, making this the first game Apple has developed for the iPhone since Texas Hold’em back when the App Store launched in 2008.


In an interview with CNBC, Cook said Buffett has made it clear he does not invest in technology companies, meaning he “obviously views Apple as a consumer company.”

A thousand no’s for every yes. And why is Cook proud that Apple is not seen as a technology company? With the services focus, should we view it more like a utility or cable company?

Marco Arment:

Best take on the bizarre Warren Buffet game was on @_connectedfm

I tend to agree with Stephen Hackett. Cook seems to delight in celebrities and goofy stuff like this, much moreso than in product details.

Joe Rossignol:

Given that Warren Buffett’s Paper Wizard only takes minutes to complete, and that Buffett’s high score of 15,350 is seemingly unbreakable, the game appears to be little more than a short-lived novelty. As such, it is not all that surprising that the game has already been pulled internationally.


Adobe Case Study in Why Customers Don’t Like Subscriptions

Juli Clover:

Adobe today quietly debuted new pricing for its Photography bundle, which has long been available for $9.99 per month. Starting today, Adobe’s website is listing a price tag of $19.99 per month, which is double the previous price.


Most users appear to be seeing the updated pricing on the Adobe website, but there is a hidden section of the site where one can still purchase the Photography plan for $9.99 per month.

It looks like it’s still planning to bill me at $9.99. That already seemed steep, given that I don’t use Creative Cloud or Photoshop—only Lightroom CC, which was previously a $149 one-time purchase. However, I still like Lightroom (UI weirdness aside), and post-Aperture I prioritize choosing a product that seems seem unlikely to disappear.

Ashley Lynch (Hacker News):

Adobe is no longer allowing subscribers to download previous versions of Premiere and is even sending notices to people who still have them installed to say they’re no longer allowed to use them.

Matt Roszak (Megan Fox):

I just got an email from @Adobe that I’m no longer allowed to use the software that I’m paying for. Time to cancel my subscription I guess.

William Gallagher (MacRumors):

Users of older versions of Creative Cloud apps, including Photoshop, Premiere Pro and Lightroom Classic, have been told by Adobe that they are no longer licensed to use them, and anyone who continues to use these versions could face “infringement claims” from other companies.


Prior to the creation of the Creative Cloud subscription service, Adobe licensed certain technologies from Dolby with an agreement based on how many discs of certain apps were sold. Now that the software is distributed online, the companies reportedly renegotiated their agreement to be based on how many users are actually running the software.

According to Dolby’s legal filing, this agreement was subject to the figures Adobe reported being examined by a third-party audit. “When Dolby sought to exercise its right to audit Adobe’s books and records to ensure proper reporting and payment, Adobe refused to engage in even basic auditing and information sharing practices; practices that Adobe itself had demanded of its own licensees,” says the filing.


Earlier in May, Adobe announced that that users will no longer be able to stay on just any older version they want.


So Adobe has a licensing issue with Dolby or an “other third party” as they put it - and end users who paid for the software as recently as 3 months ago are supposed to switch versions in the middle of a project, or be “subject to infringement claims”(!?) in some IP proxy war?

It seems like this is Adobe’s problem. I don’t know if throwing their customers under the bus was a sad attempt at fomenting pressure on Dolby to capitulate, but it’s really scummy and a bad look for Adobe.

Shawn King:

I got my “cease and desist” letter. Adobe continues to make decisions that hurt average customers. It’s unlikely individuals would “face potential “infringement claims” from Dolby and Adobe is just using the wording as a scare tactic.


Update (2019-05-16): Wojtek Pietrusiewicz:

I just want Lightroom Classic and I couldn’t care less about the rest, yet I am forced to pay for unused features. Adobe’s Creative Cloud is a very frustrating experience.

How the Apple Store Lost Its Luster

Mark Gurman and Matthew Townsend (Hacker News):

In interviews, current and former Apple employees blame a combination of factors. They say the stores have become mostly an exercise in branding and no longer do a good job serving mission shoppers like Smith. Meanwhile, they say, the quality of staff has slipped during an 18-year expansion that has seen Apple open more than 500 locations and hire 70,000 people.


The overhaul of the Genius Bar has been especially controversial. Customers looking for technical advice or repairs must now check in with an employee, who types their request into an iPad. Then when a Genius is free, he or she must find the customer wherever they happen to be in the store. Ahrendts was determined to get rid of lineups, but now the stores are often crowded with people waiting for their iPhones to be fixed or batteries swapped out.

The Genius service also lost the human touch. In the past, Geniuses could work on a Mac or iPhone right at the counter, chatting and explaining what they were doing.

Nick Heer:

The store I most frequently visit when I need support has a really strange vibe around the Genius Bar. I guess the intent is that, while you’re waiting five to forty-five minutes for your technician, you can look around for stuff to buy. But I don’t see people doing that. I see lots of people sitting awkwardly waiting at tables with lots of other people also sitting awkwardly. All of us just want our products fixed so we can go home.

Mark Gurman:

A former Apple retail exec tonight: “It was a wholesale leadership takeover by fashion industry insiders and agency people who had no idea what they were doing with Apple. Most of the folks who knew better are long since gone. O’Brien has her work cut out for her.”

Mitchel Broussard:

One former Apple executive said that O’Brien is looking to borrow from the past and break up Apple stores into more clearly defined sections. These include areas that promote Apple’s growing services business, like Apple Music and Apple TV+. A few employees speculated that she will also bring back the original Genius Bar.

Alex Johnson:

Did an iPad trade-in: was what I said it was. Changed offer: no ability to speak to a person. Contrast @gazelle : real people. Retail: per Bloomberg story. iCloud billing: where to begin.


Monday, May 13, 2019 [Tweets] [Favorites]

App Store Monopoly Lawsuit

NY Times Editorial Board:

The actions by Apple highlight the inherent tension in the company’s fierce control over its mobile operating system: On the one hand, the closed environment is a boon to consumer privacy because the company has the leverage to insist upon it; on the other hand, that environment fosters a kind of monopoly.

Adi Robertson (MacRumors):

The Supreme Court is letting an antitrust lawsuit against Apple proceed, and it’s rejected Apple’s argument that iOS App Store users aren’t really its customers. The Supreme Court upheld the Ninth Circuit Court of Appeals’ decision in Apple v. Pepper, agreeing in a 5-4 decision that Apple app buyers could sue the company for allegedly driving up prices. “Apple’s line-drawing does not make a lot of sense, other than as a way to gerrymander Apple out of this and similar lawsuits,” wrote Justice Brett Kavanaugh.

Apple had claimed that iOS users were technically buying apps from developers, while developers themselves were Apple’s App Store customers. According to an earlier legal doctrine known as Illinois Brick, “indirect purchasers” of a product don’t have the standing to file antitrust cases. But in today’s decision, the Supreme Court determined that this logic doesn’t apply to Apple.

Ryan Jones:

I believe this is true and right.

Only Apple charges, refunds, owns the customer relationship, sends receipts, etc.

Marco Arment:

I’m no lawyer, but two things have been obvious to me:

- Customers absolutely buy apps from Apple, not developers.

- Apple’s requirement that all in-app transactions go through their system (which takes 30%) is anticompetitive, and should absolutely be challenged by regulators.

Add this to the pile of significant legal anticompetitive challenges that Apple faces by their in-app purchase rules.

They’ll never allow sideloading or reduce the 30%, but I expect all of this to result in a relaxing of the “can’t even mention other payment methods” rule.

Michael Love:

Could be forced to do a lot more, c.f. Microsoft having to un-bundle IE; Apple could be compelled to not only allow other app stores but actually provide a startup alert to invite you to pick an alternate one.

Steve Troughton-Smith:

If antitrust rulings against Apple are finally what it takes to bring Gatekeeper to iOS, then so be it. It is crazy that non-developer users pay for $100 developer accounts just to sideload apps


Update (2019-05-14): John Paczkowski (Stephen Nellis):

Here’s Apple’s statement on the #SCOTUS antitrust ruling

Michael Love:

This is… not great spin. And “if the developer chooses to sell digital services through the App Store” is outright misleading - if you choose to sell digital goods for one of the world’s two main mobile operating systems, you have to pay Apple their 30%.

And in the US at least Apple controls more than half of the mobile OS market (almost 2/3) - if you want to sell digital goods of any kind to the majority of Americans, you have to pay Apple 30%, you’re not really offered a ‘choice’ to distribute through the App Store.

Kyle Howells:

1. Yes Apple holds a complete monopoly on iOS users with the AppStore and aggressively shuts down any other options.

2. Simultaneously “app buyers could sue the company for allegedly driving up prices” is laughable. The AppStore is a race to the bottom.

Ben Thompson:

The antitrust case against the Apple App Store is going to move forward. It’s the wrong decision, and the reasons why explain why new legislation is needed.

Michael Love:

I get Ben’s argument, but I can’t sue Apple, because the systems that are supposed to ensure that Apple can’t punish me for suing them are not reliable enough for me to stake my livelihood on. So only way to see justice is to let consumers sue.

Also, I would put myself forward as a textbook example of Apple’s 30% being passed onto consumers: I pay quite substantial royalties on a lot of the stuff I sell and my prices are to a large extent determined by what margins I can live with on that content.

Joe Fabisevich:

I think Apple abuses its App Store monopoly but that this case was ruled incorrectly, and the conservative side of the Supreme Court ruled correctly but lost in this case. If you need me I’ll be hiding in my hole where Twitter doesn’t exist for a bit.

What to Expect from Marzipan

Craig Hockenberry (tweet, Hacker News):

It will be exciting for a lot of developers, including yours truly, to press that button. But it’s also important to temper this enthusiasm with reality: that build setting is just the first step on a long and complicated road. Good interaction doesn’t come for free.

As you saw above, the Mac has seen a lot of tool and framework transitions. But this is the first transition which involves a large group of developers who don’t have any experience on the platform they’re targeting. A Mac developer moving from CodeWarrior and C++ to Project Builder and Objective-C didn’t have to learn anything new about conventions: they were still on a Mac. That can’t be said about iOS developers who are starting to use Marzipan.


Many of the thoughts in this essay got their start while developing a tvOS app: I found that having a common user interface toolkit wasn’t much help. It’s nice to have familiar UIKit items like UIImage, UIColor, and UIButton, but in the end I found that little code was shared between platforms. Some views could be ported directly between platforms, but anything involving a controller was out of the question.


Keeping two wildly different groups of customers happy with a single app won’t be an easy task, but it’s one that you’re going to be taking on with Marzipan.


It’s my opinion that Universal apps were the worst thing to ever happen for the iPad ecosystem. There’s no way for a developer to recoup the costs for new interactions and the extra work needed for more sophisticated apps. Apple makes it easier for a customer up front by offering a single download, but at the same time they make things worse because a Universal version of the user’s favorite app isn’t financially viable.

Brent Simmons:

As a Mac developer, you should do what other Mac developers do: understand and respect the platform and get help from Mac users, power users, and fellow Mac developers.

I’ve always found that Mac users are rooting for our success. They want us to make great apps — and they reward us for it. It’s a smaller, more intimate community, and warmer than iOS world. But you can also blow it by not trying, by not respecting the Mac and Mac users.

Craig Hockenberry:

Here’s a thread of some thoughts that didn’t make it into the post (it was already too long!)

Martin Pilkington:

I often feel that AppKit is under-appreciated by those who don’t have a lot of experience with it, and especially with switching back and forth between Mac and iOS development. To help try and fix that, I am going to go through some of the features in AppKit that don’t exist in UIKit. In this post I’ll cover the many controls of AppKit, and in a future post I’ll go into some of the less user-facing features.

Dimitri Bouniol:

I feel like neither AppKit nor UIKit, nor a “declarative framework” that sits on top of either, depending on the platform, is really the right answer.

AppKit is amazing in that it allows an app’s UI to easily match system conventions, but needs easy customizability badly.

Similarly, UIKit offers a huge amount of flexibility to customize system components, and make new controls, but lacks the depth that AppKit has in terms of great defaults for a newly developed app.

I feel like the ideal on both platforms would really be to have a cleaned up version of AppKit that offers the visual customizability of UIKit, but starts with an excellent set of defaults that any app should expect to have.


.NET 5 = .NET Core vNext

Microsoft (Hacker News):

Today, we’re announcing that the next release after .NET Core 3.0 will be .NET 5. This will be the next big release in the .NET family.

There will be just one .NET going forward, and you will be able to use it to target Windows, Linux, macOS, iOS, Android, tvOS, watchOS and WebAssembly and more.


This new project and direction are a game-changer for .NET. With .NET 5, your code and project files will look and feel the same no matter which type of app you’re building. You’ll have access to the same runtime, API and language capabilities with each app. This includes new performance improvements that get committed to corefx, practically daily.


Objective-C and Swift interoperability will be supported on multiple operating systems.

Frank A. Krueger:

What lessons can be learned from .NET Framework’s replacement by .NET Core/.NET 5? Platform lock-in is bad? Backwards compatibility can only be achieved for fixed time? Consolidation’s energy efficiency outweighs diversity? Names are arbitrary? Sic transit gloria mundi?

See also: .NET Dynamic Code Execution.