<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Tom Mornini</title>
	<atom:link href="http://mornini.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://mornini.wordpress.com</link>
	<description>Propeller head with business savvy</description>
	<lastBuildDate>Thu, 05 Jan 2012 07:17:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='mornini.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Tom Mornini</title>
		<link>http://mornini.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://mornini.wordpress.com/osd.xml" title="Tom Mornini" />
	<atom:link rel='hub' href='http://mornini.wordpress.com/?pushpress=hub'/>
		<item>
		<title>The iPad isn&#8217;t a nail gun</title>
		<link>http://mornini.wordpress.com/2010/02/06/the-ipad-isnt-a-nail-gun/</link>
		<comments>http://mornini.wordpress.com/2010/02/06/the-ipad-isnt-a-nail-gun/#comments</comments>
		<pubDate>Sun, 07 Feb 2010 04:04:35 +0000</pubDate>
		<dc:creator>tmornini</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://mornini.wordpress.com/?p=56</guid>
		<description><![CDATA[I&#8217;ve been thinking about the iPad a lot lately. If you&#8217;re trying to build a successful technology company, ignoring Apple is, perhaps, the most ridiculous way to get blind sided. I admit it, I was waiting for a flying car. Watching a live transcript, the lack of a camera was very disappointing. So much so [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mornini.wordpress.com&amp;blog=5212857&amp;post=56&amp;subd=mornini&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been thinking about the iPad a lot lately. If you&#8217;re trying to build a successful technology company, ignoring Apple is, perhaps, the most ridiculous way to get blind sided.</p>
<p>I admit it, I was waiting for a flying car. Watching a live transcript, the lack of a camera was very disappointing. So much so that once it was clear, I lost interest and wandered away to watch some financial news. When I heard it was $499, I was surprised, and considerably less disappointed!</p>
<p>So I watched the keynote video as soon as it was available. During the video I selfishly realized that my life would be simpler if my mother, brother, sister, and mother-in-law had an iPad. Selfish because I was quite certain that my technical support load would drop dramatically if they were using an iPad.</p>
<p>I refined that thinking and shouted my first composed thoughts on the matter via Twitter:</p>
<blockquote><p>@tmornini: In my memory the iPad is the first major Apple product announcement since the aqua iMac that essentially nobody thought was overpriced.</p>
<p>@tmornini: They sold A LOT of aqua iMacs! Even back then there were millions who wanted an inexpensive, easy to use, floppyless &#8220;internet computer&#8221;</p>
<p>@tmornini: How many millions of today&#8217;s unemployed have an outdated, clunky PC that will need to be updated quickly upon employment?</p>
<p>@tmornini: How many of those will turn that clunky PC into a backup station for their new iPad and begin using cloud backed applications?</p></blockquote>
<p>And today I read <a href="http://calebelston.com/is-the-ipad-for-dumb-people">a post</a> by Caleb Elston. When I was reading it, I wanted to shout &#8220;People who aren&#8217;t technical aren&#8217;t stupid!&#8221; For some reason, a clearer, sharper image of what I was thinking when I wrote those tweets coalesced in my brain.</p>
<p>With a technically creative background going back to the TRS-80 and assembly language, I feel that today&#8217;s Macintoshes running OS X are the best technical tools ever created. Nearly every technically creative person I&#8217;ve ever respected is now using a Macintosh. The vast majority of the rest use Linux.</p>
<p>I believe the difference is Unix, and its many CLIs. Programmers <b>love</b> Unix because command lines are incredibly useful to programmers. It&#8217;s completely <b>shocking</b> that Microsoft has never improved or replaced the DOS shell. Yes, I know about Monad. That&#8217;s a really sad story.</p>
<p>How many times have we been told that Windows dominated because it had the best programs? That&#8217;s the exact problem Microsoft now faces, particularly -vs- iPhone OS: 140,000 apps and 3 billion downloads have been achieved VERY quickly! When it was clear Microsoft had won the first round, they had far smaller numbers!</p>
<p>Seems only browser-native web development stands a chance against those numbers. And it&#8217;s not difficult to argue that end-users prefer web connected native apps. Thank goodness many of these applications are being built with Ruby on Rails backends! :-)</p>
<p>It&#8217;s clear that computers are designed to serve technically creative individuals. Sure, they&#8217;ve gotten easier to use for technology consumers, particularly at the application level. Yet the user experience has changed only in ways that the technically creative crowd were willing to accept, often begrudgingly.</p>
<p>Think about it! Did the users of VisiCalc, Lotus Notes, and Excel ever need to manipulate files directly? In the day, yes, if only to do things like backup and organize their work. Yet iTunes, iPhoto, and every iPhone application tells me that they should never have been asked to! My crowd&#8217;s lack of imagination was the real limiting factor. What programmer could ever imagine a computer without end-user file system access? Impossible!</p>
<p>Have you ever noticed that the tools in a professional&#8217;s toolbox are different than their consumer grade counterparts? Think nail gun and hammer: massively different user experiences!</p>
<p>This has never really been the case with computers. Sure, powerful and expensive systems are marketed as &#8220;professional&#8221; models, the remainder as &#8220;consumer&#8221; models. Those differences are skin deep: even when watching them being used you probably cannot distinguish between the two! Not so much with the nail gun. :-)</p>
<p>That, I think, is where the iPad splits computing down the middle. It, like the iPhone before it, was built for consumers of technology, NOT creators of technology. I think it&#8217;s going to be a really big deal.</p>
<p>The flip side? We technical creators can now get user experiences designed <b>entirely for us</b>. How will our tools behave in a few years when they no longer need to (poorly!) fit the needs of technology consumers? It&#8217;s a mystery, but let me be the first to say &#8220;Bring it on!&#8221;, because it seems evident that they&#8217;re going to be considerably more productive, and hopefully more violently capable, like a nail gun! :-)</p>
<p>It does seem to me that they&#8217;ll have Apple logos on them for some time to come. Why? Because it appears that Apple now owns the entire chain: the best general purpose tools for the technically creative, and the <b>ONLY</b> general purpose tools for technical consumers.</p>
<p>P.S. Yes, Alan Kay was on this decades ago. He&#8217;s the Benjamin Franklin of the technical community, massively under-appreciated.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mornini.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mornini.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mornini.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mornini.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mornini.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mornini.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mornini.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mornini.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mornini.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mornini.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mornini.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mornini.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mornini.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mornini.wordpress.com/56/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mornini.wordpress.com&amp;blog=5212857&amp;post=56&amp;subd=mornini&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mornini.wordpress.com/2010/02/06/the-ipad-isnt-a-nail-gun/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">tmornini</media:title>
		</media:content>
	</item>
		<item>
		<title>To sell a product, tell a story!</title>
		<link>http://mornini.wordpress.com/2010/02/05/tell-a-story/</link>
		<comments>http://mornini.wordpress.com/2010/02/05/tell-a-story/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 07:37:22 +0000</pubDate>
		<dc:creator>tmornini</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://mornini.wordpress.com/?p=46</guid>
		<description><![CDATA[I&#8217;ve been called many things in my life, but Gourmet simply isn&#8217;t an attribute that anyone would ever pin on me. Why? Well, that&#8217;s simple: Of the foods I like, I like them all nearly equally. For some reason that a gourmet would never understand, there&#8217;s very little difference between a (really well made) PB&#38;J [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mornini.wordpress.com&amp;blog=5212857&amp;post=46&amp;subd=mornini&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been called many things in my life, but Gourmet simply isn&#8217;t an attribute that anyone would ever pin on me.</p>
<p>Why? Well, that&#8217;s simple: Of the foods I like, I like them  all nearly equally. For some reason that a gourmet would never understand, there&#8217;s very little difference between a (really well made) PB&amp;J at home and a really unique and terrific experience at one of San Francisco&#8217;s fabulous restaraunts.</p>
<p>My wife Elizabeth and son John are much the same, though Elizabeth has far more health cred than I do, and John, who enjoys and prefers spectacularly unhealthy food as much as I do, is fortunately largely fed a controlled diet by Elizabeth.</p>
<p>A few months ago, Elizabeth announced that she had some healthy frozen food in the freezer and she&#8217;d like my help &#8216;cooking&#8217; it. This was weird because we rarely cook. Elizabeth and John eat healthy fresh meals while I largely eat something closer to the aforementioned PB&amp;J.</p>
<p>The result of this bit of kitchen effort was a resounding success &#8212; so much so that I&#8217;ve mentioned it to several people. &#8220;It&#8217;s *easy*&#8221;, I&#8217;ve said, &#8220;there are 3 steps, Elizabeth says it&#8217;s healthy, and it really tastes great!&#8221;</p>
<p>We&#8217;ve had these for dinner occasionally ever since, and they&#8217;ve continued to result in nice tasty meals, prepared quickly and easily, and continue to impress my radically inferior command of the kitchen with their 3 step simplicity.</p>
<p>Tonight, it turns out, was frozen meal night once again. Elizabeth had already started preparing the meal, so I glanced over the instructions to see where I could help out.</p>
<p>Well, imagine my surprise when it dawned on my that&#8217;d I&#8217;d been getting duped the entire time!</p>
<p>Check out these instructions:</p>
<p><a href="http://mornini.files.wordpress.com/2010/02/img_0007.jpg"><img class="alignnone size-medium wp-image-47" title="IMG_0007" src="http://mornini.files.wordpress.com/2010/02/img_0007.jpg?w=225&#038;h=300" alt="&quot;A photo of the packaging&quot;" width="225" height="300" /></a></p>
<p>Question: How many steps are there in step 1? :-)</p>
<p>I&#8217;m going to make a wild guess: The vast majority of the audience that will read this are technical people. Being a technical person myself and spending as much time with technical people as I have in my life, I&#8217;m confident that many readers will expect me to begin a rant on how wrong, unfair, and deceitful this is.</p>
<p>Why? Because, again in my experience, most young technical people have a distaste for marketing and sales activities. They believe that they should make their decisions internally, without any  outside interference, particularly obviously biased sources of information such as marketing materials and sales pitches. I&#8217;ve felt this way most of my life.</p>
<p>But, this silly little frozen meal has allowed me to see this from a different angle! If the packaging had enumerated the 12 (or so) steps required to actually prepare the meal, I don&#8217;t think Elizabeth would have picked them up to begin with.</p>
<p>If I&#8217;m wrong about that, I assure you that I would not have been as eager to help out. And I absolutely GUARANTEE YOU that I wouldn&#8217;t have told a bunch of people how easy it was to make.</p>
<p>So, while some readers may consider this wrong or deceitful, let me explain why I think it&#8217;s actually pretty cool: The packaging isn&#8217;t dishonest, as it does clearly state all the individual steps. But it also groups those many simple instructions into 3 larger steps, with step 1 clearly being the most difficult, and progressing onto a simpler step 2, and finishing with a really simple final step 3. I think that this progression gives the consumer a real sense of comfort. It makes the steps fly right by, since it&#8217;s obvious that once you&#8217;ve finished step 1, you&#8217;ve already completed most of the work.</p>
<p>But that&#8217;s the technical description of the sleight of hand that those nasty marketing folks used to deceive me, right?</p>
<p>Not for me. Instead, I see it as effective communication of the real message they were trying to get across: THIS IS EASY! Of course, everything is supposed to be easy these days &#8212; it seems that Apple computer is turning itself into one of the most powerful companies on the planet by making things easy!</p>
<p>But, making these meals really *is* easy, and communicated this way is, IMHO, far more effective than simply screaming &#8220;THIS IS EASY!&#8221; on the packaging.</p>
<p>I suppose my point is, itself, fairly simple: When it&#8217;s time to market and sell your product, it&#8217;s really important to find the best way to communicate about the product. Listing a long and detailed bunch of features really doesn&#8217;t cut it anymore; I&#8217;d like to think the days of feature checklists are behind us.</p>
<p>Instead of that, tell a story, and tell nearly the same story each and every time, but throw a bit of Darwinism into the mix, testing slightly different variations each time. Do this face to face with customers, and learn how to best communicate how your product will benefit them. When you get it right, you&#8217;ll see it in their faces.</p>
<p>Sometimes this survival of the fittest will make the difference, but sometimes it&#8217;s even simpler than that. A bad name can really take the wind out of your sales. A stellar example of this is an early product offering we had, semi-dedicated environments. We knew that customers wanted their own databases, and better isolation from other customers, so we created a product to fit their needs. Oddly, it was extremely difficult to sell, until we finally figured out what was wrong.</p>
<p>Would you guess our pricing was too high? From the input we received, and the intelligence we could gather on our competitors, that didn&#8217;t seem to be the problem at all. The fix, it turned out, was to rename the product. Instead of the glass-is-half-empty &#8220;semi-dedicated environment&#8221; we began calling them the glass-is-half-full &#8220;fractional clusters.&#8221; An identical technical product, with a better name, sold better.</p>
<p>&#8220;A rose, by any other name, would smell as sweet?&#8221; Absolutely, categorically, spectacularly not true. :-)</p>
<p>Why? I believe it&#8217;s because it told a better story &#8212; the customer could see themselves moving from slices, to a fractional cluster, then on to a dedicated cluster. They could, that is, AFTER we changed the name.</p>
<p>So, experiment a little. Don&#8217;t get too attached to early decisions, particularly so when your guts tell you something is amiss. Mostly importantly, stay focused on communicating a story that can be digested and understood by your customers.</p>
<p>If you&#8217;ve read it this far, I thank you for your attention, and request your indulgence in commenting. Did telling this <b>as a story</b> help to sell you on the ideas described? :-)</p>
<p>Tom</p>
<p>P.S. Enjoy!</p>
<p>P.P.S. For those of you who want more details on these meals, Associated Content has a <a href="http://bit.ly/dtiIT3">video review</a>, which backs up my statement that these means are really good, and fairly healthy as well.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mornini.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mornini.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mornini.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mornini.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mornini.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mornini.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mornini.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mornini.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mornini.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mornini.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mornini.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mornini.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mornini.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mornini.wordpress.com/46/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mornini.wordpress.com&amp;blog=5212857&amp;post=46&amp;subd=mornini&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mornini.wordpress.com/2010/02/05/tell-a-story/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">tmornini</media:title>
		</media:content>

		<media:content url="http://mornini.files.wordpress.com/2010/02/img_0007.jpg?w=225" medium="image">
			<media:title type="html">IMG_0007</media:title>
		</media:content>
	</item>
		<item>
		<title>Rails 2.x + Merb 1.x = Rails 3.0!</title>
		<link>http://mornini.wordpress.com/2008/12/23/rails-2x-merb-1x-rails-30/</link>
		<comments>http://mornini.wordpress.com/2008/12/23/rails-2x-merb-1x-rails-30/#comments</comments>
		<pubDate>Tue, 23 Dec 2008 19:58:43 +0000</pubDate>
		<dc:creator>tmornini</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://mornini.wordpress.com/?p=20</guid>
		<description><![CDATA[I&#8217;m incredibly happy to lend my support for the announcements (1,2,3) that the Rails and Merb core teams have chosen to combine their efforts on Rails 3.0! Merb was created as a workaround for a very early and specific performance issue in Rails: uploading photos efficiently. Since then, it&#8217;s become a full framework that had [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mornini.wordpress.com&amp;blog=5212857&amp;post=20&amp;subd=mornini&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m incredibly happy to lend my support for the announcements (<a title="Ruby on Rails blog" href="http://tinyurl.com/8h5cly">1</a>,<a title="Katz Got Your Tongue?" href="http://yehudakatz.com/2008/12/23/rails-and-merb-merge/">2</a>,<a title="Ezra's blog" href="http://brainspl.at/articles/2008/12/23/merb-is-rails">3</a>) that the Rails and Merb core teams have chosen to combine their efforts on Rails 3.0!</p>
<p>Merb was created as a workaround for a very early and specific performance issue in Rails: uploading photos efficiently. Since then, it&#8217;s become a full framework that had many wondering why Engine Yard was supporting a Rails competitor. We *always* felt that Merb was complimentary to Rails: an extra tool in your Rails toolkit. Regardless, it has become increasing clear that Rails and Merb were on a collision course that was leading to a schism in the once unified community of Ruby developers. We&#8217;re delighted that the teams are working together to avoid such a schism, and as such we *fully* support the merger of the teams and code bases.</p>
<p>Engine Yard was *founded* as a Ruby on Rails deployment company. Nearly every one of our 400+ customers uses Ruby on Rails! Perhaps the thing that makes me happiest about this announcement is that we will now *directly* support the Ruby on Rails framework by placing existing Merb resources into directly improving Ruby on Rails. We find it very fitting that we&#8217;ll now directly support the framework that has supported Engine Yard&#8217;s very existence!</p>
<p>Enormous kudos *must* be bestowed upon the <a title="A unified community" href="http://rubyonrails.org/merb">Ruby on Rails and Merb core teams</a> for agreeing to work together for the betterment of the community. Now, rather than discuss the relative advantages of Rails -vs- Merb, we can get back to the real business of changing the world, one developer at a time, by freeing them from the shackles of less efficient development environments.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mornini.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mornini.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mornini.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mornini.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mornini.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mornini.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mornini.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mornini.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mornini.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mornini.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mornini.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mornini.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mornini.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mornini.wordpress.com/20/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mornini.wordpress.com&amp;blog=5212857&amp;post=20&amp;subd=mornini&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mornini.wordpress.com/2008/12/23/rails-2x-merb-1x-rails-30/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">tmornini</media:title>
		</media:content>
	</item>
		<item>
		<title>Response at a distance</title>
		<link>http://mornini.wordpress.com/2008/12/09/response-at-a-distance/</link>
		<comments>http://mornini.wordpress.com/2008/12/09/response-at-a-distance/#comments</comments>
		<pubDate>Wed, 10 Dec 2008 01:14:45 +0000</pubDate>
		<dc:creator>tmornini</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://mornini.wordpress.com/?p=14</guid>
		<description><![CDATA[Let me start by saying that this will be my last post on this subject. For some reason, Pratik Naik, the poster of the original Twitter message chose to respond to my post on my blog via the Phusion blog. Ninh Bui of Phusion has asked the discussion to be taken elsewhere, so here we are. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mornini.wordpress.com&amp;blog=5212857&amp;post=14&amp;subd=mornini&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Let me start by saying that this will be my last post on this subject.</p>
<p>For some reason, Pratik Naik, the poster of the <a title="Ridiculous Twitter post" href="http://twitter.com/lifo/statuses/1040611539">original</a> Twitter message chose to <a title="Comment 21" href="http://blog.phusion.nl/2008/12/06/re-engineyards-recent-post-about-phusion-passenger/">respond</a> to my <a title="Reasonable response" href="http://mornini.wordpress.com/2008/12/05/apache-passenger-vs-nginx-mongrel/">post</a> on my blog via the Phusion blog. Ninh Bui of Phusion has asked the discussion to be taken elsewhere, so here we are.</p>
<p>Count me as shocked at the angry and non-linear response to what I felt was a neutral response to the original Twitter message.</p>
<blockquote><p>@Tom : It’s you who need to put down your weapons when *YOU* felt the need to reply to my simple twits (where there was no mention of you/your employees/your comany ) with a gigantic blog post.</p></blockquote>
<p>What you say here, Pratik, is not entirely true, as Engine Yard is a host that &#8220;doesn&#8217;t let you use Passenger&#8221;. Basically you&#8217;re now saying that Engine Yard was collateral damage to an attack not aimed directly at us. Of course, collateral damage is unavoidable when you make statements of the sort you made. Perhaps you should aim more carefully in the future to avoid such confusion.</p>
<blockquote><p>When you have to reply to me saying “PEOPLE spreading FUD about passenger”, the shoe must fit. Even your employee had to make a direct personal attack, which is a shame.</p></blockquote>
<p>Actually, I didn&#8217;t respond to that, but I certainly did reference it. I&#8217;m unaware of any of our employees making a direct personal attack, but will take you at your word and apologize for that employee here and now. We certainly don&#8217;t condone such behavior, though know full well that in a company full of young technical people, mistakes will be made.</p>
<blockquote><p>But it’s very apparent you weren’t replying to me, but you were replying to your customers justifying your position against the growing popularity of Passenger. And that’s fine. Just don’t pretend as if it’s all in a response to my twitter messages. My twit, clearly, was just a catalyst.</p></blockquote>
<p>Please don&#8217;t put words in my mouth. As stated in my post, I was replying directly to you. There *are* valid reasons to not support Passenger, and I outlined a few of them. I also explained that there were very valuable and useful aspects of Passenger and most especially, Ruby Enterprise Edition. I think that I explained those reasons fairly clearly.</p>
<blockquote><p>But forget all that. Let’s have a little history lesson, shall we :</p>
<p>** Feb 12 **<br />
- Ezra Announces mod_rubinius <a rel="nofollow" href="http://brainspl.at/articles/2008/02/12/what-do-you-want-to-see-in-mod_rubinius">http://brainspl.at/articles/2008/02/12/what-do-you-want-to-see-in-mod_rubinius</a>.<br />
- Comment #12 is EXACTLY what passenger is.<br />
- And now mod_rubinius has been officially killed ? ( correct me if I’m wrong <a rel="nofollow" href="http://www.google.com/search?q=github+mod_rubinius">http://www.google.com/search?q=github+mod_rubinius</a> )</p></blockquote>
<p>Thanks for pointing out that mod_rubinius is not where it should be. I&#8217;m checking into that. Of course, since most of the code was written before the virtual machine was rewritten in C++, the code isn&#8217;t highly valuable at this point. :-(</p>
<p>It&#8217;s rather unfortunate, to be sure, that we needed to reduce the size of the Rubinius team here at Engine Yard. We still maintain two full time people working on that project, which we consider to be very important to the community. Some might think it&#8217;s impolite to bring this up, but since we have already <a href="http://blog.engineyard.com/2008/11/17/rubinius-past-present-and-future">discussed</a> this in public, I will not hold it against you.</p>
<p>I am confused, however, how this is relevant to the issue at hand. Perhaps you could enlighten me?</p>
<blockquote><p>** April 4 **<br />
- Passenger is released to the public <a rel="nofollow" href="http://ninh.nl/blog/2008/04/04/the-moment-youve-probably-been-waiting-for-so-have-we">http://ninh.nl/blog/2008/04/04/the-moment-youve-probably-been-waiting-for-so-have-we</a><br />
- If you notice the announcement, “Lastly, we’ve been approached by EngineYard..”. And we never heard about that ever again. Clearly, something went wrong there.</p></blockquote>
<p>Are you surprised that there are contacts made, and discussions had, that don&#8217;t come to fruition?</p>
<p>Again, I&#8217;m at a total loss as to how this is relevant to the discussion.</p>
<blockquote><p>After that, you guys CONSTANTLY tried to ignore/sideline Passenger, by saying it’s suitable only for shared hosting/VPS. COMPLETELY BASELESS as pointed out 100 times before. That’s pure FUD.</p></blockquote>
<p>Well, stating it in ALL CAPS doesn&#8217;t make it any more true. What does the word constantly mean to you?</p>
<p>In fact, Ezra <strong><a href="http://brainspl.at/articles/2008/11/18/ruby-deployment-and-engine-yard-as-a-service">endorsed</a></strong> Passenger, with a few caveats! Is Ezra not allowed to state an opinion, and suggest that Passenger is currently <strong>state of the art</strong> for a historically problematic issue of hosting small sites? Was it true at that time that Ruby Enterprise Edition wasn&#8217;t stable on 64 bit systems, which we use exclusively here at Engine Yard?</p>
<blockquote><p>Here’s an interesting part :</p>
<p>Tom says “Of course, you can reduce these disadvantages by cuting down a custom build and tweaking the included modules”<br />
Ezra says “I think i;ve scaled a few ruby websites and I use nginx cuz is beats apache’s ass”</p>
<p>Clearly, those are contradictory statements and one of you doesn’t know what you’re talking about. Pick one. Period.</p></blockquote>
<p>I&#8217;ve looked at those statements again and again and fail to see how they&#8217;re contradictory. I said that you can reduce these disadvantages, but I did not say you could eliminate them. Ezra said that nginx &#8220;beats apache&#8217;s ass&#8221; which, I must admit, lacks technical rigor, yet the two statements simply do not contradict each other.</p>
<blockquote><p>When you start putting Apache/nginx and “Scaling” in the same sentence, you’re just trolling/spreading FUD.</p></blockquote>
<p>Really? Why is that? Would it be FUD to say &#8220;Apache and nginx scale equally well&#8221;? Both words in the same sentence, but no FUD involved at all. Now I&#8217;m being ridiculous to make a couple of points. Ezra&#8217;s statement was clearly an opinion. To make it more than an opinion, benchmarks would be required. Additionally, there are <strong>many</strong> ways that nginx could &#8220;beat apache&#8217;s ass&#8221; (memory and CPU usage, for instance) that would not indicate that Apache couldn&#8217;t scale. Directly to the point, Ezra did not say that Apache doesn&#8217;t scale.</p>
<p>What seems clear to me, in the end, is that you have an issue with Engine Yard. I&#8217;d *love* to understand what that issue is. Because, at this point, you&#8217;re now suggesting that we&#8217;re FUDing Apache, which is well off the original subject of Passenger.</p>
<p>We&#8217;re a Ruby and Rails application deployment company. We sponsor several open source projects. We host several hundred Ruby on Rails websites, and work 24x7x365 to see that the needs of our customers are met. We&#8217;re working hard and employing a lot of hard working Rubyists to make Ruby application deployment a no brainer for current and future Ruby and Rails application owners. We have exciting new projects coming soon that will make deployment easier and simpler than ever before.</p>
<p>It&#8217;s clear that you also take an interest in Ruby and Rails application deployment.</p>
<p>Do we have to agree on what stack is ideal to be friends? I, for one, hope not.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mornini.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mornini.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mornini.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mornini.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mornini.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mornini.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mornini.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mornini.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mornini.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mornini.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mornini.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mornini.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mornini.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mornini.wordpress.com/14/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mornini.wordpress.com&amp;blog=5212857&amp;post=14&amp;subd=mornini&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mornini.wordpress.com/2008/12/09/response-at-a-distance/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">tmornini</media:title>
		</media:content>
	</item>
		<item>
		<title>Apache + Passenger -vs- nginx + mongrel</title>
		<link>http://mornini.wordpress.com/2008/12/05/apache-passenger-vs-nginx-mongrel/</link>
		<comments>http://mornini.wordpress.com/2008/12/05/apache-passenger-vs-nginx-mongrel/#comments</comments>
		<pubDate>Fri, 05 Dec 2008 19:55:40 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://mornini.wordpress.com/?p=8</guid>
		<description><![CDATA[At Engine Yard, we&#8217;ve been receiving a lot of inquiries as to whether we support Passenger™. This uptick in interest seems to be related to support and comments from DHH himself. We&#8217;re in 100% agreement and we&#8217;ve been living it for 2 years! However, I think there are some issues that need to be discussed with [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mornini.wordpress.com&amp;blog=5212857&amp;post=8&amp;subd=mornini&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>At Engine Yard, we&#8217;ve been receiving a lot of inquiries as to whether we support <a title="Passenger" href="http://www.modrails.com/">Passenger™.<br />
</a></p>
<p>This uptick in interest seems to be related to support and <a title="Reasonable and accurate debunking of common Rails myths" href="http://www.loudthinking.com/posts/30-myth-1-rails-is-hard-to-deploy">comments</a> from DHH himself. We&#8217;re in 100% agreement and we&#8217;ve been living it for 2 years!</p>
<p>However, I think there are some issues that need to be discussed with respect to Passenger. I felt compelled to discuss them at this time due to <a title="Outrageous twitter post" href="http://twitter.com/lifo/statuses/1040611539">this post to Twitter</a> today.</p>
<p>First, if you&#8217;re running a single Rails application, Passenger in and off itself offers little advantage compared to other common deployment methods such as the nginx + mongrel stack that we&#8217;ve been using and developing for two years. It&#8217;s certainly not substantially faster or more efficient, thought it <strong>does</strong> offer simpler configuration, particularly so if you have access to a system where Apache is already up and running.</p>
<p>If you&#8217;re running multiple Rails applications, and are using Passenger&#8217;s ability to serve more applications than applications processes, you need to be aware of the performance of requests requiring an application process switch from one application to another. First requests are always slow, as a *lot* of code needs to be heated up, etc. Over ten years ago I learned personally that it&#8217;s far easier to manage static environments compared to dynamic environments for one simple reason: When things are changing dynamically, it&#8217;s hard to understand why things are behaving the way they are. The issues I&#8217;m discussing are generally acceptable in a situation where you have many low traffic applications, and you need to run those applications in a very limited environment. At Engine Yard, this is a very rare need for our customers, so this makes us less anxious to switch to something new -vs- something that is proven and works well.</p>
<p>With the additional of <a title="Ruby Enterprise Edition" href="http://www.rubyenterpriseedition.com/">Ruby Enterprise Edition</a>, however, it *does* offer the additional advantage of memory savings. Some of those advantages are lost by having to run Apache, which as commonly delivered, is considerably larger and less efficient than nginx. Of course, you can reduce these disadvantages by cuting down a custom build and tweaking the included modules, but once you&#8217;re headed down that road, the simplicity advantage has left the building. :-)</p>
<p>The reason that I felt compelled to respond to Pratik&#8217;s Twitter post is that it entirely ignores a few issues that prevent Engine Yard, and no doubt other companies from immediately supporting Passenger™ and/or Ruby Enterprise Edition.</p>
<p>First, Engine Yard uses 64 bit environments to allow our customers the highest performance virtual machines and access to large memory spaces when needed. <a href="http://blog.phusion.nl/2008/12/05/ruby-enterprise-edition-186-20081205-released-thank-you-sponsors/">Just today Phusion has introduced a version that should fix these issues</a>. Before *today*, Engine Yard *could not* support this combination, it&#8217;s just that simple, <a href="http://twitter.com/lifo/status/1040625828">no FUD intended</a>.</p>
<p>Second, our customers choose Engine Yard for experience and expertise in hosting Rails applications. At this moment, we have no experience or expertise in Passenger™. That is a fact.</p>
<p>All in all, I think that Phusion&#8217;s Passenger and Rails Enterprise Edition products are interesting. So interesting, in fact, that <a title="mod_rubinius blog post" href="http://brainspl.at/articles/2008/02/12/what-do-you-want-to-see-in-mod_rubinius">we chose to investigate the same basic strategy with respect to Rubinius</a>. I&#8217;m not yet certain that a substantially patched version of the Ruby source code, maintained independent from the core team, is something that can be supported in the near term, though it&#8217;s clear from the drumbeat and experiences of users that the trajectory is looking good.</p>
<p>I&#8217;m certainly hoping and encouraging the Ruby core team to work with Phusion to accept their GC patches into the mainline.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mornini.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mornini.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mornini.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mornini.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mornini.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mornini.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mornini.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mornini.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mornini.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mornini.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mornini.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mornini.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mornini.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mornini.wordpress.com/8/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mornini.wordpress.com&amp;blog=5212857&amp;post=8&amp;subd=mornini&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mornini.wordpress.com/2008/12/05/apache-passenger-vs-nginx-mongrel/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">tmornini</media:title>
		</media:content>
	</item>
	</channel>
</rss>
