My Life in the Cloud – A Four-Computer Syncing Scheme

One of the best things about living in New York City is being able to walk everywhere, and walking is much more fun when I am not carrying anything (other than, say, a notebook and maybe an umbrella). I had been lugging my aging MacBook Pro back and forth between my apartment and work/school for well over a year, and I was tired of the physical and psychological weight (i.e. if I am going out after work, do I want my costly computer with me at the bar, or should I leave it at work and suffer with just my iPhone for a night).

I had been vaguely considering getting two identical computers, keeping one in my locker at school and one at my apartment, and syncing everything (files, applications, operating system, all of it) between them, but the expected technical headaches/failures made it impossible to justify the cost of two shiny new Macs. The combined stimuli of a) hearing from lots of people who love Dropbox, b) a growing number of friends at ITP with Hackintoshed netbooks and c) an offer of an iMac to use at bit.ly when I started contracting work (as opposed to the previous internship work) made re-examine the problem.

I decided to keep my MBP at home nearly all of the time (to prolong it’s lifespan), use the iMac at work, and get a netbook off of craigslist as an experiment to keep in my locker at school (I ended up getting a Dell Mini 9 for $215; installing OS X was mostly painless). I’d install OS X (one Leopard, two Snow Leopard) on all three computers, install my favorite applications (I was unwilling to use another operating system primarly because I like my Mac-only apps so much), synchronize crazily and seamlessly, and walk without being encumbered. (The fourth computer is my iPhone 3GS.)

It’s now been four weeks, and my scheme has been working well. I’m doing different things for different applications, as described below:

  • Gmail is in the cloud as it always has been, but this becomes especially important when you’re using multiple computers. I have Mailplane installed on all three computers to access it, but that doesn’t have any data of its own to sync.
  • Evernote handles syncing itself between as many devices as you want, or so it has so far.
  • Address Book and iCal are being synced by MobileMe – I haven’t had to pay for it yet, and am not thrilled about the $99/year, but it’s also nice to have these things automatically synced to my iPhone even when I don’t plug it in. I might switch over to some sort of free Google-hosted solution instead. (Note that MobileMe had all sorts of problems when I tried to sync my keychains on Snow Leopard. I ultimately ended up turning off that sync, restoring to a pre-install backup, and re-installing the OS… I don’t really need to sync my keychains, but it was a pretty big hassle.)
  • Things stores all of it’s information about my various to-do lists in an XML file in it’s Application Support folder (which is in the Library folder of my user directory). I quit the app, moved its folder into my Dropbox folder, and then made a symbolic link (or alias) to that folder from it’s original location (using a Terminal command similar to “ln -s /Users/steven/Dropbox/Things /Users/steven/Library/Application\ Support/Cultured\ Code/Things” on all three computers. Things doesn’t know that the files are in a different place, and they have synced so far without any issues. The iPhone sync on Things is still broken though – hopefully there is a fix coming soon.
  • Adium needed to be synced so that I could have all of my AIM conversation transcripts in one place (or, really, in all places). Putting the Application Support folder in Dropbox did the trick.
  • 1Password also syncs between computers with Dropbox as described above and syncs beautifully over a wifi network with my iPhone. (Note I ran into some trickiness with the Firefox extension – it expects the actual application to be in the same directory on all three computers, which is only a problem if you try to organize your Applications folder into sub-folders, which you should never ever do for unrelated reasons that I won’t go into here.)
  • Firefox is the finishing touch – I have my Application Support folder for this in Dropbox too, and this syncs everything: current tabs, bookmarks, history, AwesomeBar, extensions, all of it. It was essential that this application sync properly for the whole thing to be feasible (I use the AwesomeBar constantly), and it’s amazing. It even recovers my tabs nicely if it fails for some reason. (An added benefit is that my puny little netbook can’t handle lots of tabs, so it forces me to keep things to a reasonable minimum.)

Note that I am very careful to quit all of these applications and let Dropbox do its thing before I shut down any of these computers to go to another place, but it keeps ‘conflict copies’ of the files in case I forget. I’m also not doing anything at all with my music beyond keeping a good chunk of it on my iPhone, and that hasn’t really bothered me yet as I don’t often need my whole music library at work or at school.

It’s hard for me to accurately describe the psychological freedom that comes with having all of my most important data easily accessible at whatever computer I might find myself in front of (in theory, I could install everything on a new machine without having any access to the others and be up and running completely comfortably relatively quickly). I’m enjoying it and have been quite satisfied.

And one more thing – I love my netbook. Train rides aside, it was incredibly practical for traveling in Europe for two weeks with my family, it’s super-easy to carry casually in one hand around the floor at ITP, the three hour battery life seems absurdly luxurious (in comparison to the ~30 minutes I get on my MBP), and it was sooo cheap.

Let me know if you have any questions or want help setting this up for yourself!

Web Ideas – UserVoice Re-purposed

http://webideas.uservoice.com

Nearly a year ago I posted about this blog’s “web idea” category, and wrote:

During conversations with friends, I regularly have ideas for websites, services, or other technologies. These conversations happen in person, over email, on instant messenger, via text message.

[...]

Ideas, I have found, are relatively commonplace; the real work is in their execution. Sometimes people guard their ideas, keeping them secret out of fear that they will be taken and implemented by someone else first. None of that here. Please, take these ideas, and please, bring them to life. I have more of them than I’ll ever have time for, and even if I were to eventually have time for all of them, they would have long-since lost their relevance. If you find yourself with sufficient knowledge, time, and interest to start work on one of these, I would love to talk about it and hear what you are thinking about what I was thinking.

I’ve continued to have these ideas, and I scrawled some of them in my notebook, left some of them in instant messenger conversation logs for later searching, and saved many of them in Things. I’ve been dissatisfied with how private all of these storage media are, and have been inspired by Alex Payne’s posts on http://ideas.al3x.net/. I’ve considered doing something similar, but I’ve worried that the formality of the text boxes on a proper blog of any sort (whether it’s here or on Posterous or Tumblr) would discourage me from regular and casual posting.

UserVoice to the rescue! Built as a robust user-feedback tool for websites, I realized that I could re-purpose it as a tool for organizing these ideas in a public and collaborative way. Anyone can post ideas, anyone can comment on them, and anyone can allocate one of their limited number of votes to indicate that they like an idea. I hope that this will provide a mechanism for bringing the best/most-desired ideas to the top of the list and act as a useful metric for prioritizing projects.

(Note that there are several other sites that do this sort of thing, but the others are either not free to use or do not have the same collaborative vibe. Full disclosure: betaworks has invested in UserVoice as well as in bit.ly, the startup for which I work.)

There isn’t much on http://webideas.uservoice.com yet, but I’ll be adding more as I migrate over my old ideas and come up with new ones. Feel free to contribute, and please take one and build something!

Textonic Article on MobileActive.org

cross-posted at textonic.org

Cory Ramey has published an article about Textonic at MobileActive.org – we’re excited about the press, and please let us know if you want to help out with the project!

When People, not Computers, Sort SMS Data

An Infrastructural Insufficiency of the Internet

The Internet, when I first started using it, felt like a social desert. People had email, instant messaging, chat rooms, and discussion forums, but these channels for communication felt separate from everything else and more like alternatives to existing real-world channels. Communication was isolated from destinations for the consumption of content, from tools for the creation of content, and from platforms for the publishing of content.

Eventually, sites for the social sharing of content appeared, and each of these maintained separate representations of the social graph. Over time people collected contacts on Flickr, friends on Facebook, and followers on Twitter, and such sites became oases of social functionality. At first these patches of green built walls to keep out the marauding hordes of anonymity, but as they grew larger they also grew more open, and they started to trade content amongst themselves.

Each real-world individual, however, was forced to maintain a separate existence in each of them simultaneously. It was difficult for people to travel with various aspects of their digital identities between walled oases, and it was nearly impossible for them to take their friends with them when they did. As a result, people were forced to duplicate their selves and their relationships. Some walled gardens tried to build roads to connect with (and undermine!) the others, but nothing really improved. Everyone had to maintain a copy of themselves in each oasis in which they wanted to produce and share content, and life was a mess for everyone. It was time to build something new, a sort of subway under the blossoming desert, so that every aspect of every person could be wherever it was appropriate for it to be, all the time, all at the same time…

- – - – -

The Internet has outgrown its social infrastructure. It’s becoming increasingly inconvenient and infeasible to create and maintain multiple copies of our networks, with all of their social complexities (friends, family, coworkers, acquaintances, ex-girlfriends, etc), and with all of their nuances of interaction (friend requests, @replies, emails, wall posts, blog comments, etc). Tools such as Facebook Connect are hopelessly hindered by over-saturated social graphs, pre-existing notions of privacy, and misguided attempts to pull content back into single cluttered interfaces. Identity and content aggregators such as Chi.mp, Plaxo and Friendfeed don’t provide the tools for web-wide social graph management. Put simply, we need new tools for the modern social Internet.

What will they be like?
Who will build them?

The Stream-Packet Duality of Content

This post develops the conceptual language surrounding the product ideas in my previous post, Filtration as a Tonic for Internet Vertigo.

Towards the beginning of his aforementioned blog post, John Borthwick writes:

what emerges out of this is a new metaphor — think streams vs. pages

I think that this progression of metaphors is moving in the right direction, but it needs to be taken further. Streams consist of web content that is delivered directly to the user (to a Twitter client, to an RSS reader, etc), and this is in direct contrast to content that lives on specific pages to which a user must navigate in a web browser. Streams are dynamic, up-to-date and are delivered in (near) real time, while pages are static and not necessarily current.

Streams, however, are just collections of individual pieces of content, or packets. Tweets, status updates, blog posts, photos, mp3 files, and video clips are all discrete packets of content. These packets are the units which a user actually consumes as information, and streams are just a way to group those packets over time, usually based on on source (such as a specific blog) or topic (such as a search term on Twitter). But there are potentially more potent ways in which these packets can be organized than by their original source/topic, and this is important because these streams tend to be overwhelming in their aggregate. Borthwick continues about the future of content delivery via streams:

Overload isn’t a problem anymore since we have no choice but to acknowledge that we cant wade through all this information. This isn’t an inbox we have to empty, or a page we have to get to the bottom of — it’s a flow of data that we can dip into at will but we cant attempt to gain an all encompassing view of it.

I suspect that there is a more optimistic solution, however, and that there are better-than-random ways to organize the flow of content from our collections of streams. There will be some packets in these streams that are more important to individual users than others, so I want services that surface the best ones and hide the others. I predict a future in which streams are cut, rearranged, reordered and remixed into a single source of content that always has that moment’s most important/relevant/enjoyable packet at the front of the queue. The future of content on the web will be based on tools that focus on perfecting the delivery of these individual packets of information to users for consumption.

I agree with Borthwick, and think that the re-conceptualization of the destination web of pages into a real time stream of pages is the next (or current?) big thing. But I think the re-conceptualization of those streams as collections of individual operable packets is the big thing after that.