Monthly Archives: June 2015

Very happy with the way my blog has been shaping up lately, with a mix of essays and short posts. Just finished writing something about Twitter’s Project Lightning. I’ll publish it on Monday.

→ 2015/06/20 10:49 am

More quick blogging workflows

I had a great conversion with Seth Clifford one night at WWDC, about writing and blogging. We all want to get better at writing and posting more frequently. As I mentioned in yesterday’s post, the best way to improve anything is to do more of it, more often.

I believe there are two important facets to microblogging. The first is the timeline experience: a reverse-chronological list of posts from your friends, like you see on Twitter. The second is that posting should be effortless: if there’s less friction between your idea and publishing it, you’ll write more often. So a big part of posting regularly is just having a system that makes it easy.

Seth updated his iOS blogging workflow by using Drafts and WordPress’s email-to-blog feature. As a nice bonus, he gets Markdown files of each post saved to Dropbox:

“Drafts allows you to send email as an action. WordPress allows you to post into the system via email. Using a combination of the action and the Jetpack plugin’s email functionality, I can go from idea to published in seconds, without touching the WP iOS app (which continues to get better, but still isn’t fast) and get my local copy stored away.”

Also this week, Ben Brooks has switched his core Twitter posting to go through WordPress. He has a standalone microblog at benb.me where the posts live. They go out to Twitter automatically via IFTTT. Posting to a blog first and then Twitter second seems like a simple idea, but it is extremely powerful. Years from now you end up with an archive of all your short-form writing at your own domain. Not as an afterthought, but as the default.

The great thing about blogging is there’s no one correct way to do this stuff. I’m really happy to see these solutions from Seth and Ben, and I know other folks are working on similar workflows.

Still going through basketball withdrawals. Signed up for the WNBA streaming pass so I can watch some of the San Antonio Stars games. They are 0-4 but play again tonight.

→ 2015/06/19 6:04 pm

I rolled out fixes to Searchpath yesterday to allow SSL hosting of the JavaScript include and related resources. Just use secure.searchpath.io instead.

→ 2015/06/19 10:05 am

We need more bad ideas

Shawn Blanc has been publishing a series of essays leading up to his new book and online course, The Focus Course. In a recent post, he writes about how we all need to get through more bad ideas. It’s easy to assume that because your friends’ lives appear perfect on Facebook, that you should reserve only your brilliant ideas for posting:

“One of the things that comes with having the internet in our pocket is that we can share moments and slices of our life with the world. But most of us are sharing the highlights. We share the best photos of the grandest places. Which is fine. But it also can cause a slight sense of disillusionment.”

The essay reminds me of something that always stuck with me reading about legendary Warner Bros. animation director Chuck Jones years ago. He said that when he was young, his father would give him and his siblings essentially unlimited paper to draw on, unused supplies from his business. We all have 100,000 bad drawings in us. The sooner we get through all the bad drawings — in Shawn’s essay, the bad ideas — the sooner we can start producing our best work.

Microblogging with WordPress

I wrote at a high level how I improved my microblogging workflow before WWDC, but I’d like to use this post to show the surrounding details. I hope it’s useful to other folks who want to control their own content.

Post formats. Newer versions of WordPress have the concept of post formats. Normal blog posts have a “standard” format, but there are also these types: aside, image, link, quote, and status. For microblogs, I recommend “status”.

No titles. As I proposed in a previous blog post, for small posts we should revisit an original feature of RSS: the title of a post is optional. In fact, early blogging systems like Radio Userland didn’t even have a title field. When you’re writing a microblog post in WordPress, just leave the title blank, and if necessary update the post template to not include the title in HTML or the RSS feed.

RSS feeds. If you create a brand new WordPress blog for microblog posts, you won’t need to do anything special about RSS feeds. But if you share a single blog for both standard and status formats, you may want to have 2 feeds: one that excludes microblog posts and one that contains only microblog posts. Just use a special category for microblog posts in addition to the post format. Here’s a section of my .htaccess file where I use the “cat” parameter to include or exclude this category for my blog’s feeds.

iPhone posting. One of the lessons from Twitter is that posting should be effortless. Using WordPress on iOS is fine, but I’ve found that wiring up a simple posting recipe in IFTTT’s Do Note app makes it trivial to post from your phone. Use the WordPress action in IFTTT but also get this WordPress plug-in. Since the WordPress action can’t yet specify a post format, the plug-in can simulate it by using a special ifttt-status category. Here’s a screenshot of what my IFTTT recipe looks like.

Tweeting. Now that you have a blog that contains all your microblog posts, you can wire it up to Twitter to automatically cross-post them as tweets. You’re writing on your own site first, but the posts still go out to your Twitter followers. Again, use an IFTTT recipe that pulls from your microblog RSS feed and sends the post content to Twitter. Since I don’t post to Twitter, I’ve set mine to post to App.net instead. You can continue to reply and favorite directly on Twitter.

I’m very excited about the potential for microblogging. For the last year I’ve been working on a new platform around this stuff. By adopting some of these tips for WordPress, your microblog will be ready for my platform, but more importantly your blog will be open and extensible. Let’s get back to our roots with RSS and see what tools and web sites we can build.

HipChat outage

HipChat explains what happened with their outage on Monday. Part of it was a reconnection bug in the new Mac client:

“When a large network provider in the SF Bay Area had an issue Monday morning, it caused all of those clients to start reconnecting at once. This saturated our systems and prevented normal usage.”

I could’ve done without the light-hearted mention of cat GIFs and inline face-palm image, but otherwise it’s a good post. They apologize and succinctly explain the issue. Far too many of these types of downtime reports from other companies go on and on for pages of detailed text, as if to hide the true failure in unnecessary verbosity.

Spoke too soon about switching away from Network Solutions. Transferring .io domains requires a phone call, and another domain I have needs a 3-day wait for the transfer auth code. Few companies (Time Warner Cable?) are more difficult to leave than this.

→ 2015/06/18 9:11 am

Looks like I can finally transfer my .io domains away from Network Solutions to DNSimple. Taking about 30 minutes to reset my password and figure out how to use the Network Solutions web site, though. (Upsells and user-hostile design everywhere.)

→ 2015/06/17 10:06 pm

iOS 9 search

Federico Viticci has a comprehensive write-up about Apple’s approach to search in iOS 9, including comments from developers. On local app search:

“With local app search, iOS 9 can build an index of content, app features, and activities that users may want to get back to with a search query. Built like a database and already in use by Apple apps such as Mail and Reminders, CoreSpotlight will provide low level access to the index of an iOS device, making it easy to organize and retrieve content users have previously seen, created, or curated.”

I’ve been slowly going through WWDC session videos, but haven’t cracked open the documentation for search yet. Sounds like an important new API for any app that has user documents.

Golden State off to a good start with shooting. Still hoping for a game 7. Cleveland needs to cut it out with the turnovers.

→ 2015/06/16 8:41 pm

Amazon Echo

Dan Moren wrote on Six Colors last month about the Amazon Echo. On the voice recognition working so well:

“The Echo’s hardware deserves a full share of that credit. The microphones on this device are impressive; even when I’m several rooms away, Alexa rarely mishears me. I’ve triggered it from my kitchen and from my hallway, the latter of which doesn’t even have line of sight to the Echo.”

I have one too. I pre-ordered it on a whim and then promptly forgot about it for 2 months. Then seemingly the next thing I knew it had showed up at my house. If I had remembered about the order, I might have cancelled it, but now I’m glad I didn’t. The Amazon Echo is great.

I remarked on Core Intuition that it’s like a task-specific Siri, with better accuracy because there are limited things you want to ask it. Play some music, set a timer, measurement conversions. It can’t do everything, but what it can do is particularly useful in the kitchen or living room. Plus it’s probably the best wireless speaker we’ve ever owned.

Because it’s so effortless to play music now, I’ve uploaded some tracks from iTunes to the Amazon cloud via their music uploader. (Remember when we wanted DRM-free music? This is a concrete reason why.) And since we have an Amazon Prime membership, I’ve discovered that we have a significant amount of good music in the cloud already.

I’m looking forward to Apple Music and will probably subscribe, but I’ve realized after having the Echo for a while that Amazon is quietly sitting on something pretty special. They should do more with music — I didn’t realize until now that they even had a dedicated iOS music app — and more to build and promote their service. Music is in their “DNA” just as much as it’s in Apple’s. After all, Amazon’s 2nd offering after books was music CDs.

I’ve been slowly losing interest in Game of Thrones, and last night’s season finale might be the last straw. I’d like to keep watching until the end of the series, but… so many dead characters. They need to wrap this up within the next couple years.

→ 2015/06/15 4:24 pm

Apple News and RSS

Daniel Jalkut has an optimistic take on Apple News. He doesn’t think it is comparable to centralized publishing systems like Twitter or Medium for one important reason:

“Because the content doesn’t live on Apple’s servers. This is a key distinction in my mind. Apple’s News App serves primarily not as a source of information, but as an amplifier of it.”

Any technology that invokes “amplifier” in a review is something I want to pay attention to. I used the same word in the closing paragraph of my pitch for App.net. That service is fading away now, of course, but it’s just another reminder that even the most well-intentioned platforms are dangerous if they distract us from controlling our own content and hosting it at a custom domain.

Working from Radio Coffee & Beer. Hot afternoon outside, iced coffee, some code to write. Can’t complain for a Monday.

→ 2015/06/15 1:54 pm

WWDC 2015, basketball, and cartoons

Throughout the week I posted about WWDC to my microblog, but I thought I’d write a longer post with the week’s narrative. It’s useful to have these to refer to in the future when all the WWDCs blur together and I’ve forgotten which event was which. Where it adds any details I’ll link to a few of the shorter posts.

So let’s go back to Sunday morning a week ago when I arrived in San Francisco, ticketless but ready to learn and meet up with friends. What a great day. First burritos and coffee in the Mission, then to Oakland for the NBA finals, game 2. I had signed up on the Golden State Warriors mailing list a couple weeks earlier to get in on the pre-sale tickets. Excepting the nearby San Antonio Spurs, I’m almost never going to just coincidentally be in the same city as an NBA finals game. I couldn’t let that chance slip by.

Golden State Warriors

And it was an amazing game. Outwardly I was rooting for the Warriors — high fives to fans when the team came back to force overtime, wearing my new yellow shirt they gave everyone at the game. But inwardly I was also marveling at LeBron’s dominance and happy to see the series tied up. I want to see this thing go to 7 games.

Monday was the keynote and later the Cartoon Art Museum / NeXT fundraiser, with beautiful art on the wall from one of my favorite films this year, Song of the Sea. Tuesday I tried to catch up on some code at Sightglass Coffee, watch sessions at WeWork, and installed the iOS 9 beta on my retina iPad Mini. In the evening on this day and others there were parties, though I only attended a few.

The Talk Show

The Talk Show live with guest Phil Schiller was a great surprise. I’m so happy for John and his success. Developers who have only known Daring Fireball after it was already fairly popular may need this important reminder: John Gruber started a dozen years ago with a blog that no one read, just like the rest of us, and this week he conducted the best interview of a senior Apple executive I’ve ever seen. If you think it’s enough to just throw random quips to Twitter, it’s not enough. Blogging is still the best way to build an audience. (Don’t miss Marco’s post about the event and what it means for the new Apple.)

I have very little to complain to Apple about this year. Maybe the keynote was a little long, but the topics they hit and the new user features and APIs were exactly right. I’ve got Mac OS X 10.11 El Capitan installed and will require it for my next Mac app.

Golden State Bridge

Toward the middle of the week I wasn’t feeling particularly great — not sick, but not really upbeat enough to get excited about new APIs. I escaped the city for the afternoon on Wednesday, visiting the Walt Disney Family Museum and then walking down to Crissy Field toward the Golden Gate Bridge. I stretched my arms out wide to catch the wind and felt refreshed in a way that the stagnant weather back in Austin this time of year can’t hope to provide. I remember this tweet from 2012 and it’s always true again, year after year.

Thursday morning I caught a session at AltConf before heading to the airport. Flights were delayed out of SFO because of fog, so it was 3 hours waiting in San Francisco, and another 3 hours waiting in Phoenix after a missed connection. But it’s all good. WWDC was a little weird for me — not because of anything Apple did, just because I was a little wistful, and distracted by email and non-WWDC happenings too.

Nevertheless I’m inspired by the week. The success of both AltConf and now Layers, not to mention all the other smaller events and keynote watch parties, point to a very strong WWDC for years to come.

Dusted off some Mac app code to require Mac OS X 10.11. I don’t usually enjoy ripping out old code because of how much breaks, but made good progress switching to Auto Layout, NSStackView, and the new NSCollectionView.

→ 2015/06/14 6:44 pm

Jurassic World was the expected formula but they put everything into it: nods to the past films, incredible effects, good pacing. We really enjoyed it.

→ 2015/06/13 8:08 am