<?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 &#187; general</title>
	<atom:link href="http://labnotes.org/category/general/feed/" rel="self" type="application/rss+xml" />
	<link>http://labnotes.org</link>
	<description></description>
	<lastBuildDate>Wed, 23 May 2012 15:00:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Rounded Corners 369 – Why wasn&#8217;t I consulted?</title>
		<link>http://labnotes.org/2012/05/23/rounded-corners-369-why-wasnt-i-consulted/</link>
		<comments>http://labnotes.org/2012/05/23/rounded-corners-369-why-wasnt-i-consulted/#comments</comments>
		<pubDate>Wed, 23 May 2012 15:00:40 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1746</guid>
		<description><![CDATA[Spork Lessons from Etsy: Avoiding Kitchen Nightmares. Etsy engineering on continous Chef and using FoodCritic to never repeat the same mistake. WWIC Brilliant. The Web as a medium that answers one very simple question: &#8220;Why Wasn&#8217;t I Consulted?&#8221; “Why wasn&#8217;t I consulted,” which I abbreviate as WWIC, is the fundamental question of the web. It is [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Spork</strong> <a href="http://www.slideshare.net/mcdonnps/lessons-from-etsy-avoiding-kitchen-nightmares-chefconf-2012">Lessons from Etsy: Avoiding Kitchen Nightmares</a>. Etsy engineering on continous Chef and using FoodCritic to never repeat the same mistake.</p>
<p><strong>WWIC</strong> Brilliant. The Web as a medium that answers one very simple question: <a href="http://www.ftrain.com/wwic.html">&#8220;Why Wasn&#8217;t I Consulted?&#8221;</a></p>
<blockquote><p>“Why wasn&#8217;t I consulted,” which I abbreviate as WWIC, is the fundamental question of the web. It is the rule from which other rules are derived. Humans have a fundamental need to be consulted, engaged, to exercise their knowledge (and thus power), and no other medium that came before has been able to tap into that as effectively.</p></blockquote>
<p><strong>Non-optional return</strong> <a href="http://awardwinningfjords.com/2012/05/08/beware-coffeescript-comprehensions.html">Beware of CoffeeScript Comprehensions</a>: steer clear of automatic returns and function-per-iteration.</p>
<blockquote><p>Try searching through your output Javascript for return _results, that will reveal if your code might be accidentally returning unnecessary comprehensions.</p></blockquote>
<p><strong>90%</strong> A demonstration of just how <a href="http://chris.improbable.org/2012/05/18/google-analytics-deceptive-site-speed-report/">misleading the default Google Analytics site speed reports</a> are. And by extension, why you should be looking at 90th percentile rather than averages.</p>
<p><strong>Seriously?</strong> <a href="http://gizmodo.com/5910202/the-worst-phones-you-can-buy">The Worst Phones You Can Buy</a>, an hilarious selection of phone you can actually buy.</p>
<p><strong>QotD</strong> <a href="https://twitter.com/#!/dbrady/status/203581924470566912">David Brady</a>:</p>
<blockquote><p>&#8220;rm -rf /&#8221; &#8212; Format&#8217;s Last Theorem</p></blockquote>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2012/05/23/rounded-corners-369-why-wasnt-i-consulted/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rounded Corners 368 – Mad men</title>
		<link>http://labnotes.org/2012/05/22/rounded-corners-368-mad-men/</link>
		<comments>http://labnotes.org/2012/05/22/rounded-corners-368-mad-men/#comments</comments>
		<pubDate>Tue, 22 May 2012 15:00:09 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1745</guid>
		<description><![CDATA[Used and abused How GMail deals with abuse at scale. Spam is a money game, you know you&#8217;ve made a dent when 10K fake accounts go for $70 (vs $5 for Hotmail or $8 for Yahoo): We have in the past seen known attackers correctly authenticate to over 30 accounts per second NODE_ENV Production Node.js [...]]]></description>
			<content:encoded><![CDATA[<p><a href="https://twitter.com/#!/ashalynd/status/202020558882349056 "><img class="alignnone" src="http://i.imgur.com/wGUTG.gif" alt="" width="322" height="281" /></a></p>
<p><strong>Used and abused</strong> <a href="https://ripe64.ripe.net/presentations/48-AbuseAtScale.pdf">How GMail deals with abuse at scale</a>. Spam is a money game, you know you&#8217;ve made a dent when 10K fake accounts go for $70 (vs $5 for Hotmail or $8 for Yahoo):</p>
<blockquote><p>We have in the past seen known attackers correctly authenticate to over 30 accounts per second</p></blockquote>
<p><strong>NODE_ENV</strong> <a href="http://dshaw.github.com/2012-05-jsday/#/">Production Node.js Secrets</a>:</p>
<blockquote><p>Focused processes doing specific things</p></blockquote>
<p><strong>Pretty</strong> Finally, <a href="http://pretty-rfc.herokuapp.com/">your favorite RFCs in readable form</a>. Wonderfully executed HTMLs that print well to PDF.</p>
<p><strong>Mad men</strong> Wonderful view of <a href="http://arstechnica.com/business/2012/05/make-mainframes-not-war-how-mad-men-sold-computers-in-the-1960s-and-1970s/">computer advertising through the mainframe era </a>and all the way to the PCjr.</p>
<p><strong>QotD</strong> <a href="https://twitter.com/#!/foodgoesinmouth/status/201513917082644482">Caleb T.</a>:</p>
<blockquote><p>Idea: Register macbookheater dot com. Single page. 20 flash ads. Does what it says on the tin.</p></blockquote>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2012/05/22/rounded-corners-368-mad-men/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rounded Corners 367 – Texts from XCode</title>
		<link>http://labnotes.org/2012/05/20/rounded-corners-367-texts-from-xcode/</link>
		<comments>http://labnotes.org/2012/05/20/rounded-corners-367-texts-from-xcode/#comments</comments>
		<pubDate>Mon, 21 May 2012 05:27:27 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1744</guid>
		<description><![CDATA[Short code Mobile input: detailed notes from a full-day workshop on mobile forms, hardware input, Ui controls. Some designers will tell you not to use text inputs because people won’t type on a smartphone, but people send 4 billion SMS messages every day. When people have something they want or need to do on their [...]]]></description>
			<content:encoded><![CDATA[<p><a href="https://twitter.com/#!/atomicbird/status/203268408605814784/photo/1"><img class="alignnone" src="https://p.twimg.com/AtInimmCMAAohX2.png" alt="Texts from XCode" width="360" height="540" /></a></p>
<p><strong>Short code</strong> <a href="http://willhacker.net/2012/04/27/luke-wroblewski-on-mobile-inputs/">Mobile input</a>: detailed notes from a full-day workshop on mobile forms, hardware input, Ui controls.</p>
<blockquote>
<ul>
<li>Some designers will tell you not to use text inputs because people won’t type on a smartphone, but people send 4 billion SMS messages every day.</li>
<li>When people have something they want or need to do on their smartphone they will use text inputs if they have no other choice.</li>
</ul>
</blockquote>
<p><strong>Nonsense</strong> <a href="https://github.com/jocafa/Nonsense">Nonsense.js</a>: Generate repeatable random data in JS (integers, timestamps, sentences, names, etc.)</p>
<p><strong>Precompiled</strong> If you&#8217;re still debating, here&#8217;s a good overview of <a href="http://css-tricks.com/sass-vs-less/">SASS vs LESS</a>.</p>
<p><strong>Team</strong> <a href="http://www.quora.com/What-makes-a-good-engineering-culture/answer/Edmond-Lau?srid=hiM">What makes a good engineering culture</a>?</p>
<blockquote><p>Respect among peers forms the foundation for any type of open communication. A place where people feel comfortable challenging each other&#8217;s ideas is one where sound ideas get forged through debate. A place where people easily get offended is one where crucial feedback gets withheld.</p></blockquote>
<p><strong>QotD</strong> <a href="https://twitter.com/#!/niallohiggins/status/201096928811954176">Niall O&#8217;Higgins</a>:</p>
<blockquote><p>OAuth2 is all fun and games until some provider makes you implement refresh tokens.</p></blockquote>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2012/05/20/rounded-corners-367-texts-from-xcode/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rounded Corners 366 – &#8216;require&#8217; is so damn hard</title>
		<link>http://labnotes.org/2012/05/13/rounded-corners-366-require-is-so-damn-hard/</link>
		<comments>http://labnotes.org/2012/05/13/rounded-corners-366-require-is-so-damn-hard/#comments</comments>
		<pubDate>Sun, 13 May 2012 15:00:59 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1742</guid>
		<description><![CDATA[Covered Love the single-page code coverage report generated by Mocha and jscoverage. Dialed jQuery Knob is a radial visual/input field. May not be the most efficient way to show or enter data, but cool enough that I&#8217;m looking for a project to use it in. Click page.js is a tiny (~1.2KB) client-side router. In-page navigation [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Covered</strong> Love the <a href="http://zombie.labnotes.org/coverage">single-page code coverage report</a> generated by <a href="https://github.com/visionmedia/mocha">Mocha</a> and <a href="http://siliconforks.com/jscoverage/">jscoverage</a>.</p>
<p><strong>Dialed</strong> <a href="http://anthonyterrien.com/knob/">jQuery Knob</a> is a radial visual/input field. May not be the most efficient way to show or enter data, but cool enough that I&#8217;m looking for a project to use it in.</p>
<p><strong>Click</strong> <a href="http://visionmedia.github.com/page.js/">page.js</a> is a tiny (~1.2KB) client-side router. In-page navigation and pushState support without having to buy into a framework.</p>
<p><strong>Cubed</strong> <a href="http://bost.ocks.org/mike/cubism/intro/">Introduction to Cubism.js</a>. Didn&#8217;t realize pulling data from Graphite is that easy.</p>
<p><strong>Learning</strong> <a href="http://www.randsinrepose.com/archives/2012/05/09/two_universes.html">Two Universes</a>: what if Photoshop was less an &#8220;Adobe product&#8221; and more like Portal the game? On bringing the explorative nature of games into non-game products.</p>
<p><strong>Get it out there</strong> Distribution is key and what software engineers need to know about sales and marketing: <a href="http://blakemasters.tumblr.com/post/22405055017/peter-thiels-cs183-startup-class-9-notes-essay">notes from class 9 of CS182: Startup</a>, Peter Thiel.</p>
<p><strong>Remarkable</strong> Kodus Twitter for <a href="http://www.webpronews.com/twitter-defends-user-in-court-over-occupy-tweets-2012-05">standing up for its users&#8217; rights</a> and the 4th amendment.</p>
<p><strong>QotD</strong> <a href="https://twitter.com/#!/drawohara/status/200691686031101952">Ara T. Howard</a>:</p>
<blockquote><p>no really, i love debugging rail&#8217;s const_missing because &#8216;require&#8217; is so damn hard</p></blockquote>
<p><strong>QotD</strong> <a href="https://twitter.com/#!/pengwynn/status/200693985575047169">Wynn Netherland</a>:</p>
<blockquote><p>I suspect the Egyptians had higher forms of writing, but the only things that survived were the memes.</p></blockquote>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2012/05/13/rounded-corners-366-require-is-so-damn-hard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rounded Corners 365 – Float right</title>
		<link>http://labnotes.org/2012/05/12/rounded-corners-365-float-right/</link>
		<comments>http://labnotes.org/2012/05/12/rounded-corners-365-float-right/#comments</comments>
		<pubDate>Sat, 12 May 2012 18:23:02 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1741</guid>
		<description><![CDATA[Float right Application Cache is a Douchebag. Everything you need to know about using one of the trickiest browser features since CSS floats. Fresh face Sprites are so 2011. Enlightened Web developers font their icon collection. Check out Shifticons and Fontello. Geeking out If you search for &#8220;sha this&#8221; in DuckDuckGo, it will calculate the [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" src="http://weknowmemes.com/wp-content/uploads/2012/04/looks-like-its-fuck-this-shit-o-clock.jpg" alt="" width="419" height="304" /></p>
<p><strong>Float right</strong> <a href="http://www.alistapart.com/articles/application-cache-is-a-douchebag/">Application Cache is a Douchebag</a>. Everything you need to know about using one of the trickiest browser features since <a href="https://twitter.com/#!/alexch/status/201062364601266178">CSS floats</a>.</p>
<p><strong>Fresh face</strong> Sprites are so 2011. Enlightened Web developers font their icon collection. Check out <a href="https://www.shifticons.com/">Shifticons</a> and <a href="http://fontello.com/">Fontello</a>.</p>
<p><strong>Geeking out</strong> If you search for &#8220;<a href="https://duckduckgo.com/?q=sha+this">sha this</a>&#8221; in DuckDuckGo, it will calculate the SHA for you. You can also ask it to generate a <a href="https://duckduckgo.com/?q=uuid">UUID</a>, <a href="https://duckduckgo.com/?q=random+password">random password</a> and a <a href="https://duckduckgo.com/tech.html">million other geek tricks</a>.</p>
<p>Hmm, I see what you did there.</p>
<p><strong>Repeat after me</strong> <a href="http://queue.acm.org/detail.cfm?id=2187821">Idempotence Is Not a Medical Condition</a> &#8211; understanding asynchronous messaging in distributed systems. I feel like, if you understand these two principles, the rest come easy:</p>
<blockquote><p>- Every message may be retried and, hence, must be idempotent.<br />
- Guaranteed delivery of the last message is impossible.</p></blockquote>
<p><strong>Undead</strong> Before you call the Web dead on the altar of apps, consider this: <a href="http://www.technologyreview.com/business/40319/">Why publishers don&#8217;t like apps</a>. Or how MIT Tech Review sold only 353 subscriptions for its iPad app.</p>
<p><strong>Pop quiz</strong> How many programming languages can you <a href="http://www.infoworld.com/d/application-development/hello-world-programming-languages-quiz-188874?quizkey=527bae36cb84c70037f9e5d2275745c6">tell apart just by an &#8220;Hello, world&#8221; example</a>?</p>
<p><strong>One step forward …</strong> Now this is game changing: using <a href="https://github.com/WelcomWeb/JXS">XSLT templates to render JSON</a> data in the browser.</p>
<p><strong>QotD</strong> <a href="https://twitter.com/#!/williammcknight/status/190496614421499905">William McKnight</a>:</p>
<blockquote><p>A data scientist is a data analyst who lives in California</p></blockquote>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2012/05/12/rounded-corners-365-float-right/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>And just like that, Zombie goes 1.0!</title>
		<link>http://labnotes.org/2012/05/10/and-just-like-that-zombie-goes-1-0/</link>
		<comments>http://labnotes.org/2012/05/10/and-just-like-that-zombie-goes-1-0/#comments</comments>
		<pubDate>Fri, 11 May 2012 03:30:05 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1740</guid>
		<description><![CDATA[OK, not &#8220;just like that&#8221;, a lot of changed since Zombie 0.13 hit the road on April 25th. So may improvements, let&#8217;s go over the important ones, in no particular oder: Promises Zombie now supports promises. Like this: browser.visit&#40;&#34;http://localhost:3000/&#34;&#41;. then&#40;function&#40;&#41; &#123; assert.equal&#40;browser.text&#40;&#34;H1&#34;&#41;, &#34;Deferred zombies&#34;&#41;; // Chaining works by returning a promise here return browser.clickLink&#40;&#34;Hit me&#34;&#41;; &#125;&#41;. [...]]]></description>
			<content:encoded><![CDATA[<p>OK, not &#8220;just like that&#8221;, <a href="http://zombie.labnotes.org/changelog">a lot of changed</a> since Zombie 0.13 hit the road on April 25th.</p>
<p>So may improvements, let&#8217;s go over the important ones, in no particular oder:</p>
<p><strong>Promises</strong> Zombie now supports promises. Like this:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">browser.<span style="color: #660066;">visit</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;http://localhost:3000/&quot;</span><span style="color: #009900;">&#41;</span>.
  <span style="color: #660066;">then</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    assert.<span style="color: #660066;">equal</span><span style="color: #009900;">&#40;</span>browser.<span style="color: #660066;">text</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;H1&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;Deferred zombies&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #006600; font-style: italic;">// Chaining works by returning a promise here</span>
    <span style="color: #000066; font-weight: bold;">return</span> browser.<span style="color: #660066;">clickLink</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;Hit me&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span>.
    <span style="color: #660066;">then</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
   assert.<span style="color: #660066;">equal</span><span style="color: #009900;">&#40;</span>browser.<span style="color: #660066;">text</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;H1&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;Ouch&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p><strong>Proxies</strong> By popular request, Zombie now supports HTTP/S proxies. As simple as:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">Browser.<span style="color: #660066;">proxy</span> <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;http://myproxy:8080&quot;</span></pre></div></div>

<p><strong>Authentication</strong> New API for setting authentication credentials:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #006600; font-style: italic;">// HTTP Basic takes user and password</span>
browser.<span style="color: #660066;">authenticate</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">basic</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;me&quot;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;secret&quot;</span><span style="color: #009900;">&#41;</span>
<span style="color: #006600; font-style: italic;">// OAuth 2.0 Bearer takes an access token</span>
browser.<span style="color: #660066;">authenticate</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;example.com:443&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">bearer</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;12345&quot;</span><span style="color: #009900;">&#41;</span>
<span style="color: #006600; font-style: italic;">// Show the authentication credentials in use</span>
console.<span style="color: #660066;">log</span><span style="color: #009900;">&#40;</span>browser.<span style="color: #660066;">authenticate</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">token</span><span style="color: #009900;">&#41;</span></pre></div></div>

<p><strong>IFrames</strong> Working so well, in fact, that we&#8217;re able to <a href="https://github.com/assaf/zombie/blob/master/test/facebook_connect_test.coffee">test Facebook Connect</a>, with its popup and hidden XD and other shenanigans.</p>
<p><strong>postMessage</strong> Yes.</p>
<p><strong>Windows</strong> That too. You can open as many as you want with <em>browser.open</em>, and with <em>brower.windows</em> you can also list them <em>all</em>, <em>get</em> specific window by number or number, <em>select</em> the current window, and <em>close</em> it when done.</p>
<p><strong>Server-sent Events</strong> Zombie now supports the <em>EventSource</em> object for testing <a href="http://dev.w3.org/html5/eventsource/">Server-Sent Events</a>. Side note, if you&#8217;re pushing updates to the browser in real time, forget long polling and Web Sockets and try the simpler Server-Sent Events.</p>
<p><strong>Mocha</strong> Zombie&#8217;s test suite changes from Vows to <a href="http://visionmedia.github.com/mocha/">Mocha</a>. That shouldn&#8217;t affect your project, you can use whichever test suite you feel like using, but if you&#8217;re wondering what I recommend, Mocha is not perfect, but I have more luck with it.</p>
<p><strong>Cookies</strong> Zombie now uses <a href="https://github.com/goinstant/node-cookie">Tough Cookie</a>, and things like parsing, encoding and host matching are much more reliable.</p>
<p><strong>Scripts</strong> Upgraded to the most recent version of <a href="http://jsdom.org/">JSOM</a> and <a href="https://github.com/brianmcd/contextify">Contextify</a>, speeding up DOM processing and fixing some edge-case JavaScript evals. Also, fixed handling for old-style event handlers like <em>onclick</em> and <em>onsubmit</em>. Guess which largest social network is still using them?</p>
<p><strong>HTML</strong> Switched back to using <a href="https://github.com/aredridel/html5">HTML5</a> parser by default, that means more forgiving HTML parsing, handling for inline scripts and … ugh … <em>document.write</em>.</p>
<p><strong>about:blank</strong> New windows open in <em>about:blank</em>, and you can now set the window location to a <em>javascript:</em> expression. Handy if you&#8217;re testing bookmarklets and such; to actually evaluate JavaScript, use <em>browser.evaluate</em>.</p>
<p><strong>Redirects</strong> Fixed redirects after POST, redirects that include a # document fragment and cookie handling when redirecting.</p>
<div>So yes, the big One Oh! So go build stuff, and may the testing gods smile upon you!</div>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2012/05/10/and-just-like-that-zombie-goes-1-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rounded Corners 364 –</title>
		<link>http://labnotes.org/2012/05/08/rounded-corners-364/</link>
		<comments>http://labnotes.org/2012/05/08/rounded-corners-364/#comments</comments>
		<pubDate>Tue, 08 May 2012 15:00:35 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1738</guid>
		<description><![CDATA[From Context Free Patent Art In style The Single Responsibility Principle applied to CSS. Also, CSS: The Good Parts. Wait, there&#8217;s more: Cross-Browser Debugging CSS. To infinity LinkedIn&#8217;s new iPad app is 95% HTML5, and it&#8217;s damn slick to use. More on how they implemeneted endless scrolling without killing the browser. Jar Cookies.js: A client-side JS library [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://contextfreepatentart.tumblr.com/"><img class="alignnone" src="http://25.media.tumblr.com/tumblr_m3djw1aN0o1rsromyo1_500.jpg" alt="" width="240" height="296" /></a></p>
<p>From <a href="http://contextfreepatentart.tumblr.com/">Context Free Patent Art</a></p>
<p><strong>In style</strong> <a href="http://csswizardry.com/2012/04/the-single-responsibility-principle-applied-to-css/">The Single Responsibility Principle applied to CSS</a>. Also, <a href="http://www.impressivewebs.com/css-the-good-parts/">CSS: The Good Parts</a>. Wait, there&#8217;s more: <a href="http://www.stubbornella.org/content/2012/05/02/cross-browser-debugging-css/">Cross-Browser Debugging CSS</a>.</p>
<p><strong>To infinity</strong> <a href="http://venturebeat.com/2012/05/02/linkedin-ipad-app-engineering/">LinkedIn&#8217;s new iPad app is 95% HTML5</a>, and it&#8217;s damn slick to use. More on how they implemeneted <a href="http://engineering.linkedin.com/linkedin-ipad-5-techniques-smooth-infinite-scrolling-html5">endless scrolling without killing the browser</a>.</p>
<p><strong>Jar</strong> <a href="https://github.com/ScottHamper/Cookies">Cookies.js</a>: A client-side JS library for manipulating cookies.</p>
<p><strong>Big it is</strong> <a href="http://platform.html5.org/">The web platform &#8211; a cheat sheet</a>. Handy reference to the bewildering array of specs that makes up current day Web.</p>
<p><strong>Misinformed</strong> Just one example of <a href="http://dashes.com/anil/2012/04/why-you-cant-trust-tech-press-to-teach-you-about-the-tech-industry.html">why you can&#8217;t trust tech press to teach you about the tech industry</a>.</p>
<p><strong>Insecure by design</strong> &#8220;Security questions&#8221; are great for anything but security. Case in point, <a href="http://www.gq.com/news-politics/newsmakers/201205/chris-chaney-hacker-nude-photos-scarlett-johansson?printable=true&amp;mobify=0">The Man Who Hacked Hollywood</a>.</p>
<p><strong>Secure by design</strong> 1Password has a great blog about security, and now running a 3-part seried on keeping your computer safe. Here&#8217;s Part 2: <a href="http://blog.agilebits.com/2012/05/02/only-you-should-0wn-your-data-part-2-staying-safe/">Only you should 0wn your data</a>.</p>
<p><strong><br />
</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2012/05/08/rounded-corners-364/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rounded Corners 363 – Spilled chili</title>
		<link>http://labnotes.org/2012/05/07/rounded-corners-363-spilled-chili/</link>
		<comments>http://labnotes.org/2012/05/07/rounded-corners-363-spilled-chili/#comments</comments>
		<pubDate>Mon, 07 May 2012 15:00:35 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1737</guid>
		<description><![CDATA[From the Fake Science Blog Places to hide TC-thirty-what. I whole heartily agree. A few good features, but unfortunately, adding too many places for bugs to hide. Chatty Unix and Node: IPC. This or that Fascinating read, The A/B Test: Inside the Technology That’s Changing the Rules of Business: Had the team listened to instinct—if [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://fakescience.tumblr.com/post/22328843580/scatterplots-can-show-data-in-new-ways"><img class="alignnone" src="http://media.tumblr.com/tumblr_m3gkzk0Gel1qb25dg.jpg" alt="" width="339" height="440" /></a></p>
<p>From the <a href="http://fakescience.tumblr.com/">Fake Science Blog</a></p>
<p><strong>Places to hide</strong> <a href="http://www.mikealrogers.com/posts/tc-thirty-what.html">TC-thirty-what</a>. I whole heartily agree. A few good features, but unfortunately, adding too many places for bugs to hide.</p>
<p><strong>Chatty</strong> <a href="http://dailyjs.com/2012/04/26/node-unix-ipc/">Unix and Node: IPC</a>.</p>
<p><strong>This or that</strong> Fascinating read, <a href="http://m.wired.com/epicenter/2012/04/ff_abtesting/">The A/B Test: Inside the Technology That’s Changing the Rules of Business</a>:</p>
<blockquote><p>Had the team listened to instinct—if it had kept “Sign Up” as the button text and swapped out the photo for the video—the sign-up rate would have slipped to 70 percent of the baseline.</p></blockquote>
<p><strong>Credible Hulk</strong> Don&#8217;t believe the &#8220;feels right&#8221;. <a href="http://evidencebasedse.com/">The Software Engineering Evidence Database</a> is a good place to start for summaries and studies of evidence-based software engineering studies.</p>
<p><strong>MIN( R * T * F ^ N , M )</strong> The simple formula for <a href="http://dthain.blogspot.com/2009/02/exponential-backoff-in-distributed.html?m=1">Exponential Backoff in Distributed Systems</a>.</p>
<p><strong>Inclusion</strong> If you care about research more than personal anecdotes: MSEs watch two videos one with a 50/50 gender ratio vs one without - <a href="http://tigger.uic.edu/~mcmpsych/documents/MurphySteeleGross2007.pdf">lower sense of belonging in women from unbalanced</a>.</p>
<p><strong>QotD</strong> <a href="https://twitter.com/#!/alunny/status/198515403260047360?">Andrew Lunny</a>:</p>
<blockquote><p>sometimes the best solution is to never use an ec2 micro instance for anything ever</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2012/05/07/rounded-corners-363-spilled-chili/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rounded Corners 362 – Open spaces</title>
		<link>http://labnotes.org/2012/05/06/rounded-corners-362-open-spaces/</link>
		<comments>http://labnotes.org/2012/05/06/rounded-corners-362-open-spaces/#comments</comments>
		<pubDate>Sun, 06 May 2012 15:00:52 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1736</guid>
		<description><![CDATA[Faster A good overview of measuring front-end performance, using Github as the case study. Spool time NodePhilly presentations are now available on YouTube. Teaming Obvious but worth repeating, 6 secrets for building a super team. PSA Node Replay goes 1.4.2, now with HTTPS support and regular expression matching. Pivots A telling presentation about all the [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" src="http://img.gawkerassets.com/img/17li3fh69pabojpg/original.jpg" alt="" width="384" height="216" /></p>
<p><strong>Faster</strong> A good overview of <a href="http://blog.jphpsf.com/2012/04/28/front-end-performance-case-study-github/">measuring front-end performance</a>, using Github as the case study.</p>
<p><strong>Spool time</strong> <a href="http://www.youtube.com/nodephilly">NodePhilly presentations</a> are now available on YouTube.</p>
<p><strong>Teaming</strong> Obvious but worth repeating, <a href="http://gigaom.com/2012/04/28/6-secrets-for-building-a-super-team/">6 secrets for building a super team</a>.</p>
<p><strong>PSA</strong> <a href="http://documentup.com/assaf/node-replay">Node Replay goes 1.4.2</a>, now with HTTPS support and regular expression matching.</p>
<p><strong>Pivots</strong> A telling presentation about all <a href="http://www.slideshare.net/500startups/aaron-batalion-livingsocial-lean-startup-sxsw">the pivots SocialLiving went through</a>.</p>
<p><strong>Value</strong> A VC explains how to <a href="http://venturebeat.com/2012/04/28/killer-value-proposition/">build a killer value proposition</a>.</p>
<blockquote><p>As an investor, I look for non-disruptive disruptions — that is, technologies that offer game-changing benefits without requiring any modification to existing processes or environments.</p></blockquote>
<p><strong>Accidental</strong> <a href="http://www.reghardware.com/2012/05/03/unsung_heroes_of_tech_arm_creators_sophie_wilson_and_steve_furber/print.html">How the ARM came to be</a>. Low power consumption was accidental.</p>
<p><strong>QotD</strong> <a href="https://twitter.com/#!/greenberg/status/198456715828662273?">Ryan Greenberg</a>:</p>
<blockquote><p>As a software architect I spend most of my time trying to create bright, open spaces where the code can relax.</p></blockquote>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2012/05/06/rounded-corners-362-open-spaces/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rounded Corners 361 – Illegal in Arizona</title>
		<link>http://labnotes.org/2012/05/05/rounded-corners-361-illegal-in-arizona/</link>
		<comments>http://labnotes.org/2012/05/05/rounded-corners-361-illegal-in-arizona/#comments</comments>
		<pubDate>Sun, 06 May 2012 00:50:27 +0000</pubDate>
		<dc:creator>Assaf</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://labnotes.org/?p=1735</guid>
		<description><![CDATA[W3CMemes … enough said Deferred jQuery deferred for Node. Basically a port of jQuery for use in Node.js apps. Since jQuery is not exactly compatible with other promise APIs, this is a good choice if you like using the same API in both enviroments. Workload Cluster2 is Node.js cluster plus &#8220;several safeguards and utility functions to [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://w3cmemes.tumblr.com/"><img class="alignnone" src="http://27.media.tumblr.com/tumblr_m3iyjbf3R91rvsbh9o1_500.jpg" alt="" width="400" height="361" /></a></p>
<p><a href="http://w3cmemes.tumblr.com/">W3CMemes … enough said</a></p>
<p><strong>Deferred </strong><a href="https://github.com/jaubourg/jquery-deferred-for-node">jQuery deferred for Node</a>. Basically a port of jQuery for use in Node.js apps. Since jQuery is <a href="http://www.pallavlaskar.com/discussion-on-new-jquery-1-5-implementation-of-promise-api/">not exactly compatible</a> with other promise APIs, this is a good choice if you like using the same API in both enviroments.</p>
<p><strong>Workload</strong> <a href="http://ql-io.github.com/cluster2/">Cluster2</a> is Node.js cluster plus &#8220;several safeguards and utility functions to help support real-world production scenarios&#8221;.</p>
<p><strong>Gaming</strong> <a href="http://uxdesign.smashingmagazine.com/2012/04/26/gamification-ux-users-win-lose/">Gamification And UX: Where Users Win Or Lose</a>. Good read if you&#8217;re interested in using gamification to build better apps, not for the same of it.</p>
<p><strong>Wonderful</strong> Travis CI can now <a href="http://about.travis-ci.org/blog/announcing-pull-request-support/">help you with pull requests</a>.</p>
<p><strong>UX</strong> <a href="http://bokardo.com/principles-of-user-interface-design/">Principles of User Interface Design</a>.</p>
<p><strong>Knowledge</strong> <a href="http://danhon.com/2012/04/28/myself-quantified/">Fighting diabetis with data</a>.</p>
<p><strong>Chance</strong> <a href="http://lifehacker.com/5904825/how-beginners-luck-works-and-how-you-can-reproduce-it-anytime-even-if-youre-not-a-beginner">How beginner&#8217;s luck work and how you can reproduce it</a>.</p>
<p><strong>QotD </strong><a href="https://twitter.com/#!/vambenepe/status/197731956019040258">William Vambenepe</a>:</p>
<blockquote><p>This API is so undocumented, it wouldn&#8217;t last a day in Arizona.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://labnotes.org/2012/05/05/rounded-corners-361-illegal-in-arizona/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

