Archive for June 15, 2017

Thursday, June 15, 2017

The Surprising Awesomeness of Grouped Dictionaries

Erica Sadun:

Dictionary grouping provides a solid solution for sequence partitioning by predicates. But you can also do a lot more with this API. Let me give you a bunch of examples that showcase the power of this one little call.

Update (2017-06-20): Erica Sadun:

Dictionary now has a feature that allows you to recognize you’re overwriting an existing key and apply a function to a key’s value each time the key is added. It’s called uniquing, and it lets you do neat things like count the number of times a token appears in a sequence[…]

The 2017 iMacs

Andrew Cunningham:

At a high level, single- and multi-core CPU performance has increased by around 40 percent since 2012, or by somewhere between 50 and 60 percent if you go back to 2011. Much of that comes from architectural improvements, but the clock-speed boosts deserve some of the credit, too.


The decision to choose AMD matters because, while its chips aren’t completely uncompetitive and offer a solid value for the price, they generally offer less performance per watt than contemporaneous GPUs from Nvidia. That’s a problem in the iMac especially, since you can’t just add cooling capacity for the sake of boosting performance.


But if you want to go with a pure SSD or increase your capacity, you’ll pay dearly: upgrading from the standard 2TB Fusion Drive in the top-end iMac to a 512GB SSD costs $200, a 1TB SSD costs $600, and a 2TB SSD costs $1,400.

If you can pay that price, though, you’re getting some of the fastest SSDs that anyone will sell you in any computer. Apple has been ahead of the curve on SSDs since it began moving away from SATA drives to PCI Express drives in 2013, long before anyone else thought to do it. The company has continued to extend its lead by adding more and more PCIe bandwidth and aggressively adopting standards like NVMe.

Apple also charges a lot for RAM, but on the 5K it’s user-replaceable (unlike on the iMac Pro), so you can add your own. Apple asks $600 to upgrade the high-end iMac 5K from 8 GB to 32 GB, but Crucial has a 32 GB kit for $260, and there are likely better deals to be found. Since there are four slots, you can keep the 8 GB and end up with 40 GB total.

Third-party external SSDs are also much cheaper if you want to add storage later, though the performance is likely worse than on the internal SSD.

Matthias Gansrigler:

Just did a quick test duplicating a 3.58 GB zip file in Finder.

#iMac: about 2 seconds

#rMBP2012: about 18 seconds

Nick Heer:

This situation feels like a repeat of the longstanding 16 GB entry-level capacity for iOS devices: it’s clearly inadequate. I don’t know what hardware Apple’s executive team uses, but I doubt any of them could honestly recommend that someone should buy an iMac today with a spinning hard drive. Solid state storage might be far too expensive to put in every iMac, but they could at least start with a Fusion Drive which, yes, would eat into margins, but it would be the right thing to do.



Kuery, a type-safe Core Data query API using Swift 4’s Smart KeyPaths.

See also: SE-0161: Smart KeyPaths: Better Key-Value Coding for Swift.

FileMaker 16’s Invisible Brilliance

William Porter:

FileMaker’s WebDirect technology has been around for several years now. It was good but not great when it first appeared, but now it’s approaching what I might call “usability parity” with FileMaker Pro. WebDirect is a technology that translates a normal FileMaker database file into an HTML5 Web page that users can view and interact with in a Web browser.


In the past, FileMaker has relied on older data-exchange technologies like ODBC/JDBC to share data with non-FileMaker databases. In recent years, the reach of FileMaker has been extended through expensive plug-ins. FileMaker now has explicit, native support for a variety of technologies used widely on today’s Internet to exchange and manipulate data, technologies such as cURL, JSON, and RESTful APIs, including the new FileMaker Data API.


With FileMaker 16, costs will vary roughly between $5 and $15 per user per month. […] Moreover, pricing depends on your deployment scenario: Does your company want to keep up with upgrades as they happen, which is what I recommend, or buy fixed-price perpetual licenses and use them forever?

Apple Is Trying to Make iMessages More Private

Lorenzo Franceschi-Bicchierai (via Hacker News):

But, as several security and privacy researchers warned over the years, there’s always been a major, somewhat overlooked catch: If you back up iMessages to iCloud, then Apple—or authorities who can force the company to turn the back ups over—can still read those messages, which to some extent defeats the purpose of the encryption.


Starting with the upcoming iOS11 all your conversations in iMessage will be automatically synchronized across your iPad, iPhone, Mac and whatever other iGizmo you own, he said. As anyone who uses iMessage knows, that’s something that you can’t do right now. And it leads to annoyances such as having to manually delete messages on all your devices if you want to get rid of an embarrassing message, or having to restore a full backup if you want old iMessages on a newer iDevice.

But if iMessages, which are supposed to be end-to-end encrypted, now sync, doesn’t that mean Apple can decrypt and read them at some point? Apple says that soon won’t be the case.

I look forward to hearing how this works and whether it also affects backups.

Previously: iMessage End-to-End Encryption, Can Apple Read Your iMessages?, iOS Security White Paper (Nick Heer).

Update (2017-08-07): Mark Rowe (also Steven Sinofsky):

Huh. The “Messages in iCloud” feature has been removed in iOS 11 beta 5 and will ship in a future software update to iOS 11.