<?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/"
	>

<channel>
	<title>:coderow blog</title>
	<atom:link href="http://blog.coderow.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.coderow.com</link>
	<description>software design and technology</description>
	<pubDate>Sat, 24 Oct 2009 13:23:45 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>:coderow Project Featured in St. Paul Pioneer Press</title>
		<link>http://blog.coderow.com/2009/10/24/coderow-project-featured-in-st-paul-pioneer-press/</link>
		<comments>http://blog.coderow.com/2009/10/24/coderow-project-featured-in-st-paul-pioneer-press/#comments</comments>
		<pubDate>Sat, 24 Oct 2009 13:20:23 +0000</pubDate>
		<dc:creator>K2</dc:creator>
		
		<category><![CDATA[deployments]]></category>

		<category><![CDATA[software design]]></category>

		<guid isPermaLink="false">http://blog.coderow.com/?p=62</guid>
		<description><![CDATA[
MixMobi is mentioned in a short article on mobile coupons this morning in the St. Paul Pioneer Press. MixMobi is a lightweight, extremely easy to use, mobile campaign management system. The article mentions MixMobi using Twitter for mobile coupon deployment, which is one of the more popular ways our customers are deploying offers.  MixMobi [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="MixMobi Logo" src="http://mixmobi.com/images/mixmobi_logo.png?1254255221" height="45" width="144" style="margin-right:30px;"/><img alt="Pioneer Press/TwinCities.com Logo" src="http://extras.twincities.com/images/site_logo_280x75.gif" width="175"/></p>
<p><a href="http://mixmobi.com" target="_blank" style="border:none;">MixMobi</a> is mentioned in <a href="http://www.twincities.com/business/ci_13630563" target="_blank">a short article on mobile coupons</a> this morning in the St. Paul Pioneer Press</a>. MixMobi is a lightweight, extremely easy to use, mobile campaign management system. The article mentions MixMobi using Twitter for mobile coupon deployment, which is one of the more popular ways our customers are deploying offers.  MixMobi can also be used to deploy news, events, and other types of offers via nearly any online avenue including other social media such as Facebook, mobile messaging such as SMS, and embedding in other mobile media such as company or event websites. </p>
<p>MixMobi is currently in private beta.  If you are interested in being a beta participant for MixMobi, <a title="please let us know." href="mailto:info@mixmobi.com">please let us know</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coderow.com/2009/10/24/coderow-project-featured-in-st-paul-pioneer-press/feed/</wfw:commentRss>
		</item>
		<item>
		<title>MixMobi at unSummit</title>
		<link>http://blog.coderow.com/2009/10/10/mixmobi-at-unsummit/</link>
		<comments>http://blog.coderow.com/2009/10/10/mixmobi-at-unsummit/#comments</comments>
		<pubDate>Sat, 10 Oct 2009 20:14:58 +0000</pubDate>
		<dc:creator>K2</dc:creator>
		
		<category><![CDATA[events]]></category>

		<guid isPermaLink="false">http://blog.coderow.com/?p=58</guid>
		<description><![CDATA[
One of the projects we have been heavily involved with (and super excited about) is MixMobi, a lightweight, extremely easy to use, mobile campaign management system.  We are currently in closed beta with around a dozen companies trying out the service.  We are now just starting to get the word out.
As part of [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="MixMobi Logo" src="http://mixmobi.com/images/mixmobi_logo.png?1254255221" height="45" width="144" style="margin-right:30px;"/><img alt="unSummit Logo" src="http://unsummit.org/wp-content/themes/gluedideas_subtle/styles/Glued/us-header.gif" height="36" width="162" /></p>
<p>One of the projects we have been heavily involved with (and super excited about) is <a title="MixMobi" href="http://mixmobi.com">MixMobi</a>, a lightweight, extremely easy to use, mobile campaign management system.  We are currently in closed beta with around a dozen companies trying out the service.  We are now just starting to get the word out.</p>
<p>As part of this pre-marketing MixMobi was a sponsor of today&#8217;s <a title="unSummit" target="_blank" href="http://unsummit.org/">unSummit</a> at the Minneapolis Public Library, which I attended. It was fun and interesting to hear that many of the people I talked to had already heard of our service and appeared genuinely interested.   While the sampling is heavily skewed to local business supporting, new technology evangelists willing to spend a Saturday with other local business supporting, new technology evangelists, it is nonetheless encouraging for a start-up.</p>
<p>If you are interested in being a beta participant for MixMobi, <a title="please let us know." href="mailto:info@mixmobi.com">please let us know</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coderow.com/2009/10/10/mixmobi-at-unsummit/feed/</wfw:commentRss>
		</item>
		<item>
		<title>the :coderow QR Code</title>
		<link>http://blog.coderow.com/2009/04/23/the-coderow-qr-code/</link>
		<comments>http://blog.coderow.com/2009/04/23/the-coderow-qr-code/#comments</comments>
		<pubDate>Thu, 23 Apr 2009 22:03:50 +0000</pubDate>
		<dc:creator>K2</dc:creator>
		
		<category><![CDATA[fun stuff]]></category>

		<category><![CDATA[likes]]></category>

		<guid isPermaLink="false">http://blog.coderow.com/?p=40</guid>
		<description><![CDATA[
All you need to know about :coderow is packed into this tiny little space.  OK, maybe not all, but certainly somethin&#8217;.  Take a picture with your iPhone or other trusty mobile device and use a QR Code reader to view the magic. 


]]></description>
			<content:encoded><![CDATA[<div>
<p>All you need to know about :coderow is packed into this tiny little space.  OK, maybe not all, but certainly somethin&#8217;.  Take a picture with your iPhone or other trusty mobile device and use a QR Code reader to view the magic. </p>
<p><img title="coderow_qrcode" src="http://blog.coderow.com/wp-content/uploads/2009/04/coderow_qrcode1.png" alt="coderow_qrcode" width="354" height="354"/>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.coderow.com/2009/04/23/the-coderow-qr-code/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Oh, Microsoft</title>
		<link>http://blog.coderow.com/2009/03/31/oh-microsoft/</link>
		<comments>http://blog.coderow.com/2009/03/31/oh-microsoft/#comments</comments>
		<pubDate>Wed, 01 Apr 2009 05:39:38 +0000</pubDate>
		<dc:creator>K2</dc:creator>
		
		<category><![CDATA[customer service]]></category>

		<category><![CDATA[general design]]></category>

		<category><![CDATA[rants]]></category>

		<category><![CDATA[software design]]></category>

		<guid isPermaLink="false">http://blog.coderow.com/?p=30</guid>
		<description><![CDATA[<img src="http://blog.coderow.com/wp-content/uploads/2009/03/ms-screenshot.png" alt="MS Live Screenshot" border="0" width="250" style="float:left;margin:5px;"/>  There is a huge group of people in the software development community who love to trash Microsoft.  Every good story needs a villain and MS keeps playing the role so well.  I'm not a fan of Office, ASP, .Net, etc., but its hard to argue with the impact that Windows has had on both businesses and consumers worldwide.  Having worked on many complex enterprise applications I also appreciate the complexity of the MS world:   The thousands of coordinated decisions that must be made each day in order to just survive much less thrive.  Its easy to talk about a clean solid code base for your single application in a greenfield.  Try it when you have dozens, hundreds, thousands or millions of demanding customers, all running a different set of versions, patches and customizations.]]></description>
			<content:encoded><![CDATA[<p><img src="http://blog.coderow.com/wp-content/uploads/2009/03/ms-screenshot.png" alt="MS Live Screenshot" border="0" width="250" style="float:left;margin:5px;"/>  There is a huge group of people in the software development community who love to trash Microsoft.  Every good story needs a villain and MS keeps playing the role so well.  I&#8217;m not a fan of Office, ASP, .Net, etc., but its hard to argue with the impact that Windows has had on both businesses and consumers worldwide.  Having worked on many complex enterprise applications I also appreciate the complexity of the MS world:   The thousands of coordinated decisions that must be made each day in order to just survive much less thrive.  Its easy to talk about a clean solid code base for your single application in a greenfield.  Try it when you have dozens, hundreds, thousands or millions of demanding customers, all running a different set of versions, patches and customizations.<br />
<span id="more-30"></span><br />
That said, every company has a life-cyle and I see very little in the way MS is functioning for me to believe it is anything but on the downward slope of a Bell Curve.  While they continue to add new features and products just as they have done every year since the 1980&#8217;s, these additions seem to have the same feel as those features introduced in Windows 98.  At that point, features alone were often enough.    However, we&#8217;ve come a long way since then.  The execution of a feature is often more important than the feature itself, and Microsoft still doesn&#8217;t understand this.  Give me a quarter of the features in the current Office suite, but executed really, really well and I&#8217;d have no problem spending $150 or more for it.</p>
<p>The reason I&#8217;m even writing this is I recently did some online marketing, registering my business with a number of online services including Microsoft Live.  The more places my business shows up, the easier it is for people to find me.  To create a listing, I needed to create an account.  Everyone does that.  It&#8217;s fine.  From there, MS sends out a letter to verify you are the business that you say you are.  OK.  That&#8217;s also fine.  A search listing that has 1000 verified businesses in my area is much more useful than a 1,000,000 crappy spam listings and few legitimate ones. </p>
<p>But here is where it gets fun. I get a letter in the mail from MS.  Go to a website to verify your listing.  https://llc.local.live.com/listingcenter.aspx.  OK.  I type a lot for a living, so putting a complicated URL in my browser isn&#8217;t a big deal, but it probably is for some.  Also, are those l&#8217;s or i&#8217;s at the beginning of the URL?  Why couldn&#8217;t this just be http://mylisting.live.com?  I&#8217;m guessing they have a few folks who know how to route internet traffic in Redmond.</p>
<p>Next issue:  Security alert.  The certificate for this site is not valid.  Hmm.  OK.  Well, we&#8217;ll allow an exception.  I&#8217;m guessing this is legitimate and another MS hiccup we&#8217;ve all become accustomed to.  Exception granted.  Site displayed.</p>
<p>Next issue:  This site does not support Safari.  It does support Firefox and IE.  I can&#8217;t get in.  If the site supports Firefox, why oh why is Safari not supported.  The one or two minor differences between Safari and Firefox are nothing compared to the differences in making an app behave the same in IE and Firefox.  OK.  I&#8217;ll use Firefox instead.</p>
<p>Next issue:  I can&#8217;t remember my password.  This is my issue, but the email I get to reset it reads like a, well, it reads like a MS communication.  OK.  Next step.</p>
<p>Next issue:  Put in the code we mailed to you.  OK.  This is in a big font on the letter mailed to me.  Easy enough.  Done.  I&#8217;m done!  Aren&#8217;t I?  I think I am, but the page now says &#8220;Pending Review&#8221;.  I&#8217;m not sure what that means.  There is a &#8220;Review listing&#8221; link on the right.  Should I do something?  I try the link but there is nothing that indicates I need to approve the listing or something similar. My listing remains in &#8220;Pending Review&#8221;.  I guess I&#8217;ll assume that someone from MS will eventually bless what I have to offer.  We&#8217;ll see&#8230;</p>
<p>Microsoft unless you can radically change, in five or ten years you&#8217;re going to look a lot like GM today. </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coderow.com/2009/03/31/oh-microsoft/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Zippy Stat at MinneDemo</title>
		<link>http://blog.coderow.com/2009/02/08/zippy-stat-at-minnedemo/</link>
		<comments>http://blog.coderow.com/2009/02/08/zippy-stat-at-minnedemo/#comments</comments>
		<pubDate>Sun, 08 Feb 2009 22:41:14 +0000</pubDate>
		<dc:creator>K2</dc:creator>
		
		<category><![CDATA[events]]></category>

		<category><![CDATA[ruby on rails]]></category>

		<guid isPermaLink="false">http://blog.coderow.com/?p=25</guid>
		<description><![CDATA[

I presented Zippy Stat at MinneDemo on Friday night and wanted to share a little about the experience.  

Zippy Stat is a project I&#8217;ve been working on to record, monitor and share &#8220;Micro-Statistics&#8221; in your life.  Things such as miles you&#8217;ve run, business cards collected at an event, business auto mileage and really [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.zippystat.com" target="_blank"><img src="http://blog.coderow.com/wp-content/uploads/2009/02/zippy-logo-white-bg.jpg" alt="zippy_logo_white_bg.jpg" border="0" width="225" height="105" style="float:left;margin:10px;" /></a></p>
<p>
I presented <a href="http://www.zippystat.com" target="_blank">Zippy Stat</a> at <a href="http://minnedemo.org" target="_blank">MinneDemo</a> on Friday night and wanted to share a little about the experience.  </p>
<p>
Zippy Stat is a project I&#8217;ve been working on to record, monitor and share &#8220;Micro-Statistics&#8221; in your life.  Things such as miles you&#8217;ve run, business cards collected at an event, business auto mileage and really anything else you can think up.  It came about because there were a bunch of these little stats that I wanted to record for :coderow and didn&#8217;t want 30 different spreadsheets or 30 different apps to manage them.   Furthermore, as a rabid developer, I&#8217;m always looking for another fun application to build. </p>
<p><span id="more-25"></span>
<p>
MinneDemo is a technology networking event where 10 local developers/companies present what they&#8217;re working on to a theater full of developers, attorneys, VCs, and other tech trolls.  Each presentation is seven minutes long and must be working software - No PowerPoint and typically light on the marketing fluff.  The event was held at Intermedia Arts in Minneapolis.  The theater holds 150, but I&#8217;m guessing there were 250 people there.  Many people watched/mingled from the lobby where there was a live projection of the event while quite a few people left early because it was too crowded.  The setup at Intermedia is great for the appropriate size.  However, the organizers may need to look for a bigger venue or figure out ways to reduce the crowd, possibly through more frequent events.  Either way, hats off to them for supporting Intermedia Arts in tough economic times.
</p>
<p><a href="http://www.minnedemo.org" target="_blank"><img src="http://coderow.com/images/news/minnedemo.jpg?1233840986" style="float:left;margin:10px;"/></a></p>
<p>Overall I was very happy with the event.  My demo went off without any technical problems.  Luke Francl, one of the organizers, suggested recording demos beforehand to cut down on last minute technical issues.  I took his advice and did a screen recording the site earlier in the day using <a href="http://www.shinywhitebox.com/ishowuhd/main.html" target="_blank">iShowU</a>.  This turned out well as a couple of the other presenters were concerned with the speed of the wi-fi and other last minute issues.  It was also useful keeping the demo to the required seven minutes.</p>
<p>I had some great conversations with other presenters and attendees both before and after the presentation.  Zippy Stat seemed to be positively received judging from conversations and online comments.  I have done many public software demos, but this was the first time that it was really covered via Twitterers and bloggers.  Their immediate and unfiltered feedback was also a fun and useful experience.</p>
<h3>More info and coverage of the event</h3>
<ul>
<li>
Some photos from <a href="http://www.flickr.com/photos/graemethickins/sets/72157613444388325/">flickr</a></li>
<li>Video and other coverage at <a href="http://minnov8.com/2009/02/07/minnedemo_2-09/" target="_blank">MinnoV8</a></li>
]]></content:encoded>
			<wfw:commentRss>http://blog.coderow.com/2009/02/08/zippy-stat-at-minnedemo/feed/</wfw:commentRss>
		</item>
		<item>
		<title>flying to seattle for an hour</title>
		<link>http://blog.coderow.com/2008/12/29/flying-to-seattle-for-an-hour/</link>
		<comments>http://blog.coderow.com/2008/12/29/flying-to-seattle-for-an-hour/#comments</comments>
		<pubDate>Mon, 29 Dec 2008 16:25:53 +0000</pubDate>
		<dc:creator>K2</dc:creator>
		
		<category><![CDATA[customer service]]></category>

		<category><![CDATA[likes]]></category>

		<category><![CDATA[rants]]></category>

		<guid isPermaLink="false">http://blog.coderow.com/?p=18</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<div style ="padding:10px;float:left;"<br />
<img src="http://blog.coderow.com/wp-content/uploads/2008/12/464px-volunteerparkneedle.jpg" alt="Needle From Volunteer Park" style="border:none;height:300px;margin: 0 10px 3px 0;" />
<p style="font-size:.8em;color:#333;text-align:center;"><a href="http://en.wikipedia.org/wiki/File:VolunteerParkNeedle.jpg" target="_blank" style="color:#333;">wikipedia photo</a></p>
</div>
<p>This weekend I flew to Seattle for an hour.  My flight left Minneapolis at 9:55 pm and I was back home at 6:00 am the next morning.  To mark the occasion I purchased a genuine Seattle ballpoint pen for $2.99 in the only gift store open in the airport.   I made this 2,650 mile, 8 hour, overnight journey to keep my elite status with Northwest  (soon to be Delta) Airlines.  I needed to fly 2500 miles before the end of the year, and Seattle was the cheapest flight I could find.  </p>
<p>I was too tired to do any real work, and too awake to sleep, so I mostly thought about why I&#8217;d make such a crazy trip.<br />
What I came up with first is a list of real annoyances that disappear when you are a &#8220;preferred&#8221; flier.<span id="more-18"></span>The two biggies are: The ability to choose from any open seat, rather than just the crappy ones.  For someone 6&#8242;3&#8243;, this is a really big deal. Second, waiving baggage fees unless you bring a ton of luggage.</p>
<p>I do firmly believe that these two items should be available to ANY traveller.  The seat sizes in airplanes are ridiculous.  Even if I was 5&#8242; 3&#8243;, the average seat size does not allow a laptop to be fully opened.  In addition, the fees charged by airlines (as Southwest airlines has marketed with success) are beginning to feel like late night infomercials:  &#8220;Only $29&#8243; in huge letters with &#8220;per month for 6 months plus $46.99 shipping and handling&#8221; in tiny font at the bottom.</p>
<p>I realize I&#8217;m not the first person to complain about these things but given the option to overcome them I spent a considerable amount of money and time to do so.  I don&#8217;t think I&#8217;m out of the ordinary, either.  I believe others would spend a little more money for a better flying experience.  I&#8217;m not talking about first class tickets, I&#8217;m talking about a reasonable premium.  Look at Apple.  They provide a better experience, but cost somewhat more for that experience and people are paying it.</p>
<p>The airline&#8217;s current rush to the bottom of the price/service barrel is short-sighted and feeds into the public perception of flying as a hassle and often to be avoided when possible.  I have to say that in general I enjoy flying.  I have quiet, uninterrupted time to get some work done, do some reading or watch a movie.  I don&#8217;t think I would say the same thing if I wasn&#8217;t an elite member.</p>
<p>There are also perks, which I believe make sense for the airlines (or any company) to reward its most loyal customers including upgrades to first class when seats are available to first class, bonus/additional award miles, pre-boarding, and reservation perks. I would be a complete liar if I said that they weren&#8217;t another reason to stay awake all night to fly to Seattle.   These also help form my perception of flying as generally positive. </p>
<p>This experience really cemented how powerful good (or bad) customer service is to a consumer.  I was willing to give up a night of my life and the cost of a red-eye flight for the possibility of better customer service for another year.  As a business, we would be a fool not to take that to heart. Especially in a troubled economy, where the first impulse is to look for the cheapest option.  Knowing your customer and knowing what really makes a difference to them can be much more important than cost.  After 100 years of a commercial airline industry, I would think they would know their customers better.  If the airlines really knew me, they&#8217;d offer me an option other than a flight to nowhere for decent service.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coderow.com/2008/12/29/flying-to-seattle-for-an-hour/feed/</wfw:commentRss>
		</item>
		<item>
		<title>shoes to the rescue</title>
		<link>http://blog.coderow.com/2008/11/26/shoes-to-the-rescue/</link>
		<comments>http://blog.coderow.com/2008/11/26/shoes-to-the-rescue/#comments</comments>
		<pubDate>Thu, 27 Nov 2008 00:07:23 +0000</pubDate>
		<dc:creator>K2</dc:creator>
		
		<category><![CDATA[general design]]></category>

		<category><![CDATA[likes]]></category>

		<category><![CDATA[ruby]]></category>

		<category><![CDATA[software design]]></category>

		<guid isPermaLink="false">http://blog.coderow.com/?p=11</guid>
		<description><![CDATA[a story of frustration and redemption
In the last two days I feel like I&#8217;ve been through both the worst and best sides of being a software developer.

frustration:
Yesterday started off as a day of possibilities.  Another day to build really great stuff that I&#8217;m proud of and hopefully helps a few people out.  Instead [...]]]></description>
			<content:encoded><![CDATA[<h3>a story of frustration and redemption</h3>
<p>In the last two days I feel like I&#8217;ve been through both the worst and best sides of being a software developer.</p>
<p><a href="http://en.wikipedia.org/wiki/Ford_Model_T" target="_blank" style="border:none;"><img src="http://upload.wikimedia.org/wikipedia/commons/1/15/Late_model_Ford_Model_T.jpg" style="float:left;margin:1em;height:100px;border:none;"></a><br />
<strong>frustration:</strong><br />
Yesterday started off as a day of possibilities.  Another day to build really great stuff that I&#8217;m proud of and hopefully helps a few people out.  Instead it was riddled with a host of issues on my own laptop including a hosed Ruby 1.8.7 upgrade, Readline compile failures, $PATH issues, a crashing IDE and a general feeling of crankiness.  A lot of people, including myself, have talked about how exciting it is to code, especially in Ruby.  How the philosophy is so different, and it is.   But I couldn&#8217;t help but get the feeling that software development in general is still in its infancy &#8212; that some things that should be simple are not.   It feels like we are still <a href="http://www.wikihow.com/Request:Crank-Start-a-Model-T" target="_blank">hand-cranking the Model-T</a> to get it started.   We&#8217;ve come a long way and are helping a lot of people, but we&#8217;ve got a long way to go before we are driving an <a href="http://www.miniusa.com/#/learn/awards_news_events/news-s" target="_blank">all-electric Mini Cooper</a>.<br />
<span id="more-11"></span><a href="http://shoooes.net/" target="_blank" style="border:none;"><img src="http://help.shoooes.net/static/shoes-icon.png" style="float:right;margin:1em;height:100px;border:none;"></a><br />
<strong>redemption:</strong><br />
Today was a much different day.  My issues from the previous day had been fixed by yesterday&#8217;s end, but I purposely stayed away from them.  Instead, I discussed some new projects, I sketched up a fairly complex ERD diagram for a current project, and did some other technology blog reading.  In that reading I ran across what I think is my favorite piece of software in a long time.  And the thing is, it&#8217;s really, really simple.  It doesn&#8217;t have a business model in mind.  It doesn&#8217;t force you to install this gem, and patch this file, and alter this permission and configure this setting. It isn&#8217;t pretentious.  </p>
<p>It&#8217;s called <a href="http://shoooes.net/" target="_blank">shoes</a>. Yes, shoes.  I think the name could have something to do with Ruby Slippers, but I&#8217;m not sure.  If you don&#8217;t like dabbling in a little bit of code, this application isn&#8217;t for you.  But what it does, it does right.  To use shoes, you write little snippets of Ruby, and have them run on a desktop.  The person running the program doesn&#8217;t need Ruby installed or anything else for that matter.  It will run on OS X, Windows and Linux.  It&#8217;s fun, beautiful and simple.  Thank you Shoes, and thank you _why.  </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coderow.com/2008/11/26/shoes-to-the-rescue/feed/</wfw:commentRss>
		</item>
		<item>
		<title>working in the clouds</title>
		<link>http://blog.coderow.com/2008/11/19/working-in-the-clouds/</link>
		<comments>http://blog.coderow.com/2008/11/19/working-in-the-clouds/#comments</comments>
		<pubDate>Wed, 19 Nov 2008 20:25:09 +0000</pubDate>
		<dc:creator>K2</dc:creator>
		
		<category><![CDATA[cloud computing]]></category>

		<category><![CDATA[deployments]]></category>

		<category><![CDATA[ruby on rails]]></category>

		<guid isPermaLink="false">http://blog.coderow.com/?p=7</guid>
		<description><![CDATA[Up until recently I&#8217;ve hosted all of my hobby/small Rails sites at Textdrive.  It was inexpensive, the documentation fairly thorough, and support was responsive.  About a month ago, I started putting together another small Rails site.  I built it locally and was ready to deploy to my server at TextDrive.  However, [...]]]></description>
			<content:encoded><![CDATA[<p>Up until recently I&#8217;ve hosted all of my hobby/small Rails sites at Textdrive.  It was inexpensive, the documentation fairly thorough, and support was responsive.  About a month ago, I started putting together another small Rails site.  I built it locally and was ready to deploy to my server at TextDrive.  However, the server had an old version of RubyGems, and I found out that wouldn&#8217;t be upgraded.  My plan was being outmoded, and needed to upgrade my plan (aka, spend more) and move my code.
</p>
<p>
 I really wasn&#8217;t in the mood to do this, and so I took the opportunity to look into some of the other services getting a lot of press lately:  Namely the &#8220;managed&#8221; cloud services&#8211;those apps that use EC2 or other elastic services, but put a nice front end on more easily manage deployments.  The following are some first impressions on each of the services I worked with:</p>
<p><span id="more-7"></span>
<p>Up until recently I&#8217;ve hosted all of my hobby/small Rails sites at Textdrive.  It was inexpensive, the documentation fairly thorough, and support was responsive.  About a month ago, I started putting together another small Rails site.  I built it locally and was ready to deploy to my server at TextDrive.  However, the server had an old version of RubyGems, and I found out that wouldn&#8217;t be upgraded.  My plan was being outmoded, and needed to upgrade my plan (aka, spend more) and move my code.
</p>
<p>
 I really wasn&#8217;t in the mood to do this, and so I took the opportunity to look into some of the other services getting a lot of press lately:  Namely the &#8220;managed&#8221; cloud services&#8211;those apps that use EC2 or other elastic services, but put a nice front end on more easily manage deployments.  The following are some first impressions on each of the services I worked with:</p>
<p><img src="http://blog.coderow.com/wp-content/uploads/2008/11/buildingsandcloud.jpg" alt="buildingsAndCloud.jpg" border="0" width="144" height="215" align="left" style="margin:2em;" /></p>
<h3><a href="http://heroku.com/">heroku</a></h3>
<p> I had expirimented with Heroku right after it was first released.  Uploading your code to the service seemed to be foolproof.  Zip it up and upload. I had read about issues with some gems, but nothing that I ran into.  I had one of my first apps up and running very quickly.   heroku was differentiating itself with its online code editor. Initially, the editor was interesting, but not all that useful except for the most basic applications. I think most people, including myself, prefer to work locally, commit it to whatever repository you&#8217;re using, then upload your code via Capistrano, FTP or whatever. </p>
<p>
So, for my new app, I used the same process I had originally:  tar up the app and then upload it in heroku control panel.  When I did this, I kept getting server timeouts and 413 &#8220;Entity Too Large&#8221; errors, even though it was a very basic app.  A couple other people posted similar items on the heroku Google Groups forum.  Looking around the heroku site, it just didn&#8217;t seem like there was much activity.  The &#8220;Recent Posts&#8221; on the heroku home page had one from November, two from September and then some from May.  My thought was that maybe the service was going away, so I left.
</p>
<p>One note on heroku:  I didn&#8217;t find this/spend the time to find this, until after my upload issues, but you can now install a heroku gem, making it much easier to create apps, with automatic git integration, and more.  You can:</p>
<pre>
sudo gem install heroku
heroku create myapp
</pre>
<p>This would have been nice to know, and probably wasn&#8217;t that hard to find. However, I didn&#8217;t find this out from the heroku site itself, but rather from another blog.  I would think that heroku should put this right on the &#8220;import&#8221; area stating the gem is the preferred was to manage deployments.
</p>
<h3><a href="http://www.aptana.com/cloud">Aptana Cloud</a></h3>
<p>
I&#8217;ve been using Aptana for quite a while for Rails development.  I know some hardcore rails developers balk at this, but I really do like the Javascript and CSS editors, the list of rake tasks when I can&#8217;t remember one, and other niceties like this.  I&#8217;d long ago turned off Aptana&#8217;s home page constantly talking about new features, Jaxer, etc. which I really didn&#8217;t care about.  I&#8217;ve also found the Java interface a bit buggy, and sometimes overly complicated/unintuitive.
</p>
<p>About the same time I was frustrated with heroku, I noticed the little &#8220;Cloud&#8221; button on the top left of the editor. It turns out that Aptana is including easy deployments right from their Studio tool.  Very interesting.  Will it be as clunky as some of the features as some of the editor features?  The answer is no with a big asterisk.  Right now, the Aptana Cloud does not support Rails, only PHP.  However, Rails is listed as &#8220;Coming Soon&#8221;.  </p>
<p>
I did go ahead and deploy a static HTML version of my site, and I do have to say the deployment was easy, the interface intuitive and overall I think it has potential.  The deployment has some of its own synchronization logic built in, which is nice and easy for a single developer.  I didn&#8217;t dig deep enough to see if this uses an existing SCM, and could therefor be effectively be used with teams and those not using Aptana.  In the end, the Aptana Cloud is something I&#8217;ll be keeping my eye on, especially after Rails is included.
</p>
<h3><a href="http://www.mor.ph/">Morph AppSpace</a></h3>
<p>
Morph had a big presence at this year&#8217;s RailsConf in Portland.  With Aptana and Heroku down, I decided to give it a try.  I have to say I really like what they have to offer.  Getting going was fairly intuitive:  </p>
<ol>
<li>
Create a &#8220;subscription&#8221; (what a subscription is could be described better - it&#8217;s really just a virtual server instance if you&#8217;re in their free mode or a cluster of servers in paid mode).
</li>
<li>
Create the database on your subscription.  There is a button on your subscription to do this.  You don&#8217;t have to name it anything special, the deployment script handles this.
</li>
<li>
Download and update a CAP (Captistrano deployment .rb) file with your SVN or git repository, and a few other configuration items.  Note:  You need to have Capistrano installed - a simple one line gem install.
</li>
<li>
Make sure you have your rails instance and all gems local.  There is a great article on <a href="http://errtheblog.com/posts/50-vendor-everything" target="_blank">&#8220;Vendor Everything&#8221;</a>, which is how I will do all my deployments from now on.  Coming from a Java world, the concept of depending on what gems were installed on a host seemed foreign.  I like this strategy much better.
</li>
<li>
Make sure you have commited your code to SVN/git/whatever.
</li>
<li>
Run the morph_file via Capistrano.</p>
<pre>
cap -f morph_deploy.rb morph:deploy.
</pre>
</li>
</ol>
<p>
If all goes well, your server will be deployed in about five minutes.  If it doesn&#8217;t, look at the &#8220;log&#8221; tab on the control panel for your subscription.  I did notice that sometimes there were logs that showed up here, sometimes they did now.  I&#8217;m not sure if there is a delay, so if there is nothing there, wait a couple minutes and try again.
</p>
<p>
Morph offers free deployments, with some caveats:  The free versions cannot have a custom domain name, you need to use the appname.morphexchange.com domain.  You also need to do a deployment every 14 days to show you&#8217;re still using the app or it go poof.  Morph also just added a provision where you can only have two free subscriptions going at a time.  You can buy instances starting at about $1 USD/day.  Morph also offers full &#8220;clouds&#8221; that include load balancers, dedicated DB instances, etc, for larger scale projects.  These begin around $1500 USD/month.
</p>
<p>All in all, I&#8217;m very happy with Morph and opted for a paid subscription for one of my smaller sites.  I will also be looking at it very closely for larger scale deployments in the near future.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coderow.com/2008/11/19/working-in-the-clouds/feed/</wfw:commentRss>
		</item>
		<item>
		<title>moving blog sites</title>
		<link>http://blog.coderow.com/2008/11/18/moving-blog-sites/</link>
		<comments>http://blog.coderow.com/2008/11/18/moving-blog-sites/#comments</comments>
		<pubDate>Wed, 19 Nov 2008 00:46:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[site info]]></category>

		<guid isPermaLink="false">http://blog.coderow.com/?p=3</guid>
		<description><![CDATA[Just a quick note that we are moving our blog site from blogger to a local WordPress install.  The site may be down or look a bit odd tonight.
]]></description>
			<content:encoded><![CDATA[<p>Just a quick note that we are moving our blog site from blogger to a local WordPress install.  The site may be down or look a bit odd tonight.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.coderow.com/2008/11/18/moving-blog-sites/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
