Monthly Archives: December 2017

Top posts of 2017

I started this blog in the summer, and since then I have published 30 posts, including this one. As far as output goes, I have met my goal, and I am happy with that.

Most popular posts

In the spirit of publishing year-end best-of lists, here are my top five most popular posts from 2017:

  1. Ulysses, a peerless writing tool, a short essay about my favorite writing software. I love good software, and think way too much about what makes productivity software, well, more productive.
  2. Choosing an iPad Pro Keyboard, in which I compare three of the main keyboards iPad users like me might be considering.
  3. Comparing todo.txt and TaskPaper formats, which are two plaintext task list formats. I love plaintext, love productivity software, and love not having lock-in with proprietary software vendors. I have been using both formats for different planning and task management tasks at work all year.
  4. Three ways to create nested projects in todo.txt, which addresses a common problem with the todo.txt format.
  5. Contexts in Getting Things Done, in which I describe the challenges I faced dealing with contexts in the GTD system.

These posts reflect some of my main interests: productivity software and systems, and Apple hardware. I have also written a little bit about Android, the Essential Phone, and parts of the free and open web that interest me.

Thoughts on the writing process

One thing that I have learned this year, from writing regularly again, is how much work it can be to complete a blog post. I have a half-dozen incomplete blog post drafts in my Ulysses library at any given moment. Shaping them into something worth reading is a lot of work—work that I don’t often complete as quickly as I would like. Even a simple 500-word post has to be written and re-written three or four times before I think it is worth publishing.

The writing process is valuable to me, though. Writing is a lot different than analyzing data (my day job) or writing code (my nighttime hobby). Writing, re-writing, and revising help me think and help me focus in ways that my more mathematically-focused activities do not. Plus, it feels good to communicate to the world, and to own all the content I produce and publish it on my own platform, under my own name.

The future

I plan to blog regularly in 2018, both on this site and on I have even set up regularly scheduled reminders (Apple Reminders, naturally) to help keep me on track. Thanks for reading.

Micro Blog

I started a micro blog at this week. It is not to replace this blog, but to supplement it with a more frequently updated stream of short comments and asides about my life, or about news items that directly affect my life in some way. I want it to be like Twitter was for me back when I first joined it: a stream of consciousness, and a window into my life. My plan is to keep this blog (my macro-blog?) free of micro blog posts and life blogging, and more focused on longer articles, bigger ideas, and more complete thoughts—as it has been from the very start.

Drafts for iOS

Drafts is a tinkerer’s DIY dream of a text editor. It nails the basics, and allows you to customize its editor and its tag and folder system to fit your specific needs—it just takes a little time (and, maybe, some JavaScript skills, for some things) to do so.

Drafts is where text begins

Drafts, by Agile Tortoise, isn’t exactly an unknown app. On the contrary, it is one of the crown jewels of the iOS platform. It is one of the few apps with an in-app purchase tip jar that I actually threw money in—a few times, actually. Drafts makes my life simpler, in little ways, every day. Like one of my other favorite writing apps, Ulysses, it is a pleasure to use.

Drafts is primarily meant for quick text entry, and then pushing that text to another app for processing or storage. For example, I type most calendar entries and Google searches in Drafts (which is in my home screen toolbar) and, in two taps, open them for processing in Fantastical or Safari (which are not in my toolbar). Drafts 4, which has been out quite a while now, expands on that basic idea, and delivers a very useful utility and a top-notch text editor.

Not just for automation—for writing!

Drafts is already well known for its automation capabilities. It is great for drafting a tweet and posting it to Twitter (either natively or via another app), or for writing out a calendar entry and pushing it to Fantastical or Calendars 5 for parsing. What it is not well known for—but should be—is that it is the most customizable text editor on iOS. Editorial has long held that crown, thanks to its its support of snippets and extensibility with Python scripts. Drafts, however, outdoes Editorial when it comes to customizing the editor itself, which has a profound effect on writing experience.

In Drafts, actions can change the text your are writing, send some or all of it to another app, turn on/off night mode within the app, and so on. You can download actions from the developer’s extensive library, of, if you are a bit of a programmer, you can them yourself in JavaScript, from within the app. You can assign these actions to the main menu, which is accessible from the top-right icon, or from a swipe to the left. That’s the basic stuff. You can also assign these actions to a custom toolbar that is displayed over the keyboard. Even better, for hardware keyboard users, you can assign your own hardware keyboard shortcuts to these actions, too. No other iOS app that I use does this!

I use Drafts on my iPad primarily for writing notes, such as when I get a phone call or am in a meeting. I use my custom toolbar buttons to input today’s date, paste text, format headings and lists in Markdown, send various lines (text selections) to my todo.txt file (via Dropbox), and so on. At the end of my writing session, I send the entire note to Dropbox for storage.

Notes don’t have to be exported, however. They can stay in Drafts and sync to all your other iOS devices via iCloud. You can also organize them there. There are three basic folders—Inbox, Archive, and Trash—to put notes into. You can flag notes for future retrieval, and filter them them by folder, flag status, and keywords (search terms within the note text) into custom “folders” or saved searches as well. I have not switched over to using Drafts as a full-fledged notes app (most of my drafts get automatically deleted after 30 days in the Trash folder), but I am thinking about it.

Drafts in the future

Drafts 4 has been around for a while now. Drafts 5 is coming, someday, with even more features: TaskPaper editing is a feature that I am looking forward to. I expect the pricing model to change from paid upfront to a subscription; I will be happy to pay for it, as a valuable companion to Ulysses for writing, and a valuable sidekick to practically every other app in the iOS ecosystem.

What I want is Twitter that isn’t Twitter

I love Twitter. So much information and commentary is shared there, so quickly, that it is a vital source for “what is going on on the Internet today”. At the same time, I hate Twitter, for all the bad behavior performed on the platform that Twitter, the company, tolerates. I’m not alone. A lot of people I follow feel the same way. I see tweets like this almost every day:

Brad DeLong: “I wish there was a network like twitter, but not, you know, actually Twitter”


The thing is, practically since Twitter’s inception, alternatives did exist. I know. I used them:, StatusNet (the successor to, (the successor to StatusNet), and (a for-fee Twitter that got a lot of press but not so many users). And, I abandoned them and went back to Twitter, despite its flaws. So did everybody else.

Why is Twitter so sticky, and nothing else is?

What makes Twitter is valuable not what it does—microblogging is relatively easy to implement these days—but who is on it: Famous people! Intellectuals! Politicians! Journalists! These people and many more are not only publishing there, but reading there, too. Communication with, and between, influential people there can be two-way, and is usually in public, which is fascinating to read and unlike any other communications platform that had come before it. Twitter can amplify the voice of the non-famous and non-published people, too—the under-represented—which is often great.

Why is Twitter described as a cesspool?

Sometimes, though, amplifying under-represented voices is not great. Some voices are under-represented because they are malicious: Racists! Nazis! Liars! Sexist doxxers! Spammers! Russian bots! Malicious people have unique incentives to exploit and abuse a communications platform like Twitter. First, simply having a medium and a platform to spread their message is unique to them, because these people have been barred or banned elsewhere from spreading their message. Second, access to this new platform may be fleeting, because they could be banned there, too, for the same reasons they have been banned elsewhere. Third, people who want to spread malice are not the type of people who are concerned with preserving the health of the platform’s community, or the platform’s reputation in the wider world. Therefore, they can destroy the platform in the process of spreading their message.

Why can’t Twitter fix this?

The world is too complex to separate people, or Twitter users, into good and bad actors. What is unpopular or under-represented today may be celebrated tomorrow; it may be true and worth spreading today. Understandably, Twitter doesn’t want to choose who gets to speak on their platform. Therefore, they tolerate hate speech on their platform to a degree that makes some of their users angry. It puts the company in a difficult position when hate speech is broadcast (retweeted) by the President of the United States, as it was this week.

I understand Twitter’s problems as a company. It needs eyeballs on it to sell ads. Controversy on the platform, and the sheer number of active users (whether they are real people or bots), lead to greater traffic, greater revenue, and greater return on investment for their investors—at least in the short run. In the long run, however, poisonous speech on the platform poisons the platform.

What to do about it, as a Twitter user?

Basically, it is hard to see how, as users, we can improve Twitter. Twitter, the company, owns the platform. Consequently, it has the sole power to fix its flaws. Improvements to blocking and reporting abuse that Twitter has implemented have not satisfied the users who need them the most.

Moving away from Twitter entirely, onto another, similar platform, can work for small communities who primarily wish to communicate amongst themselves. It is unlikely, however, that a critical mass of influential users—the celebrities, journalists, etc., who make the platform valuable—will move to a different platform at this point. Without those users, another platform, however superior from a technical or community management standpoint, would not have as much value.

As a Twitter user, you really have two choices now: live with the abusive users, and report and block them as well as you can; or, if Twitter abuse is bothering you enough (or worse, threatening to your safety), stop using Twitter entirely. That is a sad conclusion to make, but I think it is realistic. Twitter’s ad-based model, need to generate both traffic and return on investment to satisfy its shareholders are, in the short run, at odds with its stated goal to improve safety, and therefore community, on its platform.

Fortunately, there are other ways to write content on the internet for free, such as WordPress. The problem is, you may never achieve the same reach with these other platforms as you would with Twitter. That is why I am sticking with Twitter myself. From a moralistic point of view, I would love to ditch it for something else. Despite that feeling, I get enough value from Twitter to keep using it, despite the sick-to-my-stomach feeling the Twitterverse gives me some days.

Ghost, a leaner, faster, WordPress alternative

I learned about the Ghost blogging platform today. It looks awesome, especially with its simplified feature set (just what I need, nothing else), strict adherence to Markdown for writing, well-designed multi-platform front-end applications, and so on.

Mostly, Ghost’s speed impresses me. I hate how slow WordPress (the software that powers this blog) is compared to, say, a static website or a Jeckyll blog. I love fast-loading websites, and went out of my way to create static sites for and for that very reason.

Unfortunately, I doubt I will ever use Ghost. I am very dedicated to Ulysses as a writing tool, and Ulysses does not publish directly to Ghost. It publishes directly to WordPress, which is the main reason why I use WordPress. (Sure, there are workarounds for publishing from Ulysses to Ghost, but nothing beats a one-step solution.) WordPress is also ubiquitous, making it very cheap and easy to self-host.

I could pay more for faster WordPress hosting, but, considering how few readers I have, I can’t justify the additional expense. So, for the foreseeable future, I will enjoy easy publishing to WordPress via Ulysses, extremely cheap hosting expenses, and my readers will have to wait a second or two for my blog to load. I hope nobody else minds.