After trying it out for a month, I pulled the trigger and bought MailMate this morning over a cup of coffee. Gabe Weatherhead has a very good features overview (now a bit dated but still relevant) of this powerful mail client.

Good software is worth paying for. Even though mail on OS X isn’t my hub of productivity that it once was (being that my day job is on Windows and all), I’m convinced that a mail client as good as MailMate is worth the cost. If you try it out, don’t miss the custom keybindings and hidden preferences. You can do a lot with this sucker.

An annotated list of some of the things I used, liked, appreciated, or got particularly good value out of in 2014:

Not Computering (intentionally put at the top)

In February last year I started on some physical therapy for my shoulder, long insulted by climbing accidents and then one particularly embarrassing skiing accident, then ossified by general mis-use. When I started, I couldn’t get that arm much above my head, and when I “finished” the official course, I was comfortable, not tentative, and confident that I wasn’t about to re-injure it. I can’t overstate how much this positively affected me, day-to-day. Picking up my boy, reaching around in the car, getting something off the shelf. I should have done this years ago.

Personal training is probably the other best thing I did for myself this year (critically enabled by having done the PT; I had to learn to fish before I could, something whatever). Seriously, Internets. It feels so good to be active and strong(er).

lightbox2 lightbox2

Good coffee and food and favorite places to share with my family and friends.


Pinboard and Pushpin: I used Instapaper less in 2014, replaced in part by Pinboard. Just about everything I wanted to read or wanted to save for later, ends up in Pinboard, and the great Pushpin app enabled a lot of this — saving via its iOS 8 extension, reading and finding new things in the popular list.

Minimal Reader: I ditched RSS for a while, but picked up an annual subscription to Minimal Reader last January, and have just renewed for another year. I see (via Twitter and Minimal Reader) that Glenn Fleishman has moved away from RSS, and I agree with basically everything he writes … but have nonetheless landed on continuing to use news feeds in addition to the rapid-fire flow and conversation of Twitter. I have a relatively small set of (active) feeds in Minimal Reader, which I put there because they reliably offer something that I don’t want to miss. If I happen to have read something via a twitter conversation before I come across it in Minimal Reader, then I just float past it; and I regularly clip longer items from MR into Pinboard or Instapaper in order to keep the RSS queue as more of an inbox than an actual place to read them.

Synology: I wrote about my Diskstation a handful of months ago. It continues to sit in my media center cabinet, quietly acting as my Time Machine destination and network storage for photos and videos. I’m very pleased with this, but there is one caveat: iTunes turns out to not like an always-on disk location for its media, so I have had some trouble maintaining that part of the solution, and for now have basically reverted to keeping iTunes media locally.

Backblaze: Having now used it for years, Backblaze is one of those things I just don’t really think about. I’ve used it to restore a pre-corruption iTunes library and to recover a bunch of ssh private keys, and I am secure knowing that it’s there putting up all my stuff just in case. The second caveat regarding the NAS comes in here, however: Backblaze doesn’t yet support it. I really want to fill this gap and hope they find a way to handle it soon.

I’m hot and cold on Rdio, but continue to use it just about enough to keep paying for it. When friends or twitter contacts recommend something, it’s so easy to go check it out, and it provides streaming access to most of my library that I ever want to listen to. It’s great. I’m not a big fan of the UI anymore, as it has gone somewhat over the line from minimalist to obtuse, but it’s navigable enough that I can put up with it for the good selection. (I’m thinking I will give iTunes Match a try this year, though, as I continue to want to buy the music I really like, so I won’t lose it as it comes and goes on streaming services. I have a long malformed musing post somewhere about wanting to make the things I listen to and read somehow tangible for discovery by my son, when he’s ready to explore them, and having them all-digital doesn’t yet seem accessible for that.)

(Most of my friends use Spotify, and I use re/spin to import their playlists into Rdio. It’s awesome. Try it!)

1Password: Well geeze. Best software purchase ever? I’ve now bought this multiple times through multiple updates and devices and I never think twice about each paid update. I just make a small invocation and light incense once a week that I will never forget my master password, because I literally know almost none of my passwords anymore. The iOS 8 extension pushes 1Password close to the heart of every activity on my phone and tablet just as it had previously done on the Mac. It’s just indispensable, and if you’re not using it then you are likely doing it wrong.

MailMate: Apple’s Mail app started to misbehave on me this year — possibly some interaction with my mail server and/or ISP, but it was enough for me to start looking at other mail applications. MailMate is fantastically powerful, making my only reservation about it is that I’m not enough of a power user for it. But if you value a quality application, this is just an excellent thing. Custom keybindings, filters and smart mailboxes for the win.

Tilde Club: What a serendipitous thing to happen into, and what a great thing for Paul Ford to start rolling.

cTiVo: Hey, you can download from your TiVo to your Mac, and it’s easy! With my new Mac it’s even pretty fast to transcode them to AppleTV format. I’m routinely downloading shows to either save and make room on the TiVo’s drive, or to put on the iPad for a trip. cTiVo will “subscribe” to shows, too, so you can automatically download and transcode episodes as they come in. Detects commercials, too!

PhotoStream2Folder: I wrote about this recently and it’s still doing exactly what I want: Frictionlessly pull pictures from my iPhone’s photostream and drop them in a folder that’s monitored by Lightroom on my MacBook Pro. It doesn’t solve video, and I’m accumulating some video that I need to download and deal with through the old way, but it’s hugely valuable nonetheless.

Recently I was having a beer with a friend from work and he asked, “So, what’s your thing? What are you really into?” It was a provocative question because he and I have worked together for several years and have a pretty good relationship, so the idea that he wouldn’t know much about what makes me tick sort of took me by surprise. It really made me pause.

He’s a board game guy, like a level 18 board game geek. Once every few months I make it to his place on a Saturday afternoon to play some games with him and a handful of others. I’m mostly casual; they’re pretty hardcore, like the guy with a remarkably elaborate packing system for his Arkham Horror sets,1 which is totally okay, just not so much my thing.

So despite being really into plenty of things, I paused when asked. My coworkers don’t really see that much of my non-work life and interests; despite believing in sharing and celebrating nerdy enthusiasms, turns out I’m not a really big sharer, myself. I’m quiet; it shouldn’t surprise me that having worked with someone for a few years, he wouldn’t really know what I dig.

I might have gushed: I’m into hobby coding, programming tiny things only for myself, blogging and online communities, all things internet and sometimes the internet of things, personal web pages, twitter and tinkering with APIs. I’m an IT guy, and I work with deeply IT people of various kinds, yet many of the things that feel to me to be such natural elements of being into computers for so long, growing up with them and working with/on/around them — like twitter, blogging, and RSS feeds full of nerds — just aren’t resonant with most of them, or at least most of the folks I spend most of my time working with.

I told him about my network visualization, which required a brief visit to first principles: Here’s a bunch of people who put up tilde web pages; oh, a tilde page is this convention for home pages; home pages are something I’m into. Then I gave an explanation of what the network graph shows and why I would think it might be cool enough to spend several weekend evenings tinkering with, and a quick demo on the screen of my iPhone. Not sure he got it, though. On a cool exercise in parsing XML to produce a map of beer styles, Gabe Weatherhead nicely sums up the impulse to do this kind of thing: “It’s not super-useful. But, then again, this was never about the problem. It was always about the problem solving.”

Over at But She’s a Girl I find some familiar thoughts about being too much geek (or perhaps, really, about being a different sort of geek among other geeks):

That — in a nutshell — is why this blog is a lifeline for me. Many of you are fellow geeks and share my enthusiasm for ridiculously geeky things like building documents with embedded statistical output. You are my kind of people. Plus, on the internet, I can’t see the eyes of those of you who are not interested in geeky things glazing over with boredom and despair as you read this.

Yes. And while I share the notion that this online space is a lifeline, one of the things I want to do for myself this year2 is to be more open and expressive about the things I enjoy, in order to find more local community and friendship in it.

  1. Spoiler from my Arkham Horror experience: Ninety minutes of setup followed by thirty minutes for the party be wiped out by Nameless Horrors. [return]
  2. And something that I wrote about in an unfinished thing that might still become a blog post, somewhere. [return]

I like this piece by Ben Kuchera about managing one’s leisure time and making goals for play & culture in order to avoid “fun” turning into “homework.” I’ve started aggregating books, comics, games and music into a feed that I can pipe into a thedash dashboard. This helps me keep track of all that stuff and also acts as a check against overpopulating it. 1

Look, Ben notes and I agree that this is like the first worldiest of first worldie dilemmas — oh, my, so many free-time activities! Woe — but pulling back a little bit, this is also about being thoughtful about how I spend my time. Not a bad thing to keep in mind as we careen into one more year.

  1. The exercise advice is also good! I started putting working out on the calendar a few months ago, and the result is that I don’t worry about not getting in my workouts, the time I do spend is much more effective, and I also feel really good. [return]

Among the games I played over my winter holiday (which got me thinking about all the Games of Christmas Past, and stewing on a post chock full of nostalgia about that), I have so far had a great time with Endless Legend. It’s a complex “4X” turn-based strategy venture, and I spent some time writing up an Endless Legend gameplay journal about my experience so far.

Jason Garber writes up and shares his nice webmentions service. While I use flat files, Jason uses a database and provides a real API — super-cool. He also points to webmention.js, which in turn leads to; the former, a javascript function to display webmentions, and the latter, a service to both receive and embed mentions.

It’s really fun to come across these, both from a perspective of opportunities to replace or improve my implementation as well as just seeing more threads within this community.

I Huffduffed this great discussion with Jeremy Keith weeks ago, and am just now catching up over my holiday vacation. Jeremy talks about some key tools, and his explanation in particular of the way rel="me" relates to IndieAuth finally made sense to me. He also points to Known, a hosted or self-hosted platform with microformats, webmentions, and other indieweb elements as core capabilities. Cool!

To me, there’s definitely a through-line between these tools and platforms, and the kinds of activity sparked by Tilde Club and the Other Tildes. While the tilde clubs diverge in some senses, they share the indieweb notion of cobbling something together to scratch one’s own itch, sharing and spreading around that capability, and enabling likeminded people to tool around, tinker, and express. For me, they both represent some of the community and sharing that have been underlining much of my enthusiasm for first BBSs, later usenet and home pages and all things internet, for the past so many years.

Go forth and make/write/play, huh? Okay!

Winston Hearn:

If you give a developer a domain, they’re going to want to host a site on it. But where should they host it? They’re probably going to need to do some research on hosting. But they can’t decide on hosting until they figure out how they’re building the site. They are really familiar with this framework but since they have full control maybe they should experiment with this other framework.

Photo: Launch Ring Restored, Launch Complex 34, (Apollo Saturn) Cape Canaveral Air Force Station, Florida – Roland Miller

Roland Miller is a family friend and I grew up with many of his photos in the house. He has been working on a project titled Abandoned in Place for more than twenty-five years. He is documenting in photographs the facilities and structures that were the foundation of the U.S. space program, like launch towers, gantries, factories, control rooms and panels.

Roland’s Kickstarter for an Abandoned in Place photo book is almost home! If you are interested in space, science, history, or photography, this is right in your sweet spot and I encourage you to check it out. You can get the book — with essays and memories from space program scientists and astronauts and writing by Ray Bradbury! — along with signed prints, and help preserve the stories and images of these places that are gradually being lost to time and the elements. Go go!

Bridgy by Ryan Barrett is another fantastic-looking and new-to-me tool for spinning up your own piece of the indie web. I’m really excited for the possibilities presented by it and, both of which I found via Jeremy Keith. His Indie web building blocks post is one more great primer on how all this works.

I have so much to do. is a super idea, basically webmentions as a service from Aaron Parecki, with code offered for runnning your own server. This looks lots more sophisticated than my implementation, and, hey, idea: This kind of mechanism might be a great way for sites (like mine!) over at the Tilde Clubs to turnkey implement webmentions in an otherwise limited server environment.

Maybe that’s something to tinker with this weekend!

Paul Ford had this idea, opened up a pop-up unix server called Tilde Club and invited friends and strangers to come put stuff on it. It’s pretty cool. I’m ~schussat over there.

My flickr tag neighborhood

I’m a long-time Lightroom user. Since its beta release it has been the place where my photos go. I have a slew of export actions and have hacked together methods of varying sophistication (such as the export script that produces a tiny gallery) to accomplish what I want to do. I dug into the data that Lightroom gives me about my photos, too: See, the Lightroom database is sqlite, and one can pull all kinds of things from it, such as this network map of my keyword relationships, or my then-annual exploration into My Year In Metadata.

2009 photo data!

Way back when I was running an Android phone, I had scripts and smart galleries to help sync photos from that phone into my Lightroom library and later populate galleries to sync to my iPad. It was pretty high-tech, you guys.

This is all a way of noting that I’m very much at home working on my photos in Lightroom, so that even when I got myself my first iPhone a couple of years ago and could get photos from the device onto my MacBook Pro, I didn’t have much use for iPhoto. Photostream wasn’t muh of a solution for me, because, until I recently got a shiny new Mac, I had a version of iPhoto that predated it; my cloud photos couldn’t magically sync to my laptop unless I invested in iPhoto, and I didn’t really want to do that. So I put up with periodically plugging in the phone to the Mac (horrors) or, later, using Dropbox’s photo upload capability, to get pictures out of my phone and into Lightroom.

Point is, there was still friction. But I think now I have a solution, thanks to the good photostream syncing that I now have on the new MacBook Pro with a current version of iPhoto, plus this great and now indispensable tool: PhotoStream2Folder. PhotoStream2Folder basically does what it says on the tin, and does it well: Identifies photos in your photostream (optionally within a specified range) and moves them into a usable location on your file system1.

The Lightroom trick? Lightroom can monitor a directory and automatically import anything that lands in it. So with PhotoStream2Folder I just set up its output folder as the directory that I already have monitored from Lightroom. The next part is pretty close to magic: Within moments of landing in my photostream, new images are automatically in Lightroom. The mental overhead is just gone. I tried this in my kitchen: Took a photo of a cup of coffee (because I do), then wandered over to the MacBook Pro on the counter; the photo was already in my Lightroom library. I went to the Sunday farmers market, shot a bunch of photos with the very impressive iPhone 6 camera, and when I opened up the computer upon arriving home, all the photos were in my library, ready for me to edit, share via my extensive and baroque variety of Lightroom export/publish presets, no iPhoto interaction, copying, or re-importing required.

It’s brilliant.

One more thing: If iPhoto is importing my photostream images, too, won’t I end up with a bunch of duplicates? Very good question. Fire up iPhoto preferences > iCloud, and turn off “automatic import.” Then iPhoto will display photos from your photostream, but not import them into your catalog, and they’ll “age out” over time. Meanwhile, all those images will be seamlessly added to Lightroom, where you really want them.

The author of PhotoStream2Folder, Laurent Crivello, asks a small donation via paypal if you find the tool useful. I think it’s awesome, and want to stress that it can be used for anything, not just Lightroom; if you simply want to get photos out of your photostream, without relying on iPhoto as your photo management application, this is your go-to. With one quick solution it has taken all of the mental overhead and friction out of managing the photos I shoot on my phone.2

Apr 11, 2015 – Yosemite + Photos update: I am happy to add that with OS X 10.10.3 and the Photos update continue to work. I have yet to really try out Photos, but it apparently doesn’t come with any under-the-hood changes that interrupt the way PhotoStream2Folder picks up images from your photo stream. Sweet!

  1. Photostream images can be found in a series of numbered folders deep within your Application Support folder; Adam Portilla has a very good writeup of using an Automator action — knowing the file location one could script up just about anything, I suppose — to copy files from this location. I have found I prefer the configurability and just-works nature of PhotoStream2Folder, myself. [return]
  2. I previously had a small invocation here asking that this solution would continue to work with OS X Yosemite; happily, it still works great! [return]

My friend Joel is working on a webmentions method of his own: Email!

I’m trying out alanschussman

The usual suspects have their extensive iOS and iPhone 6 reviews up and feeding page views to the masses. I have particularly appreciated a few:

  • Ars Technica

This week’s Humble Bundle is the first in quite a while where I haven’t already owned most of the included games. Of the set, I only had Papers, Please, so I went for this one. And all weekend long I’ve been playing SteamWorld Dig. It’s fun, has great two-dimensional art, is challenging but never obtuse, with a nice learning curve.

Gamasutra has a cool writeup by the developers that describes the design decisions they made in the dig and jump mechanics. It’s a good read, and a great game.

There’s some research somewhere — or perhaps merely a critical contention — that focusing on taking pictures instead of appreciating the moment inhibits our formation of memory. That is, the argument goes, all our social media documenting makes those moments increasingly fleeting and uncaptured. Well, I spent a good chunk of yesterday slowly making my way through 2007 in photos,1 and was struck again and again by those memories. I took more than 4,000 photos in 2007; when I scroll through those images I am astounded by what I remember.

I shared many of those photos at the time. I was trying out my first Project 365 on flickr, and I posted at least one and sometimes several pictures per day. It was a pretty big year for me: I lived on my own in Seattle for a while during a predoctoral internship; finished my dissertation and graduated; interviewed for some jobs; made a significant career change; bought a house; and captured hundreds more daily snippets of life because I was basically taking pictures all the time. Walking through not ony the pictures that I shared, but the photos that I didn’t share, brings me back this flood of recollections.

Don’t Forget to Remember This (At John Carey’s blog, which I discovered via Shawn Blanc) is a wonderful essay about why we take pictures and about the pressures that shape what we shoot, and for whom:

The challenges present in photography today are not in the devices we use to capture, it’s not in our approach, skill level, or what we think we need to create good photos; the problem today is in social pressure. Photography has quickly evolved in its short lifespan from revolutionary, to useful, to ubiquitous and full of expectation.

John Carey works through the conflict in contemporary photography between one’s own perspective and the aesthetic driven by likes, shares and faves. So much of what he says resonates deeply, all the moreso as I think about — and look at, again — the photos I never shared: My wife, my son, moments that might be snapshots or might be carefully composed but which were shut out of sharing because perhaps they weren’t fancy enough or evocative enough, or maybe just because I had already posted a couple that day.

Some of the pictures of my wife and son (born much later than the year of photos I have been poring over this weekend) are images I would love to share; they’re so beautiful, and pictures of people have so much vibrance and life to them, which I am always so happy to preserve. But they’re also private. The stars and comments of “great capture” might superficially validate me or make me feel like a portrait photographer with a fine eye. But a flickr friend’s heart would not feel what mine does when I find, again, that lucky photo of my wife suddenly laughing, so wonderfully bright and alive.

My current camera of choice is this wonderful Fuji X100S, but previously I shot with a Pentax K100D and a growing collection of prime lenses. It’s easy to be captivated by new, fun, fine gear: gear acquisition syndrome is driven just as heavily by the peer pressure to make photos like others’ photos and in turn the notion that doing so requires having their gear. But as I look back at these older years’ collections of photos I am also struck that some of those photos are really good. Not simply because I like the subject or I found a good moment, but technically good: They’re sharp, colorful, detailed. That’s a good little camera that’s now nearby on the shelf with its FA35mm lens mounted and ready to go; that combination perfectly fit my own photographic vision for years, and I loved going out and using it.2

John Carey again:

My compositions and developing have similar fingerprints in that they tell me a lot about how I felt when I made the photographs. Every click of the shutter for me is a moment worth remembering and it’s the memories that make photography so gratifying for me. I find so much to be thankful for when I look back through the images I have captured through the years.

Back to my own memories: Exploring the photos I made that year, I can’t say that I recall every single moment. Sometimes I was detailed enough to put in a pretty good caption. But in the context of the surrounding images, I get so much back: That was a photowalk around Bellevue; this was a hike on the Arizona trail (and that summer we hiked almost every day!); here’s the celebratory drink the night I decided to go for it; the job interview trip and Half Moon Bay with my grandfather; sitting in the backyard with the dogs and making coffee. Normal days and extraordinary days all lined up next to one another.

And on and on, now with my iPhone and Fuji (regarding which I must confess that I am beginning to feel some desire for the flexibility of point of view offered by an interchangeable lens system; that’s another desire re-kindled by my back catalog and many favorite 50mm images from the old Pentax); and even more with a boy now in preschool and a city and neighborhood that I still frequently walk, camera on my shoulder.

  1. Thanks to putting my entire photo catalog back online with my Synology box. [return]
  2. For what it’s worth, this is empirically borne out by my Lightroom photo stats from that era. For several years I ran some R statistics against my Lightroom library to produce all kinds of summary information about my metadata — like a perfect storm of my interests, photography plus geeky tinkering with code and visualizations! [return]

Amethyst arranges application windows on screen (or on a specific space) into a tiled arrangement based on one of several models. (I am using the “tall” setting.) It takes a bit of getting used to, but I like it now that I have sort of got the hang. The key thing to grok is that it arranges all visible windows, so if you have a ton of visible windows, hide everything you don’t need at the moment. Un-hiding a window will cram it into the existing arrangement — by shortening one window to make room for another, for example. So you can pop up a terminal window and have it fit into your view while you use it, and when you hide it, the window(s) that made room for it will expand back to their previous size. It’s controllable by keyboard, so you can float, resize, and cycle through windows without touching the trackpad. Quite cool.

With a MacBook Pro upgrade, mentions hacking, and sync updates, it’s been a sort of Infrastructure Summer around here.1 To cap it off, after getting the new MBP up and running I decided to get serious about my home storage and backup.

I have frequently heard good things about Synology, so I started there. One of my goals was to centralize storage from a rolling series of external USB drives that I have accumulated over time. These drives have occasionally been connected to an Airport Extreme, hosted via an old iMac, or just plugged in from time to time to offload photos, music or video into “offline” storage, where it’s no longer taking up space on my laptop.

While I sort of drool over the fancy multi-bay devices like the DS1513+, my needs just aren’t that heavy. So Shawn Blanc’s Brief Review of the Synology DS213j — Shawn Blanc made that particular device look just about right. His writeup is the one I pinned for later reference and leaned heavily on for first principles when getting up and running with my very own DS213j. I also learned a lot from Gabe Weatherhead’s post about moving from a Drobo to a Synology. (I don’t know what I would do with Gabe’s 24-port switch save for gaze at the magnificent 18 unused ports, but I picked up an 8-port switch with my DS and dramatically improved the wiring in my cabinet as well as getting a spare hard-line to my laptop for when I’m at the desk.)


Like Shawn, I plugged two 3TB WD Red drives into the box. On setup, the Synology gives the option of automatically configuring the second drive as a mirror of the first; great, one less thing for me to figure out. So that leaves me with 3TB on board space, plus a USB drive plugged in as an additional redundant backup.

Obligatory Old-Days Aside: My first hard drive was a 20 megabyte disk installed in a Compaq DeskPro 386s. I later convinced my dad that we needed to replace it with a 40 meg drive so that I would have room for Wing Commander and my WWIV BBS. Sometimes the very idea of gigabytes of storage, to say nothing of three terabytes of disk space, still sort of blows my mind.

So what am I doing with all this?

  • Time Machine backup: I have a 500GB SSD on the new MacBook, so I set up a 1TB share dedicated to Time Machine. For the first backup I used the cabled connection to my switch, and my experience so far is that routine Time Machine snapshots to the Synology work fine via wifi. When I know I need to move around a lot of bits, I hook up the cable. Synology has good instructions for time machine setup.
  • All of my Lightroom photos and previous iPhoto libraries are now online. More about this below.
  • iTunes media lives here, too. My iTunes library file itself is still on my laptop; some people have the need to share everything across multiple computers, but I don’t need to solve this issue at home.
    • This does not make it accessible to the DS-Audio application, unlike the video application which can pull from multiple file locations.
    • I have not yet explored remotely accessing any of the content on the synology.
    • Update: Nope. iTunes happens to not like having its media location on a disk that’s not always available. As a result, it periodically resets itself to use a local, default media location, no matter how much I tried to ensure that the NAS share was mounted before running iTunes. This led quickly to situations where the library was out of sync with the media store, confused metadata, missing audio files, and piles of duplicates resulting from iTunes trying to re-re-reconsolidate its media. So unless/until iTunes in the future has better support for a network media location, I’m using my local disk, once again, for this. (A friend suggests using a symbolic link to point the local location to a NAS share; this seems worth a try, but I haven’t done it, yet.)
    • My nine-year old Brother network printer is now AirPrint enabled, simply by plugging it in to one of the USB ports on the back of the device.
    • Consolidation of backups from very old machines, like the Windows laptop that preceded my 1995 iMac.

Visibility & Accessibility

I greatly underestimated the satisfaction of having seamless access to my previously-archived photos. For years I moved from six months to a year of Lightroom library to an external hard drive. This freed up precious storage space on two generations of laptops but meant that I couldn’t get to those images without finding and plugging in that drive. Moreover, with each offloading cycle I had to re-identify the folders I had previously moved over and check backup status before I could even start moving the current set. It was a lot of mental overhead and consequently was all too easy to put off.

Now, with the NAS, I simply scroll further back into the years within my Lightroom library, and there are my photos. I am rediscovering photos and memories that I haven’t thought about in years. In photographic terms it’s inspiring: There are some pictures there that I’m proud of, work that I really like. In emotional terms, it’s wonderful: The summer we hiked every day; the trip to Orcas; odds and ends of days.

Under the hood

Shawn and Gabe both discuss the DiskStation software on the Synology, so I won’t go much into it except to say that I really like it. Being basically a UNIX-based NAS, this is a sophisticated piece of hardware and has a lot of capability. Synology overlays an accessible interface on top of the linux guts of the device, making volume creation and management, user administration, and application installation really slick.

Since it’s linux you can do all kinds of stuff, like ssh into the box, copy over an rsync script, and use the box as a server to perform scheduled backups to and/or from remote server. Zarino Zappia has a series of great posts that detail accessing the Synology via ssh and moving files around through the terminal.

Good stuff.

Looking ahead

I would likely look for a device with more USB ports next time. I’ve already swapped the printer with another USB drive a couple of times. It would be much more convenient to have a spare cable that I could easily attach another drive to temporarily.

At some point I’ll explore the features I get by opening up the NAS to external access, like music sharing to my mobile devices, as well as general file sharing. I have some of those remote server jobs to schedule, and I’m interested in trying out the Photo Station app. Meanwhile, there’s not much downside to this solution for me, and at this point it’s pretty much a fully operational battlestation. I got storage, backup, new capabilities from the Tiny Server in the Synology, and even got my cabinet cleaned up as part of my installation. I’m happy.

  1. And even moreso if you count the landscaping in the back yard! [return]

For some time now I have used to:

  • Copy markdown posts from Dropbox to my web server where my static blog engine parses and publishes them
  • Sync the slogger-generated entries and photos from that same web server up to Dropbox, where they are integrated into my Day One journal.
  • Occasional other file transfers

Previous posts about this: using mover & mover and slogger.1

Mover is positioned to provide this service at scale, and while I’m not enterprise power user, the tool was very useful for me. And, hacking with its API was itself a fun project. So I was surprised to learn, when my daily sync jobs appeared to be failing, that the Mover API was no longer supported and had been unsupported for a year!

Well, it was good while it lasted. Fortunately, the guys at Mover were nice about it and pointed me to a new tool, Kloudless. Because Kloudless returns similarly structured JSON in response to API requests, it didn’t take too long to modify my existing code to get up and running with Kloudless. So far, it’s working great: Kloudless seems to be faster than Mover, the API is quite nice, and it’s built for what I’m doing — API-based file transfers, rather than offering the API as a sort of side feature.

The biggest obstacle to getting up and running was needing to figure out how to handle the paging of returned results; unlike Mover, Kloudless returns only up to 1,000 items at a time, and my Day One folder has more entries than this. This is entirely sensible, of course, but it took me some time to lock in on a solution. After that it was a matter of cleaning up a little and updating my Editorial workflow to copy a file over and rebuild, and I’m back in action on both my laptop and mobile devices.

Everything should be shiny once again! Thanks, Kloudless.

  1. Here’s another great use of a webmentions implementation: Low-overhead lists of related posts, simply by linking them from another post and running the webmention hook. [return]

I’ve thought a couple of times about ways to connect this lonely personal site to the broader world. I have plenty of outgoing links, but little way to know if my posts actually connect with people on the other end, save for the occasional referrer link. Once or twice I started drafting a very small commenting system (one of which used the API and would have stored comments in that system), but my energy waned with my enthusiasm for actally doing something like managing comments.

So I’m really intrigued by the notion of POSSE publishing, which I encountered via Jeremy Keith’s Adactio. The core idea, briefly, is about owning the stuff you put online — which resonates with one of my original motivations for putting up this site — and the community around it has developed and assembled a bunch of resources to implement this goal.

What does this mean for interaction? Among other things, what we think of as “comments” begin their life by being published at the writer’s own site, through the implementation of webmentions, where the target site builds its own mechanism for interpreting and syndicating those comments. The publishers going full-on with this method are using it to syndicate to platforms like Twitter or Flickr, too, all with the goal of initiating everything they put “out there” from within their own tools and sites. Needless to say, this is pretty cool, and it’s an opportunity for me to tinker with Pretty Good Hat, too.

So How Does This Work?

There are two core elements to building this: Sending outbound webmentions, and handling incoming webmentions. I’m going to try taking on each of these in pairs of phases: Phase One is most minimal, and Phase Two will try to be a little more sophisticated and integrated. Each step will need to work within the constraints of my little existing blog engine, and it all leans heavily on the writeup and work done by Jeremy.

Constraint one is that I don’t want to get too deep into the guts of the existing build system for my static blog. This means that building a lot of microformats support into my own posts will have to wait. I’ll have to work any microformats support into my own writing through specifiers to the kramdown processor and minimal modifications to the ruby code that actually builds the site.

Constraint two has to do with the fact that this is basically a static site, and I like it that way. But being a good indieweb citizen requires reciprocity: I don’t want to just be a publisher of my own stuff, and need a way to respond to the generosity of others who may link to me. The “live” appearance of links that may ping my content via a webmention poses some design difficulties.

What I’ve Got So Far

What I have going for me is that this joint is built in a pretty stepwise fashion. The pieces are ruby, but they’re invoked sequentially in a shell script. Without modifying the core write-and-post mechanism, I can add a post-processing method to send webmention(s) using mention ruby client to send webmentions automatically to each URL in my own posts.1

So that’s sending webmentions. What about receiving them? Again, I’ll lean on Jeremy’s work and use his minimum viable webmention code. I start by simply receiving and logging the mentions, putting them into a sort of attachment file linked to each of my own posts.

One great benefit of building and joining these two elements of supporting webmentions is that I can build them in parallel and use one to test the other.

On the question of static versus dynamically displaying webmentions: The strongest way to respect my static site goal would be to receive mentions, store them, and periodically check for anything needing processing, and add any new mentions to the static site entry pages. But I decided on dynamic so I wouldn’t need to poll for updates or add more to the core build script. This means a small load when displaying pages, and I could change to a scheduled rebuild if this ever becomes a problem — but this is a very low-traffic site, so that’s unlikely. I also keep a single unified log file for webmentions that I could use to rebuild all mentions if desired or as I expand my sophistication of treating them. For example, right now I reach out to target URLs and retrieve only the p-name of the entry, if available.2

So where am I now? After several hours of tinkering over a couple of weekends I have a functional webmentions implementation. Mentions should be registerable against any post here at Pretty Good Hat, and will be displayed on the single-entry page for that post. My endpoint is discoverable, but like Jeremy I also include a link (again on the single-entry pages) to a submission form for manually sending a mention. I accomplished this in what I think is a reasonably effective way given the constraints I described above: I had to add a few formatting stubs in my build code to put minimal h-entry syntax into my entries, and it look a fair amount of trial and error to get that display the way I like it.

Presenting the mentions requires a jquery call, so it cheats the static site a bit, but I’m already including jquery for lightview, so I may as well re-use it.

I extend a huge thank you to Jeremy Keith, whose posts got me started on this. (This one in particular.) I’m also grateful to this microformats post by Barnaby Walters, from which I learned a bunch. This is obviously a thing in process, and I welcome and appreciate any comments and feedback.

  1. This client is great. It finds links within an h-entry, so it’s not working with anything your footer or header, and it looks to discover a webmention endpoint at your target site. [return]
  2. The h-entry microformat allows me to syndicate a lot more than this; I’d be really interested in learning if there’s a community best practice for what to syndicate. My instinct isn’t to replicate the content of a mention, rather to pull just the name and link. [return]

It’s approximately the twentieth anniversary of the Microsoft “home page”, as we called these things at the time,1 and a team has recreated that original site after some digital spelunking. One of the fascinating parts of the story is that there’s no solid record of exactly when the site was launched or what circa-19931994 web technologies were used.

There’s a not-at-all secret easter egg tucked into the code:

  <TITLE>Welcome to Microsoft</TITLE>
  <!-- To read more about the re-creation of the 1994 homepage, see readme.html -->
    <H1>Welcome to Microsoft's World Wide Web Server!</H1>
    <H2>Where do you want to go today?</H2>
    <P>If your browser doesn't support images, we have a <A HREF="1994-links.html">text</A> menu as well.</P>

And the linked readme.html describes the effort, including details about the pre-client-side image map, and a cool personal note from one of the developers: “It’s a big story with many turns and it makes you thankful for all the people (and companies) who have sought to make the web great.”

  1. OMG, that means I’ve been making my own tiny web pages for twenty years. [return]

A good desk-clearing is in order, as is evident by the volume of drafts I have begun to accumulate. Here in no particular order is a partial inventory of unfinished thoughts, notes and un-realized blog fodder. Free ideas all around.

There was one about going on vacation with my entire digital world so one can stay up to date with RSS feeds, Twitter and the Facebook while sitting in the reeds next to the river. My road trip media entourage includes an iPad loaded with media and games to help a four-year-old get through a ten-hour road trip, the trusty MacBook Pro (here primarily as a photo download location, since I take lots of photos while on any trip); and the adult iPad1 loaded with music, comics, books ambitiously scheduled to read, and games to play. As it turned out, with all this digitalia at hand, I spent a lot of time biking up a mountain and later sitting in the shade reading an honest-to-god book.2 I know.

A lot of talk in my media sphere lately is about women in tech, specifically gaming but as part of a broad current that has widened over the past few years as women respond to sexism at conferences, in hiring, and in every day interactions. Being a fallen academic, I naturally want to point some of this conversation to classic work like Rosabeth Moss Kanter’s Men and Women of the Corporation and the large body of writing on gendering in the professions (medical sociology, which I taught for a while, has a lot of this). The people responding to well-written and heartful posts about fear, sexism and misogyny with “everybody knows women don’t want to work in tech/choose to have babies/aren’t good at it anyway/asked for it” won’t care, but these bodies of work might help situate the authors’ experiences in a trajectory. While the tech industry didn’t invent this experience, it does seem to have polished it to a pretty fine sheen.

David Carr wrote recently on the overwhelming feast of prestige television

The growing intellectual currency of television has altered the cultural conversation in fundamental ways. Water cooler chatter is now a high-minded pursuit, not just a way to pass the time at work. The three-camera sitcom with a laugh track has been replaced by television shows that are much more like books — intricate narratives full of text, subtext and clues.

On the sidelines of the children’s soccer game, or at dinner with friends, you can set your watch on how long it takes before everyone finds a show in common. In the short span of five years, table talk has shifted, at least among the people I socialize with, from books and movies to television. The idiot box gained heft and intellectual credibility to the point where you seem dumb if you are not watching it.

About the same time, an episode of Pop Culture Happy Hour focused on nerds and nudity, with discussion of “nerds” becoming more acceptable as “enthusiasts” through sharing the things they (we) love.

There is a lot that is complementary about these two pieces, in the rising cultural currency of pursuits that have been marginalized and/or lowbrow. Pop Culture Happy Hour in particular is in position to bridge these realms (and continues to be one of the podcasts that I really look forward to). The cynical take on this is that it’s all marketing, that the kids who grew up on comics and video games can now buy them for themselves. But the one I prefer is that the kids whose interests were marginal — or marginalizing — are now in positions to make exactly the things that they love, and are able to share those things widely and sometimes (hey, because of that culture industry) even make money at it. Good for them [us]!

Should you find yourself migrating to a new MacBook, as I did recently (happily, not due to disaster or failure), don’t forget to copy over your private SSH keys. What am I doing tonight? Re-generating keypairs so that I can publish this very post through my bloggy-woggy machine. Speaking of which, Frankenstein’s looks like a very cool static blog publishing project: “It is a nameless, horrible and recursive assemblage of bash, sed, cat, echo, date, mkdir etc…, has no option, no for, and uses almost no variable.” Neeeat.

  1. The adult iPad is differentiated from the child iPad, most generally, by the relatively small amount of yogurt crusted into its chamfered edges. [return]
  2. James S. A. Corey’s Caliban’s War, sequel to Leviathan Wakes. Great, fun, galaxy-scale space opera. [return]

Alex Payne writes a letter:

Investors, shrinking in number but growing in wealth and political influence, own the means of digital production. Everyone else is doing shift work and hoping they still have jobs tomorrow.