<?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> &#187; sarah</title>
	<atom:link href="http://blazingcloud.net/author/sarah/feed/" rel="self" type="application/rss+xml" />
	<link>http://blazingcloud.net</link>
	<description></description>
	<lastBuildDate>Thu, 29 Dec 2011 00:39:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Lauren Ipsum: CS Fiction for Kids</title>
		<link>http://blazingcloud.net/2011/10/10/lauren-ipsum-cs-fiction-for-kids/</link>
		<comments>http://blazingcloud.net/2011/10/10/lauren-ipsum-cs-fiction-for-kids/#comments</comments>
		<pubDate>Mon, 10 Oct 2011 14:14:35 +0000</pubDate>
		<dc:creator>sarah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blazingcloud.net/?p=2594</guid>
		<description><![CDATA[We just backed the Lauren Ipsum project on KickStarter. This children&#8217;s story is an adventure through computer science concepts. The main character, Lauren Ipsum, meets a Wandering Salesman in the first chapter who is finding his way home using the algorithm of that name. It&#8217;ll be interesting to read the rest of the book and [...]]]></description>
			<content:encoded><![CDATA[<p>We just backed the <a href="http://www.kickstarter.com/projects/512752850/lauren-ipsum-computer-science-for-kids">Lauren Ipsum project</a> on KickStarter.  <iframe align="right" frameborder="0" scrolling="no" height="380px" src="http://www.kickstarter.com/projects/512752850/lauren-ipsum-computer-science-for-kids/widget/card.html" width="220px"></iframe></p>
<p>This children&#8217;s story is an adventure through computer science concepts. The main character, Lauren Ipsum, meets a Wandering Salesman in the first chapter who is finding his way home using the algorithm of that name. It&#8217;ll be interesting to read the rest of the book and to see whether it can inspire children to think about algorithms and data from a fun perspective without introducing them as computing concepts.</p>
<p>Pledges on KickStarter go towards translating the book into Spanish, Portuguese, and other languages. This is pretty awesome, since much of software development lingo is taken from English, it is great to evangelize learning computer science concepts in kids&#8217; native languages.  </p>
<p>We applaud this effort and look forward to hanging one of the book&#8217;s illustrations in our office after the completion of the project.</p>
<p>Even though they have already met their goal, more funding will enable translation in more languages.  </p>
<p>Learn more about <a href="http://www.kickstarter.com/projects/512752850/lauren-ipsum-computer-science-for-kids">Lauren Ipsum on KickStarter</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blazingcloud.net/2011/10/10/lauren-ipsum-cs-fiction-for-kids/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mobile Lean UX</title>
		<link>http://blazingcloud.net/2011/08/14/mobile-lean-ux/</link>
		<comments>http://blazingcloud.net/2011/08/14/mobile-lean-ux/#comments</comments>
		<pubDate>Sun, 14 Aug 2011 18:56:51 +0000</pubDate>
		<dc:creator>sarah</dc:creator>
				<category><![CDATA[Lean Startup]]></category>
		<category><![CDATA[Mobile]]></category>

		<guid isPermaLink="false">http://blazingcloud.net/?p=2431</guid>
		<description><![CDATA[Agile development is an ideal way to create production software, but how do we apply agile methodologies to the design of the user experience? User experience design benefits from a holistic approach and if we aren&#8217;t careful, doing iterative development can result in a disjointed and confusing user experience or expensive re-designs. I gave a [...]]]></description>
			<content:encoded><![CDATA[<p>Agile development is an ideal way to create production software, but how do we apply agile methodologies to the design of the user experience?  User experience design benefits from a holistic approach and if we aren&#8217;t careful, doing iterative development can result in a disjointed and confusing user experience or expensive re-designs.  I gave a talk last week at <a href="http://founderlabs.org/">Founder Labs</a> about how to apply agile and &#8220;lean startup&#8221; to the definition of the user experience. I shared some details about tools that can be used for both prototyping and building production software and talked about how to choose between developing for the mobile web, native apps or taking a hybrid approach.</p>
<p>Here are the slides from my talk at Founder Labs:</p>
<div style="width:425px" id="__ss_8848451"> <strong style="display:block;margin:12px 0 4px"><a href="http://www.slideshare.net/blazingcloud/mobile-lean-ux" title="Mobile Lean UX" target="_blank">Mobile Lean UX</a></strong> <iframe src="http://www.slideshare.net/slideshow/embed_code/8848451" width="425" height="355" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
<div style="padding:5px 0 12px"> View more presentations from <a href="http://www.slideshare.net/blazingcloud" target="_blank">Blazing Cloud</a> </div>
</p></div>
]]></content:encoded>
			<wfw:commentRss>http://blazingcloud.net/2011/08/14/mobile-lean-ux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rack for Easy HTTP redirect</title>
		<link>http://blazingcloud.net/2011/08/04/rack-for-easy-http-redirect/</link>
		<comments>http://blazingcloud.net/2011/08/04/rack-for-easy-http-redirect/#comments</comments>
		<pubDate>Thu, 04 Aug 2011 18:05:15 +0000</pubDate>
		<dc:creator>sarah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blazingcloud.net/?p=2419</guid>
		<description><![CDATA[We recently moved our class sign-up to EventBrite.  It used to be hosted on heroku with the subdomain classes.blazingcloud.net.  However, when we changed our DNS to direct to eventbrite, it didn&#8217;t end up targetting our eventbrite subdomain: blazingcloud.eventbrite.com &#8212; hitting the EventBrite homepage instead.  Rack to the rescue! We set up another Heroku app with [...]]]></description>
			<content:encoded><![CDATA[<p>We recently moved our <a href="http://blazingcloud.eventbrite.com/">class sign-up</a> to EventBrite.  It used to be hosted on heroku with the subdomain <a href="http://classes.blazingcloud.net/">classes.blazingcloud.net</a>.  However, when we changed our DNS to direct to eventbrite, it didn&#8217;t end up targetting our eventbrite subdomain: <a href="http://blazingcloud.eventbrite.com/">blazingcloud.eventbrite.com</a> &#8212; hitting the EventBrite homepage instead.  Rack to the rescue!</p>
<p>We set up another Heroku app with just a one-line rack application.  All it needed was a rackup config file, called &#8220;config.ru&#8221; with the following line:</p>
<pre>
run Proc.new { [ 302, {'Location'=> 'http://blazingcloud.eventbrite.com' }, [] ] }
</pre>
<p>and voila! It does a simple re-direct to the new site.</p>
]]></content:encoded>
			<wfw:commentRss>http://blazingcloud.net/2011/08/04/rack-for-easy-http-redirect/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>remarkable validations for rails 3</title>
		<link>http://blazingcloud.net/2011/07/21/remarkable-validations-for-rails-3/</link>
		<comments>http://blazingcloud.net/2011/07/21/remarkable-validations-for-rails-3/#comments</comments>
		<pubDate>Thu, 21 Jul 2011 17:26:21 +0000</pubDate>
		<dc:creator>sarah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blazingcloud.net/?p=2390</guid>
		<description><![CDATA[I&#8217;ve been working on upgrading an app from Rails 2.3.11 to Rails 3.1.  It was using the old rspec-on-rails-matchers plugin to get validators like: it 'verifies that login is between 3 and 40 characters' do User.new.should validate_length_of(:login, :within =&#62; 3..40) end I like that validation syntax, but lately when I see a plugins, I worry [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working on upgrading an app from Rails 2.3.11 to Rails 3.1.  It was using the old rspec-on-rails-matchers plugin to get validators like:</p>
<pre class="brush: plain; title: ;">
it 'verifies that login is between 3 and 40 characters' do
   User.new.should validate_length_of(:login, :within =&gt; 3..40)
end
</pre>
<p>I like that validation syntax, but lately when I see a plugins, I worry that I&#8217;m in for some archaeology.  I did find a replacement gem, but it didn&#8217;t work on first try, so I read up on my options.  I briefly considered shoulda, which is now compatible with rspec, but I settled on <a href="https://github.com/remarkable/remarkable">remarkable</a> because it seems to match the syntax already in use.  I wrote a little test <a href="https://github.com/blazingcloud/remarkable_example">rails app with a couple of models</a> and was pleased the results.  </p>
<h2>Setup</h2>
<pre class="brush: plain; title: ;">
rails new remarkable_app -T&quot;
cd remarkable_app
</pre>
<p>add to Gemfile:</p>
<pre class="brush: plain; title: ;">
    group :development, :test do
      gem &quot;rspec&quot;, &quot;2.6.0&quot;
      gem &quot;rspec-rails&quot;, &quot;2.6.1&quot;
      gem &quot;remarkable_activerecord&quot;, &quot;4.0.0.alpha4&quot;
    end
</pre>
<p>Then back on the command line, set up rspec:</p>
<pre class="brush: plain; title: ;">
rails g rspec:install
</pre>
<p>edit spec/spec_helper.rb to include (after require &#8216;rspec/rails&#8217;):</p>
<pre class="brush: plain; title: ;">
    require 'remarkable/active_record'
</pre>
<h2>Create a Model</h2>
<p>Then make a model to play with (on the command line):</p>
<pre class="brush: plain; title: ;">
rails g model person name:string email:string
rake db:migrate
rake spec
/Users/sarah/.rvm/rubies/ruby-1.9.2-p290/bin/ruby -S bundle exec rspec ./spec/models/person_spec.rb
*

Pending:
  Person add some examples to (or delete) /Users/sarah/src/mv/experiment/remarkable_app/spec/models/person_spec.rb
    # Not Yet Implemented
    # ./spec/models/person_spec.rb:4

Finished in 0.00026 seconds
1 example, 0 failures, 1 pending
</pre>
<p>yay! ready to get started test driving some remarkable validations&#8230;</p>
<h2>Test Driven Validation</h2>
<p>Let&#8217;s test drive our first validation..</p>
<pre class="brush: plain; title: ;">
describe Person do
  should_validate_length_of :name, :within =&gt; 3..40
end
</pre>
<p>note that remarkable also supports:<br />
<code>it { should validate_length_of :name, :within => 3..40 }</code><br />
For my new code I&#8217;ll probably write the more concise version, but it is nice that my old code should work.</p>
<pre class="brush: plain; title: ;">
$ rake spec
/Users/sarah/.rvm/rubies/ruby-1.9.2-p290/bin/ruby -S bundle exec rspec ./spec/models/person_spec.rb
F

Failures:

  1) Person
     Failure/Error: send(should_or_should_not, send(method, *args, &amp;block))
       Expected Person to be invalid when name length is less than 3 characters
     # ./spec/models/person_spec.rb:4:in `block in &lt;top (required)&gt;'
     # ./spec/models/person_spec.rb:3:in `&lt;top (required)&gt;'

Finished in 0.30367 seconds
1 example, 1 failure

Failed examples:

rspec /Users/sarah/.rvm/gems/ruby-1.9.2-p290@remarkable_rails3/gems/remarkable-4.0.0.alpha4/lib/remarkable/core/macros.rb:26 # Person
rake aborted!
ruby -S bundle exec rspec ./spec/models/person_spec.rb failed
</pre>
<p>add validation to my model&#8230;</p>
<pre class="brush: plain; title: ;">
class Person &lt; ActiveRecord::Base
  validates_length_of :name, :within =&gt; 3..40
end
</pre>
<p>Test passes!</p>
<pre class="brush: plain; title: ;">
$ rake spec
/Users/sarah/.rvm/rubies/ruby-1.9.2-p290/bin/ruby -S bundle exec rspec ./spec/models/person_spec.rb
.

Finished in 0.27601 seconds
1 example, 0 failures
</pre>
<p>More validations:</p>
<pre class="brush: plain; title: ;">
describe Person do
  should_validate_length_of :name, :within =&gt; 3..40
  should_allow_values_for :email, &quot;sarah@foo.com&quot;
  should_not_allow_values_for :email, &quot;sarah&quot;, &quot;@foo&quot;, &quot;whatever.com&quot;
end
</pre>
<p>Reasonably nice error output:</p>
<pre class="brush: plain; title: ;">
$ rake spec
/Users/sarah/.rvm/rubies/ruby-1.9.2-p290/bin/ruby -S bundle exec rspec ./spec/models/person_spec.rb
..F

Failures:

  1) Person
     Failure/Error: send(should_or_should_not, send(method, *args, &amp;block))
       Did not expect Person to be valid when email is set to &quot;sarah&quot;
     # ./spec/models/person_spec.rb:6:in `block in &lt;top (required)&gt;'
     # ./spec/models/person_spec.rb:3:in `&lt;top (required)&gt;'

Finished in 0.29054 seconds
3 examples, 1 failure

Failed examples:

rspec /Users/sarah/.rvm/gems/ruby-1.9.2-p290@remarkable_rails3/gems/remarkable-4.0.0.alpha4/lib/remarkable/core/macros.rb:26 # Person
rake aborted!
ruby -S bundle exec rspec ./spec/models/person_spec.rb failed
</pre>
<p>Cheated a little on implementation by copying email validation from ActiveRecord docs&#8230; all good.</p>
<h2>Now let&#8217;s add an association!</h2>
<p>In app/model/person.rb:</p>
<pre class="brush: plain; title: ;">
describe Person do
  should_validate_length_of :name, :within =&gt; 3..40
  should_allow_values_for :email, &quot;sarah@foo.com&quot;
  should_not_allow_values_for :email, &quot;sarah&quot;, &quot;@foo&quot;, &quot;whatever.com&quot;
  should_have_many :addresses
end
</pre>
<p>Watch it fail:</p>
<pre class="brush: plain; title: ;">
$ rake spec
/Users/sarah/.rvm/rubies/ruby-1.9.2-p290/bin/ruby -S bundle exec rspec ./spec/models/person_spec.rb
...F

Failures:

  1) Person
     Failure/Error: send(should_or_should_not, send(method, *args, &amp;block))
       Expected Person records have many addresses, but the association does not exist
     # ./spec/models/person_spec.rb:7:in `block in &lt;top (required)&gt;'
     # ./spec/models/person_spec.rb:3:in `&lt;top (required)&gt;'

Finished in 0.32615 seconds
4 examples, 1 failure
</pre>
<p>Make it pass:</p>
<pre class="brush: plain; title: ;">
$ rails g model address street:string person:belongs_to
      invoke  active_record
      create    db/migrate/20110721161741_create_addresses.rb
      create    app/models/address.rb
      invoke    rspec
      create      spec/models/address_spec.rb
$ rake db:migrate

.

Pending:
  Address add some examples to (or delete) /Users/sarah/src/mv/experiment/remarkable_app/spec/models/address_spec.rb
    # Not Yet Implemented
    # ./spec/models/address_spec.rb:4

Finished in 0.2998 seconds
5 examples, 0 failures, 1 pending
</pre>
<p>the rest is left as an exercise for the reader :)</p>
<h2>Summary</h2>
<p>Overall, I like the remarkable syntax. It seems reliable and on its way to a good release for Rails 3.</p>
]]></content:encoded>
			<wfw:commentRss>http://blazingcloud.net/2011/07/21/remarkable-validations-for-rails-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Brad Smith, Intuit: entrepreneurship in a large company</title>
		<link>http://blazingcloud.net/2011/05/27/brad-smith-intuit-entrepreneurship-in-a-large-company/</link>
		<comments>http://blazingcloud.net/2011/05/27/brad-smith-intuit-entrepreneurship-in-a-large-company/#comments</comments>
		<pubDate>Sat, 28 May 2011 05:13:51 +0000</pubDate>
		<dc:creator>sarah</dc:creator>
				<category><![CDATA[Lean Startup]]></category>

		<guid isPermaLink="false">http://blazingcloud.net/?p=2248</guid>
		<description><![CDATA[A conversation with Intuit CEO Brad Smith and Eric Ries: The Relevance of Entrepreneurship at Intuit. Brad had a number of really awesome lines, which unfortunately came off as a bit too rehearsed, so much so, that it made me wonder if there are many Intuit engineer that have a real opportunity to innovate as [...]]]></description>
			<content:encoded><![CDATA[<p>A conversation with Intuit CEO Brad Smith and Eric Ries: The Relevance of Entrepreneurship at Intuit.  Brad had a number of really awesome lines, which unfortunately came off as a bit too rehearsed, so much so, that it made me wonder if there are many Intuit engineer that have a real opportunity to innovate as entrepreneurs. I still felt that he had a lot of good things to say, and I wish more big company CEOs would talk like this.</p>
<p><img title="Brad Smith of Intuit" src="https://img.skitch.com/20110528-cqeb14hx4q588hgdg282jaw5md.png" /></p>
<p>&#8220;Entrepreneurship is the heartbeat of the company. We have 8000 entrepreneurs: our employees.&#8221;<br />
&#8220;Everyday 	we work very hard to rage against the machine. Big company culture will kill innovation&#8221; (via <a href="http://twitter.com/jbollinger">@jbollinger</a>)</p>
<p>Corporate government can&#8217;t impose more than 3 rules<br />
We don&#8217;t ask questions, we watch<br />
Innovation is born out of constraint<br />
A team must be able to be fed by two pizzas<br />
Keep teams small and iterate quickly<br />
We suffer a rich man&#8217;s disease. Innovation is borne out of constraints<br />
The 	problem with big companies is with the managers, who are too used to playing Caesar.<br />
As a leader, it is not the answers you have or the questions you have &#8212; asking the right questions 	at the right time in a startup team is the most important thing as a leader<br />
Setup  an environment of experimentation<br />
Ultimately what led Intuit to success was exposing their stuff to customers early<br />
Double down on the stuff that  works<br />
The culture of experiments beats the culture of powerpoint and articulation<br />
<strong>The 	two most dangerous words in business are &#8220;sounds good&#8221;</strong><br />
Managers 	remove roadblocks<br />
&#8220;Build just in time not just in case&#8221; &#8211; don&#8217;t build a multi-generational platform that will change the world<br />
Create the environment, and let the small teams figure it out to attain success</p>
<p>For a new product, Brad considered it a big success to have two groups of customers: raging advocates and pissed off people<br />
Big  companies put processes in the way of innovation. It&#8217;s not about  spreadsheets, and processes, and planning, but that&#8217;s what managers 	do.<br />
The 	worst management philosophy is that of a genius with a thousand helpers. You have to hire people who are working closely with 	the customer to solve a problem you would never have solved.</p>
<p>Brad described a &#8220;reverse 	acquisition&#8221; where they acquire a company and put the new guy in charge.  For example, the Mint 	entrepreneur took over a division that included Mint and Quicken.</p>
<p>Q: How 	to overcome internal resistance? internal employees feeling like they lost to a competitor that is bought.<br />
A: If we didn&#8217;t invent it ourselves, it doesn&#8217;t mean we failed<br />
    Learn from startups or bring them onboard</p>
<p>&#8220;The greatest minds closest to the customer develop the great ideas&#8221;</p>
<p>Hire entrepreneurial engineers: engineers who are in love with the outcome of the science, NOT JUST the technical stuff. You have to find someone who loves watching and learning from customers</p>
<p>Horizon planning<br />
- Existing 	business groups increase market share, increase word-of-mouth</p>
<p>Q: Do you plan to put more of Quickbooks online and what are your plans for growing to other countries?<br />
A: Connected services companies are 60% of revenue<br />
    Desktop products aren&#8217;t growing</p>
<p>60/30/10 revenue distribution<br />
60% to horizon 1 products, 30% to the teenagers, 10% to new projects</p>
]]></content:encoded>
			<wfw:commentRss>http://blazingcloud.net/2011/05/27/brad-smith-intuit-entrepreneurship-in-a-large-company/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eric Ries: Stop Wasting People&#8217;s Time</title>
		<link>http://blazingcloud.net/2011/05/23/eric-ries-stop-wasting-peoples-time/</link>
		<comments>http://blazingcloud.net/2011/05/23/eric-ries-stop-wasting-peoples-time/#comments</comments>
		<pubDate>Mon, 23 May 2011 19:13:20 +0000</pubDate>
		<dc:creator>sarah</dc:creator>
				<category><![CDATA[Lean Startup]]></category>

		<guid isPermaLink="false">http://blazingcloud.net/?p=2222</guid>
		<description><![CDATA[At SLLConf this year, we decided to try an experiment of live blogging via typewith.me. The event is being simulcast to a global audience, just like last year. This is the first of a series. Eric Ries kicked it off with an update on the Lean Startup &#8220;movement.&#8221; Eric Ries says he&#8217;s just a figurehead, [...]]]></description>
			<content:encoded><![CDATA[<p>At <a href="http://www.sllconf.com/">SLLConf</a> this year, we decided to try an experiment of live blogging via <a href="http://typewith.me">typewith.me</a>.  The event is being simulcast to a global audience, just like last year. This is the first of a series.  </p>
<p>Eric Ries kicked it off with an update on the Lean Startup &#8220;movement.&#8221;  </p>
<p>Eric Ries says he&#8217;s just a figurehead, later Eric Ries referred to himself a &#8220;professional talking head&#8221;. He isn&#8217;t lean startup, we are.<br />
We are experiencing a worldwide entrepreneurial renaissance.</p>
<p>Everyone turn your cell phones on! Being off the internet is irresponsible and direspectful to our ancestors who created this technology for us.</p>
<p>Lean Startup is global &#8212; it is no longer a Silicon Valley phenomenon.  Check out <a href="http://lean-startup.meetup.com">Lean Startup Meetups</a>.</p>
<p>We are in the process of democratizing entrepreneurship.<br />
But, it has also been institutionalized&#8230;</p>
<ul>
<li>Harvard Business School- MVP Product Fund</li>
<li>Stanford University- Lean Launchpad</li>
<li>BYU- Lean Startup Research Project</li>
</ul>
<p>Books</p>
<ul>
<li>the Entrepreneur&#8217;s Guide to Customer Development</li>
<li>Steve Blank&#8217;s Four Steps to the Epiphany</li>
<li>(and there was another one that we missed)</li>
</ul>
<p>Entrepreneurship is not just two guys in a garage, it is a discipline</p>
<p>GhostBusters is one of the great entrepreneurship movies of all time<br />
All great entrepreneurs have great stories.  The movies play out like this:<br />
Act 1) Characters&#038; timing<br />
Act 2) Boring stuff &#8212; the &#8220;photo montage&#8221; of people at the keyboard drinking beer<br />
Act 3) How to divide up the spoils<br />
This conference is about Act 2 &#8212; how does it really happen.</p>
<p>&#8220;A startup is a human institution designed to deliver a new product or service under conditions of extreme uncertainty.&#8221; &#8212; <a href="http://www.startuplessonslearned.com/2010/06/what-is-startup.html">Eric&#8217;s definition</a></p>
<p>startup = experiment</p>
<p>&#8220;our future GDP growth depends on the quality and caliber of our collective imagination&#8221;</p>
<p>We are building companies that have fundamentally no customers and are pulled off the shelves</p>
<p><a href="http://en.wikipedia.org/wiki/Frederick_Winslow_Taylor">Frederick Winslow Taylor</a> (March 20, 1856 – March 21, 1915) was an American mechanical engineer who sought to improve industrial efficiency. </p>
<p>Scientific Management:<br />
* Study work to find the best way<br />
* Management by exception<br />
* Standardize work into tasks<br />
* Compensate workers based on performance</p>
<p>What are we doing now that will later be revealed as myth and prejudice?</p>
<p>The Pivot<br />
&#8220;better to be misunderstood than ignored&#8221;<br />
Runway- number of pivots you still have the opportunity to make<br />
Speed Wins</p>
<p>Validated learning reduces the time between pivots<br />
Acheiving Failures = successfully exeuting on a bad plan<br />
Why is it important to do things efficiently if we&#8217;re doing the wrong thing?</p>
<p>W. Edwards Deming and Taiichi Ohno- start of the Lean Revolution</p>
<p>Who is the customer? whose eyes matter in determining value vs. waste?</p>
<p>Minimize the total time through the loop<br />
Ideas -> Build -> Code -> Measure -> Data -> Learn<br />
see image here: http://lean.st/principles/build-measure-learn</p>
<p>Ship it anyways and see what happens?  Why spend time agruing about the details if there the chance that no one will want it.</p>
<p>How do we figure out what we need to learn as quickly as possible</p>
<p><a href="http://bit.ly/thetoyotaway">The Toyota Way</a><br />
Foundation is long term thinking -> culture that supports people to do their best work</p>
<p>He displayed this pyramid:<br />
<img src="http://assets.montabe.com/galleries/sllconf/photos/4ddaa6c7b456330fb9000004/big_square.jpg"/></p>
<ul>
<li>People</li>
<li>Culture</li>
<li>Process</li>
<li>Acountability</li>
</ul>
<p>&#8220;We have begun to learn how to keep innovators accountable&#8221;<br />
Use learning milestones instead of product milestones<br />
What are the inputs to our business plan right now<br />
better have bad news that is true than good news that we made up<br />
&#8220;If the 10% customer adoption does not happen, everything in this business plan is irrelevant&#8221; should be a big red banner!&#8221; via @timolehes<br />
Tune the engine &#8211;> every business has different math</p>
<p>Pivot or persevere? when experiments reach diminishing returns, it&#8217;s time to pivot.</p>
<p>&#8220;If we alllow ourselves to fail, we can train our judgement to get better over time&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://blazingcloud.net/2011/05/23/eric-ries-stop-wasting-peoples-time/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hosted Continuous Integration with CloudBees</title>
		<link>http://blazingcloud.net/2011/04/12/hosted-continuous-integration-with-cloudbees/</link>
		<comments>http://blazingcloud.net/2011/04/12/hosted-continuous-integration-with-cloudbees/#comments</comments>
		<pubDate>Tue, 12 Apr 2011 23:07:21 +0000</pubDate>
		<dc:creator>sarah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blazingcloud.net/?p=2203</guid>
		<description><![CDATA[We&#8217;ve keeping an eye out for hosted continuous integration for some time. Recently, I heard about CloudBees from John Dunham at Sauce Labs (another great cloud-hosted service which will run your Selenium tests). It seems some ofthe Hudson folk have escaped from Oracle, renamed/forked the open source project as &#8220;Jenkins&#8221; and are setting up shop [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve keeping an eye out for hosted continuous integration for some time. Recently, I heard about <a href="http://www.cloudbees.com/">CloudBees</a> from John Dunham at <a href="http://saucelabs.com/">Sauce Labs</a> (another great cloud-hosted service which will run your Selenium tests). It seems some ofthe Hudson folk have <a href="http://jaxenter.com/oracle-speak-out-on-hudson-jenkins.1-34569.html">escaped from Oracle</a>, renamed/forked the open source project as &#8220;Jenkins&#8221; and are setting up shop with <a href="http://venturebeat.com/2010/11/29/cloudbees-java-dream-team-lands-4m-from-matrix-partners/">$4M from Matrix Partners</a> with the goal of offering a platform for hosting Java apps, including the Java-based continuous integration system, Jenkins (nee Hudson).</p>
<p>I&#8217;ve tried it out on one Rails project I&#8217;ve tried, I&#8217;ve got specs running, but not passing and I&#8217;m not sure why yet.  Here&#8217;s what I&#8217;ve figured out so far&#8230; </p>
<pre class="brush: ruby; title: ;">
export rvm_path=~/.rvm
echo 'export rvm_path=~/.rvm' &gt; ~/.rvmrc
mkdir -p ~/.rvm/src
cd ~/.rvm/src
rm -rf ./rvm/
git clone --depth 1 git://github.com/wayneeseguin/rvm.git
cd rvm
./install
rvm reload
rvm reset
cd $WORKSPACE
rvm install ree-1.8.7
rvm use ree-1.8.7
rvm gem install bundler --no-rdoc --no-ri
rvm exec bundle install
cp config/database.yml.dev config/database.yml
rvm exec rake db:create:all
rvm exec rake db:migrate
rvm exec rake spec
</pre>
]]></content:encoded>
			<wfw:commentRss>http://blazingcloud.net/2011/04/12/hosted-continuous-integration-with-cloudbees/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Ruby on Rails class webinar</title>
		<link>http://blazingcloud.net/2011/01/30/ruby-on-rails-class-webinar/</link>
		<comments>http://blazingcloud.net/2011/01/30/ruby-on-rails-class-webinar/#comments</comments>
		<pubDate>Sun, 30 Jan 2011 16:09:42 +0000</pubDate>
		<dc:creator>sarah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blazingcloud.net/?p=2112</guid>
		<description><![CDATA[We&#8217;ve decided to offer our popular Ruby on Rails class to remote participants. I&#8217;ll be giving a repeat of the first class today (Sunday, Jan 30th) at 4pm PST and classes will be recorded. The class lasts for 2 hours. The regular class time will be Tuesdays 6:30-8:30pm PST and there will be 8 class [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve decided to offer our popular Ruby on Rails class to remote participants.  I&#8217;ll be giving a repeat of the first class today (Sunday, Jan 30th) at 4pm PST and classes will be recorded.  The class lasts for 2 hours.  The regular class time will be Tuesdays 6:30-8:30pm PST and there will be 8 class sessions with homework.</p>
<p>The first class is free. We&#8217;ll be looking at survey responses and decide on pricing based on a final assessment of the remote experience.</p>
<p>This class is an introduction to Rails and also covers the Ruby language.  It is aimed at programmers who are new to Ruby and Rails.  I am co-teaching the class with Curtis Shofield. We&#8217;ll be using the <a href="http://testfirst.org">test first teaching</a> approach which provides a firm foundation in best practices using the RSpec testing framework.</p>
<p><strong>Class Topics</strong><br />
1/25     Introduction to Rails<br />
2/1       Ruby and RSpec<br />
2/8       ActiveRecord<br />
2/15    Power Ruby<br />
2/22    Controllers<br />
3/1     REST and Integration Testing<br />
3/8      Associations<br />
3/15    TBD</p>
<p>If you want to participate, join the <a href="http://bit.ly/hF8ioI">google group</a> for more information, look at recent postings for setup details and I will post the URL for the meeting website before the class today.</p>
]]></content:encoded>
			<wfw:commentRss>http://blazingcloud.net/2011/01/30/ruby-on-rails-class-webinar/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>32- or 64-bit Ruby?</title>
		<link>http://blazingcloud.net/2010/10/29/32-or-64-bit-ruby/</link>
		<comments>http://blazingcloud.net/2010/10/29/32-or-64-bit-ruby/#comments</comments>
		<pubDate>Fri, 29 Oct 2010 13:52:43 +0000</pubDate>
		<dc:creator>sarah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blazingcloud.net/blog/?p=1488</guid>
		<description><![CDATA[For the most part Ruby abstracts the architecture of the machine, but sometimes you need to know quickly and easily when you are installing components.  So&#8230; how do you tell in Ruby if you are on a 64-bit architecture? I like this concise answer best: &#62;&#62;  (-1).size If this evaluates to 8 you are on [...]]]></description>
			<content:encoded><![CDATA[<p>For the most part Ruby abstracts the architecture of the machine, but sometimes you need to know quickly and easily when you are installing components.  So&#8230; how do you tell in Ruby if you are on a 64-bit architecture? I like this <a href="http://groups.google.com/group/ruby-talk-google/browse_thread/thread/fe3bde8257d7e773">concise answer</a> best:</p>
<p>&gt;&gt;  (-1).size</p>
<p>If this evaluates to 8 you are on a 64-bit architecture.  If it is 4, it is 32-bit.</p>
]]></content:encoded>
			<wfw:commentRss>http://blazingcloud.net/2010/10/29/32-or-64-bit-ruby/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rails 3: ActiveRecord</title>
		<link>http://blazingcloud.net/2010/09/25/rails-3-activerecord/</link>
		<comments>http://blazingcloud.net/2010/09/25/rails-3-activerecord/#comments</comments>
		<pubDate>Sat, 25 Sep 2010 14:36:07 +0000</pubDate>
		<dc:creator>sarah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Rails3]]></category>

		<guid isPermaLink="false">http://blazingcloud.net/?p=1289</guid>
		<description><![CDATA[Rails 3 cheat sheet Part 2: ActiveRecord Everything you know from Rails 2 still works and will for some time, but there is new cool stuff AND some of the Rails 2 syntax is deprecated and will eventually go away, so you should be aware. 1) Use first, last, all (not find(:first), find(:last) and find(:all) [...]]]></description>
			<content:encoded><![CDATA[<p>Rails 3 cheat sheet Part 2: ActiveRecord</p>
<p>Everything you know from Rails 2 still works and will for some time, but there is new cool stuff AND some of the Rails 2 syntax is deprecated and will eventually go away, so you should be aware.</p>
<p>1) Use first, last, all (not find(:first), find(:last) and find(:all)</p>
<p>2) New query syntax:<br />
find(:conditions =&gt; &#8230;) will be deprecated, instead you can use the following methods:</p>
<ul>
<li> where – provides conditions on the relation, what gets returned.</li>
<li> select – choose what attributes of the models you wish to have returned from the database.</li>
<li> group – groups the relation on the attribute supplied.</li>
<li> having – provides an expression limiting group relations (GROUP BY constraint).</li>
<li> includes – includes other relations pre-loaded.</li>
<li> order – orders the relation based on the expression supplied.</li>
<li> limit – limits the relation to the number of records specified.</li>
</ul>
<p>For a complete list and more details, see <a href="http://m.onkey.org/2010/1/22/active-record-query-interface">Pratik Naik&#8217;s post</a>.  The key thing to note is that ActiveRecord finder methods return a relation and no SQL is executed until it needs to be.</p>
<p>Examples:</p>
<pre class="brush: plain; title: ;">
Person.where(:last_name =&gt; &quot;Woo&quot;).order(:first_name)
Person.where(:last_name =&gt; &quot;Woo&quot;).order(:first_name).limit(1)
</pre>
<p>You can optionally specify ASC or DESC when calling order</p>
<pre class="brush: plain; title: ;">
Person.order(&quot;last_name DESC&quot;).limit(2)
</pre>
<p>You can call these methods in any sequence</p>
<pre class="brush: plain; title: ;">
Person.order(:first_name).where(:last_name =&gt; &quot;Woo&quot;)
Person.where(:last_name =&gt; &quot;Woo&quot;).order(&quot;first_name&quot;)
</pre>
]]></content:encoded>
			<wfw:commentRss>http://blazingcloud.net/2010/09/25/rails-3-activerecord/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

