The best cocktail I've ever had

October 16, 2013

UPDATE: A few weeks after I posted this, the Four Seasons Vancouver reached out to me on Twitter with a link to the recipe!

A few weeks ago we took a short trip to Vancouver, BC. It was a “vacation”, which meant I took two full days off of work plus a weekend! We had heard about the great drinks at YEW Bar, inside the Four Seasons, and ended up going there before dinner the first night we were in the city.

I saw “Lemon Meringue” on the cocktail list and just knew I had to try it.

Long story short, I tried it a few times. In fact, I had seven of them in three trips to that bar over the course of our short stay. It was, without question, the best cocktail I’ve ever had. It was so good that I forgave (after an embarrassingly long inspection, of course) the fact that on our last trip there, just before heading to the airport, the waitress spilled ceviche “juice” all over my Sony RX1, which was sitting on the table. (Not for nothing, but the staff couldn’t have been more apologetic, and I got the feeling that had it been damaged at all, they would have replaced it.)

Anyway, the point of this post is for you guys, my infinitely knowledgable readers, to estimate the appropriate ratios of this alcoholic elixir’s ingredients, which are as follows:

  • Citrus vodka
  • Vanilla liqueur
  • Lemon
  • Coconut (I almost didn’t order the drink because of this ingredient, but fortunately, I really couldn’t taste it)
  • Egg whites
  • Cinnamon (sprinkled on top of the finished drink)

I need to learn how to make this at home. Please don’t fail me. You guys are the best! Thanks. ;)

On a completely unrelated note, we had some insanely good food while in Vancouver, but far and away our favorite meal was at the Blue Water Cafe. It was phenomenal from start to finish, and we can’t wait to go back. (I fell in love with a drink here too; they called it “Jacob’s Ladder”, and it was made with ginger-infused Beefeater gin, fresh basil, cucumber lime juice, orgeat and a splash of chartreuse. Deelish.)

Joe Smith: How to use a paper towel#

I thought for sure that I had linked to this a year and a half ago when it was first making the rounds, but it seems I didn’t. Anyway, while the video is a bit silly, I guarantee it will forever change the way you dry your hands—it’s a simple, but very effective little trick.

Volume Scroll#

A simple little app that lets you control OS X system volume by scrolling anywhere in the menubar. (Neat, but we all know the best way to control system volume is with a PowerMate.)

(Via Brett Terpstra.)


The easiest way to show off your best photos. Free. No ads. No clutter.

For whatever reason I’m kind of into this. No comments, followers, or “likes” or “favorites” or any other metric—just your photos on display (and with the “Pro” account you can use a custom domain).

Skateboarding videos on Instagram

August 30, 2013

I have a new bona fide addiction: watching 15-second (or less) skateboarding videos on Instagram. The experience is damn near perfect: I’m just scrolling along, checking out my friends’ photos, and then, bam!, a short and sweet video of a trick I’ve never seen before. I kind of can’t get enough of it. If you’re aware of accounts other than those listed below that focus on skateboarding videos, please let me know.

(Somewhat relatedly, I’ve gotten back into Instagram in a pretty big way: follow me there.)

20 seconds of Tetris madness#

The player here is a Japanese player who goes by “Keroco,” and he or she achieved 40 lines in 19.68 seconds. That’s the first time that someone has broken the 20-second barrier, and it’s astonishing, to say the least. (A few years back, 40 seconds was considered a great time.) Tetris champion Ben Mullen wrote of the feat, “Let me humbly submit that this may be the greatest achievement in the history of gaming. … This won’t make national news. But to be honest, it should.”

Modify the default action of a keyboard shortcut

August 25, 2013

Based on a couple of conversations I’ve had in the last month, it seems most people think that if a keyboard shortcut is already taken by an application, then you can’t use that shortcut within the application for something other than what the developers originally intended.

This is wrong, and getting around it couldn’t be easier. You just need to assign a new keyboard shortcut to the action that’s currently assigned to the shortcut you want to use for another purpose, and then assign the old keyboard shortcut (i.e., the one you want to repurpose) to the new action you want it to invoke.

To illustrate this, I’ll use an example that comes up over and over again in my day-to-day use, namely CMD+P. As everyone knows, this is almost universally assigned to print functionality, but seriously, who the fuck prints anything these days? I like to use CMD+P for “preview”—mainly Markdown previews within whatever writing app I’m currently using.

To do this I simply go to System Preferences > Keyboard > Keyboard Shortcuts > Application Shortcuts, assign “Print” to some nonsensical keyboard shortcut, and then assign CMD+P to “Preview” (or whatever the particular app calls its preview functionality). (I can’t do this universally across all apps because most of them have a one-off name for their preview stuff, especially if they offer multiple preview options.)

(In many instances, the process actually is easier than I just described—you only have to add the new shortcut in System Preferences > Keyboard > Keyboard Shortcuts > Application Shortcuts, and then the original shortcut gets stripped automatically. Sometimes this works, sometimes it doesn’t; I can’t quite figure out the voodoo, and so I usually just go the two-step route described above.)


Crowsflight keeps you on track in the direction of your destination, but frees you to discover exciting distractions along the way. It is perfect for wandering around cities, especially without a data connection.

Mac App Store installed app on wrong volume

July 24, 2013

I recently updated ReadKit through the Mac App Store (MAS) and noticed immediately that it was no longer actionable via LaunchBar (*gasp*)–LaunchBar just wasn’t seeing it anymore. The MAS said it was installed, but I couldn’t find the application package in /Applications or ~/Applications.

For whatever reason I thought to use Apple’s Launchpad (something I’d never used before) just to see if maybe it was aware of the application; it was, and launched it just fine. At this point I was seriously confused: ReadKit was installed somewhere (accessible to my Mac), and was being indexed by Launchpad, but not LaunchBar. Hrm.

I next thought to jump into OS X’s System Information app and look at the list of installed applications. (Click the apple icon in your menubar → About This Mac → More Info… → System Report… Once you have the System Information app open, look for “Applications” under “Software”.) ReadKit was in the list, but—and here’s the kicker—it was installed on one of my backup volumes, and nowhere else. Every other app appeared three times in this list: once on my Mac, and once on each of my two backup volumes.

I have no idea how this could have happened, but it was what it was. Now, how to fix it? There probably are a few ways to resolve this, but the easiest—I assumed—was to delete the copy on my backup volume, unmount the backup volume, launch MAS (which no longer saw the app as installed), and reinstall like normal. Worked like a charm.

If you’ve any theories as to why this happened in the first place, I’d love to hear them.


We used special stereo microphones with ears to record the sound the way humans hear: With interaural time and level differences. With headphones on, the sound recorded by the left microphone enters your left ear, and the sound recorded by the right microphone enters your right ear. Your brain decodes the stereoscopic 3D audio cues as if you were there when the recording took place.

I came across this app a number of times, but didn’t buy it until after I read Patrick Welker’s detailed piece, and I encourage you too as well (if only to get a better handle on the science and technology behind the marketing blah blah blah quoted above).

I’ve been using White Noise for years (on the Mac and iPhone), and it gets the job done, but it’s not without its faults. (I mostly use its “brown noise” setting, though it does have a ton of “nature” sounds as well.)

I think it’s safe to say that when it comes to simulating the experience of sitting on a back porch in Florida listening to a thunderstorm, Thunderspace is the best app out there, and all of those to whom I’ve recommended it agree.

What I expect from a feed reader

July 08, 2013

With the recent shuttering of Google Reader (my thoughts on the announcement in March) there’s been no shortage of competitors jumping into the space, hoping to gain just a small slice of the RSS pie. The interest I’ve seen in new RSS readers and services has really surprised me, especially the interest shown by “normals” who maybe followed 10-20 sites and used a browser to interface with Google Reader.

In the past few months I’ve tried most (all?) of the “main” players in the after-GReader market, and have been mostly disappointed, particularly by the mobile clients, which disappointment kind of compelled me to write this post. Please understand that I realize many of these operations are very small teams (some are just one person) and that this post is in no way meant to belittle what they’ve accomplished in the past few months. But, the fact is, I’ve (we’ve) come to expect a certain number of “core” features when it comes to my precious feed-reading rituals, and there’s just no going back. (I’ve no doubt that given enough time, the majority of these new guys will incorporate most or all of the features listed below. Fortunately, most best-of-breed clients already talk to many of these new services, and so much of this is a non-issue if you know which clients to choose.)

Before reading the below list, keep in mind that I do 99% of my feed reading on iOS devices, and because of that I’m just not too concerned with the desktop/mobile browser experience. That said, most of the things listed below should apply to those mediums as well. Also, these features mostly are concerned with user-facing clients and not backend systems, so I’m not getting into syncing or anything else like that–those things are givens.

Features I've come to rely on

I’m fully aware that some of these may seem a bit trivial, especially when considered individually, but when taken together over a large number of feeds, they make for an incredibly powerful–and efficient–skimming/reading experience.

Mark-as-read-on-scroll (in a multi-item view)
I’ve written about this many times in the past, and it’s still one of the first things I look for in any new aggregator, and am always surprised when it;s missing. It’s especially handy for high-volume feeds, where without it you’d have to scroll through every unread item before being able to move on to the next feed/folder, because only then would you feel comfortable marking the feed/folder as read.
Offer multiple ways of moving to the next item
When viewing a particular item, moving to the next item should always be possible by swiping up when at the end of the item. Additionally, there should be an on-screen control for this sort of thing; this is especially useful when dealing with full-content items, where, in the case of long items, getting to the next one may require a lot of scrolling before being able to transition to it using only the swipe-up gesture. (Mr. Reader goes a little further in this regard, and lets you move the on-screen controls to any of four areas of the screen, which is great when you’re holding your device in an odd configuration, or you're left-handed, etc.)
Ability to turn off animations
Animations can been pretty, and fun, but when done a hundred times a day they can start to feel “heavy” and inefficient; sometimes it makes more sense to just turn them off completely. This should be configurable.
Save items to a read later service (e.g., Pocket, Instapaper, etc.)
I’m pretty sure all clients support this sort of thing these days, but I’m including it here for completeness (and to setup the next couple of items).
Act on feed items without having to jump into them
Here I’m referring mainly to the ability to save an item to a “read later” service while scrolling through a multi-item list. Often as you’re scrolling through a list of feed items you can tell whether an item is something you want to act on without having to actually jump into it. In Newsify, for example, if I want to save something to Pocket while scrolling through a list, I simply long-tap the item (no matter the layout mode) and it gets shuffled along.
Save internal links to a “read later” service
How often are you reading an article and want to save to a “read later” service a link you come across within that article? Most clients offer the ability to act on the link via the system-wide iOS dingus, but only a few let you send the link to your “read later” service of choice. If the “read later” option isn’t available, I usually have to open the link in Safari, and then use a bookmarklet to send it to the service I want. That’s crazy, and about 10 steps too many.
Show thumbnail images if available
I realize some people don’t like thumbnails in their feed readers (especially given the propensity for some writers to add images to their articles that don’t necessarily inform the reader, because they know that articles with images tend to get more views), and want to see only the title and maybe a line or two of preview text, but I find that my skimming usually is much faster when thumbnails are shown; it’s much easier for me to determine at a glance whether the article is something I want to see more of. This is especially true for particular feeds; for example, I have a feed that’s focused on car news, and because of thumbnails I can blaze through its unread items incredibly quickly.
Offer multiple layout modes
There usually are two that are most important, namely a list view where each item is presented in a uniform size, including length of title, number of preview lines, etc., and a newspaper-style view where the width (and sometimes height) of the “box” in which an item is presented can vary based on, for example, whether that item has any images associated with it, etc. This should be configurable (and, ideally, on a folder-by-folder and feed-by-feed basis).
Show only feeds and folders with unread items
This one seems so obvious, but you wouldn’t believe how many apps out there force you to scroll through your entire list of feeds/folders, despite there being something new in just a few of them. Silly. Hide that shit.
Show oldest items first
Again, another thing that you’d think couldn’t be more obvious. I want to view articles in the order they’re published, not the reverse.
Never require mark-all-as-read confirmation
Show read/unread progress when inside a feed or folder
There are certain feeds or folders of feeds that I always run through item-by-item (e.g., my folder of individual bloggers), and it’s nice to know how far along I am in the list while in the process of going through it (e.g., display “3 / 8 articles read” above the current article).
Offer options when finishing a feed or folder of feeds
Some clients jump right into the next unread feed or folder, others bring you back to the main list of feeds/folders. This should be configurable.
Customizable "Services" menu
The client should support as many services as is practicable, and the user should be able to choose which of those appears in the services menu.
Switch easily to a web-based view
99% of the time I’m fine with being shown a “sanitized”, content-only version of an item’s corresponding web page, but it should be very easy to view the page “natively” in an in-app browser. Which of these to show by default (i.e., sanitized or in-app browser) should be configurable (and, ideally, on a feed-by-feed basis).
Filtering at the item level
Frankly, I think this is something that should come with anything you use to consume any type of content, but it rarely does. In fact, I’m not aware of any major RSS client (for iOS) that lets you hide some of your feed items based on constraints you specify. I’ve been using Yahoo! Pipes for this sort of thing for years, and while it’s a little clunky, it works great, and lets you use regular expressions, which is always a plus. (Yeah, I’m aware that Feed Wrangler offers filters, though I don’t think at this point they’re too robust (e.g., no regex, etc.). I’m keeping my eye on this.)
Site/author attribution in folder view
When looking at more than a single feed at once (e.g., when viewing a folder’s worth of items), it’s nice to be able to see which site and/or author a particular item belongs to, because that information might ultimately determine whether you want to take further action on that item. Same goes for multi-author sites.
Prefetch everything
All feed images should be downloaded when syncing, and not when an item is opened. The last thing you want to do when jumping into a feed item is have to wait for an image to load; do this a hundred times in a row and you’ll understand how truly maddening it can be. There should be an option to turn this off if using a connection other than WiFi, but otherwise you should be slurping down everything at sync time.

So, what am I using now?

To be honest, my workflow hasn’t changed at all since Google Reader was put out to pasture. I’ve long used Newsify (despite it having, without question, the worst icon ever), Mr. Reader before that (my detailed thoughts on this app from a couple of years ago), and Reeder years before that, all three of which now sync fully with Feedly’s backend service.

The Google Reader shutdown simply meant I had to point Newsify to Feedly, instead of Google Reader. That really was it. My experience now is no different than it was two weeks ago, and as I mentioned above, I basically just don’t do news reading on the desktop anymore, but in a pinch, Feedly’s site is fine for me.

Bolt: Portable USB battery backup with built-in wall charger#

Bolt is the world’s smallest portable USB wall charger combined with a built in 3000mAh rechargeable battery that will charge your mobile device, anywhere.

I think this looks awesome, and I really want to back it (w/ the t-shirt package), but I’m a little concerned about the 5V/1A output rating, which is the same as the chargers that come with iPhones. I specifically use Apple’s 12W chargers for all of my iOS devices because their output rating is 5.2V/2.4A, and, as you may have surmised, charge iPhones faster (if only slightly—at the end of the day, the phone will draw only as much current as it’s designed to draw), especially if you’re actually putting the phone through its paces while charging it.

(The 12W chargers now come standard with iPad 4’s; I believe they were 10W for all previous models.)

The Daila Lama on what surprises him most about humanity#

Man. Because he sacrifices his health in order to make money. Then he sacrifices money to recuperate his health. And then he is so anxious about the future that he does not enjoy the present; the result being that he does not live in the the present or the future; he lives as if he is never going to die, and then dies having never really lived.

Find iPhone UDID without iTunes...or a working iPhone

June 16, 2013

Like a lot of us last Monday, I really wanted to get the iOS 7 beta on my iPhone, but didn’t currently have an iOS Developer Program membership ($99/year). (The last time I felt compelled to get a developer beta was for iOS 5, mainly because I wanted/needed Notification Center.)

I got home from work really late Monday night and couldn’t wait to get the beta installed, and in my haste I made a mistake that, at the time, I thought might have bricked my iPhone. (Keep in mind too that you’re warned you can’t revert to an earlier version of iOS (i.e., non-beta) if you install the beta, which, it turns out, isn’t true.)

I installed the beta (~1:30AM), booted up the phone, and iTunes wouldn’t recognize it, because I hadn’t associated my UDID number with my reactivated dev account. Not only had I not taken this step before installing the beta, I hadn’t even written down my UDID at all. (I should have been able to search my email for this, as I’d previously sent it to various devs for beta access to their apps, but, long story short, I get new iPhones fairly often because I’m a maniac, and just hadn’t grabbed the UDID for this latest one yet.)

The UDID is a 40-character string that uniquely identifies the phone–the hardware–and is easily accessible if you have a working iPhone. One way is via iTunes: when the phone’s plugged in, choose the “Summary” tab in iTunes and click on “Serial Number”, and you’ll see it change to “Identifier (UDID)”, followed by the UDID. (⌘C will copy the string to your clipboard.)

Another way is through OS X’s System Information app: click the apple icon in your menubar → About This Mac → More Info… → System Report… Once you have the System Information app open, look for USB under “Hardware”, and then look for your phone in the USB device tree, and note that the UDID is actually reported as the “Serial Number” here. (I’m pretty sure this method won’t work (at least on OS X) if iTunes doesn’t recognize your phone.)

Another method you can use if you have a working iPhone is to download apps whose sole purpose is to report this string. Search the App Store and you’ll find plenty of them.

OK, that’s all well and good, but what do you do if iTunes isnt’ recognizing your device, and your device won’t boot fully? As I was scrambling around trying to find a solution that would salvage my phone, it occurred to me that I had seen folders made up of long sequences of characters in a backup folder I had been poking around in some time ago. I went snooping and again came across those long sequences in this folder (where iTunes stores your iOS backups):

~/Library/Application Support/MobileSync/Backup/

I counted up the characters, and sure enough there were 40 for each folder at the above location. I rummaged through the various .plist files to figure out which of these folders/sequences corresponded to my iPhone 5 (and not my iPad, other iPhones, etc.), punched that string into my dev account, and all was right with the world.

(Clearly this isn’t rocket science, but I decided to write something up for other non-devs who may come across this issue in the future and go so searching for a solution.)