Archive for January 11, 2021

Monday, January 11, 2021

New 4 TB SSDs From SanDisk and WD

Juli Clover:

The SanDisk Extreme Pro Portable NVMe SSD offers up to 2000MB/s read and write speeds, and its aluminum chassis serves as a heatsink to deliver higher sustained speeds. The SanDisk Extreme Pro Portable SSD will be available later this quarter for $750.


Under the WD brand, Western Digital debuted the latest MyPassport SSD, which offers read speeds up to 1050MB/s and write speeds up to 1000MB/s. It features a shock and vibration resistant metal design that is drop resistant up to 6.5 feet, and it comes in colors that include blue, gray, red, gold, and silver. It will be available later this quarter for $680.

Apple currently charges $800 to upgrade a MacBook Air from 256 GB to a maximum of 2 TB. With a 16-inch MacBook Pro, you can upgrade from 512 GB to 4 TB for $1,200.

Howard Oakley:

I’m delighted to release the first full and non-beta version of Stibium, my free benchmarking utility for storage performance testing, most particularly with SSDs.


Is iOS 14’s App Library for Me?

Chris Hynes:

You find names appearing under icons to be irritating, especially since you’ve long since memorized what all your app icons look like.

When you click on something that looks like a folder, you’ve always wanted it to launch the app under finger than open a folder like it does in the home screen.


You like when you have something that looks like a folder and clicking a big icon behaves differently than a small icon.


You were hoping for another place to search for apps that doesn’t tell you what folder the app is in.

Some good points, made sarcastically. I actually kind of like App Library. It sure beats swiping through an unsorted folder nine apps at a time. The small vs. large icon distinction probably breaks some rules but works well in practice.

The weirdest thing for me is that Recently Added doesn’t seem to be based on when I actually purchased or manually downloaded the app. It’s as if half of the apps shown are there because they happened to be the last ones migrated from my previous iPhone.

Update (2021-01-22): Ryan Jones:

This is maddening. Spotlight vs App Library

Update (2021-06-02): Jesse Squires:

I think App Library is one of the best features added to iOS in the past few years.


I only have one major complaint about the existing folders — why is there no “Developer” category?


Finally, why is App Library still not available on iPad? App Library is essentially the iOS equivalent of Launchpad on macOS. As the iPad continues to evolve into a more desktop-like experience, it is baffling that App Library is iPhone-only. (And the same goes for home screen widgets, which are also missing on iPad.)


There’s one main bug I continue to encounter: phantom notification badges. A folder in App Library will have a notification badge, but when I tap to open the folder, none of the apps have a badge.

Swift FilePath Syntactic Operations

Michael Ilseman:

FilePath appeared in System 0.0.1 with a minimal API. This proposal adds API for syntactic operations, which are performed on the structure of the path and thus do not consult with the file system or make any system calls. These include inspecting the structure of paths, modifying paths, and accessing individual components.

Additionally, this proposal greatly expands Windows support and enables writing platform-agnostic path manipulation code.


Update (2021-01-27): Michael Ilseman:

Version 2 of FilePath Syntactic APIs is live.

Highlight: splitting Root off from Component lets the type system sort out so many corner cases.

Dissecting the Apple M1 GPU

Alyssa Rosenzweig (via Hacker News):

Apple’s latest line of Macs includes their in-house “M1” system-on-chip, featuring a custom GPU. This poses a problem for those of us in the Asahi Linux project who wish to run Linux on our devices, as this custom Apple GPU has neither public documentation nor open source drivers.


The process for decoding the instruction set and command stream of the GPU parallels the same process I used for reverse-engineering Mali GPUs in the Panfrost project, originally pioneered by the Lima, Freedreno, and Nouveau free software driver projects. Typically, for Linux or Android driver reverse-engineering, a small wrap library will be written to inject into a test application via LD_PRELOAD that hooks key system calls like ioctl and mmap in order to analyze user-kernel interactions. Once the “submit command buffer” call is issued, the library can dump all (mapped) shared memory for offline analysis.


Update (2021-01-22): Alyssa Rosenzweig (via Hacker News):

This week, I’ve reached a second milestone: drawing a triangle with my own open-source code. The vertex and fragment shaders are handwritten in machine code, and I interface with the hardware via the IOKit kernel driver in an identical fashion to the system’s Metal userspace driver.


These changes amount to around 1700 lines of code since the last blog post, available on GitHub. I’ve pieced together a simple demo animating a triangle with the GPU on-screen. The window system integration is effectively nonexistent at this point: XQuartz is required and detiling the (64x64 Morton-order interleaved) framebuffer occurs in software with naive scalar code. Nevertheless, the M1’s CPU is more than fast enough to cope.

Update (2021-07-02): See also: Part III (Hacker News) and Part IV.

SwiftUI Views to Images

Alejandro Martinez:

Sadly, SwiftUI doesn’t provide a native way of generating images from its views. We need to resort to tricks used in its ancestor frameworks.


First, we need to create a NSHostingView with the SwiftUI view that you want to create the image from.

With an NSView in hand, the rest of the process is no different that what you would do to rasterize a native AppKit view.

Parler Removed From App Stores and AWS

Ryan Mac and John Paczkowski (tweet, MacRumors, Hacker News):

“We have received numerous complaints regarding objectionable content in your Parler service, accusations that the Parler app was used to plan, coordinate, and facilitate the illegal activities in Washington D.C. on January 6, 2021 that led (among other things) to loss of life, numerous injuries, and the destruction of property,” Apple wrote to Parler. “The app also appears to continue to be used to plan and facilitate yet further illegal and dangerous activities.”

Apple said that “to ensure there is no interruption of the availability of your app on the App Store,” Parler was required to submit an update and a “requested moderation improvement plan within 24 hours of the date of the message,” which was sent on Friday morning. Apple said if it did not receive an update from the company within that time frame, the app would be removed from the App store.

Jay Peters, quoting Google (Hacker News):

In order to protect user safety on Google Play, our longstanding policies require that apps displaying user-generated content have moderation policies and enforcement that removes egregious content like posts that incite violence. All developers agree to these terms and we have reminded Parler of this clear policy in recent months. We’re aware of continued posting in the Parler app that seeks to incite ongoing violence in the US. We recognize that there can be reasonable debate about content policies and that it can be difficult for apps to immediately remove all violative content, but for us to distribute an app through Google Play, we do require that apps implement robust moderation for egregious content. In light of this ongoing and urgent public safety threat, we are suspending the app’s listings from the Play Store until it addresses these issues.

Jay Peters and Kim Lyons (MacRumors):

Apparently, Parler did propose some changes, but Apple decided they weren’t sufficient, according to a statement Apple sent to Parler alongside its final decision to remove the app. It states that “the processes Parler has put in place to moderate or prevent the spread of dangerous and illegal content have proved insufficient,” and that Parler will not return to the App Store until it has “demonstrated your ability to effectively moderate and filter the dangerous and harmful content on your service.”

John Paczkowski and Ryan Mac (Hacker News):

Amazon notified Parler that it would be cutting off the social network favored by conservatives and extremists from its cloud hosting service Amazon Web Services, according to an email obtained by BuzzFeed News. The suspension, which will go into effect on Sunday just before midnight, means that Parler will be unable to operate and will go offline unless it can find another hosting service.


In an email obtained by BuzzFeed News, an AWS Trust and Safety team told Parler Chief Policy Officer Amy Peikoff that the calls for violence propagating across the social network violated its terms of service. Amazon said it was unconvinced that the service’s plan to use volunteers to moderate calls for violence and hate speech would be effective.


Update (2021-01-22): MartianCraft:

We are going to take a look at how this service was created, how it functioned, and the technical failures that caused it to go out with such a resounding bang as opposed to the quieting snuffing out of a candle.