lifehacks

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!

lifehacks

An Idea for SizeUp, a Tiling Window Manager

I’ve recently been using a Mac OS X tiling window manager named SizeUp. I had an idea about which I emailed the developer, and I thought it was worth sharing here too -

Hi,

I’ve dreamed about having a tiling window manager for years, and I was fortunate enough to see Alex Payne’s tweet making a similar lament; I found SizeUp as a result. I’ve been using it for a week or two now, and I love it. Both on my 15″ MacBook Pro, and when the MBP plugged into my 30″ external display. Nicely done.

I have a suggestion though – I wish I had slightly more control over how windows were sized. I understand how it could be a user interface and/or Mac OS X nightmare to let users specify custom sizes or behavior for how windows snap to other windows. But at the same time, I’d love to be able to assign windows to a grid location occupying less than a quarter of my screen. For example, Adium chats don’t need that much screen real estate, even if iCal and Firefox do.

Rather than use the arrow keys to indicate location, what if you used the physical QWERTY keyboard locations of the letter keys? In it’s most simple form, W S A D could correspond to Up Down Left Right. But you can do more interesting things too, and split a screen into a six- or nine-rectangle grid using Q W E A S D or Q W E A S D Z X C. Any one of those keys would place a window in the respective corner of the grid, so [shortcut combination]+Q on a six rectangle grid would make the window use one sixth of the total size, with a width equal to a third of the screen’s width and a height equal to half of the screen’s height. If you wanted a larger window, you could press multiple adjacent letter keys simultaneously – [shortcut]+Q+A would make the window take the leftmost third of the screen, and [shortcut]+Q+W+E would have the same effect as the current [shortcut]+Up. It might make sense to use shortcut keys on the right side of the keyboard with these letters (shift+option seem to be sufficiently unused in this context), or you could use a different set of letters and keep the shortcut keys where they were. In the SizeUp Preferences, users could even specify the number of rows and columns in the grid they wanted to use and the keys they wanted to assign to each screen location.

(This idea is somewhat reminiscent of a still-incomplete project I was doing a few months ago: a Javascript portfolio website that used the keyboard for navigation, had a representation of the keyboard on the screen, had all content exist on that visual representation of a keyboard but at different zoom levels, and used the physical keyboard keys and spacebar to zoom in and out on the on-screen keyboard to view content at different levels in the hierarchy. There are a few blog posts about it here.)

Sorry that was so long-winded, and please email me if you want to discuss further or need me to clarify.

Keep up the good work!

Best,
Steven Lehrburger

lifehacks
web ideas

Gmail Hack – Muting Filtered and Labeled Threads

One of the coolest things about Gmail is the ability to ‘mute’ a thread – the ‘m’ keyboard shortcut will archive a thread and prevent future replies from moving that thread back to your inbox. This is especially useful for managing high-traffic email lists for which one only needs to keep track of a subset of the posts.

Unfortunately, this feature works only for emails that are in your inbox. If you have the emails going to that list filtered to skip your inbox and go straight to a particular label (which is common practice for dealing with multiple lists), then muting doesn’t help – the emails are already skipping your inbox, and the threads will still show up as unread in that list anyway.

But there is a solution! Albeit a somewhat complicated one, so read on if you have the same problem (note part of it is Mac OS X only):

  1. First, I made a new Gmail account – the name doesn’t matter, as I was the only one who was going to use it. I changed my filter that had previously been applying the ‘ITP – student’ label and skipping the primary address’ inbox to instead forward the emails to that secondary address and skip the primary inbox.
  2. Then, in the secondary Gmail account, I set up that filter again to apply the same label (although this isn’t strictly necessary) but kept everything in the inbox. If I want to mute a conversation, I can just select it and type ‘m’ (with keyboard shortcuts on), and it won’t show up in that inbox any more, unless someone replies to me specifically. So far so good.
  3. What about sending? I want to be able to reply to the list too, and do it as I was replying before. So I went into the Accounts tab of settings of the secondary email address, and added my primary email address as the default address from which to send mail. Since this email account never receives or sends email to individuals and is not synching with my Address Book, whenever I accidentally try to send a regular email from that account the person won’t show up in the auto-complete, I’ll catch myself, and switch applications. Using a different theme for each account can also help you differentiate.
  4. But there is a problem – emails sent from that secondary account will be in that account’s sent items, and not in the sent items of my primary account. Ah, but when I sent an email to the list it was getting sent back to me anyways, so my primary account will receive that new copy of the email I sent from my secondary account (pretending to be my primary account). They should then be searchable as normal. I even tweaked the filter in my primary account to not forward emails that are both to the student list and from my primary account to the secondary account, since I already responded to the thread and don’t need to see my response again.
  5. And finally – and this is the key piece of the entire puzzle – I used Fluid to make a site specific browser application for Gmail, and I use that app to stay logged in to my secondary account. With Firefox logged in to my primary account, I can stay logged into both at all times (if you use Safari as your primary browser it might only let you be logged into one… not sure what the solution to this is). And because Fluid does not behave as a full browser, if I click a link in a list email in my List-specific app, it will open in Firefox (and thus be, forever, in my AwesomeBar history). As an added bonus, I get a little red flag in the dock saying how many list emails I have unread, and I can simply close the Fluid app and not concern myself with the list if I am too busy for the distraction. (Update: I am now using Mailplane, which makes it easy to switch between multiple Gmail accounts.)

Feel free to comment or email if you have any ideas or questions or need help setting it up!

(Note that I tried another solution first – using Gmail’s stars to mark the student list threads as muted, and then trying to match those stars in the incoming filter. So new emails going to that starred thread would theoretically not be re-labeled with the student list label once they were starred and archived once. This doesn’t work, however, because the “is:starred” filter does not ever match incoming messages.)

ITP
lifehacks

4-in-4 Day 4 Project 4: Social Network Organization

My final 4-in-4 project was originally going to be “Plan Trip to SXSW” – including buying plane tickets and book a hotel – but not quite enough people seemed like they were ready to commit yet (props to Liesje for being decisive).

It was during this realization that I went to post my finished blog entry for the M[]leskines, and noticed that DreamHost was down. I spent a while trying to diagnose the problem (before they finally posted a proper status update) and researching other web hosts.

Somewhat simultaneously I received another flurry of random Twitter followers, and, since I hadn’t looked at my feed in days, decided that organizing them was more urgent, and made that my project. There’s a blog post that will come soon about some UI design thoughts that were crystalized by this project, but I don’t have time to finish it now.

I went through the 107 people I was following on Twitter, and copied their user names and real names (if specified) into one of five txt files based on my relation to them (click for full size) –

Those groups are Friends, ITP, Networking, Unknown, and Bots. I then used those lists to create groups using the functionality in TweetDeck, and now my Tweets are sorted (see rotated image below, or click for a horizontal version). This should make it easier to keep up with the groups which are most important and look through the less important feeds when I have time. I’ll keep both sets of lists up to date as I follow more people. It was a small project, and not as creative as I would have liked, but it needed to happen anyway and my day didn’t quite go as expected.

4-in-4
ITP
events
lifehacks
projects

4-in-4 Day 3 Project 3: M[]leskine

I was in NYC for a couple of weeks during the summer of 2006 after I finished the Career Discovery Program in architecture at Harvard’s Graduate School of Design, and I went to see the exhibit of the work of architect Zaha Hadid at the Guggenheim. I enjoyed exploring the variety of her built and unbuilt design work, but it was her sketchbooks that made the most lasting impression (image by Ivar Hagendoorn, same books different exhibit) –

If you look carefully, you’ll notice that a rectangular piece has been cut out of each page so that a pen can be stored inside when the book is closed. I had started to use a Moleskine notebook during the program at Harvard, and when I finished my first one I cut my second one like Zaha’s using a ruler and an X-Acto knife. That particular brand of notebooks is relatively popular and often recognized, but I think the reputation is deserved, as they are quite durable. I carry them everywhere, and with some black electric tape on the binding they will last more than six months.

I was shopping for architecture supplies at Accent Arts in Palo Alto, and noticed a short black lead-holder style pencil that looked like it would fit horizontally across the top of a notebook rather than vertically next to the spine. I compared it to one they had in stock, and it fit perfectly. My notebooks since then have all had a whole cut out at the top, and I’m currently on my eighth.

In addition to the pencil, Gabriela gave me a fountain pen that fits nicely, and I’ve been using Pilot G2 Mini’s more recently for their simplicity and reliability.

It takes an hour or two to cut each notebook, and I decided to try getting them laser cut. I took one to Canal Plastics, and talked to Raymond, with whom I had worked to get pieces of acrylic laser cut for architecture models at Kevin Kennon Architect. Both covers of the notebooks bend back, allowing for a cut straight through all of the pages, and he agreed to give it a try.

The experiment was a success, so I ordered ten more moleskines from Amazon. I had planned my third 4-in-4 project to be to set up a store on Etsy on which I could sell the lasercut Moleskines.

He agreed to cut those too, but had some trouble with burning on one of them, and didn’t want to cut any more. I cleaned off the ash –


- and will probably give a few to the friends that have requested them (Dan, Kabir, Jorge, Cassidy) and save the rest for later. It’s a somewhat scaled back third project, but my second one was pretty ambitious, so I’m satisfied.

4-in-4
ITP
events
lifehacks
projects