Almost Endless Screen Real Estate

Ye olde setup

Some months ago I realized that my Mac mini, used as a media server in my livingroom, has been getting a bit long in the tooth. The 1,8 GHz Core (no 2) Duo with 1GB RAM and 80GB hard disk was top notch when I bought it around 3 years ago. But in the meantime I have aquired around 300GB of music, TV shows and movies (thank you iTunes store and handbrake) and the startup time of iTunes seemed to increase every week. It was also getting more and more time consuming to play flash videos, not to speak of HD TV shows.

Another thing that always somehow bugged me, was the fact that I had a whole machine only for serving media content, which just seems a bit too much. Since I don’t watch TV shows all day and also don’t listen to music all the time, the Mac mini was idle around 75% of the day. Sure it doesn’t consume that much power when idling, but nevertheless it always felt like a waste. Additionally there are some Firewire hard disks connected to the Mac mini, since I ran out of internal storage a long time ago (and didn’t feel like replacing the hard disk). Just more negative contribution to my carbon footprint.

My main machine for work and university is a black MacBook from late 2007/early 2008. For coding and longer studying, I hooked it up to an external 22-inch Full HD display and Apple wireless keyboard/mouse. Since I got tired of cabling/uncabling the MacBook, it happened all too often, that I worked on the small screen too long to be comfortable or had the MacBook connected to the display all weekend and missed its mobility. I also more and more often had the feeling, that the external display was a bit too small and that the combination of 22-inch and 1920×1080 resolution wasn’t right for me.

So around September this year I started thinking about how to improve my situation.

Choosing new hardware

The first solution I thought about, was the new Mac mini, which has two display outputs. I could hook it up to the display and the TV and have a machine for working and a multimedia machine at the same time. However, I am not satisfied with the hard disk size of the Mac mini. It is only a matter of time until my media data exceeds 500GB and I am not ready to give up the optical drive for more storage and the Mac mini server.

Then the new 27-inch iMac came out and I was instantly stunned by the display. Also the low-end 27-inch has a 1TB hard disk, which should be enough for some time, a rather strong CPU and a fairly large amount of RAM (did I mention the display?). So it was almost decided that the new setup would include a 27-inch iMac. The following weeks consisted of discussing the solution (thanks @0ktan for pointing out the size of the display several times a day), calculating how to finance it, and making lists to justify not going with the Mac mini variant. After this (for me fairly normal) decision process, I was ready to order and when I was somewhat surprised by a christmas bonus, I knew it was time for a christmas present for myself. So I ordered the low end 27-inch iMac with Apple Care and the new Apple Remote. Only to get notified that it will be delivered 24th to 31st of December (not in time for christmas). The following days I read about broken displays, supply shortage, graphics card failures, but I was convinced that this couldn’t happen to me and kept thinking about a name for it (really the hardest part of all). On the following Saturday I received a shipping confirmation with the 21st of December as the estimated delivery date. It goes without saying, that I was totally excited that the new machine would arrive before christmas, allthough the Apple status site still said 23rd to 29th. And then on the 18th the UPS truck finally arrived.

The screen real estate paradise

After the exciting unboxing, the setup was straight forward as usual. Entering my MobileMe credentials synchronized contacts, calendars, iDisk, and such to the new iMac. I copied my data and applications from my MacBook and the media files from the mac mini and have used the iMac since then almost exclusively (except for some trips to the couch with the MacBook).

Working with the iMac is just awesome. I can now have a browser window, IDE and a terminal conveniently beneath each other without overlapping. iTunes with my whole media library loads in seconds, even when I have a virtual machine running and the whole setup isn’t even that big. Since I have a rather small desktop, I was worried a bit that the iMac would look too big on it and that there wasn’t enough space for books and other stuff. But despite its large screen it consumes hardly more space than the 22-inch display with the VESA mount.

The mini Displayport to HDMI adapter still has to be delivered, so I don’t know yet if it is irritating, if the TV is permanently connected as a secondary display. If this is the case, I will have to manually disconnect the TV when I am working on the iMac. Also because my desktop isn’t that big I have to turn my head a little bit to see the edges of the screen, which can be a bit uncomfortable.

Since these two things can be easily filed under first world problems, I have to say that I am totally happy with my decision and that it is (again) the best Mac I have worked on so far.

Google Reader to Instapaper bridge

The dilemma

For some years now I am using Google Reader as my reader of choice for news feeds. I still think it’s the best way to get daily news (for me), although I do recognize that I don’t read every feed as thoroughly as I used to anymore. I always use the starred items section as a sort of “save for later” storage, so I can open all the unread stories in my browser tabs and read them when I have time. This worked out ok, but in the last months I got more and more used to the instapaper service, which provides a simple web frontend to save websites for later and a great iPhone app. This led to the situation, that I still starred items in Google Reader, but then had to open the pages and manually save them to instapaper.com and unstar them in Google Reader. An alternative is the builtin Google Reader option to share to instapaper, which also needs some manual actions and you still have to unstar the item afterwards.

The solution

So I decided to build a script, which would run nightly on a server and pull all starred items out of Google reader and into instapaper. Since I am trying to improve my python knowledge whenever I can, I decided to build a python implementation. Since I also wanted to dig into the (unofficial) Google Reader API, I decided not to use the very good existing python framework, but to utilize the API myself. I had already written a small instapaper library before, which I mainly used to save articles for later on the command line.

So I sat down and started to write the bridge. All in all it took me a bit more than a month (due to university life, work and exams) to finally get a basic version working, which is able to retrieve starred items, save them to instapaper and then remove the star from instapaper. The script is now run every hour on a server, which is enough for my needs of instapaper being up-to-date. Also I have more choices on iPhone RSS readers with Google Reader syncing now, since Instapaper support is not a requirement for the app anymore. There are still (as always) some things to do, but at least the manual open,save,unstar actions are no more now.