<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>Random musings and snippets. Photos and more can be found at raingod.com and Disoriented.</description><title>Rainblog</title><generator>Tumblr (3.0; @rainblog)</generator><link>http://blog.raingod.com/</link><item><title>Today, after six and a half years, I’m leaving Blip. When I...</title><description>&lt;img src="http://24.media.tumblr.com/1bfa4e9f4bf70b8daeeef8987f747a26/tumblr_mnlzfj7I9g1qzqo4po1_500.jpg"/&gt;&lt;br/&gt; Blip was started by five founders ...&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/a40556ae6e0518a81b797da6667bb5fa/tumblr_mnlzfj7I9g1qzqo4po2_500.jpg"/&gt;&lt;br/&gt; ... but then it grew.&lt;br/&gt;&lt;br/&gt; &lt;img src="http://24.media.tumblr.com/596eccff7ca794dcb9c0c0ac0d8ec233/tumblr_mnlzfj7I9g1qzqo4po3_500.jpg"/&gt;&lt;br/&gt; There've been some amazing parties ...&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/b7297c4dd2fcc10227a3227dd587b753/tumblr_mnlzfj7I9g1qzqo4po4_500.jpg"/&gt;&lt;br/&gt; ... and paintball ...&lt;br/&gt;&lt;br/&gt; &lt;img src="http://24.media.tumblr.com/29d28fdef39ba6730b850a36357fd2fe/tumblr_mnlzfj7I9g1qzqo4po5_500.jpg"/&gt;&lt;br/&gt; ... and football ...&lt;br/&gt;&lt;br/&gt; &lt;img src="http://24.media.tumblr.com/18d59f80917b8a821a93fd9a6cdd5ed8/tumblr_mnlzfj7I9g1qzqo4po6_500.jpg"/&gt;&lt;br/&gt; ... and trivia.&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/254197fab4dba861d01fba13f07647ec/tumblr_mnlzfj7I9g1qzqo4po7_500.jpg"/&gt;&lt;br/&gt; There's an office hamster ...&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/490286023498fd3b20c1f10335c0b042/tumblr_mnlzfj7I9g1qzqo4po8_500.jpg"/&gt;&lt;br/&gt; ... and screaming flying monkeys ...&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/8f25df1214c9d14e553c4ceaf68ab830/tumblr_mnlzfj7I9g1qzqo4po9_500.jpg"/&gt;&lt;br/&gt; ... and video-conferencing horses ...&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/708b4b949eaf3e7a9b695f1185ed8608/tumblr_mnlzfj7I9g1qzqo4po10_500.jpg"/&gt;&lt;br/&gt; ... and even the occasional shark infestation.&lt;br/&gt;&lt;br/&gt; &lt;p&gt;Today, after six and a half years, I’m leaving &lt;a href="http://blip.com/"&gt;Blip&lt;/a&gt;. When I joined the company in 2006, there were seven of us - five founders, two employees - in a tiny converted apartment. Today, Blip has more than forty staff, offices in New York and Los Angeles, and a brilliant lineup of original web series.&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I’m moving on to work on &lt;a href="http://disoriented.net/archives/2013/06/incipit-vita-nova.html"&gt;my own projects&lt;/a&gt;. I’m tremendously excited by what the next few months have in store for me, but I’m still sad to be leaving. Blip is an amazing company, home to some of the smartest, nicest, most talented people I’ve ever met. It’s on course for huge successes in the months and years to come, and even if I won’t be directly involved, I’ll still be cheering from the sidelines.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Thanks for &lt;a href="http://www.flickr.com/photos/angusmci/collections/72157625982187406/" title="Photos from Blip"&gt;six great years&lt;/a&gt;, and all the best for the future. KFTC.&lt;/span&gt;&lt;/p&gt;</description><link>http://blog.raingod.com/post/51717266288</link><guid>http://blog.raingod.com/post/51717266288</guid><pubDate>Fri, 31 May 2013 12:30:00 -0400</pubDate><category>Blip</category><category>internet</category><category>web video</category><category>web series</category></item><item><title>The great Facebook advice experiment</title><description>&lt;p&gt;I was feeling a bit stressed the other day. On an impulse, I wrote on my Facebook wall:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;span class="userContent"&gt;I have decided I am in need of advice. Please send me all the advice you have. I will pick whatever seems applicable.&lt;/span&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;span class="userContent"&gt;I didn&amp;#8217;t really know what I wanted or expected, but it struck me as a funny thing to write. I also thought it might be a little like flipping coins or consulting the I Ching or a horoscope when you&amp;#8217;re trying to make a decision: whatever comes up, you just project your own reading onto it (or, in the case of coins, flipping repeatedly until you get the result you want), and end up doing what you secretly really wanted to do all along.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="userContent"&gt;My friends came through. I received lots of advice. Some of it was generic: &lt;em&gt;&amp;#8220;Buy low, sell high&amp;#8221;&lt;/em&gt;, &lt;em&gt;&amp;#8220;Wash behind your ears&amp;#8221;&lt;/em&gt;, &lt;em&gt;&amp;#8220;Don&amp;#8217;t take any wooden nickels.&amp;#8221;&lt;/em&gt; Some consisted of popular culture references: &lt;em&gt;&amp;#8220;&lt;a href="http://knowyourmeme.com/memes/dont-blink-the-weeping-angels"&gt;Don&amp;#8217;t blink&lt;/a&gt;&amp;#8221;&lt;/em&gt;, &lt;em&gt;&amp;#8220;&lt;a href="http://www.imdb.com/title/tt0061722/"&gt;One word: plastics&lt;/a&gt;&amp;#8221;&lt;/em&gt; and &lt;em&gt;&amp;#8220;&lt;a href="http://www.imdb.com/title/tt0087995/"&gt;Only an asshole gets killed for a car&lt;/a&gt;.&amp;#8221;&lt;/em&gt; Some of it was surreal: &lt;em&gt;&amp;#8220;Don&amp;#8217;t wash mushrooms in a washing machine&amp;#8221;&lt;/em&gt;, &lt;em&gt;&amp;#8220;Don&amp;#8217;t pat a burning dog.&amp;#8221;&lt;/em&gt; Two friends shared advice they&amp;#8217;d had from their parents: &lt;em&gt;&amp;#8220;Tell them to stop, if they don&amp;#8217;t then punch them&amp;#8221;&lt;/em&gt; and &lt;em&gt;&amp;#8220;Don&amp;#8217;t drink whisky or you&amp;#8217;ll have nothing to fall back on when you&amp;#8217;re forty.&amp;#8221;&lt;/em&gt; One person sent me detailed advice on cooking asparagus.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="userContent"&gt;Two people suggested what looked like proverbs: &lt;em&gt;&amp;#8220;&lt;/em&gt;&lt;/span&gt;&lt;span&gt;&lt;em&gt;Never take two camels when a mule will suffice&amp;#8221;&lt;/em&gt; and &lt;em&gt;&amp;#8220;&lt;/em&gt;&lt;/span&gt;&lt;span&gt;&lt;em&gt;If ye will not when ye may, when ye will ye shall have nay.&amp;#8221;&lt;/em&gt; Two sent in summaries of their own current ideological programs: &lt;em&gt;&amp;#8220;Have no fear&amp;#8221;&lt;/em&gt; and &lt;em&gt;&amp;#8220;Disconnect&amp;#8221;&lt;/em&gt;. One quoted the great Jon Langford: &amp;#8220;&lt;em&gt;&lt;a href="https://www.youtube.com/watch?v=a-4ypEJs1MQ"&gt;Get the money, don&amp;#8217;t leave anything behind&lt;/a&gt;.&lt;/em&gt;&amp;#8221; Two couched their advice in corporate speak: &lt;em&gt;&amp;#8220;Ideate. Iterate. Keep the throughput in the green zone&amp;#8221;&lt;/em&gt; and &lt;em&gt;&amp;#8220;&lt;/em&gt;&lt;/span&gt;&lt;span&gt;&lt;em&gt;Proactively leverage synergies across the enterprise.&amp;#8221;&lt;/em&gt; One whimsically advised me &lt;em&gt;&amp;#8220;Don&amp;#8217;t stick your prick in daisies&amp;#8221;&lt;/em&gt;. That one took me a moment or two to figure out. Another told me to &lt;em&gt;&amp;#8220;Fallow your heart&amp;#8221;&lt;/em&gt;. I couldn&amp;#8217;t decide if that was a deft epigram &amp;#8230; or just a typo. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Not all of these were easy to apply to my own life, but &lt;em&gt;&amp;#8220;Have no fear&amp;#8221;&lt;/em&gt; and &lt;em&gt;&amp;#8220;Disconnect&amp;#8221;&lt;/em&gt; sound like good ideas. &lt;/span&gt;&lt;span&gt;&lt;em&gt;&amp;#8220;Have a good time, all of the time&amp;#8221;&lt;/em&gt; is also a nice goal, but potentially challenging. &lt;/span&gt;&lt;span&gt;Something about &lt;/span&gt;&lt;em&gt;&amp;#8220;Red wine to start. The rest will come&amp;#8221;&lt;/em&gt;&lt;span&gt; also appealed to me. But in the end, the one that struck the deepest chord was the enigmatic &lt;/span&gt;&lt;em&gt;&amp;#8220;&lt;a href="https://www.youtube.com/watch?v=rUbJr8jJl0s"&gt;Run, you clever boy. And remember&lt;/a&gt;.&amp;#8221;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I can&amp;#8217;t explain why that was what I needed to hear just then. But it was, and it made me feel much better.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I feel as if I&amp;#8217;ve made a discovery. Specific advice is overrated, unless you&amp;#8217;re buying something. The key is to get advice that&amp;#8217;s as generic or random as possible, and then you can read into it whatever you want.&lt;/span&gt;&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;</description><link>http://blog.raingod.com/post/51740015830</link><guid>http://blog.raingod.com/post/51740015830</guid><pubDate>Thu, 30 May 2013 15:00:00 -0400</pubDate><category>advice</category><category>maxims</category><category>rycbar123</category></item><item><title>Me and Blip's VP of Tech </title><description>Jeff: Have you been to Hill Country?&lt;br /&gt;&#13;
Annie: I'm vegetarian. &lt;br /&gt;&#13;
Jeff: ...&lt;br /&gt;&#13;
Annie: Sorry, didn't mean to cut that conversation short. &lt;br /&gt;&#13;
Jeff:  Conversation? That cut our friendship short. &lt;br /&gt;&#13;
&lt;br /&gt;&#13;
&lt;br /&gt;&#13;
Actually ... having been dragged to Hill Country by Jeff, along with the rest of the dev team ... I can confirm that some of the sides are pretty good and they even do a reasonable salad. If you can get over the incongruity of being a vegetarian at a barbecue restaurant, and ignore the fact that all your fellow diners are tearing into chunks of cooked meat the size of a smallish SUV, you needn't actually starve.</description><link>http://blog.raingod.com/post/49440978474</link><guid>http://blog.raingod.com/post/49440978474</guid><pubDate>Thu, 02 May 2013 11:37:00 -0400</pubDate><category>vegetarianism vegetarians barbecue</category></item><item><title>blip:

jefforulez:

.@blip flash mob on the N train

Hey, who...</title><description>&lt;img src="http://25.media.tumblr.com/e2a511d9e7b691fda812e8bd31908acd/tumblr_mlgq91OGUp1qeiuavo1_500.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;a class="tumblr_blog" href="http://blog.blip.com/post/48291516148/jefforulez-blip-flash-mob-on-the-n-train"&gt;blip&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a class="tumblr_blog" href="http://jefforulez.tumblr.com/post/48289601853/blip-flash-mob-on-the-n-train"&gt;jefforulez&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;.@blip flash mob on the N train&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Hey, who let the developers out?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Blip takes over a subway car, in more ways than one.&lt;/p&gt;</description><link>http://blog.raingod.com/post/48294415741</link><guid>http://blog.raingod.com/post/48294415741</guid><pubDate>Thu, 18 Apr 2013 15:24:47 -0400</pubDate><category>Blip</category></item><item><title>A teachable moment</title><description>&lt;p&gt;&lt;a href="http://www.richardkadrey.com/"&gt;Richard Kadrey&lt;/a&gt; said it best:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;What does the death of Delicious teach us? The cloud isn&amp;#8217;t your friend. The cloud will lure you into its van, but there&amp;#8217;s no candy in there.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Substitute &amp;#8216;Google Reader&amp;#8217; for &amp;#8216;Delicious&amp;#8217;, and the lesson is the same.&lt;/p&gt;
&lt;p&gt;Today, Google announced that they&amp;#8217;re &lt;a href="http://www.theverge.com/2013/3/13/4101144/google-shuts-down-reader-rss-aggregation-service"&gt;pulling the plug on Reader&lt;/a&gt;, their RSS aggregation service. This has prompted predictable &lt;a href="https://twitter.com/search?q=%23GoogleReader"&gt;cries of outrage in the Twitterverse&lt;/a&gt;, as people who love and use Reader daily suddenly face the chilling prospect of life without it after July 1st.&lt;/p&gt;
&lt;p&gt;I am not a Google Reader user &amp;#8230; or rather, I am, but I don&amp;#8217;t use Reader on the web to read news. Instead, I use applications - &lt;a href="http://netnewswireapp.com/"&gt;NetNewsWire&lt;/a&gt; on the Mac, and &lt;a href="http://reederapp.com/"&gt;Reeder&lt;/a&gt; on my iPod. Both of these applications offer the option to use Google Reader to synchronize your news feeds. When I read something on my iPod and then switch to the Mac, the thing I&amp;#8217;ve just read is marked as read, so I don&amp;#8217;t have to read it all over again. If I flag something to read it later on the Mac, it&amp;#8217;s flagged on the iPod. If I subscribe to a new newsfeed on the iPod (or on the Mac, or even on Google Reader itself) it&amp;#8217;s there on all the other devices I might use. It&amp;#8217;s seamless, transparent, essential.&lt;/p&gt;
&lt;p&gt;Come July 1st, Reeder and NetNewsWire aren&amp;#8217;t going to be able to leverage Google Reader to provide this very useful functionality. They&amp;#8217;ll either have to drop the feature, or switch to another provider that offers the same functionality, or implement it themselves. Google has just pulled the rug out from underneath them, and they - and many similar apps or services - are going to have to scramble to find another solution.&lt;/p&gt;
&lt;p&gt;If you go to Reeder&amp;#8217;s settings panel, the very first item is &amp;#8220;Google Reader Account&amp;#8221;. Same thing with NetNewsWire: under Sync settings there&amp;#8217;s a checkbox that says &amp;#8216;Sync with Google Reader&amp;#8217;. There are no other options, no alternative services.&lt;/p&gt;
&lt;p&gt;The fundamental error that the creators of both these excellent apps have made is that they programmed against an application, not against an API. What they need isn&amp;#8217;t Google Reader: it&amp;#8217;s something that offers the same API endpoints and the same functionality as Google Reader. That something could be anything. So long as it looks and behaves like Google Reader, it doesn&amp;#8217;t have to &lt;em&gt;be&lt;/em&gt; Google Reader. My guess would be that an averagely-capable programmer could implement a simple webapp to implement the API and duplicate the synchronization and storage functionality of Google Reader in a weekend.&lt;/p&gt;
&lt;p&gt;What the app makers then need to do is to change their apps so that instead of saying &amp;#8220;Synchronize with Google Reader&amp;#8221; they say &amp;#8220;Synchronize with &amp;#8230;&amp;#8221; and let you specify the service of your choice. Provided that service supports a synchronization API, the app shouldn&amp;#8217;t care who or what it is.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve actually wanted this for a while, simply because I don&amp;#8217;t see that what I read is any of Google&amp;#8217;s business. I would have been happy to deploy a synchronization webapp on my own server and keep it all to myself. Not everyone has their own server, of course, but I&amp;#8217;m sure there&amp;#8217;d be businesses who&amp;#8217;d be happy to step up and provide synchronization as a service - if the apps supported it.&lt;/p&gt;
&lt;p&gt;This error - programming against a specific application, not a general API - repeats throughout the app ecosystem. Reeder lets me choose one of three bookmarking services - Pinboard, Delicious and Zootool - to save links to. It lets me save articles to two offline reading services - Instapaper and Pocket. It lets me send updates to two different micro-messaging services - Twitter and App.net. Each one gets a separate entry in the Reeder settings panel.&lt;/p&gt;
&lt;p&gt;What if, instead of Twitter or App.net, I wanted to use &lt;a href="http://identi.ca/"&gt;Identi.ca&lt;/a&gt; or &lt;a href="https://tent.is/"&gt;Tent.is&lt;/a&gt;? Or my own server running &lt;a href="https://github.com/tent/tentd"&gt;tentd&lt;/a&gt;? Sorry, no can do. Those options aren&amp;#8217;t offered. Even though each of these is fundamentally the same kind of thing as Twitter, and may even support precisely the same API (or, if they don&amp;#8217;t, could easily be made to). It&amp;#8217;s the same thing with the other options: for all the options that an app developer can squeeze into a settings panel, there are always a few more services that aren&amp;#8217;t offered. Yet in many cases, the app could talk to them without changing a single line of code.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;m not singling out Reeder - a truly excellent application - here. &lt;em&gt;All&lt;/em&gt; app developers are doing something similar. They pick the current market leader for some particular functionality, they implement support for it, and they put it in their app. If there are a few equally prominent competitors, they might support two or three. But that&amp;#8217;s all.&lt;/p&gt;
&lt;p&gt;In the same way, a bunch of other apps that I use offer support for Dropbox. Why not? Dropbox is a wonderful service. But Dropbox is now just one of many similar services. Why support Dropbox and not Box.net, or Pogoplug, or Microsoft SkyDrive, or iCloud? Or a private cloud storage service implemented using an open-source solution running on someone&amp;#8217;s server somewhere?&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;#8220;Oh, but we can&amp;#8217;t possibly support all those different applications,&amp;#8221;&lt;/em&gt; the app makers say. Right. You can&amp;#8217;t support a half dozen different applications. But you could support just one API for any functionality you need to implement. One API for cloud storage. One API for bookmarking. One API for RSS synchronization. One API for micro-messaging. One API for sending articles to an offline reader. One, open, documented, well-defined API for each type of service.&lt;/p&gt;
&lt;p&gt;The beauty of this is that if a given provider - say Microsoft - doesn&amp;#8217;t offer the required API, they will actually be under pressure to implement it. &lt;em&gt;&amp;#8220;I&amp;#8217;d like to use SkyDrive,&amp;#8221;&lt;/em&gt; says Joe User, &lt;em&gt;&amp;#8220;but it&amp;#8217;s not compatible with the apps I like on my smartphone.&amp;#8221;&lt;/em&gt; When Microsoft realizes that everyone&amp;#8217;s using still Dropbox instead of SkyDrive, they&amp;#8217;re going to wise up and roll out the necessary API support pretty fast.&lt;/p&gt;
&lt;p&gt;Actually, they probably won&amp;#8217;t. This is Microsoft we&amp;#8217;re talking about, after all. But I can dream.&lt;/p&gt;
&lt;p&gt;The death of Google Reader is a teachable moment. App developers should take note of what just happened to Reeder and NetNewsWire and all the other dozens of newsreaders that used Google Reader for synchronization. They tied a critical feature of their software to one specific implementation. When Google took their ball and went home, they got screwed. Don&amp;#8217;t let that happen to you.&lt;/p&gt;
&lt;p&gt;Using open, well-defined, standard APIs is the Way of the Web. Locking your product to someone else&amp;#8217;s proprietary implementation is a recipe for heartache. Program to the API, not the application. And if the API doesn&amp;#8217;t exist, get together with a bunch of like-minded folks and design one. In the long run, it&amp;#8217;s better for everyone.&lt;/p&gt;</description><link>http://blog.raingod.com/post/45313405480</link><guid>http://blog.raingod.com/post/45313405480</guid><pubDate>Wed, 13 Mar 2013 21:53:52 -0400</pubDate><category>Google Reader</category><category>APIs</category><category>apps</category><category>best practices</category><category>development</category><category>RSS</category><category>open standards</category></item><item><title>‘Crêuza de mä (live)’ by Mauro Pagani &amp; Joan IsaacFigge de...</title><description>&lt;img src="http://24.media.tumblr.com/0135ceac81184116478ef833d1ae3cda/tumblr_misg4xlumq1qzqo4po1_400.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.thisismyjam.com/angusm/_4w883zq?utm_source=tumblr&amp;utm_medium=sharing&amp;utm_campaign=user"&gt;‘Crêuza de mä (live)’ by Mauro Pagani &amp; Joan Isaac&lt;/a&gt;&lt;/strong&gt;&lt;br/&gt;Figge de famiggia udù de bun che ti peu ammiàle senza u gundun.&lt;/p&gt;</description><link>http://blog.raingod.com/post/43994034460</link><guid>http://blog.raingod.com/post/43994034460</guid><pubDate>Mon, 25 Feb 2013 13:17:21 -0500</pubDate></item><item><title>It’s Valentine’s Day, and we have a chocolate...</title><description>&lt;img src="http://25.media.tumblr.com/6272ce8b0c0cf5ab1ec7617aa61f7eb6/tumblr_mi8dtijkfG1qzqo4po1_500.jpg"/&gt;&lt;br/&gt; &lt;br/&gt;&lt;img src="http://25.media.tumblr.com/00b3c6adb6415e5dd6d6718aac7dc5c8/tumblr_mi8dtijkfG1qzqo4po2_500.jpg"/&gt;&lt;br/&gt; &lt;br/&gt;&lt;img src="http://25.media.tumblr.com/40ce76421287738b77efc315eb3fa242/tumblr_mi8dtijkfG1qzqo4po3_500.jpg"/&gt;&lt;br/&gt; &lt;br/&gt;&lt;p&gt;It’s Valentine’s Day, and we have a chocolate fountain.&lt;/p&gt;</description><link>http://blog.raingod.com/post/43101018131</link><guid>http://blog.raingod.com/post/43101018131</guid><pubDate>Thu, 14 Feb 2013 17:15:18 -0500</pubDate><category>chocolate</category><category>Blip</category></item><item><title>Photo</title><description>&lt;img src="http://25.media.tumblr.com/f6a230fa51e89a15b65830b72e1a8d91/tumblr_mi4hu6fIty1qzqo4po1_500.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;</description><link>http://blog.raingod.com/post/42940807748</link><guid>http://blog.raingod.com/post/42940807748</guid><pubDate>Tue, 12 Feb 2013 14:51:42 -0500</pubDate><category>Anonymous</category><category>synonyms</category></item><item><title>I rather miss the days when you just opened a text editor and...</title><description>&lt;img src="http://25.media.tumblr.com/b5d434b10aa99a93cea2895bde442e57/tumblr_mhnvlsCy1c1qzqo4po1_400.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;I rather miss the days when you just opened a text editor and typed some HTML.&lt;/p&gt;</description><link>http://blog.raingod.com/post/42213478050</link><guid>http://blog.raingod.com/post/42213478050</guid><pubDate>Sun, 03 Feb 2013 15:29:00 -0500</pubDate><category>web design</category><category>responsive web design</category><category>html5</category></item><item><title>Not real, but virtual</title><description>&lt;p&gt;The Verge has a long &lt;a href="http://www.theverge.com/2013/1/24/3904134/google-redesign-how-larry-page-engineered-beautiful-revolution"&gt;article about Google&amp;#8217;s design process&lt;/a&gt;, which talks about the way that Google has tried to create a unified but attractive and effective look and feel to all its applications, across multiple platforms.&lt;/p&gt;
&lt;p&gt;In some ways, the article is frustrating: lots of fawning praise for Google&amp;#8217;s approach, relatively few actionable recommendations that rise above the obvious (&amp;#8216;have your designers and developers talk to each other&amp;#8217;). For me, &lt;span&gt;however, &lt;/span&gt;&lt;span&gt;the money quote is when one Google designer interviewed says:&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;&amp;#8220;These are objects. They feel, not necessarily real, but they feel virtual. They’re not trying to be fake things, not … fake leather, fake wood, fake brushed aluminum.&amp;#8221;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That, in case you didn&amp;#8217;t spot it, is a dig at poor old Apple. For many years, Apple was the company that got design and UX right while everyone else was getting it wrong. It still does to a large extent. The elegance and success of Apple&amp;#8217;s products such as the iPhone or the iPad is the product of much more than the superficial &amp;#8216;lickability&amp;#8217; of its gleaming, futuristic interfaces. It&amp;#8217;s the product of the way things work consistently and predictably, the way that the animations and the visual hints work to build an impression of objects that are, in Duarte&amp;#8217;s words, &lt;em&gt;&amp;#8220;not real, but virtual&amp;#8221;&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Unfortunately, Apple has recently tarnished its reputation for making good design choices by embracing skeuomorphic designs (complete with fake leather) for some of its built-in apps in MacOS and iOS. &lt;a href="http://en.wikipedia.org/wiki/Skeuomorph"&gt;Skeuomorphism&lt;/a&gt; isn&amp;#8217;t always wrong: if you can give the user a hint about functionality or meaning by alluding to some real-world object, it makes sense. Slavishly reproducing the look or functionality of something in the real world, however, is almost never a good idea. It&amp;#8217;s a kind of cargo-cult approach to UX. Apple&amp;#8217;s crude and ugly designs for the Calendar and Address Book are particularly shocking, both because they come from a company with a long history of making good choices and because their appearance is so glaringly different from everything around them.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Apple&amp;#8217;s clumsy flirtation with skeuomorphism has spawned a backlash in the form of the &lt;a href="http://layervault.tumblr.com/post/32267022219/flat-interface-design"&gt;flat design movement&lt;/a&gt; (or, as some commentators would have it, the &lt;a href="http://www.matthewmooredesign.com/almost-flat-design/"&gt;almost flat design&lt;/a&gt; movement). But flat design isn&amp;#8217;t a panacea. The flat design of RealMac Software&amp;#8217;s &lt;a href="http://www.realmacsoftware.com/clear/"&gt;Clear&lt;/a&gt; to-do list app, for example, works well (so much so that the iTunes Store is full of Clear knock-offs) On the other hand, all the flat design in the world can&amp;#8217;t save Microsoft&amp;#8217;s bizarre and confusing &lt;a href="http://www.theverge.com/2012/10/30/3577924/microsoft-design-language-metro"&gt;Windows 8 interface&lt;/a&gt; (the UI formerly known as Metro).&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;The reason Clear works has less to do with the look of the interface and more to do with the way it works. It hinges on a set of easily-learnable gestures that are tied to underlying behaviors. Essentially, Clear gives the user a set of virtual objects that they can manipulate, objects that may not have any direct mapping to the real world, but which behave in consistent and predictable ways. Once you have that, you don&amp;#8217;t need skeuomorphism. Flat design is all the design Clear needs. You could implement Clear so that its objects appeared to have depth and texture, but you wouldn&amp;#8217;t gain anything by it.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Slavishly adhering to the rules of flat design is probably just as much of a blind alley as trying to minutely recreate every detail of real-world objects. Or perhaps not just as much - at least a flat design won&amp;#8217;t create the kind of visual atrocities that you get from excessive skeuomorphism. But really what we should be aiming for is &amp;#8216;just enough design&amp;#8217;: enough detail, in short, to help the user recognize and understand the virtual objects and metaphors that underlie the application. A user interface is the map of a virtual world: the first and most important duty of a designer is to choose a design that accurately and informatively reflects that underlying &amp;#8216;virtuality&amp;#8217;.&lt;/span&gt;&lt;/p&gt;</description><link>http://blog.raingod.com/post/41815663240</link><guid>http://blog.raingod.com/post/41815663240</guid><pubDate>Tue, 29 Jan 2013 17:52:14 -0500</pubDate><category>skeuomorphism</category><category>design</category><category>flat design</category><category>UX</category><category>user experience</category></item><item><title>Four years ago, I watched the inauguration of Barrack Obama at...</title><description>&lt;img src="http://25.media.tumblr.com/260c82e1d9a9b0e274a97b02fea95913/tumblr_mgzkphL0y71qzqo4po1_500.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;Four years ago, I watched the inauguration of Barrack Obama at the old &lt;a href="http://blip.com/"&gt;blip.tv&lt;/a&gt; offices on Lafayette Street. That was two offices ago; looking at this picture makes me realize how much has changed since then … and how much hasn’t.&lt;/p&gt;</description><link>http://blog.raingod.com/post/41114543623</link><guid>http://blog.raingod.com/post/41114543623</guid><pubDate>Mon, 21 Jan 2013 12:32:05 -0500</pubDate><category>Barrack Obama</category><category>inauguration</category><category>Blip</category></item><item><title>The return of Commander Jameson</title><description>&lt;p&gt;In my distant youth, I wasted a great many hours playing a space trading game called &lt;em&gt;&lt;a href="http://en.wikipedia.org/wiki/Elite_(video_game)"&gt;Elite&lt;/a&gt;&lt;/em&gt;. &lt;em&gt;Elite&lt;/em&gt; ran on an early 8-bit computer called the BBC Micro and, despite the crudity of the graphics, was seriously addictive. David Braben, one of the authors, went on to leverage the greater power of the PC to produce more &amp;#8216;realistic&amp;#8217; and complex variants under the title &lt;em&gt;Frontier&lt;/em&gt;, but for me &lt;em&gt;Elite&lt;/em&gt; will always be &lt;strong&gt;the&lt;/strong&gt; game.&lt;/p&gt;
&lt;p&gt;Now there&amp;#8217;s going to be a new &lt;em&gt;Elite&lt;/em&gt;, the Kickstarter-funded &lt;em&gt;&lt;a href="http://www.kickstarter.com/projects/1461411552/elite-dangerous"&gt;Elite: Dangerous&lt;/a&gt;&lt;/em&gt;, which has passed its funding target with more than £1.5M raised.&lt;/p&gt;
&lt;p&gt;One of the most interesting aspects of this Kickstarter is that science-fiction publisher &lt;a href="http://www.guardian.co.uk/books/2013/jan/04/science-fiction-gollancz-digital"&gt;Gollancz kicked in a big chunk of funding&lt;/a&gt;, in return for rights to the tie-in novels. &lt;em&gt;Elite&lt;/em&gt; and &lt;em&gt;Frontier&lt;/em&gt; were always sold with booklets that contained SF short stories and novellas, intended to flesh out the universe. The most famous of these was the novella &lt;em&gt;The Dark Wheel&lt;/em&gt; by SF writer Robert Holdstock, which accompanied the first game in the series, but later games were also sold with collections of short stories, mostly by lesser-known writers.&lt;/p&gt;
&lt;p&gt;The list of authors included one very little known writer indeed. Via a friend who worked for Frontier Developments, I ended up contributing a bunch of short texts and one complete short story, for which I was paid quite generously. Thanks to fan-site &lt;a href="http://www.lotf.co.uk/"&gt;Life on the Frontier&lt;/a&gt;, I&amp;#8217;ve just re-read &lt;a href="http://www.lotf.co.uk/faust.html"&gt;my own story&lt;/a&gt; for the first time in close to twenty years. It&amp;#8217;s not a classic of the genre, but it&amp;#8217;s not as embarrassing as I feared. Perhaps I should reach out to Gollancz &amp;#8230;&lt;/p&gt;</description><link>http://blog.raingod.com/post/39687225632</link><guid>http://blog.raingod.com/post/39687225632</guid><pubDate>Fri, 04 Jan 2013 17:14:00 -0500</pubDate><category>Elite</category><category>videogames</category><category>science-fiction</category><category>short stories</category><category>Robert Holdstock</category><category>David Braben</category><category>Frontier</category></item><item><title>blip:

Apps on apps on apps, y’all. Blip is officially...</title><description>&lt;img src="http://25.media.tumblr.com/19edf9940879392664eeaa880e9df6dc/tumblr_mg1yq9RyTz1rbu3cho1_500.png"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;a class="tumblr_blog" href="http://blog.blip.com/post/39565129589/blip-apps"&gt;blip&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Apps on apps on apps, y’all.&lt;/strong&gt; Blip is officially everywhere: on your Xbox, iOS device, Android, and Kindle. Now you can take your favorite Blip series with you wherever you go, on your phone or tablet, and in your &lt;a href="http://blog.blip.com/post/35114416306/stevewoolf-evangotlib-itskellyday"&gt;living room&lt;/a&gt;. All in beautiful HD quality.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span&gt;DOWNLOAD NOW: &lt;a href="http://blip.com/apps"&gt;&lt;a href="http://blip.com/apps"&gt;http://blip.com/apps&lt;/a&gt;&lt;/a&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;All of our mobile apps are free and work on all leading smartphones and tablets that stream media. Our Xbox app is free for Xbox Live Gold subscribers.&lt;/span&gt;&lt;/p&gt;
&lt;/blockquote&gt;</description><link>http://blog.raingod.com/post/39574054110</link><guid>http://blog.raingod.com/post/39574054110</guid><pubDate>Thu, 03 Jan 2013 12:05:17 -0500</pubDate><category>Blip</category><category>iOS</category><category>apps</category><category>XBox</category><category>Android</category></item><item><title>The Hobbit</title><description>&lt;p&gt;It&amp;#8217;s rare that I actually manage to drag myself to the movie theater to see a new movie. Some of that has to do with my own inertia. Some of it has to do with an increasing reluctance to pay inflated prices to sit through the thirty minute Ordeal by Commercial that precedes every showing. And some of it has to do with all the other inconveniences of watching a film in the company of people who can&amp;#8217;t leave their cellphones alone for more than four minutes without suffering separation anxiety. What this means is that I don&amp;#8217;t see many mainstream movies on their first run and do most of my movie-watching on seatback LCDs in aircraft, an environment that makes good movies painful and bad movies excruciating.&lt;/p&gt;
&lt;p&gt;At a friend&amp;#8217;s suggestion, however, I went to see &lt;em&gt;The Hobbit&lt;/em&gt; (or, I should say, &lt;em&gt;The Hobbit: An Unexpected Journey&lt;/em&gt;, as this is merely the first of three of these enormous things that are going to roll over us at one-year intervals). By and large, I had a good time.&lt;/p&gt;
&lt;p&gt;The first and biggest obstacle to my enjoyment was, of course, the 3D. My friend had tried to buy tickets for the 2D showing, but the theater pulled some kind of bait-and-switch on him. When I got to the theater, he handed me my 3D glasses and muttered &lt;em&gt;&amp;#8220;Welcome to Hell&amp;#8221;&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Unlike the 3D in &lt;a href="/post/290381945/avatar"&gt;Avatar&lt;/a&gt; and &lt;a href="/post/24946341524/prometheus-review"&gt;Prometheus&lt;/a&gt;, which was relatively unobtrusive much of the time, the 3D in &lt;em&gt;The Hobbit&lt;/em&gt; was in your face continuously. If the illusion were perfect, that wouldn&amp;#8217;t matter. 3D in movies today, however, is anything but perfect. In &lt;em&gt;The Hobbit&lt;/em&gt; it seemed particularly egregious, making it look as if the world was divided crudely into two planes. Selected objects in the near plane seemed to be detached from a background plane in which everything else was happening. The result was an unrealistic two-dimensional look that ruined many of the best moments in the film. Between bad 3D, heavy-handed use of depth-of-field effects and eyestrain, I kept getting jerked out of the story. Instead of 3D creating an immersive experience, it just reminded me constantly that I was watching a movie. I really believe that 3D is one of the biggest steps backward in the history of film and &lt;em&gt;The Hobbit&lt;/em&gt; did nothing to change my mind.&lt;/p&gt;
&lt;p&gt;Most of the other major problems with &lt;em&gt;The Hobbit&lt;/em&gt; probably stem from the fact that the accountants have apparently decreed that it has to be a trilogy. That means that a lot of extra material has to be shoe-horned in to pad the story out to the requisite length. I don&amp;#8217;t mind the extensive exposition so much, but the scenes featuring Radagast the Brown as a kind of woodsy comic hobo cry out to be cut in their entirety. Radagast - who never appears &amp;#8216;on-stage&amp;#8217; in either &lt;em&gt;The Hobbit&lt;/em&gt; or &lt;em&gt;The Lord of the Rings&lt;/em&gt; - is a vital figure, the anchor point of the continuum whose far end is Saruman. It is because Gandalf values the despised Radagast and what he represents that he is able to remain true to himself, rather than falling into the trap of ambition that destroys Saruman. That&amp;#8217;s not, however, a reason for adding him into the movie. The film&amp;#8217;s invented scenes featuring Radagast are not only embarrassing to watch, they miss the point of the character as well. Cut here, please.&lt;/p&gt;
&lt;p&gt;The film also features a certain amount of what I think of as &amp;#8216;fairground ride&amp;#8217; moments: giant explosions, crashing timbers, people dangling from things, epic falls in which the laws of physics are suspended, and so forth. I have a low threshold for this stuff, even when it hasn&amp;#8217;t obviously been put there to support the videogame tie-in (George Lucas, I&amp;#8217;m looking at you). Instead of making me excited, it just makes me mutter &lt;em&gt;&amp;#8220;Oh, come on.&amp;#8221;&lt;/em&gt; Unfortunately, it seems that the director was contractually obligated to throw in some fixed quantity of thrills and spills, to the detriment of the film.&lt;/p&gt;
&lt;p&gt;Despite the obnoxious 3D and other obvious weak points, I found many things to like about &lt;em&gt;The Hobbit&lt;/em&gt;. The &amp;#8216;landscape porn&amp;#8217; that Peter Jackson does so well is as beguiling here as it was in &lt;em&gt;The Lord of the Rings&lt;/em&gt;. The key to Tolkien&amp;#8217;s success is the way that he draws the reader into the world of Middle-Earth; Peter Jackson found Middle-Earth in the landscapes of New Zealand, and the films are never better than when they show the characters surrounded by these vast, beautiful landscapes. The heart-stopping scenery immerses the viewer in the story in a way that all the clunky 3D effects in the world cannot.&lt;/p&gt;
&lt;p&gt;The other ace Jackson has to play is Ian McKellen as Gandalf. McKellen might not perfectly incarnate Gandalf, but he&amp;#8217;s one of the few actors with the stature and the ability to even attempt the role. He&amp;#8217;s as good a Gandalf as we&amp;#8217;ll see in this lifetime and that&amp;#8217;s no small thing.&lt;/p&gt;
&lt;p&gt;There are other high-quality performances too. Martin Freeman delivers an excellent Bilbo, Hugo Weaving a reliable Elrond. Cate Blanchett, whose scenery-chewing episode supported by third-rate audio and visual effects was one of the low points of &lt;em&gt;The Fellowship of the Ring&lt;/em&gt;, atones for it with a scene featuring Galadriel as she should have been, all subtlety and quiet majesty. Perhaps it&amp;#8217;s simply that Jackson shoots her as if she were a particularly lovely piece of landscape, perhaps it&amp;#8217;s that Blanchett is an actress whose strength lies in nuance rather than melodrama. In any case, she is vastly better here than she was in the previous films.&lt;/p&gt;
&lt;p&gt;Inserts aside, Jackson is wise enough to stick fairly close to the source material, but he does add some lovely visual touches of his own making. The Great Goblin and his court are almost Bosch-like, at once comic and horrifying. Scenes of wargs racing downhill under a moonlit sky are pure beauty. Not all of the scenes featuring computer-animated creatures quite hold up, but the technology has evolved even since &lt;em&gt;The Lord of the Rings&lt;/em&gt; and the apparent realism can sometimes be spectacular. Even the animated Gollum, who didn&amp;#8217;t always convince me in the earlier films, held up well here.&lt;/p&gt;
&lt;p&gt;The hardest choices that Jackson had to make may have been to do with the portrayal of the dwarves. In the book, I remember them as a largely undifferentiated mass. With the exception of Thorin, Fili and Kili, I wouldn&amp;#8217;t be able to tell you what their various defining traits were. Jackson has done a good job of turning them all into individuals, although the result is a kind of weird composite palette that seems to draw on every possible representation of dwarves ever seen in fantasy: white-bearded gnomes, Disneyesque grotesques, rugged pseudo-Celts, fantasy exotics. Aidan Turner&amp;#8217;s startlingly handsome Kili rubs shoulders with a bulbous-nosed Bombur and a Dwalin who could have stumbled off the set of a Mad Max movie. I&amp;#8217;m not entirely sure it was a good idea, but while the visual gamut from caricature to heartthrob can be disconcerting, it&amp;#8217;s less grating than you might expect.&lt;/p&gt;
&lt;p&gt;One thing that Jackson deserves credit for is the way that he fleshes out the character of Thorin. Reading the book never gave me a great sense of the dwarf leader as a person. I had no strong mental image of him and his most-defined attribute seemed to be a general dourness. Here, ably played by Richard Armitage, he emerges as a powerful and conflicted figure, as much a major character as Bilbo or Gandalf. When he is onscreen, you start to wonder if the whole thing shouldn&amp;#8217;t be retitled &lt;em&gt;The Tragedy of Thorin Oakenshield&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Jackson&amp;#8217;s other great insight is the way that the story hinges on the issue of home and homelessness. Bilbo&amp;#8217;s comfortable, relentlessly English petit bourgeois existence with all its little comforts stands in stark contrast to the rootless existence of the dwarves. They are literally refugees and their hunger for a home of their own is the force that drives them all on. It&amp;#8217;s a pity that Jackson is obliged to drive that idea home with a sledgehammer, to make sure that it&amp;#8217;s not lost on even the dullest multiplex audience. Despite that, it&amp;#8217;s a sharp observation and one that adds some depth to a superficially simple tale of adventure.&lt;/p&gt;
&lt;p&gt;I ended up enjoying &lt;em&gt;The Hobbit&lt;/em&gt;, although the reviews apparently say that I shouldn&amp;#8217;t have. If you have a few hours to spare, by all means go along and see it.&lt;/p&gt;
&lt;p&gt;Just not in 3D.&lt;/p&gt;</description><link>http://blog.raingod.com/post/38078368702</link><guid>http://blog.raingod.com/post/38078368702</guid><pubDate>Sun, 16 Dec 2012 13:37:00 -0500</pubDate><category>The Hobbit</category><category>Peter Jackson</category><category>Lord of the Rings</category><category>film</category><category>movies</category><category>fantasy</category><category>reviews</category></item><item><title>The edge of madness</title><description>&lt;p&gt;&lt;img align="top" height="337" src="http://cdn.memegenerator.net/instances/400x/31934448.jpg" width="360"/&gt;&lt;/p&gt;
&lt;p&gt;I wanted to play around with a new static site generator called &lt;em&gt;&lt;a href="http://middlemanapp.com/"&gt;middleman&lt;/a&gt;&lt;/em&gt;, which looks as if it will do lots of things I can use. &lt;em&gt;middleman&lt;/em&gt; is distributed as a Ruby gem, and I have Ruby, so I can just type:&lt;/p&gt;
&lt;p&gt;   gem install middleman&lt;/p&gt;
&lt;p&gt;and I&amp;#8217;ll be good to go. Easy-peasy lemon-squeezy, as we used to say where I come from.&lt;/p&gt;
&lt;p&gt;The installation is smooth as silk. Encouraged, I tell &lt;em&gt;middleman&lt;/em&gt; to build a skeleton for my first site.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;middleman&lt;/em&gt; throws an error. It seems that something called &lt;a href="https://github.com/sstephenson/execjs"&gt;ExecJS&lt;/a&gt; is complaining that I don&amp;#8217;t have a Javascript interpreter on my box. Fortunately, ExecJS provides a list of compatible interpreters. I decide to go with the first, another Ruby gem called &lt;em&gt;therubyracer&lt;/em&gt;, which will install Google&amp;#8217;s v8 engine.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;therubyracer&lt;/em&gt; won&amp;#8217;t install because &lt;em&gt;libv8&lt;/em&gt; isn&amp;#8217;t installed. &lt;em&gt;libv8&lt;/em&gt; won&amp;#8217;t install because my stock version of &lt;em&gt;gcc&lt;/em&gt; isn&amp;#8217;t new enough. I can already see where this one is going, so I decide to cut my losses and try the next alternative in the list.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;therubyrhino&lt;/em&gt; implements Mozilla&amp;#8217;s Rhino engine. It has no dependencies, or at least none that I can&amp;#8217;t satisfy. It installs without problems.&lt;/p&gt;
&lt;p&gt;I run &lt;em&gt;middleman&lt;/em&gt; again. Same error. therubyrhino may be installed, but ExecJS can&amp;#8217;t find it. Searching Google for possible tips, I come across various pieces of advice, none of which seem to apply. Apparently I can resolve the problem my adding some explicit instructions to &amp;#8220;the middleman Gemfile&amp;#8221;. There is no hint in anything I can find to say where I might find this Gemfile, or even if it exists on my system at this point at all. It seems it&amp;#8217;s connected to something called &lt;em&gt;bundler&lt;/em&gt;, which I could probably investigate some more. At this point, however, the rabbit hole is starting to deepen vertiginously.&lt;/p&gt;
&lt;p&gt;I go with the next fallback, &lt;a href="http://nodejs.org"&gt;Node&lt;/a&gt;. By now this is starting to feel increasingly like buying an F-15 to deal with a roach problem in the kitchen. Still, I&amp;#8217;ve been meaning to do some stuff with Node anyway.&lt;/p&gt;
&lt;p&gt;I quickly find that Node isn&amp;#8217;t going to install because it considers that the stock version of Python on my box is outdated. Ruh-roh.&lt;/p&gt;
&lt;p&gt;There was a time when, faced with an unsatisfied dependency, I would simply dive in and build everything from source. I have learned not to do that on CentOS. The great virtue of CentOS is that it is a very stable, very conservative system. If you use the package manager for everything, you have an excellent chance of having a generally smooth ride. The flip side of this is that if you try to slip in something that CentOS doesn&amp;#8217;t officially support, the operating system will punish you with mindless, merciless ferocity. Few things in the universe are quite as vindictive as a CentOS install that catches you trying to put something past it. And it turns out that replacing the stock Python is really the big no-no. If you do that, you will break &lt;em&gt;yum&lt;/em&gt;, the doors of Hell will gape wide and the foul fiend will walk the earth, gathering souls for his unearthly kingdom. Or at least you&amp;#8217;ll probably never be able to upgrade anything on your box ever again.&lt;/p&gt;
&lt;p&gt;Fortunately, I find some &lt;a href="http://justintallant.com/installing-node-on-centos/"&gt;instructions that explain how to install Python 2.7.3&lt;/a&gt; on CentOS 5.8 as an alternate. That works relatively smoothly. On with installing Node.&lt;/p&gt;
&lt;p&gt;Installing Node from a repository doesn&amp;#8217;t work because the only repository that had packages for Centos 5.8 mysteriously went away about two years ago. But I find &lt;a href="http://www.robeesworld.com/blog/31/installing_node_js_0_8_under_centos_5_8"&gt;more instructions on installing Node&lt;/a&gt; which look like they&amp;#8217;ll take me the rest of the way.&lt;/p&gt;
&lt;p&gt;The Node &lt;em&gt;configure&lt;/em&gt; script breaks with a cryptic error, so I have to edit it to point it at my Python 2.7.3 install. After that, it runs normally, so I run &lt;em&gt;make&lt;/em&gt;. The build fails:&lt;/p&gt;
&lt;p&gt;    cc1: error: unrecognized command line option &amp;#8220;-Wno-old-style-declaration&amp;#8221;&lt;/p&gt;
&lt;p&gt;Nothing I can find online is any help at all. I take a guess that it&amp;#8217;s because my stock &lt;em&gt;gcc&lt;/em&gt; (v4.1.6, which seems to be the latest supported for CentOS 5.8) is too old. &lt;/p&gt;
&lt;p&gt;I&amp;#8217;m hesitant to upgrade &lt;em&gt;gcc&lt;/em&gt; because experience has shown that touching major software like &lt;em&gt;gcc&lt;/em&gt; is a recipe for a whole world of pain. See remarks about trying to go round the package manager above. However, it turns out that I can &lt;a href="https://www.centos.org/modules/newbb/viewtopic.php?topic_id=37090"&gt;upgrade to gcc44 using yum&lt;/a&gt; without replacing the default compiler. &lt;/p&gt;
&lt;p&gt;Node now builds successfully. Next I have to edit the Makefile to tell it to use my newer Python, but once I&amp;#8217;ve done that, it even installs.&lt;/p&gt;
&lt;p&gt;Hmm, now I have access to a relatively modern &lt;em&gt;gcc&lt;/em&gt;, I could probably go back and try &lt;em&gt;libv8&lt;/em&gt; again. But let&amp;#8217;s see if ExecJS can find Node.&lt;/p&gt;
&lt;p&gt;Amazing &amp;#8230; &lt;em&gt;middleman&lt;/em&gt; ran without error, and built something in the place where I wanted it. This is success &amp;#8230; of a kind.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;m too tired to enjoy my victory. What began as a simple attempt to try out a promising tool did what I needed has turned into a multi-hour process full of cryptic error messages and wading through pages of even more cryptic Google results searching for the one hint that will get me out of the swamp. By the end, I&amp;#8217;ve effectively run out of time: I don&amp;#8217;t have the time to do what I set out to do because I spent so much time wrestling with the install (and whining about it on Tumblr). I&amp;#8217;ll just have to come back to it another day.&lt;/p&gt;
&lt;p&gt;This is not a criticism of any of the excellent software packages I have tried to install. It&amp;#8217;s just pretty much my experience with doing software installs on Linux generally. You are never far from getting sucked into the vortex of dependency hell. On several occasions, I have simply given up on something because it became clear that the process of trying to get it running was going to suck up entire days of my life, with no guarantee of success at the end.&lt;/p&gt;
&lt;p&gt;The alternative to the well-intentioned chaos of Linux, of course, is the sterile monoculture of MacOS X or Windows, where everything is locked down and the user is spoon-fed from a limited menu, but even there there are no guarantees. The Mac App Store, the ultimate spoonfeeding experience, can&amp;#8217;t seem to download one application that I bought, insisting that the file is damaged and refusing to launch it.&lt;/p&gt;
&lt;p&gt;Creating software so that it can be installed across a range of machines and configurations is just &lt;strong&gt;hard&lt;/strong&gt;. That&amp;#8217;s all there is to it. Smarter people than me have made tremendous strides in arranging things so that some idiot who doesn&amp;#8217;t really know what he&amp;#8217;s doing can get stuff going without too much trouble, much of the time. Unfortunately, we&amp;#8217;re not there yet.&lt;/p&gt;
&lt;p&gt;The one observation that I might make is that these problems are associated with a widening gap between development and production environments. The guys who make cool new toys like Node or &lt;em&gt;middleman&lt;/em&gt; are building them on development boxes that they control, probably running some OS that encourages you to install the latest and greatest of everything, like Ubuntu. Modern &lt;em&gt;gcc&lt;/em&gt;? Latest Python? Of course they have that installed. They probably built it from source themselves. So they&amp;#8217;re never going to run into the problems you get when you try to deploy their software on a production box running older, known-stable versions of key software.&lt;/p&gt;
&lt;p&gt;Maybe the lesson is this: if you as a developer want people to use your software in production, try being more conservative when you build out your development environment. If you don&amp;#8217;t need features from the absolute newest version, try using an older one. The more modest you can be in your requirements, the smoother the installs will go, and the more widely your software will be adopted.&lt;/p&gt;
&lt;p&gt;And the more chance people like me will have of actually getting something done.&lt;/p&gt;</description><link>http://blog.raingod.com/post/37986396888</link><guid>http://blog.raingod.com/post/37986396888</guid><pubDate>Sat, 15 Dec 2012 11:00:34 -0500</pubDate><category>Linux</category><category>CentOS</category><category>middleman</category><category>Node</category><category>installation</category><category>dependencies</category><category>hell</category></item><item><title>Photographs from the Blip holiday party.</title><description>&lt;img src="http://25.media.tumblr.com/f57d573051176cdef5b98477702b9329/tumblr_meo92pP02R1qzqo4po1_500.jpg"/&gt;&lt;br/&gt; For our holiday party, we went bowling.&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/67a22ccff414c6f156c6b4116c06b0fe/tumblr_meo92pP02R1qzqo4po2_500.jpg"/&gt;&lt;br/&gt; Joel doesn't look very happy ...&lt;br/&gt;&lt;br/&gt; &lt;img src="http://24.media.tumblr.com/ee223efdcb7a0fd78f8fc278e0cb4d0f/tumblr_meo92pP02R1qzqo4po3_500.jpg"/&gt;&lt;br/&gt; ... but Vanessa does ...&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/c4e3dcd68b94c7a059d0dbe31b89b0ac/tumblr_meo92pP02R1qzqo4po4_500.jpg"/&gt;&lt;br/&gt; ... and Scott approves of the food.&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/550f83b830990a4f75c976b92a036260/tumblr_meo92pP02R1qzqo4po5_500.jpg"/&gt;&lt;br/&gt; Alison has an important message.&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/8b31ae27cc49423246795354863d8d9b/tumblr_meo92pP02R1qzqo4po6_500.jpg"/&gt;&lt;br/&gt; Myra is a pool shark ...&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/0cba628c780389d9865e88f70ff6931e/tumblr_meo92pP02R1qzqo4po7_500.jpg"/&gt;&lt;br/&gt; ... and so is Michael.&lt;br/&gt;&lt;br/&gt; &lt;img src="http://24.media.tumblr.com/3fb3923961dead3c57d3456596f21441/tumblr_meo92pP02R1qzqo4po8_500.jpg"/&gt;&lt;br/&gt; Work never stops; Jeff and JD worry about buffering issues.&lt;br/&gt;&lt;br/&gt; &lt;img src="http://24.media.tumblr.com/5472c74b7a9e5aec7e48f6234a3cbb7c/tumblr_meo92pP02R1qzqo4po9_500.jpg"/&gt;&lt;br/&gt; Alison wants to shoop ...&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/57f05930cd252baafbd0448a3d99c37d/tumblr_meo92pP02R1qzqo4po10_500.jpg"/&gt;&lt;br/&gt; ... while Paul and Tom just want to rock in the free world.&lt;br/&gt;&lt;br/&gt; &lt;p&gt;Photographs from the Blip holiday party.&lt;/p&gt;</description><link>http://blog.raingod.com/post/37411673352</link><guid>http://blog.raingod.com/post/37411673352</guid><pubDate>Fri, 07 Dec 2012 12:40:00 -0500</pubDate><category>Blip</category><category>parties</category><category>bowling</category><category>pool</category><category>karaoke</category></item><item><title>Following Hurricane Sandy and the subsequent power outage, the...</title><description>&lt;img src="http://24.media.tumblr.com/tumblr_mcx4s5i7hV1qzqo4po1_500.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;Following Hurricane Sandy and the subsequent power outage, the &lt;a href="http://blip.com/"&gt;Blip&lt;/a&gt; offices in Manhattan were inaccessible for nearly five days. There was considerable concern for the welfare of Yamster “Doug” Hightower, the office hamster. As soon as power was restored in lower Manhattan, I was sent over to the office to make a State of the Hamster report.&lt;/p&gt;
&lt;p&gt;To everyone’s relief, he was none the worse for wear. This photo shows him enjoying a celebratory papaya treat after his rescue.&lt;/p&gt;</description><link>http://blog.raingod.com/post/34904043207</link><guid>http://blog.raingod.com/post/34904043207</guid><pubDate>Sat, 03 Nov 2012 11:38:29 -0400</pubDate><category>hamsters</category><category>pets</category><category>Blip</category><category>hurricane sandy</category></item><item><title>Our Manhattan office has no power since Hurricane Sandy hit....</title><description>&lt;img src="http://25.media.tumblr.com/tumblr_mctq3gXIBR1qzqo4po1_500.jpg"/&gt;&lt;br/&gt; Blip's temporary office in Brooklyn&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/tumblr_mctq3gXIBR1qzqo4po4_500.jpg"/&gt;&lt;br/&gt; Project managers managing&lt;br/&gt;&lt;br/&gt; &lt;img src="http://24.media.tumblr.com/tumblr_mctq3gXIBR1qzqo4po3_500.jpg"/&gt;&lt;br/&gt; Annie has been reassigned to Cat Support&lt;br/&gt;&lt;br/&gt; &lt;img src="http://24.media.tumblr.com/tumblr_mctq3gXIBR1qzqo4po2_500.jpg"/&gt;&lt;br/&gt; The facilities manager&lt;br/&gt;&lt;br/&gt; &lt;p&gt;Our Manhattan office has no power since Hurricane Sandy hit. We’re working out of a living room in Brooklyn.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;“It’s like working in a submarine”&lt;/em&gt; - Paul.&lt;/p&gt;</description><link>http://blog.raingod.com/post/34773733360</link><guid>http://blog.raingod.com/post/34773733360</guid><pubDate>Thu, 01 Nov 2012 15:28:28 -0400</pubDate><category>Hurricane Sandy</category><category>Blip</category><category>photos</category><category>people</category><category>cats</category><category>offices</category></item><item><title>Property owners in Lower Manhattan have different approaches to...</title><description>&lt;img src="http://25.media.tumblr.com/tumblr_mco3ko1pgo1qzqo4po1_500.jpg"/&gt;&lt;br/&gt; Not really a wall of sandbags as such, but it'll do, right?&lt;br/&gt;&lt;br/&gt; &lt;img src="http://24.media.tumblr.com/tumblr_mco3ko1pgo1qzqo4po2_500.jpg"/&gt;&lt;br/&gt; The FDNY takes pride in its work&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/tumblr_mco3ko1pgo1qzqo4po3_500.jpg"/&gt;&lt;br/&gt; I'm not sure what good these will do if the water ever gets this far&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/tumblr_mco3ko1pgo1qzqo4po4_500.jpg"/&gt;&lt;br/&gt; Bank of America isn't even trying&lt;br/&gt;&lt;br/&gt; &lt;p&gt;Property owners in Lower Manhattan have different approaches to the challenge of protecting their buildings against the storm surge&lt;/p&gt;</description><link>http://blog.raingod.com/post/34577768763</link><guid>http://blog.raingod.com/post/34577768763</guid><pubDate>Mon, 29 Oct 2012 14:34:00 -0400</pubDate><category>Hurricane Sandy</category><category>sandbags</category><category>floods</category></item><item><title>As Hurricane Sandy approaches, water levels around the southern...</title><description>&lt;img src="http://25.media.tumblr.com/tumblr_mcnzakpdqW1qzqo4po1_500.jpg"/&gt;&lt;br/&gt; Breaking waves on the waterfront by the East River&lt;br/&gt;&lt;br/&gt; &lt;img src="http://24.media.tumblr.com/tumblr_mcnzakpdqW1qzqo4po2_500.jpg"/&gt;&lt;br/&gt; View towards Liberty Island from Battery Park&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/tumblr_mcnzakpdqW1qzqo4po3_500.jpg"/&gt;&lt;br/&gt; Flooding on the waterfront at Battery Park&lt;br/&gt;&lt;br/&gt; &lt;p&gt;As Hurricane Sandy approaches, water levels around the southern tip of Manhattan are getting fairly high.&lt;/p&gt;</description><link>http://blog.raingod.com/post/34572599148</link><guid>http://blog.raingod.com/post/34572599148</guid><pubDate>Mon, 29 Oct 2012 13:01:32 -0400</pubDate><category>Hurricane Sandy</category><category>Frankenstorm</category><category>storm surge</category><category>Manhattan</category><category>New York</category><category>photos</category></item></channel></rss>
