Archive for December 7, 2018

Friday, December 7, 2018

Electron and the Decline of Native Apps

John Gruber (tweet, Hacker News):

In some ways, the worst thing that ever happened to the Mac is that it got so much more popular a decade ago. In theory, that should have been nothing but good news for the platform — more users means more attention from developers. The more Mac users there are, the more Mac apps we should see. The problem is, the users who really care about good native apps — users who know HIG violations when they see them, who care about performance, who care about Mac apps being right — were mostly already on the Mac. A lot of newer Mac users either don’t know or don’t care about what makes for a good Mac app.

One could also argue that the worst thing that ever happened to the Mac was the iPhone.

As un-Mac-like as Word 6 was, it was far more Mac-like then than Google Docs running inside a Chrome tab is today. Google Docs on Chrome is an un-Mac-like word processor running inside an ever-more-un-Mac-like web browser. What the Mac market flatly rejected as un-Mac-like in 1996 was better than what the Mac market tolerates, seemingly happily, today. Software no longer needs to be Mac-like to succeed on the Mac today. That’s a tragedy.

Don’t miss his rant about Finder keyboard shortcuts in Mojave.

Previously: The Mojave Marzipan Apps, Is There Hope for the Mac App Store?.

Apple Removes Afghanistan ’11 From the App Store

Alex Allegro:

Apple has removed game developer Slitherine’s Afghanistan ’11 from the iOS App Store for using a “specific person or real entity” as the enemy of the game, even though it is touted as being entirely historically accurate in depicting the US war in Afghanistan.

Slitherine, a small UK based game developer, specializes in accurate war simulation games. With a strong emphasis placed on learning, rather than gameplay, further paired with the fact the app has been available for well over a year, it comes as a surprise that Apple chose to pull the plug here rather than giving Slitherine an outright rejection from the get-go.

The guidelines say:

Realistic portrayals of people or animals being killed, maimed, tortured, or abused, or content that encourages violence. “Enemies” within the context of a game cannot solely target a specific race, culture, real government, corporation, or any other real entity.

World War II and other historically based games remain in the store. Is that because they let you target both sides? Or because the historical enemies are no longer considered real? Or simply inconsistent reviewing?

WordPress 5.0, Gutenberg, and MarsEdit

Daniel Jalkut:

This change to the editor is part of a trend with WordPress of moving away from the dedicated purpose of blogging, towards satisfying the more general-purpose needs of a full-featured CMS.


When editing a post with block-based content in MarsEdit, you will see the raw HTML for your blocks when editing in Plain Text mode, and a rendered version of the HTML in Rich Text mode. Unlike the WordPress web-based editor, you will not see a visual representation of the blocks as separate entities in your posts. But when you edit and publish changes to your post, the block information should be preserved.


I don’t think Gutenberg threatens the MarsEdit workflow, even after it becomes the only editing framework for WordPress. The way blocks are implemented, users will have the option of simply writing “one block” per post if they feel that is sufficient. I don’t anticipate the status quo for MarsEdit users being disrupted unless they specifically choose to use themes that only work well if multiple blocks per post are used.

Update (2018-12-10): Matt Mullenweg:

The overall goal is to simplify the first-time user experience of WordPress — for those who are writing, editing, publishing, and designing web pages. The editing experience is intended to give users a better visual representation of what their post or page will look like when they hit publish. As I wrote in my post last year, “Users will finally be able to build the sites they see in their imaginations.”


Over the past several years, JavaScript-based applications have created opportunities to simplify the user experience in consumer apps and software. Users’ expectations have changed, and the bar has been raised for simplicity. It is my deep belief that WordPress must evolve to improve and simplify its own user experience for first-time users.

Mark Hughes:

All of this suggests that Gutenberg was pushed out because it was useful in business competition with SquareSpace, not because it helps any WordPress users. The classic rich text editor was fine for many newbies, and then they'd graduate to HTML or Markdown, neither of which are rocket surgery, when they needed more control.

Update (2018-12-11): Manton Reece:

Meanwhile, WordCamp US was a few days ago in Nashville. WordPress founding developer Matt Mullenweg gave his State of the Word talk to wrap up the conference. The talk + Q&A is long, over 1.5 hours, but provides a detailed overview of Gutenberg and where WordPress is going.

The Friendship That Made Google Huge

James Somers:

Jeff and Sanjay began poring over the stalled index. They discovered that some words were missing—they’d search for “mailbox” and get no results—and that others were listed out of order. For days, they looked for flaws in the code, immersing themselves in its logic. Section by section, everything checked out. They couldn’t find the bug.


On Sanjay’s monitor, a thick column of 1s and 0s appeared, each row representing an indexed word. Sanjay pointed: a digit that should have been a 0 was a 1. When Jeff and Sanjay put all the missorted words together, they saw a pattern—the same sort of glitch in every word. Their machines’ memory chips had somehow been corrupted.


When a car goes around a turn, more ground must be covered by the outside wheels; likewise, the outer edge of a spinning hard disk moves faster than the inner one. Google had moved the most frequently accessed data to the outside, so that bits could flow faster under the read-head, but had left the inner half empty; Jeff and Sanjay used the space to store preprocessed data for common search queries. Over four days in 2001, they proved that Google’s index could be stored using fast random-access memory instead of relatively slow hard drives; the discovery reshaped the company’s economics.

Facebook Was Aware That Tracking Contacts Is Creepy

Arvind Narayanan:

The internal Facebook documents released today make for an incredible read. Remember the Dark Pattern consent dialog that FB used to grab Android users' call and text history w/o alerting them? Now we can see some of the scheming that led to that decision.


1) How completely broken is Android’s security model if malicious apps are somehow automatically granted permissions on private data?

2) How can people at Facebook still have a conscience and do stuff like this?

Kashmir Hill (via John Gruber):

The business team wanted to get Bluetooth permissions so it could push ads to people’s phones when they walked into a store. Meanwhile, the growth team, which is responsible for getting more and more people to join Facebook, wanted to get “Read Call Log Permission” so that Facebook could track everyone whom an Android user called or texted with in order to make better friend recommendations to them. (Yes, that’s how Facebook may have historically figured out with whom you went on one bad Tinder date and then plopped them into “People You May Know.”) According to internal emails recently seized by the UK Parliament, Facebook’s business team recognized that what the growth team wanted to do was incredibly creepy and was worried it was going to cause a PR disaster.