Michael Kovacs' photos More of Michael Kovacs' photos
Recommend Me Cable Car Software logo

Tuesday, May 19, 2009

Production deployments from the friendly skies

This past weekend I flew to NY to attend my youngest sister's graduation from Hofstra. Once again I flew Virgin America like I always try to when I fly to NY. Power outlets at each seat mean that I can either work or play on my mac the entire time turning a 5 hour flight into nothing more than just another day at the office or a coffee shop :-) The only thing that's ever been missing of course is internet access. Well for $12.95 on Virgin you can now get high speed internet access. I forgot to test the speed but for browsing it was fine. I did notice lag when streaming a video but that's to be expected. Simply having it at all and having it usable is a huge win.

So there I was working on some fixes for LendingKarma and was ready to deploy. Then the realization that I was about to embark upon a production deployment from 30K feet hit me. What if there's a problem and the wifi goes out? I can't rollback thus leaving the site in whatever state caused by my deployment gone wrong. After posing the question to some fellow engineers via a twitter/facebook status update which of course resulted in "do it man!", because they're not the ones that have to deal with the fallout of a failure :-), I pushed ahead with my deployment. Wouldn't you know it, there was a problem and I immediately rolled back. Phew! Murphy's Law strikes again! I fixed the problem quickly and then redeployed successfully. Wow... I just did a production deployment from an airplane. Pretty damn cool :-)

Monday, May 04, 2009

And.... we're back

Phew! That was a long commercial break. I always said I wanted to take a year off in my 30s. I guess a year off from blogging is about the closest thing I've come to that year off :-) Quite a bit's happened in the year since I last wrote. I helped a client launch, http://www.newrelic.com, went on a vacation to Europe (Budapest, Prague, and Berlin) and most recently launched a new venture of mine, http://www.lendingkarma.com.

For the folks that still have me in their feed reader after nearly a year without a peep, I say thanks for being so lazy about removing me :-) Considering that the majority of folks that do read this blog are interested in ruby and rails development I do have a few things that I can talk about that might be of interest.

So as you could probably guess LendingKarma is built on rails, but it's also built using a base app that is comprised of numerous plugins that make it really easy to get a base application up and running. Some of the plugins are:

I also have a few plugins I created that aren't on Github at the moment but are part of my base app:

OrderSystem - Order system is a plugin for e-commerce that's focused on selling digital products. It makes it brain dead easy to add any of the ActiveMerchant gateways as well as making it trivial to setup and test paypal standard or web payments pro as your gateway. It even has support for subscriptions using web payments pro. Subscription support for non-Paypal web payments pro is coming but for LendingKarma we are using Paypal so that was done first. I'm thinking of releasing this plugin in the same fashion as the RailsKit software. I looked at that software and wasn't happy with the product so I ended up creating my own which I think is an easier fit for integrating into an existing rails app. Anyway, more to come on that. Let me know if you'd like more information on that plugin.

Tooltip - A plugin that makes it easy to declaratively add tooltips to your site.

Sortable - A plugin that makes it easy to create a sortable, paginated table over your objects that is also very flexible.

ListEditor - List Editor allows you to declaratively create CRUD lists that use a modal dialog and ajax for the CRUD operations.

More on these plugins in future posts.

The end result of this work is a rails app that out of the box comes with user reg/auth, e-commerce support, and a CMS to manage the site's static pages. A great first step to many projects out there. I'm also just thinking about bundling the entire app itself for release as a base starter app.

Stay tuned as I plan on posting more than once this year :-)

This page is powered by Blogger. Isn't yours?