One Concrete Action

Never underestimate how crazy busy your life will become when you have kids. Our first son, born this past New Year’s Eve, hit us like a ton of bricks. Taking care of him, on top of a day job, has meant my side business has taken a backseat at times.

Nonetheless, since he’s been born I’ve managed to launch a brand new design of our website, release a major upgrade to VirtualHostX, build a new Mac app (coming soon), and I’m in the process of writing my second book.

None of that would have happened if I had spent much time looking at my ever growing todo list. I would have been too overwhelmed. Instead, I’ve been making progress on all of my areas of responsibility by way of one simple trick.

Every day, no matter how small, I open up OmniFocus and find one concrete action I can take that will move me closer towards one of my goals.

It’s such a simple idea it’s nearly silly. And I realize even writing about it borders on the kind of syrupy “life hacking” articles I dread. But I’ll be damned if it doesn’t work. Whether it’s brainstorming a new chapter outline (yesterday), updating an expiring SSL certificate (today), or fixing an app bug (tomorrow), every day I cross something off my list.

Much like Jerry Seinfeld’s famous productivity advice, the simple act of completing an action every day in a row builds momentum, which, in turn, makes it easier to mark off the next day – or harder to skip depending on the way you look at it.

The idea really builds off of GTD‘s concept of “next actions” and being able to quickly and decisively choose what to work on next. Apps like OmniFocus make the process of picking that next action simple and then get out of your way.

I really do wish it had occurred to me to motivate myself this way sooner.

iCloud Doesn’t Backup Your Photos

I had a conversation yesterday with two friends. Neither one is technical at a developer level, but both are long-time Mac and iPhone users. They know their way around the platform.

My first friend, we’ll call him Ted, said he was having trouble with his iPhone. His photos and videos had grown to take up nearly 10GB of storage space. And with a only a 16GB iPhone, his phone was very nearly out of room. He wanted to know how to backup his photos off his device but still be able to access them when needed.

He assumed there was an Apple-centric way of doing this. He figured he could just buy more iCloud storage space. He was shocked when I explained to him that the only user-friendly solution I know of is Dropbox. I told him that even if he bought more than the default 5GB of iCloud space, he’d still be limited by his on-device storage limits. iCloud only backs up what’s currently on your phone. If you delete photos and videos from your device, they’re similarly deleted from your next iCloud backup.

I walked him through how the Dropbox app works. Install it on your phone, sign up for an account, and the app periodically uploads everything in your camera roll to your Camera Uploads folder in your Dropbox. Once uploaded, you’re safe to delete them from your device – freeing up space. Then, you can either use the Dropbox app to browse your photos or a dedicated Dropbox photo app like the wonderful Unbound.

Ted thought that idea sounded like a great one and was all ready to sign up. But then I told him the catch – the free Dropbox plan only offers 2GB of space. He needed at least 10GB, which I said would cost $99 a year.

He was dumbfounded. In an age where seemingly every online service is free, why should he have to pay for Dropbox? I tried explaining the value it added and how much I loved the service, but he just couldn’t get past the idea that this was a service that Apple should be offering as part of owning the phone. I couldn’t really disagree with him. It does seem like a problem Apple should be solving, but they’re not.

With all that said, my other friend Larry chimed in. He said he wasn’t worried about his photos and videos because he was backed up. I asked if he were already using Dropbox or paying for one of the larger iCloud storage plans. He said “no, I bought the larger 32GB iPhone so all my data is backed up with Apple.”

This time I was flabbergasted.

He went on to explain that all of his data was safe because of iCloud. I let him finish and then had to break the bad news to him that iCloud only works for the first 5GB. Once you go beyond that, none of your data is backed up unless you’re a paying customer. Apple, through all of their flashy marketing around iCloud and promises of it “just works”, has convinced a large set of non-technical users that their most precious data, their photos and videos, is safe when it’s actually anything but.

This is exactly that problem that I’m writing about in my book. I’m desperately trying to preach to users that the data you hold so dear isn’t being handled by Apple. If you lose your phone, in most cases, your photos and videos go with it. And as I talk to more and more people about this problem and explain to them how things actually work, so often I’m met with incredulous stares. Not that they’re surprised or outraged about their data not being safe, but at the sheer audacity that someone would suggest they need to pay for their data’s safekeeping.

In person and in my upcoming book, my goal is to make a solid case that your data is most definitely worth the measly $9.99 a month Dropbox charges. My sister was absolutely devastated when her iMac’s hard drive failed without a backup. She mistakenly thought that her (at the time) iPod’s photo cache served as a full backup of her photos. I can still remember the awful look on her face when I explained that her four years of high school photos along with the first year of her college photos were reduced to nothing more than 160 pixel wide thumbnails.

Apple never marketed to her that her iPod Photo backed up her memories, but she still mistakenly assumed that. But now we’re in an even worse situation where Apple really is marketing to users that all of their data is safe. I can only cringe at the thought of how many customers go to a genius bar to get a replacement phone and are told “just sign into iCloud and all your data will be restored” only to find out that’s not the case.

My mom meticulously archived and organized our family photos into dozens of albums when we were growing up. All those albums and film development cost real money. It was an investment. The idea that everything online should be free has created a pernicious entitlement culture where users are unwilling to pay a little money to safeguard their most precious digital memories.

It’s a terrible situation and one I’m trying to correct with my book this Summer.

Printing and Mailing Photos to Your Grandparents

We have a three month old kid. That means we take a lot of photos. I’ve done the math, and in the last three months we’ve taken 1,202 photos of him. As I’ll write about in my upcoming book on Dropbox photography, all of those photos are stored and sorted in a shared Dropbox folder that both my wife and I have access to. For other family members and friends, we share the best of those photos via a shared iOS Photostream. I’m really a big fan of this feature. With just a few taps I can share as many photos as I want and have them near-instantly delivered to the twelve people who subscribe to our photostream. Everyone in our family and circle of friends has an iOS device, so no one’s left out. I never have to fumble with emailing attachments, or posting links to Flickr. All the photos are available in the native iOS Photos app. Best of all, I can post comments with the photos I add, other people can like and add their own comments, and they can even share their own photos, too. It all works splendidly.

The only downside is for our grandparents. They don’t have iDevices. Sure, our parents are always showing photos to them on their phones and iPads, but our grandparents miss out on the personal connection they’d get from having their own collection of photos. To try and fix this, I’ve started physically printing and mailing batches of photos to them every ten days or so. They love getting photos they can touch and display in the mail. It really is like their own real-world photostream.

The problem is this is manually intensive. Printing batches of photos, keeping up with ink and photo paper, finding sturdy enough envelopes to handle twenty photos at a time, and then dealing with postage slows the whole process down. So I’ve been experimenting with three online photo delivery services to handle all of this for me.

Over the last few months I’ve tested Shutterfly, iPhoto, and PicPlum. Ideally, I’m looking for a service that I can quickly upload the latest photos – from both mine and my wife’s iPhone and from our good camera – and have them sent to multiple addresses without having to re-type the address each time. The photos need to be delivered fairly quickly and, most importantly, arrive in good condition.

I’ve given each of the above services multiple tries, and they all have their good and bad points. For those of you who like to skip ahead, the winner was Shutterfly, followed by PicPlum, and then iPhoto.

iPhoto

I really wanted to like iPhoto, as it’s Apple’s recommended service. But there are a few negatives that keep me from going this route. First of all, the iPhoto iPhone app is nearly impossible to figure out. I’m an app developer by trade, so I like to think I can understand most apps without much instruction, but the iPhoto UI baffles me. Selecting multiple photos and preparing an order for delivery was a beast of a process. Add to that extraordinarily long ship times and they were a clear no go. The actual photos were of middle of the road quality and arrived in a plain white cardboard envelope that seemed to protect them well enough.

PicPlum

PicPlum is an interesting service. Unlike iPhoto and Shutterfly, which are really designed for printing and delivering photos to yourself, PicPlum bills itself as a service designed for printing and mailing photos for other people. Everything is done through their lovely web interface. You can drag and drop your photos directly into the web browser. Then it’s just a matter of choosing the recipients from your previously saved addresses.

PicPlum loses points for not having an iOS app. Typically, I want to only send my best photos to be printed. All of the best ones are already handily organized and available in our shared photostream. If they had an iOS app, I could choose them directly from that album. But, as they only support desktop uploading, I have to find and gather them from the various photo albums in my Dropbox. This isn’t a huge deal-breaker, but it is slightly less convenient.

The biggest downside to PicPlum, and ultimately the reason I no longer use them, is the photos arrive in a flimsy paper envelope. The kind of thing you’d mail a birthday card in. I used PicPlum to send twenty photos three times. Twice, the envelope arrived torn with the photos sticking out. In one case, the adhesive sealing the envelope was barely affixed and everything was in danger of spilling out. And while I didn’t encounter this problem in my testing, with such a flimsy delivery method, there’s absolutely no protection against water damage.

I’m actually quite sad that I can’t use PicPlum. They make it easy to send to multiple recipients and their photos were by far the highest quality of the three services.

Shutterfly

As I said above, Shutterfly is who I decided to go with. Their iOS app is a little long in the tooth, but it’s serviceable and easy enough to use. I’m able to choose photos from my Photostream and upload them quickly. I can pick from a list of previously saved addresses. The price is the cheapest of the three services, and the photo quality is good. Unlike PicPlum, Shutterfly’s prints arrive in a sturdy cardboard envelope inside an even larger cardboard sleeve. I’ve mailed six batches of photos so far and none have arrived damaged. The double envelopes even protected the photos against our rain soaked mailbox.

The only problem I’ve encountered with Shutterfly is their shipping time. Using their default shipping option, which is about three dollars, the photos arrive anywhere from five to twelve days later. For three bucks, I’m not sure what I expect, but two weeks is way too long to wait for a delivery. So I usually just pony up the extra cash and pay for the $10 two-day delivery method instead. It’s faster, and comes with a tracking number, too.

Overall, our grandparents have been thrilled with the service. They absolutely love getting their bi-weekly photo surprise in the mail. The physicality of holding real photos in your hands makes them feel connected to our son in a way that FaceTime and flipping through photos on an iPad just can’t. I highly recommend keeping your non-technical friends and family in the loop this way.

Dealing with Asshole Customers

I’ve always taken great pains to be exceedingly fair, responsive, and back-bending in the way I interact with my customers. I firmly believe it’s best for business long-term if you always give your customer the benefit of the doubt and treat them as you’d want to be treated.

But recently, for reasons I don’t understand, I’ve been getting email after email from customers who are, quite frankly, being assholes to me from the very first contact. This type of customer has always existed, but in recent months the frequency that someone is a jerk to me before I even have a chance to respond has increased.

Lately, the customer starts out their email calling me names and cursing because “how dare I” release a new version of VirtualHostX a month or two (or three) after they purchased their copy. They believe that I’m somehow trying to screw them over personally by releasing a new version – something I do with regularity every 12 to 18 months.

I’ve always had a consistent, unwritten policy that any customer who buys one of my apps prior to a major upgrade gets a free upgrade to the new version. In fact, the same goes for any customer who emails in and complains no matter how long ago they originally purchased. I’d rather lose an upgrade sale and have a happy customer then make a few bucks and have them feel swindled.

In recent weeks though, I’ve had a change of heart. Chalk it up to one too many asshole customers I guess. I’m still happily providing upgrades to any one who asks. But for those who are jerks about it from the get-go, I’m instead cheerily refunding their money, deactivating their license, and nicely explaining that I’m not interested in their business.

It may be slightly passive-aggressive, but this new policy sure feels better. It’s nice to not get walked all over for a change.

One thing I am going to change to try and improve the situation is add a more prominent note on my product pages explaining the upgrade policy for recent purchases. Perhaps making the policy more clear will help prevent angry emails before they’re written.

Any other developers out there with similar policies? Would you react the same or handle the situation differently? I’d love to hear your feedback either in the comments or over email.

My Favorite Chair

I’m a bit of a snob. I don’t just like nice things, I like the best things. That’s not to say I spend extravagantly or throw my money around, it’s just that when presented with buying a good product or saving my money a little longer and buying a better constructed, great product, I’ll usually pick the great product. It’s why I bought an iPad rather than a Kindle Fire, it’s why I shop at Seven rather than Gap, and it’s why I use proper noise-canceling headphones rather than Apple earbuds. My point is that I generally take my time to suss out and spend my money on quality products that last.

So, four years ago, when it came time to buy a new office chair, I knew I had to do my research. I spend eight to sixteen hours a day in front of my Mac and my body starts to ache near the end no matter how many breaks I take. Over the years I’ve used everything from an art stool, to a $150 Office Depot chair, to whatever IKEA happened to be selling that month. I even picked up a $600 task chair from Relax The Back. They were all crap. The back support was non-existent. The seat cushion grew flat over time. And, in almost every case, the chair would wobble and lose height throughout the day. I knew there had to be something better available.

Honestly, I’m writing this review four years too late. Back in the Summer of 2010, while I was working full-time from home, I really did my research. I read countless reviews, inspected warranties, participated in online groups, and bought and returned a few models. The one chair that kept getting the highest marks, and, coincidentally, the only one I could never find in a store to try sitting in, was Herman Miller’s Embody series.

They don’t come cheap, running anywhere from $1,100 to $1,600 depending on the model, but after much back and forth, I finally placed an order for one sight-unseen.

I couldn’t be happier.

It has by far the best back support of any chair I’ve used. The back of the chair extends up to shoulder height and is modeled after the human spine. You can lean back into it and the material will move and bend with you as your turn or arch your back. The arms are made of squishy plastic that support your elbows without digging in. The seat cushion and the back are made of a mesh material that breathes and stays cool even after hours of use. And, best of all, the base is extremely sturdy. It doesn’t wobble. And it doesn’t lose height after extended use.

My only complaint is that it’s very noisy. Nearly every movement of your body causes some piece of the chair to groan. I’ve never for a moment thought the chair was falling apart or anything – nothing feels cheaply made – it’s just a side effect of how the base and back are constructed. They simply make noise as you move. It’s annoying at first, but not a deal breaker.

The chair also comes with a twelve year warranty. In the past I’ve had to replace cheap office store chairs every eighteen months or so. At $200 a pop, the Embody’s $1,100 up front price tag isn’t too far out of line if it lasts the full 10+ years.

Anyway, I’ve been using the chair in my home office for going on four years now and love it. So much so, that I bought a second one I bring with me any time I get an office job.

Money well spent.

Importing Jekyll Posts into WordPress

Nearly four years ago I switched my main site over to Jekyll. It’s been great. But late last year I decided to make that site and its blog purely about my software business and move all of my non-work posts over to my tyler.io domain so I could have a personal site again. To encourage myself to write more, I built the site with WordPress so it would be easy to publish. That meant I needed a way to convert and import all of my old Jekyll Markdown posts into WordPress. I found a few scripts that exported WordPress into Jekyll, but not the other way around. So I hacked together my own script, which I’ve pasted below. Hopefully this will help anyone wanting to make the same transition.

The script takes a directory of Markdown posts in the following format, reads their header meta-data, and imports them into your WordPress database.

date: 2013-04-08 20:57:14
title: PebbleCam
layout: post
permalink: /blog/2013/04/pebblecam/index.html
slug: pebblecam
Post content...

Switching from GitHub to GitLab

I’ve been a happy paying customer of GitHub since early 2009. But yesterday, for a few different reasons, I deleted all of my private repositories and moved them over to a self-hosted installation of GitLab. I didn’t make that decision lightly, as I’ve been very happy with GitHub for the last five years, but here’s why…

First, I’ve started working on a new Mac app. Every time I start a new project, unless it’s open source, I create a new private repo for it on GitHub. This project happened to be my 21st private repository on GitHub. If you’re familiar with their pricing structure, you’ll know they charge based on how many private projects you have. $22 a month will get you twenty repos. But as soon as you create that twenty-first one, you graduate onto the $50 a month plan. Maybe if I were actually hosting 50 repositories with GitHub I’d be willing to pay that much, but for the foreseeable future I’m going to be in the low twenties, and $50 a month is just too much. It’s a shame they don’t just outright charge you a dollar per month per project.

The second reason is an issue I’ve been mulling over for quite a while. I love the cloud. I love having my data in the cloud. But some of it is so precious, in this case my code, that I want to know exactly how it’s being taken care of and looked after. While I have no reason to doubt GitHub has plenty of backups in place, I have no way of really knowing for sure how safe my code is. Hosting it myself has its inherit risks, too, but at least I can have full ownership of my data and be certain of the backup strategies in place. This also dovetails nicely with the pleasure nerds like myself get in doing a job themselves. Whether that’s hosting your own email (which I’m not crazy enough to do), managing your own web server (yes, please), or automating your own digital backups, there’s a sick pleasure to be had in doing a job yourself and doing it well.

A final reason for switching away from GitHub was the uneasy feeling I got watching the story of Julie Ann Horvath unfold last week. I didn’t like the idea of my money going to a company that seemed so fundamentally broken. Since then, GitHub has taken forceful, actionable steps to correct the issue, but it still worried me.

So those are my three and a half reasons for moving my private repos away from GitHub. If you agree with me, or if you have your own reasons for wanting to move away, what follows is a brain dump of the steps I took towards getting moved over and situated happily on a GitLab installation.

First off, if you’ve never heard of GitLab, go take a look through their website. It’s a Rails app that is shamefully funny in how closely they’ve copied the look and feel and functionality of GitHub. Everything from the activity timeline, to pull requests, to user and team access roles, to issue tracking, to shareable git-backed gists. It’s all very nicely implemented. Many open source projects start off strong and can later falter when the creators get bored. But I feel fairly confident in GitLab as their community open source version is based off an enterprise product they sell and do support for. Quite a few businesses are using GitLab as a GitHub replacement in situations where their code needs to remain on site.

So, where are we going to host it? My initial thought was to boot up a new virtual server with Rackspace, which is where I host all of my business servers. Rackspace is great. A little expensive, but the customer support makes up for it. Their minimum monthly price for a 512mb server, which is all we’ll need, is around $10 a month. I was nearly about to create the server when I decided to finally take a look at DigitalOcean. They’re the new hotness in cloud hosting and have a reputation for being extremely inexpensive. (Bonus points: they offer two-factor authentication on their user accounts, which is something Rackspace still lacks.) Poking around, I found I could get a comparable 512mb server with DigitalOcean for a flat $5 a month. But what really sealed the deal is they offer one-click installs of various server apps – WordPress, etc. I wasn’t looking forward to the fairly intensive setup that GitLab requires, but amazingly, GitLab is one of DigitalOcean’s one-click installs.

True to their word, I had a ready-to-go GitLab server up and running in less than a minute after clicking the “create” button. All that remained was fine tuning everything to my needs.

The first step upon getting a new cloud server is to secure it. I always follow the steps outlined in this guide. It does a good job of locking everything down and only takes about five minutes to follow.

Of note, when you get to the section about enabling ufw (the firewall), DigitalOcean boxes don’t come with everything you need installed. I had to run the following command before setting up ufw…

sudo apt-get install linux-image-$(uname -r)

Another note, and this is just personal preference, I also modify my ssh port to be something non-standard. That can be changed in…

/etc/ssh/sshd_config

Also, while the user facing side of GitLab is great, I have no idea how security conscious they are. I’d hate for an unpatched security hole in their web app to expose any of my private code. One way to mitigate that chance is to lock down web traffic to the specific IP addresses you’ll be accessing it from. Your home, your office, etc. With ufw it’s just a quick…

sudo ufw allow from your-ip-address to any port 80

for each of your IPs.

Once you’ve gotten the security taken care of, you can move on to configuring GitLab. Most of the hard work is already done for you by DigitalOcean. You’ll just need to fill in the appropriate values in…

/home/git/gitlab-shell/config.yml

and

/home/git/gitlab/config/gitlab.yml

Then restart GitLab with…

sudo service gitlab restart

With all that done, the next step is moving your repositories from GitHub to GitLab. (I’m sure there is a better direct git-to-git way of doing what follows, but this was the simplest solution for my needs.) For each of your repos, do a clean mirror to your Desktop to make sure you’ve got everything.

git clone --mirror [email protected]:username/repo-name.git

Then, cd into the repo directory and….

git remote add gitlab ssh://[email protected]:22/username/repo.git
git push -f --tags gitlab refs/heads/*:refs/heads/*

That final git push with all the refs will push every branch and all of your tags making sure nothing is left behind.

Once done, you can safely delete your repo from GitHub.

The last step is making sure you have rolling backups of your GitLab installation and repositories in place. I looked into piecing together my own backup script until I realized GitLab already has a rake backup task available that stores everything into a single tar file. Perfect. I can then just upload that to S3 for safe keeping. To do that, we’ll be using s3cmd to handle the uploads.

sudo apt-get install s3cmd

Configure it with…

s3cmd --configure

Then, create a script in your git user’s home directory called backup.sh containing…

cd /home/git/gitlab && PATH=/usr/local/bin:/usr/bin:/bin bundle exec rake gitlab:backup:create RAILS_ENV=production
s3cmd put tmp/backups/`ls tmp/backups/ | grep -i -E '\.tar

Setup cron to run that script once a day and you’re good.


 | tail -1` s3://bucket-name/git/

Setup cron to run that script once a day and you’re good.

Aaron

20140101-104528.jpg

Nostalgia – Rename Your Photos

I have a problem. Half of my photos come from my iPhone (via the Dropbox uploader), which creates filenames based on the date they were taken. But all the photos from my awesome DSLR are named BLAHBLAH7001.jpg and BLAHBLAH7002.jpg. That annoys me. I want all of my filenames to be date based so I can quickly sort them and find the photos I’m looking for.

Much to my dismay, Hazel and Automator can’t solve that problem.

This Mac app does.

Launch the app, drag and drop a bunch of photos onto the window (or the Dock icon), and boom! Everything gets renamed appropriately based on the EXIF date.

Currently, there’s no way to customize the output date format. It’s set to yyyy-MM-dd HH.mm.ss. I make no apologies for that. If you’d like something different, feel free to modify the Xcode project or submit a pull request with the ability to customize the date 🙂 Also, it only looks for the standards based yyyy:MM:dd HH:mm:ss EXIF format. If your camera doesn’t follow along, Nostalgia won’t be able to parse it. Again, pull requests are very much welcome.

You can download Nostalgia for your Mac from here.

Journaling

I’m a little obsessive about data collection and retention. I’ve written a number of times about all the different backup systems I have in place to protect my data. And over the last few years the amount of data I’m collecting about myself (and family) has continued to grow. We’re taking exponentially more photos, posting many more status updates, and collecting real-time data about our sleep patterns, fitness activity, and location.

From the day I was born until around the time I entered high school, my mom kept a standard, wall calendar for myself and my sister. Every night (or nearly every night) after we went to bed, she’d pull out that year’s calendar and jot down a quick note on today’s date about what we had done that day. Since we’ve grown up, she’s passed on those calendars to us. For just about any day in my childhood, I can go up to my attic, find the right year, and tell you what my day was like. That’s an amazing ability. An amazing gift really. And earlier this year I realized that most basic human element of why was missing from all the data I’ve been collecting about myself. For nearly any day, I can look back and tell you where I was, what photos I took, and, potentially, what clever Twitter comment I made. But beyond that, I couldn’t tell you how I felt or why I did something. The human element was missing from all those updates.

So earlier this year I decided to change that and add yet another new metric into my increasingly always-on life: journaling.

Back in February, after hearing tons of glowing reviews, I bought a copy of Day One for my Mac and iPhone. I had never written in a journal or diary before, but I was intrigued by the possibility of having a written record to reference and look back on. So on February 11 I wrote my first journal entry. It wasn’t much. Just a quick paragraph summarizing the day – what time I woke up, what I had for lunch, where we went for dinner, and even the mundane details of what we bought at Target that evening. But the next day I wrote in it again. And again. Until it became a habit. I’d jot down a quick note throughout the day whenever it occurred to me to do so. But usually I spent five minutes before bed going over the day. No matter how boring or uneventful things may have seemed, I always made a point to write at least a few sentences. And now, nine months later, I just completed my three-hundredth entry. Two-hundred and fifty-three days in a row. Going all the way back to February, I can lookup and tell you exactly what I did that day, what I was feeling, and often times show you a photo to go along with it. It’s fundamentally changed the way I look back at past events. I’ve always had a good memory – but now I have a great memory. And with our first kid due soon, the idea of having a concrete record of him growing up is priceless. It’s my Mom’s calendars brought into a new century.

And none of this would be possible without a great app that makes journaling easy, is available everywhere, and stores my data in an open format that I’m confident is future proof and exportable to another system if the need ever arises. Day One fills that need perfectly.

A final, quick note. Early on in my journaling experiment I told a friend what I was doing. They asked why not just use Foursquare to keep a running tab of where I’ve been and what I’ve done. I’ve never been big on the idea of Foursquare. Simply checking-in at places doesn’t appeal to me. Partly because I want that data to be private, and also because a check-in by itself never seemed valuable to me. I suppose it’s nice to know where I was, but without the added context of why I was there and what I thought about the experience, it just seemed lacking. Journaling lets me document my life in my own words rather than a list of cold I-was-here-at-this-time data points. And, very important to me, my data is under my control in an open format and available to store, reference, and mash-up however I see fit.