<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Labnotes</title>
	<atom:link href="http://labnotes.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://labnotes.org</link>
	<description></description>
	<lastBuildDate>Thu, 11 Mar 2010 20:57:49 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Yaketee: new way to yak</title>
		<link>http://labnotes.org/2010/03/11/yaketee%c2%a0new-way-to-yak/</link>
		<comments>http://labnotes.org/2010/03/11/yaketee%c2%a0new-way-to-yak/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 20:57:49 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1428</guid>
		<description><![CDATA[Yaketee (&#8216;ya-ke-t&#8217;E) is a message board with a twist. To post and read messages, you have to be on the same network as the people you’re exchanging messages with.
Using WiFi at the coffee shop? You can post messages that everyone else there can read. Maybe you&#8217;re at a conference, the office, or want your roommates&#8217; [...]]]></description>
			<content:encoded><![CDATA[<p><strong><a href="http://yaketee.com/">Yaketee</a></strong> (<em>&#8216;ya-ke-t&#8217;E</em>) is a message board with a twist. To post and read messages, you have to be on the same network as the people you’re exchanging messages with.</p>
<p>Using WiFi at the coffee shop? You can post messages that everyone else there can read. Maybe you&#8217;re at a conference, the office, or want your roommates&#8217; attention, if they can only lay off the XBox for a bit.</p>
<p>Yaketee messages are sticky so you can use it for lost and found, haikus, raves and rants, shopping list, geocaching and what not. What you do with it is up to you, but please be nice to others.</p>
<p style="text-align: center;"><a href="http://yaketee.com/"><img class="aligncenter" title="Yaketee" src="http://labnotes.org/wp-content/uploads/2010/03/Yaketee.png" alt="" width="500" height="406" /></a></p>
<p>Yaketee doesn’t use peer-to-peer so there’s no client application to install. When you access our servers from a hotspot or home/office router, the router masks your IP address with its own. Yaketee uses that to match all the people accessing it from the same place.</p>
<p>So you really only need to remember one URL: <a href="http://yaketee.com">http://yaketee.com</a>.</p>
<p>How easy is that?</p>
<p>There’s no guarantee you’ll get laid, but you’ll have fun using it, so check it out.</p>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2010/03/11/yaketee%c2%a0new-way-to-yak/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Rounded Corners 250 — Hellabytes</title>
		<link>http://labnotes.org/2010/03/07/rounded-corners-250-%e2%80%94-hellabytes/</link>
		<comments>http://labnotes.org/2010/03/07/rounded-corners-250-%e2%80%94-hellabytes/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 19:22:32 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1427</guid>
		<description><![CDATA[
Myth busting. According to a Nielsen report, women are heavier users of mobile social networking, and ages 35-54 are much better represented than teenagers. Just saying.
Cookie buster. Besides all its visible annoyances and CPU overheating tendencies, did you realize Flash also keeps cookies around? And offers absolutely no UI for managing your privacy. I will not [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://loldwell.com/?p=526"><img class="alignnone" src="http://27.media.tumblr.com/tumblr_kyp0jgqCcP1qzpwi0o1_500.jpg" alt="" width="500" height="602" /></a></p>
<p><strong>Myth busting.</strong> According to <a href="http://www.bizreport.com/2010/03/women_dominate_mobile_social_networking_scene.html">a Nielsen report</a>, women are heavier users of mobile social networking, and ages 35-54 are much better represented than teenagers. Just saying.</p>
<p><strong>Cookie buster.</strong> Besides all its visible annoyances and CPU overheating tendencies, did you realize Flash also keeps cookies around? And offers absolutely no UI for managing your privacy. I will not use the word evil, but will point to <a href="http://mnmal.tumblr.com/post/425279684/deleting-flash-cookies">the obviously-named Killflashcookies</a>.</p>
<p><strong>The fall will kill you.</strong>  <a href="http://www.brianoberkirch.com/2010/03/04/hell-the-fall-will-kill-ya/">Brian Oberkirch sums up the issue with privacy and discoverability</a>:</p>
<blockquote><p>My hunch is that if we polled users they’d be hard pressed to tell you what FB activity could be seen by whom.  I’d wager that most users don’t really understand that things have changed.</p>
<p>And then but so:  those things are like being afraid of not knowing how to swim.  We’re jumping, folks.  And not knowing how to swim is the least of the issues.</p></blockquote>
<p><strong>Hella cool.</strong> <a href="http://m.boingboing.net/2010/03/01/petition-to-make-hel.html">Petition to make &#8220;Hella&#8221; the prefix for 1,000,000,000,000,000,000,000,000,000</a>.</p>
<p><strong>Smack a host.</strong> <a href="http://tbaggery.com/2010/03/04/smack-a-ho-st.html">Cool URL</a> pointing to localhost. Try <a href="http://dontmakeme.smackaho.st:3000/">http://dontmakeme.smackaho.st:3000/</a>.</p>
<p><em>Cartoon, by <a href="http://loldwell.com/">H. Caldwell</a> (via <a href="http://foreverdigital.tumblr.com/">foreverdigital</a>)</em></p>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2010/03/07/rounded-corners-250-%e2%80%94-hellabytes/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Vanity 1.3: Support for Google Analytics, Passenger and Unicorn</title>
		<link>http://labnotes.org/2010/03/01/vanity-1-3-support-for-google-analytics-passenger-and-unicorn-options/</link>
		<comments>http://labnotes.org/2010/03/01/vanity-1-3-support-for-google-analytics-passenger-and-unicorn-options/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 04:17:48 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1425</guid>
		<description><![CDATA[Vanity 1.3 adds support for Google Analytics thanks to Garb (the GA Ruby API) and much help from Tony Pitale.
You&#8217;ll need to include the garb gem in your configuration and establish a session (using username/password or OAuth token), like this:

Rails::Initializer.run do &#124;config&#124;
  gems.config &#34;vanity&#34;
  gems.config &#34;garb&#34;
  . . .
  config.after_initialize do
    [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://vanity.labnotes.org/">Vanity 1.3</a> adds support for Google Analytics thanks to <a href="http://github.com/vigetlabs/garb">Garb</a> (the GA Ruby API) and much help from <a href="http://t.pitale.com/">Tony Pitale</a>.</p>
<p>You&#8217;ll need to include the garb gem in your configuration and establish a session (using username/password or OAuth token), like this:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;"><span style="color:#6666ff; font-weight:bold;">Rails::Initializer</span>.<span style="color:#9900CC;">run</span> <span style="color:#9966CC; font-weight:bold;">do</span> <span style="color:#006600; font-weight:bold;">|</span>config<span style="color:#006600; font-weight:bold;">|</span>
  gems.<span style="color:#9900CC;">config</span> <span style="color:#996600;">&quot;vanity&quot;</span>
  gems.<span style="color:#9900CC;">config</span> <span style="color:#996600;">&quot;garb&quot;</span>
  . . .
  <span style="color:#9900CC;">config</span>.<span style="color:#9900CC;">after_initialize</span> <span style="color:#9966CC; font-weight:bold;">do</span>
    <span style="color:#CC0066; font-weight:bold;">require</span> <span style="color:#996600;">&quot;garb&quot;</span>
    ga = <span style="color:#CC00FF; font-weight:bold;">YAML</span>.<span style="color:#9900CC;">load_file</span><span style="color:#006600; font-weight:bold;">&#40;</span>Rails.<span style="color:#9900CC;">root</span> <span style="color:#006600; font-weight:bold;">+</span> <span style="color:#996600;">&quot;config/ga.yml&quot;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
    <span style="color:#6666ff; font-weight:bold;">Garb::Session</span>.<span style="color:#9900CC;">login</span><span style="color:#006600; font-weight:bold;">&#40;</span>ga<span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#996600;">'email'</span><span style="color:#006600; font-weight:bold;">&#93;</span>, ga<span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#996600;">'password'</span><span style="color:#006600; font-weight:bold;">&#93;</span>, account_type: <span style="color:#996600;">&quot;GOOGLE&quot;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>The rest is just a matter of figure out what metric you want to use:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">metric <span style="color:#996600;">&quot;Acquisition: Visitors&quot;</span> <span style="color:#9966CC; font-weight:bold;">do</span>
  description <span style="color:#996600;">&quot;Unique visitors on any given page, as tracked by Google Analytics&quot;</span>
  google_analytics <span style="color:#996600;">&quot;UA-1828623-6&quot;</span>, <span style="color:#ff3333; font-weight:bold;">:visitors</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>You can even use filters and much more, <a href="http://vanity.labnotes.org/metrics.html#ga">see the site for more details</a>.<br />
<span id="more-1425"></span></p>
<p>To use Vanity on a forking server (Passenger, Unicorn, etc), each child process must establish its own connection.  When you use Vanity 1.3 with Passenger it would do the right thing, but other servers need a helping hand.  Here, for example, is a portion of config/unicorn.rb that reconnects ActiveRecord and Vanity.</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">after_fork <span style="color:#9966CC; font-weight:bold;">do</span> <span style="color:#006600; font-weight:bold;">|</span>server, worker<span style="color:#006600; font-weight:bold;">|</span>
  <span style="color:#6666ff; font-weight:bold;">ActiveRecord::Base</span>.<span style="color:#9900CC;">establish_connection</span>
  Vanity.<span style="color:#9900CC;">playground</span>.<span style="color:#9900CC;">reconnect</span>!
<span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>Other worthy fixes and improvements:</p>
<ul>
<li>New documentation page that covers everything you need to know setting up Vanity for Rails (<a rel="nofollow" href="http://www.google.com/url?sa=D&amp;q=http://vanity.labnotes.org/rails.html&amp;usg=AFQjCNG0Nrxxep295CQFvob4JLHxM4suPg" target="_blank">http://vanity.labnotes.org/rails.html</a>)</li>
<li>Vanity query parameter (_vanity=?) that you can use to choose a particular alternative, e.g. to tie an advertisement banner with content of the site.</li>
<li>Command line &#8220;vanity list&#8221; catalogs all ongoing experiments, their alternatives (and fingerprints) and all metrics.</li>
<li>Vanity loads Redis configuration from config/redis.yml (if you have such a file).</li>
<li>New way to specify connection configuration: Vanity.playground.redis = &#8220;localhost:6379&#8243;. Use this instead of the separate host/port/db attribute.</li>
<li>Explicit vanity_context_filter and vanity_reload_filter so you can skip them, or order filters relative to them.</li>
<li>If metric cannot be loaded (e.g. offline, no db access) show error message for that metric but don&#8217;t break dashboard.</li>
<li>AbTest incorrectly calls identify method instead of identity (issue #2)</li>
<li>Running vanity command, automatically detects and loads Rails.</li>
<li>Vanity now picks up on load_path set from within config/environment.rb (issue #4)</li>
<li>Vanity.playground.define is deprecated. Bad choice for a method name. If you need this feature, make a suggestion and let&#8217;s create a better API.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2010/03/01/vanity-1-3-support-for-google-analytics-passenger-and-unicorn-options/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Rounded Corners 249 — Life before Google</title>
		<link>http://labnotes.org/2010/03/01/rounded-corners-249-%e2%80%94-life-before-google/</link>
		<comments>http://labnotes.org/2010/03/01/rounded-corners-249-%e2%80%94-life-before-google/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 16:35:55 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1423</guid>
		<description><![CDATA[
On the Web, the only reliable data is yours. Rather than echo the latest discovery — the madlibs signup form — Patrick tested how well it performs on his site:
By my count that is a 22% decrease in conversion rates for using the madlibs signup style over the standard signups style, and the fact of [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.shoeboxblog.com/?p=15314"><img src="http://26.media.tumblr.com/tumblr_ky3mv1iehZ1qzpwi0o1_500.jpg" alt="thedailywhat: Chuck &amp;amp; Beans." /></a></p>
<p><strong>On the Web, the only reliable data is yours.</strong> Rather than echo the latest discovery — the madlibs signup form — <a href="http://www.kalzumeus.com/2010/02/27/lesson-from-madlibs-signup-fad-do-your-own-tests/">Patrick tested how well it performs on his site</a>:</p>
<blockquote><p>By my count that is a 22% decrease in conversion rates for using the madlibs signup style over the standard signups style, and the fact of the decrease (but not the magnitude) is significant at the 95% confidence level.</p></blockquote>
<p>(Hint: if you find yourself quoting Patrick&#8217;s results as conclusive that madlibs is counter-effective, you&#8217;ve still got a lesson to learn)</p>
<p><strong>Easy mark.</strong> If you want a lot of app built fast, check out <a href="http://www.hobocentral.net/">Hobo</a>. Essentially <a href="http://cookbook.hobocentral.net/manual/toc">a framework on top of Rails</a> that does much of the redundia for you.</p>
<p><strong>How to forget.</strong> On the <a href="http://www.mikeperham.com/2010/02/24/the-trouble-with-ruby-finalizers/">common mistake of finalizing with a closure reference</a>.</p>
<p><strong>A sizable reference. <span style="font-weight: normal;"><a href="http://blog.boxedice.com/2010/02/28/notes-from-a-production-mongodb-deployment/">Notes from a production MongoDB deployment</a>. I like most of what I&#8217;ve seen, but the &#8220;when things go south, they fall off the map&#8221; approach to recovery still scares me away from giving MongoDB a try.</span></strong></p>
<p><strong>Want!</strong> Hackintosh Intel Core i7 920 4.41 GHz <a href="http://browse.geekbench.ca/geekbench2/view/221470">scores 14618 on geekbench</a>.(via <a href="http://twitter.com/russhans">@russhans</a>)</p>
<p><a href="http://www.shoeboxblog.com/?p=15314"><em>Life before Google</em></a><em>, from the </em><a href="http://www.shoeboxblog.com/?cat=1279"><em>wonderful Shoebox blog</em></a><em>.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2010/03/01/rounded-corners-249-%e2%80%94-life-before-google/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rounded Corners 248 — yo just print like &#8220;hello world&#8221; bro</title>
		<link>http://labnotes.org/2010/02/27/rounded-corners-248-%e2%80%94-yo-just-print-like-hello-world-bro/</link>
		<comments>http://labnotes.org/2010/02/27/rounded-corners-248-%e2%80%94-yo-just-print-like-hello-world-bro/#comments</comments>
		<pubDate>Sun, 28 Feb 2010 01:40:14 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1421</guid>
		<description><![CDATA[
OMG so totally Like, Python:

#!usr/bin/python
# My first Like, Python script!
yo just print like &#34;hello world&#34; bro

Conservative ISO broom. Garbage collection in Ruby. Interesting use of MongoDB to analyze memprof heap dumps.
Note worthy. The handy Rails footnotes plugin adds footnotes for easy debugging: session, parameters, cookies, filter chain, etc. Awesome sauce.
Add this in your app&#8217;s CSS [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/65414366@N00/4173787372/sizes/m/"><img src="http://farm3.static.flickr.com/2737/4173787372_f92326441d.jpg"/></a></p>
<p><strong>OMG</strong> so totally <a href="http://www.staringispolite.com/likepython/">Like, Python</a>:</p>

<div class="wp_syntax"><div class="code"><pre class="python" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">#!usr/bin/python</span>
<span style="color: #808080; font-style: italic;"># My first Like, Python script!</span>
yo just <span style="color: #ff7700;font-weight:bold;">print</span> like <span style="color: #483d8b;">&quot;hello world&quot;</span> bro</pre></div></div>

<p><strong>Conservative ISO broom.</strong> <a href="http://timetobleed.com/garbage-collection-slides-from-la-ruby-conference/">Garbage collection in Ruby</a>. Interesting use of MongoDB to analyze memprof heap dumps.</p>
<p><strong>Note worthy.</strong> The handy <a href="http://github.com/josevalim/rails-footnotes">Rails footnotes plugin</a> adds footnotes for easy debugging: session, parameters, cookies, filter chain, etc. Awesome sauce.</p>
<p>Add this in your app&#8217;s CSS to make the footnotes page-wide but no wider (even when showing very long values):</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#footnotes_debug</span> <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span> <span style="color: #cc00cc;">#fff</span><span style="color: #00AA00;">;</span> <span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span> <span style="color: #cc00cc;">#fff</span><span style="color: #00AA00;">;</span> <span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span> <span style="color: #933;">.6em</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span> <span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span> <span style="color: #933;"><span style="color: #cc66cc;">100</span>%</span> <span style="color: #00AA00;">&#125;</span>
<span style="color: #cc00cc;">#footnotes_debug</span> table <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">table-layout</span><span style="color: #00AA00;">:</span><span style="color: #993333;">fixed</span><span style="color: #00AA00;">;</span> <span style="color: #000000; font-weight: bold;">max-width</span><span style="color: #00AA00;">:</span> <span style="color: #933;">960px</span><span style="color: #00AA00;">;</span> word-wrap<span style="color: #00AA00;">:</span> break-word <span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>Add this to your environment to get it to open links in MacVim:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;"><span style="color:#6666ff; font-weight:bold;">Footnotes::Filter</span>.<span style="color:#9900CC;">prefix</span> = <span style="color:#996600;">'mvim://open?url=file://%s&amp;amp;amp;line=%d&amp;amp;amp;column=%d'</span></pre></div></div>

<p><strong>I Can&#8217;t Believe It&#8217;s Not Flash. <span style="font-weight: normal;">A presentation about the power of <a href="http://www.slideshare.net/madrobby/i-cant-believe-its-not-flash">HTML5, JS and CSS</a>. I can&#8217;t believe someone thought it&#8217;s a good idea to require Flash to watch this presentation.</span></strong></p>
<p><strong>Come pay your respects.</strong> March 4th, Denver CO. <a href="http://ie6funeral.com/">Funeral for IE6</a>.</p>
<p><a href="http://www.thinkgeek.com/tshirts-apparel/womens/d415/"><em>Hello Schröddy</em></a><em>, not available in male-fitting styles</em>.</p>
<p><em>Photo, t-shirt art with a twist, by <a href="http://www.flickr.com/photos/65414366@N00/">Flying Mouse</a>.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2010/02/27/rounded-corners-248-%e2%80%94-yo-just-print-like-hello-world-bro/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Post-Agile Way</title>
		<link>http://labnotes.org/2010/02/25/the-post-agile-way/</link>
		<comments>http://labnotes.org/2010/02/25/the-post-agile-way/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 06:28:03 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1422</guid>
		<description><![CDATA[From my interview with Sebastien Auvray for InfoQ: Experiment Driven Development &#8211; The Post-Agile Way:
It’s not just having quantifiable return on business. If quantifiable returns have to trickle from marketing to dev managers down to team leaders, then you have a bandwidth and latency issue. It’s about putting developers directly on the front line, baking metrics into the [...]]]></description>
			<content:encoded><![CDATA[<p>From my interview with <a href="http://www.infoq.com/author/Sebastien-Auvray">Sebastien Auvray</a> for InfoQ: <a href="http://www.infoq.com/news/2010/02/edd-post-agile">Experiment Driven Development &#8211; The Post-Agile Way</a>:</p>
<blockquote><p>It’s not just having quantifiable return on business. If quantifiable returns have to trickle from marketing to dev managers down to team leaders, then you have a bandwidth and latency issue. It’s about putting developers directly on the front line, baking metrics into the process, and measuring key business goals.</p>
<p>I call that “post Agile” because it build on the great foundation of Agile, but displaces “working software as primary measure of progress” with “validated learning and key metrics”. EDD is to post-Agile what TDD is to Agile.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2010/02/25/the-post-agile-way/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rounded Corners 247 — Diversity matters</title>
		<link>http://labnotes.org/2010/02/23/rounded-corners-247-%e2%80%94-diversity-matters/</link>
		<comments>http://labnotes.org/2010/02/23/rounded-corners-247-%e2%80%94-diversity-matters/#comments</comments>
		<pubDate>Tue, 23 Feb 2010 08:12:30 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1420</guid>
		<description><![CDATA[
Diversity matters. After all, we&#8217;re in the meritocracy business:
We laugh at people who think software patents are awesome, or want to give the RIAA more power, or think big companies should have a veto power over new technologies that are “too disruptive.” Those are all positions that are coherent, understandable, and anti-meritocratic. We need to recognize [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://wttf.org/youre-right/"><img class="alignnone" src="http://wttf.org/wp-content/uploads/2010/02/fartology_051.jpg" alt="" width="500" /></a></p>
<p><strong>Diversity matters. <a href="http://www.startuplessonslearned.com/2010/02/why-diversity-matter-meritocracy.html">After all, we&#8217;re in the meritocracy business</a>:</strong></p>
<blockquote><p>We laugh at people who think software patents are awesome, or want to give the RIAA more power, or think big companies should have a veto power over new technologies that are “too disruptive.” Those are all positions that are coherent, understandable, and anti-meritocratic. We need to recognize that supporting a homogeneous status quo is just as dumb, and just as bad for our industry.</p></blockquote>
<p><strong>Werewolf hunting.</strong> <a href="http://weblog.rubyonrails.org/2010/2/22/ruby-and-rails-conferences-2010?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+RidingRails+%28Riding+Rails%29">Ruby and RoR conference calendar for 2010</a>.</p>
<p><strong>Level 3 powerup.</strong> Jeremy just released <a href="http://www.railsupgradehandbook.com/">the Rails 3 upgrade handbook</a>. Considering all the changes, at $12 it&#8217;s a pretty sweet deal.</p>
<p><strong>Garb goes 0.7.</strong> Lot&#8217;s of <a href="http://www.viget.com/extend/google-analytics-api-with-ruby-and-garb-making-it-even-easier/">awesome new stuff in Garb 0.7</a>: slick API, OAuth and multiple sessions. Can&#8217;t wait to upgrade.</p>
<p><strong>CMMI Level 5.</strong> It&#8217;s not broken. It doesn&#8217;t produce incorrect results. And it doesn&#8217;t cave under full load. Still, something feels wrong about <a href="http://thedailywtf.com/Articles/isValidNumber%28%29.aspx">this implementation of isValidNumber()</a>.</p>
<p><em>Cartoon, </em><a href="http://wttf.org/"><em>by WTTF</em></a></p>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2010/02/23/rounded-corners-247-%e2%80%94-diversity-matters/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rounded Corners 246 — Space Invaders Enterprise Edition</title>
		<link>http://labnotes.org/2010/02/21/rounded-corners-246-%e2%80%94-space-invaders-enterprise-edition/</link>
		<comments>http://labnotes.org/2010/02/21/rounded-corners-246-%e2%80%94-space-invaders-enterprise-edition/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 03:22:55 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1418</guid>
		<description><![CDATA[
Interactive reading. Here&#8217;s a different way to read Ruby Best Practices. One chapter at a time, with a chance to discuss and comment on it:
If you’re reading this blog, you probably know that the Ruby Best Practices book exists. Even if you haven’t read it, you might have a sense for the sort of topics we cover based [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://eis-blog.ucsc.edu/2010/02/space-invaders-enterprise-edition/space-invaders-enterprise-edition-fps_-89/"><img class="alignnone size-full wp-image-1419" title="Space-Invaders-Enterprise-Edition-FPS_-89-500x398" src="http://labnotes.org/wp-content/uploads/2010/02/Space-Invaders-Enterprise-Edition-FPS_-89-500x398.png" alt="" width="500" height="398" /></a></p>
<p><strong>Interactive reading.</strong> Here&#8217;s a different way to read <a href="http://rubybestpractices.com/">Ruby Best Practices</a>. One chapter at a time, with a chance to discuss and comment on it:</p>
<blockquote><p>If you’re reading this blog, you probably know that the Ruby Best Practices book exists. Even if you haven’t read it, you might have a sense for the sort of topics we cover based on the content you’ve seen on this blog. But now, everyone is going to get a chance to read RBP the way its meant to be read: as a conversation.</p></blockquote>
<p>Chapter 4 is just out, so <a href="http://blog.rubybestpractices.com/posts/gregory/018-rbp-ch4.html">go give it a try</a>.</p>
<p><strong>X 2.0.</strong> <a href="http://www.slideshare.net/fredwilson/the-10-golden-principles-for-successful-web-apps-3238116">The 10 golden principles of successful Web App</a> (note: slides locked behind Flash doors).</p>
<p><strong>Self promote.</strong> <a href="http://www.copyblogger.com/author/nathan-hangen/">Nathan Hangen</a> has some <a href="http://www.copyblogger.com/shameless-self-promotion/">good advise on how to self-promote </a>without sounding like a &#8220;social media expert&#8221;:</p>
<blockquote><p>The reason that self-promotion works and self-adulation doesn’t is because self-promotion is the art of spreading ideas, concepts, and a greater vision. Self-adulation is just the promotion of accomplishments, deeds that have already been done.</p></blockquote>
<p><strong>HJKL.</strong> <a href="https://chrome.google.com/extensions/detail/dbepggeogbaibhgnhhndojpepiihcmeb">Vimium is a Chrome extension</a> that provides keyboard shortcuts for navigation and control in the spirit of Vim.</p>
<p><strong>Space Invaders Enterprise Edition.</strong> Just like the coin operated machines, and <a href="http://eis-blog.ucsc.edu/2010/02/space-invaders-enterprise-edition/">only 9MB of dependencies</a>:</p>
<blockquote><p>The magic of Space Invaders Enterprise Edition is actually under the hood. I’ve separated out the game logic from the Java source into a file parsed by a rules engine. This means we can easily view the game design, without it getting muddled with too much implementation code.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2010/02/21/rounded-corners-246-%e2%80%94-space-invaders-enterprise-edition/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Daily Hi</title>
		<link>http://labnotes.org/2010/02/20/the-daily-hi/</link>
		<comments>http://labnotes.org/2010/02/20/the-daily-hi/#comments</comments>
		<pubDate>Sat, 20 Feb 2010 17:39:05 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1413</guid>
		<description><![CDATA[I finally decided to give Sinatra a spin. Considering using it for lightweight services that can be mounted inside/next to the main Rails app. The best way to learn a framework is to use it, so I wrote a simple app for a – just as simple – idea.

If you need a daily &#8220;what day is [...]]]></description>
			<content:encoded><![CDATA[<p>I finally decided to give <a href="http://www.sinatrarb.com/">Sinatra</a> a spin. Considering using it for lightweight services that can be mounted inside/next to the main Rails app. The best way to learn a framework is to use it, so I wrote a simple app for a – just as simple – idea.</p>
<p><a href="http://dailyhi.labnotes.org/"><img class="alignnone size-full wp-image-1417" title="DailyHi" src="http://labnotes.org/wp-content/uploads/2010/02/DailyHi.png" alt="" width="600" height="549" /></a></p>
<p>If you need a daily &#8220;what day is it today?&#8221; reminder, <a href="http://dailyhi.labnotes.org/">check out the Daily Hi</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2010/02/20/the-daily-hi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rounded Corners 245 – Worst. Ideas. Ever.</title>
		<link>http://labnotes.org/2010/02/16/rounded-corners-245-%e2%80%93-worst-ideas-ever/</link>
		<comments>http://labnotes.org/2010/02/16/rounded-corners-245-%e2%80%93-worst-ideas-ever/#comments</comments>
		<pubDate>Tue, 16 Feb 2010 21:34:24 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1412</guid>
		<description><![CDATA[

You can enjoy the Flash video on the Confreaks site.

Ruby Learning. RubyTu.be is a collection of Ruby related videos and screencasts. 536 as I&#8217;m writing this post. That should keep you busy for a few years. Another option, at 249 strong, is RubySlide. That&#8217;s a lot of material.
The Intersect. There&#8217;s two things to be said for Redis. It&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p><video id="movie" width="640" height="360" autobuffer controls><br />
<source src="http://rubyconf2009.confreaks.com/videos/21-nov-2009-15-05-worst-ideas-ever-aaron-patterson-and-ryan-davis-small.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'></p>
<p>You can enjoy the <a href="http://rubyconf2009.confreaks.com/21-nov-2009-15-05-worst-ideas-ever-aaron-patterson-and-ryan-davis.html">Flash video on the Confreaks site</a>.</p>
<p></source></video><br />
<strong>Ruby Learning. <span style="font-weight: normal;"><a href="http://rubytu.be/">RubyTu.be</a> is a collection of Ruby related videos and screencasts. 536 as I&#8217;m writing this post. That should keep you busy for a few years. Another option, at 249 strong, is <a href="http://www.rubyslide.com/">RubySlide</a>. That&#8217;s a lot of material.</span></strong></p>
<p><strong>The Intersect. <span style="font-weight: normal;">There&#8217;s two things to be said for Redis. It&#8217;s fast. I first looked at Redis because it offers memcache performance without the reboot-induced amnesia. And it&#8217;s smart. It takes a bit to pick up the awesomeness of the Redis API, but once you do … did I mention awesome? Here&#8217;s one such example <a href="http://www.lukemelia.com/blog/archives/2010/01/17/redis-in-practice-whos-online/">using set operations to report who&#8217;s online in real time</a>:</span></strong></p>
<blockquote><p><strong><span style="font-weight: normal;">The idea is to have one active set per minute. During each request that comes in from a logged-in user, we’ll add a user ID to the active set. When we want to know which user IDs are online, we can union the last 5 sets to get a collection of user IDs who have made a request in the last</span></strong></p></blockquote>
<p><strong>Tick, tock.</strong> Ian Sefferman of <a href="http://www.appstorehq.com/">AppStoreHQ</a> has some interesting statistics on <a href="http://www.iseff.com/post/391153585/what-makes-apples-app-store-tick">what makes Apple&#8217;s App store tick</a>:</p>
<blockquote><p>Of those who would rather write native apps, a <em>majority</em> do so because of the App Store over any other reason (including available APIs, performance, language).</p></blockquote>
<p>Wait, there&#8217;s more! Here&#8217;s <a href="http://www.paperplanes.de/2010/2/16/a_collection_of_redis_use_cases.html">a collection of Redis use cases</a>.</p>
<p><strong>For the love of UNIX!</strong> <a href="http://bogomips.org/ruby_posix_mq/">POSIX message queues for Ruby</a>:</p>
<blockquote><p><a href="http://bogomips.org/ruby_posix_mq/"></a>POSIX message queues may be implemented in the kernel for fast, low-latency communication between processes on the same machine. POSIX message queues are not intended to replace userspace, network-aware message queue implementations.</p></blockquote>
<p><strong>Worst. Ideas. Ever.</strong>. Phuby on Phails and other hilarious gems from the <a href="http://rubyconf2009.confreaks.com/21-nov-2009-15-05-worst-ideas-ever-aaron-patterson-and-ryan-davis.html">RubyConf standup comedy troupe</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2010/02/16/rounded-corners-245-%e2%80%93-worst-ideas-ever/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://rubyconf2009.confreaks.com/videos/21-nov-2009-15-05-worst-ideas-ever-aaron-patterson-and-ryan-davis-small.mp4" length="102863962" type="video/mp4" />
		</item>
	</channel>
</rss>
