<?xml version="1.0" encoding="UTF-8"?>
<feed xml:lang="en-US" xmlns="http://www.w3.org/2005/Atom">
  <title>Think in code - Home</title>
  <id>tag:thinkincode.net,2010:mephisto/</id>
  <generator version="0.7.3" uri="http://mephistoblog.com">Mephisto Noh-Varr</generator>
  <link href="http://thinkincode.net/feed/atom.xml" rel="self" type="application/atom+xml"/>
  <link href="http://thinkincode.net/" rel="alternate" type="text/html"/>
  <updated>2010-04-08T20:46:19Z</updated>
  <entry xml:base="http://thinkincode.net/">
    <author>
      <name>david</name>
    </author>
    <id>tag:thinkincode.net,2010-04-08:2981</id>
    <published>2010-04-08T20:40:00Z</published>
    <updated>2010-04-08T20:46:19Z</updated>
    <category term="Java"/>
    <category term="Ruby on rails"/>
    <link href="http://thinkincode.net/2010/4/8/trinidad-0-8-gem-extensions-and-database-pooling" rel="alternate" type="text/html"/>
    <title>Trinidad 0.8, gem extensions and database pooling</title>
<content type="html">
            &lt;p&gt;I think, the release of the latest version of &lt;a href='http://rubygems.org/gems/jruby-rack'&gt;JRuby-Rack&lt;/a&gt; was the perfect moment to do a new release of &lt;a href='http://github.com/calavera/trinidad'&gt;Trinidad&lt;/a&gt; and some new features. If this is the first time you bump into Trinidad, it's a Rack compatible server build on top of Apache Tomcat and release as a rubygem.&lt;/p&gt;

&lt;p&gt;One of my main concerns about the project was that I wanted to build a lightweight gem and until now you had to download more than 5Mb with each release. The first step to avoid this was to split the gem in two, the main gem, trinidad, is now 12Kb, while the jars gem, trinidad_jars is just 3Mb, thus if I don't change the jars you'll just need to download 12Kb with each new release.&lt;/p&gt;

&lt;p&gt;The second step is to stop adding features to the main gem. With each new feature that I wanted to implement more jar files were required and added to the package. Now Trinidad includes a little extensions api that allows to release features as little gems out of the core, you can find more details on the api into &lt;a href='http://wiki.github.com/calavera/trinidad/extensions'&gt;the wiki&lt;/a&gt;. So, from now I'll try to release new features as extensions and leave the core as tiny as possible.&lt;/p&gt;

&lt;p&gt;The first extension that I've written adds support for database connection pooling through Tomcat and JNDI. The project is also hosted on &lt;a href='http://github.com/calavera/trinidad-dbpool'&gt;github&lt;/a&gt;, and the &lt;a href='http://github.com/calavera/trinidad-dbpool/blob/master/README.rdoc'&gt;installation and configuration&lt;/a&gt; are pretty straightforward.&lt;/p&gt;

&lt;p&gt;Finally, an extra point. Of course, the coolest new feature is the Rails 3 support due to JRuby-rack already supports it, and, as you'll probably know, &lt;a href='http://www.engineyard.com/blog/2010/the-lowdown-on-routes-in-rails-3/'&gt;Rails 3 routes&lt;/a&gt; allow to split your application in several ones and route between each other. Just remember that Trinidad also allows you to run all those distributed applications within the same container with just &lt;a href='http://wiki.github.com/calavera/trinidad/advanced-configuration#several-apps'&gt;a few configuration lines&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;All in all, if you find a bug or you'd like to see other new features, please don't hesitate filing an issue in the &lt;a href='http://github.com/calavera/trinidad/issues'&gt;project's tracker&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Have fun.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://thinkincode.net/">
    <author>
      <name>david</name>
    </author>
    <id>tag:thinkincode.net,2010-01-06:2223</id>
    <published>2010-01-06T03:20:00Z</published>
    <updated>2010-01-06T03:23:21Z</updated>
    <link href="http://thinkincode.net/2010/1/6/adding-other-tools-support-in-hudson-s-rubymetrics-plugin" rel="alternate" type="text/html"/>
    <title>Adding other tools support in Hudson's rubyMetrics plugin</title>
<content type="html">
            &lt;p&gt;Ok, I have to admit it, I'm a lazy, but a good lazy, like my good friend &lt;a href='http://porras.lacoctelera.com'&gt;Sergio&lt;/a&gt; says. I like to work as less as possible and this days while I wrote the new &lt;a href='http://wiki.hudson-ci.org/display/HUDSON/Ruby+metrics+plugin'&gt;Flog support in the Hudson's rubyMetrics plugin&lt;/a&gt; I realized that I didn't want to copy the same code over and over again anymore.&lt;/p&gt;

&lt;p&gt;So, I just added to the repository a &lt;a href='http://github.com/calavera/rubyMetrics/blob/master/src/main/ruby/generator.rb'&gt;ruby script&lt;/a&gt; to generate the basic skeleton for add every other tool support to the plugin. The script asks some questions and it generates basic classes that it needs to add support for that tool.&lt;/p&gt;

&lt;p&gt;Still here? what are you waiting to add your favorite tool support to the plugin? You just need to follow this few steps:&lt;/p&gt;

&lt;p&gt;1 Check the code out:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
$ svn co https://svn.dev.java.net/svn/hudson/trunk/hudson/plugins/rubyMetrics
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;or&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
$ git clone git://github.com/calavera/rubyMetrics.git
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;2 Run the script:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
$ ruby src/main/ruby/generator.rb
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;3 Go to the Publisher class and complete the perform method and go to the BuildAction view and complete the jelly template. Psss rcov, flog, rails stats or rails notes support can help you.&lt;/p&gt;

&lt;p&gt;4 Test the plugin using maven, it launches a dedicated instance of hudson :S&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
$ mvn hpi:run
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;5 File a ticket in &lt;a href='http://issues.hudson-ci.org/browse/HUDSON/component/15573'&gt;hudson's jira&lt;/a&gt; to the component RubyMetrics and attach your patch.&lt;/p&gt;

&lt;p&gt;Btw, if you didn't notice yet, I set up a mirror of the project in &lt;a href='http://github.com/calavera/rubyMetrics'&gt;github&lt;/a&gt;. Enjoy it.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://thinkincode.net/">
    <author>
      <name>david</name>
    </author>
    <id>tag:thinkincode.net,2009-12-08:2054</id>
    <published>2009-12-08T23:00:00Z</published>
    <updated>2009-12-08T23:02:56Z</updated>
    <category term="Desarrollo"/>
    <category term="Java"/>
    <category term="Ruby on rails"/>
    <link href="http://thinkincode.net/2009/12/8/loading-several-rails-applications-into-a-single-tomcat-with-trinidad" rel="alternate" type="text/html"/>
    <title>Loading several Rails applications into a single Tomcat container with Trinidad</title>
<content type="html">
            &lt;p&gt;Sometimes you meet that kind of people that complain about the lack of any feature in an open source project but they don't do anything to solve the problem. Last releases of &lt;a href='http://calavera.github.com/trinidad'&gt;Trinidad&lt;/a&gt; try the solve one of that complaints, so that people have one excuse less to use it :)&lt;/p&gt;

&lt;p&gt;The goal of the project was pretty simple, allow to run a Rails application under Apache Tomcat without generating a war file in a more familiar &quot;rails way&quot;. But that guy complained because he wanted to run several applications into the same instance of Tomcat, and actually he was partially right, Tomcat is a powerful application server and it can run several applications at once, thus, why don't allow to Trinidad to run several Rails applications?&lt;/p&gt;

&lt;p&gt;After a few changes in its architecture, Trinidad allows to run as many Rails applications as Tomcat can support into the same instance. We just need add the application's context and their system path to the Trinidad's configuration file and run Trinidad with the option to read that file.&lt;/p&gt;

&lt;p&gt;For instance, if we want to load three applications we had to add this nodes to the yaml file:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
---
  :web_apps:
    :default:                                         # context path is '/'
      :web_app_dir: 'rails_apps/mock'
    :mock1:                                         # context path is '/mock1'
      :web_app_dir: 'rails_apps/mock1'
    :mock2:
      :web_app_dir: 'rails_apps/mock2'
      :context_path: '/mock2'
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;and run Trinidad with the configuration option:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
$ jruby -S trinidad --config
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;That's it. Hope it will useful. Btw all the configuration options can be found in the &lt;a href='http://wiki.github.com/calavera/trinidad/advanced-configuration'&gt;Trinidad's wiki&lt;/a&gt;.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://thinkincode.net/">
    <author>
      <name>david</name>
    </author>
    <id>tag:thinkincode.net,2009-10-27:1996</id>
    <published>2009-10-27T22:28:00Z</published>
    <updated>2009-10-27T22:32:27Z</updated>
    <category term="Atom Publishing Protocol"/>
    <category term="Ruby on rails"/>
    <link href="http://thinkincode.net/2009/10/27/the-atom-exerciser-on-heroku" rel="alternate" type="text/html"/>
    <title>The Atom Exerciser on Heroku</title>
<content type="html">
            &lt;p&gt;From some time I've been getting some visits in this blog from &lt;a href='http://www.tbray.org/ongoing/'&gt;Tim's page&lt;/a&gt; and I didn't know why, until this morning when I needed to use &lt;a href='http://www.tbray.org/ape/'&gt;his Ape instance&lt;/a&gt; and I came across it was down.&lt;/p&gt;

&lt;p&gt;I needed to use it from outside my private network, I thought on deploy it on Google App Engine, so I took the oportunity to move the repository to a &lt;a href='http://github.com/calavera/Ape'&gt;more cool home&lt;/a&gt;, get rid of the old mongrel code and use a Rackable framework to &lt;a href='http://github.com/calavera/Ape/blob/master/sinatra/atom_exerciser.rb'&gt;manage its server&lt;/a&gt; and move &lt;a href='http://gemcutter.org/gems/ape'&gt;its realeases&lt;/a&gt; to gemcutter.&lt;/p&gt;

&lt;p&gt;All in all, after almost an hour trying to deploy it in GAE I realized I couldn't use it because its restrictions policy, so in the 10 minutes between I wrote these &lt;a href='http://twitter.com/calavera/status/5204723614'&gt;two&lt;/a&gt; &lt;a href='http://twitter.com/calavera/status/5205027314'&gt;tweets&lt;/a&gt;, I downloaded heroku gem, wrote a &lt;a href='http://github.com/calavera/Ape/blob/master/config.ru'&gt;rack config file&lt;/a&gt; and deploy &lt;a href='http://atomexerciser.heroku.com'&gt;Atom Exerciser on Heroku&lt;/a&gt;. Enjoy it.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://thinkincode.net/">
    <author>
      <name>david</name>
    </author>
    <id>tag:thinkincode.net,2009-09-22:1770</id>
    <published>2009-09-22T09:59:00Z</published>
    <updated>2009-09-22T10:06:58Z</updated>
    <category term="Desarrollo"/>
    <link href="http://thinkincode.net/2009/9/22/improving-jruby-1-9-compatibility" rel="alternate" type="text/html"/>
    <title>Improving JRuby 1.9 compatibility</title>
<content type="html">
            &lt;p&gt;For some time I've been contributing with the JRuby team fixing bugs and adding some new features, and most of my work has been focused in Ruby 1.9 compatibility. &lt;/p&gt;

&lt;p&gt;Yesterday, &lt;a href='http://www.engineyard.com/blog/2009/5-things-to-look-for-in-jruby-1-4/'&gt;Nick Sieger wrote a blog&lt;/a&gt; about some things to look at JRuby 1.4, and I'd like to add my &quot;from novice to novice&quot; piece of advice. &lt;/p&gt;

&lt;p&gt;Run and fix specs can be a tedious task, you can take a look at the &lt;a href='http://jira.codehaus.org/browse/JRUBY-3984'&gt;latest&lt;/a&gt; &lt;a href='http://jira.codehaus.org/browse/JRUBY-3985'&gt;patches&lt;/a&gt; I sent, so I wrote a little script to help me to run them easily:&lt;/p&gt;

&amp;lt;script src='http://gist.github.com/190948.js'&gt;&amp;lt;/script&gt;

&lt;p&gt;It has two usage options, it runs all specs under a directory, or you can specify one or some of them to run. I know it's not perfect but it works for my daily work.&lt;/p&gt;

&lt;p&gt;Hope it can help you and I'll see your patches soon.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://thinkincode.net/">
    <author>
      <name>david</name>
    </author>
    <id>tag:thinkincode.net,2009-07-16:989</id>
    <published>2009-07-16T20:55:00Z</published>
    <updated>2009-07-16T21:00:11Z</updated>
    <link href="http://thinkincode.net/2009/7/16/rails-load-balancing-with-apache-and-trinidad" rel="alternate" type="text/html"/>
    <title>Rails load balancing with Apache and Trinidad</title>
<content type="html">
            &lt;p&gt;I just released a new version of &lt;a href='http://calavera.github.com/trinidad'&gt;Trinidad&lt;/a&gt; with two major features. The first one is that it supports ssl connections adding a simple starting option:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
  $ trinidad --ssl
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;The second one is also related with connections, but this one is about &lt;a href='http://tomcat.apache.org/connectors-doc/ajp/ajpv13a.html'&gt;AJP&lt;/a&gt;, a protocol designed to increase tomcat's performance, if you already have worked with tomcat or jboss I'm sure you already know it.&lt;/p&gt;

&lt;p&gt;But what I'd like to show you is one of its main adventages, how to create a really stable load balancer with Apache httpd and Trinidad thanks to ajp.&lt;/p&gt;

&lt;p&gt;First we have to ensure all the apache modules that we need are loaded:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
  $ sudo a2enmod proxy_ajp proxy_balancer
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;After that, we have to configure our virtual host to proxy the connections through ajp, this is an actually basic configuration, there are &lt;a href='http://www.wellho.net/mouth/1939_mod-proxy-ajp-and-mod-proxy-balancer-examples.html'&gt;a lot of resources&lt;/a&gt; about &lt;a href='http://httpd.apache.org/docs/2.2/mod/mod_proxy_balancer.html'&gt;mod_proxy_balancer&lt;/a&gt; on internet:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
&amp;lt;Proxy balancer://trini&amp;gt
  BalancerMember ajp://127.0.0.1:8009
  BalancerMember ajp://127.0.0.1:8099
&amp;lt;/Proxy&amp;gt;

ProxyPass / balancer://trini/
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Notice that I'm using my development machine and that's why the two balancer members have the same ip but different port.&lt;/p&gt;

&lt;p&gt;Finally, we have to run two different instances of Trinidad with the ajp option enabled, with the ports we specified in the balancer configuration (8009 is the default one), and different http ports due to I'm running it in my machine:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;

$ trinidad --port 3001 --ajp
$ trinidad --port 3002 --ajp 8099

&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;That's it, quite straightforward. &lt;/p&gt;

&lt;p&gt;By the way, I've also set up a &lt;a href='http://groups.google.com/group/rails-trinidad'&gt;google group&lt;/a&gt; where you can ask doubts or discuss about the development itself, and, as always, if you find a bug or have a new cool functionality you can add it to the &lt;a href='github.com/calavera/trinidad/issues'&gt;issue tracker&lt;/a&gt;. &lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://thinkincode.net/">
    <author>
      <name>david</name>
    </author>
    <id>tag:thinkincode.net,2009-07-14:986</id>
    <published>2009-07-14T16:25:00Z</published>
    <updated>2009-07-14T16:39:46Z</updated>
    <link href="http://thinkincode.net/2009/7/14/jeweler-vs-rubyforge" rel="alternate" type="text/html"/>
    <title>Jeweler vs rubyforge</title>
<content type="html">
            &lt;p&gt;Last week I released the first version of Trinidad, a project that I develop with the help of &lt;a href='http://wiki.github.com/technicalpickles/jeweler'&gt;Jeweler&lt;/a&gt;, a gem that gives you the tools to release a gem in github quickly, and with some options it also helps you to release your gem in rubyforge, but here my problems started.&lt;/p&gt;

&lt;p&gt;In the &lt;a href='http://wiki.github.com/technicalpickles/jeweler/rubyforge'&gt;Jeweler's wiki&lt;/a&gt; there is a page with the first problem I bumped into, and in its issues tracker there is also &lt;a href='http://technicalpickles.lighthouseapp.com/projects/23560/tickets/13-rubyforge-processor_id'&gt;a thread&lt;/a&gt; with the problem that almost went me nuts, and any solution didn't solve my problems.&lt;/p&gt;

&lt;p&gt;My solution, start from the begining, step by step. First step, configure rubyforge, the best guide you can find to configure rubyforge is in the &lt;a href='http://newgem.rubyforge.org/rubyforge.html'&gt;newgem generator's page&lt;/a&gt;. Second step, release your gem with jeweler.&lt;/p&gt;

&lt;p&gt;All in all, if you want to release a gem in rubyforge with jeweler, run these commands and forget to edit rubyforge configuration's files, it worked for me, at least:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
$ rubyforge config
$ rubyforge login
$ rubyforge names
$ rubyforge create_package #project_name# #gem_name#

$ rake rubyforge:release
&lt;/code&gt;&lt;/pre&gt;
          </content>  </entry>
  <entry xml:base="http://thinkincode.net/">
    <author>
      <name>david</name>
    </author>
    <id>tag:thinkincode.net,2009-07-07:980</id>
    <published>2009-07-07T16:54:00Z</published>
    <updated>2009-07-07T16:59:13Z</updated>
    <link href="http://thinkincode.net/2009/7/7/tomcat-rails-is-now-called-trinidad" rel="alternate" type="text/html"/>
    <title>Tomcat-rails is now called Trinidad</title>
<content type="html">
            &lt;p&gt;One month ago I released &lt;a href='http://thinkincode.net/2009/6/11/tomcat-rails-develop-rails-app-within-tomcat'&gt;Tomcat-rails&lt;/a&gt;, a little gem to simplify my development process with tomcat. &lt;/p&gt;

&lt;p&gt;To get feedback I decided to send some emails to several mail lists. I was really interested in answers from jruby and tomcat users and developers, perhaps they could send me some advice to improve my code or ideas for new features.&lt;/p&gt;

&lt;p&gt;I got good feedback from the jruby-user list, people used it with good results, others bump into problems with jruby-rack... but the answers from tomcat-user lists actually took me by surprise, just two or three minutes after I sent the email the first reply asked me to read the &lt;a href='http://tomcat.apache.org/legal.html'&gt;tomcat's legal page&lt;/a&gt;, from his own words, the name of my project didn't conform to the guidance set out in the trademarks section, and specifically in this point:&lt;/p&gt;

&lt;blockquote&gt;
    &lt;p&gt;If you use the words &quot;Tomcat&quot; or &quot;Apache&quot; in your product name then you must call your product
    &quot;... for Apache Tomcat&quot; or &quot;... for Tomcat&quot;. You may not call your product &quot;Apache ...&quot; or &quot;Tomcat ...&quot;. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Some days after, the same guy sent me an email directly to remember me that I had to change the name of the project, and of course, reading the internal lists of the ASF I know the project got some mentions.&lt;/p&gt;

&lt;p&gt;Well, the problem just finishes today, from now this project is called &lt;a href='http://calavera.github.com/trinidad'&gt;Trinidad&lt;/a&gt;. In few days the old repository and the web page will be remove, the &lt;a href='http://calavera.github.com/trinidad'&gt;new web page&lt;/a&gt; and the &lt;a href='http://github.com/calavera/trinidad'&gt;repository&lt;/a&gt; are still hosted in github but I also set up the project in rubyforge, so install the gem is even easier:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
jgem install trinidad
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Remember if you find a bug, you have improvements over my code or just have suggestions for new features, you can use &lt;a href='http://github.com/calavera/trinidad/issues'&gt;the repository issues' page&lt;/a&gt;.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://thinkincode.net/">
    <author>
      <name>david</name>
    </author>
    <id>tag:thinkincode.net,2009-06-15:957</id>
    <published>2009-06-15T13:55:00Z</published>
    <updated>2009-07-15T13:57:16Z</updated>
    <category term="Java"/>
    <category term="Ruby on rails"/>
    <link href="http://thinkincode.net/2009/6/15/tomcat-rails-develop-rails-app-within-tomcat" rel="alternate" type="text/html"/>
    <title>Tomcat-rails, develop rails app within tomcat</title>
<content type="html">
            &lt;p&gt;&lt;strong&gt;UPDATE: This project has been renamed and it's not longer mantained, please read &lt;a href='http://thinkincode.net/2009/7/7/tomcat-rails-is-now-called-trinidad'&gt;this post&lt;/a&gt; if you want to know the reasons or just go to the &lt;a href='http://calavera.github.com/trinidad'&gt;new project web page&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This days I'm working every day with this stack, jruby+rails+tomcat. I was quite tired to have to pack the application and restart tomcat every time I wanted to test every slight change, so as a result, I wrote a script to use an embed tomcat within my application and this morning I wrapped it as a gem.&lt;/p&gt;

&lt;p&gt;There is a lot of work to do but you can already &lt;a href='http://github.com/calavera/tomcat-rails'&gt;download&lt;/a&gt; it from &lt;a href='http://calavera.github.com/tomcat-rails'&gt;github&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;It's usage is quite simple, just install the gem with jruby, go to the root directory of your rails app and run jruby -S tomcat_rails, or copy and paste this lines:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
  jgem install calavera-tomcat-rails -s http;//gems.github.com
  cd myrailsapp
  jruby -S tomcat_rails
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Any feedback will be really appreciated.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://thinkincode.net/">
    <author>
      <name>david</name>
    </author>
    <id>tag:thinkincode.net,2009-04-09:865</id>
    <published>2009-04-09T15:59:00Z</published>
    <updated>2009-04-09T16:33:02Z</updated>
    <category term="Ruby on rails"/>
    <link href="http://thinkincode.net/2009/4/9/rails-template-for-google-app-engine" rel="alternate" type="text/html"/>
    <title>Rails template for Google app engine</title>
<content type="html">
            &lt;p&gt;I know, there is already too much buzz out there that talks about the new GAE's java support but I was sure I end up trying it.&lt;/p&gt;

&lt;p&gt;I was following the &lt;a href='http://olabini.com/blog/2009/04/jruby-on-rails-on-google-app-engine/'&gt;Ola's post&lt;/a&gt;, it's quite simple to configure a rails project to deploy it on GAE, but I didn't want to repeat all those steps every time I'll deploy a new application, so I just wrote a rails template that adds all that stuff to my projects.&lt;/p&gt;

&lt;p&gt;I'm waiting &lt;a href='http://www.omgbloglol.com/'&gt;Jeremy&lt;/a&gt;'ll add it to the &lt;a href='http://github.com/jeremymcanally/rails-templates'&gt;templates repository&lt;/a&gt;, meanwhile you can &lt;a href='http://github.com/calavera/rails-templates/blob/0ea4b23956d26c42a7fa3eb33c5e743a9a4ffb0f/google_app_engine.rb'&gt;grab it&lt;/a&gt; from my &lt;a href='http://github.com/calavera/rails-templates'&gt;forked repository&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;By the way, if you've already worked with rails templates you know they provide a &lt;strong&gt;git&lt;/strong&gt; command that I'm not using in my template. That's because that command doesn't work outside the app root directory. I've already submitted a &lt;a href='https://rails.lighthouseapp.com/projects/8994/tickets/2466-patch-rails-templates-git-command-doesnt-run-inside-a-directory'&gt;patch to the rails' lighthouse&lt;/a&gt; to solve it. Please vote it!!&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://thinkincode.net/">
    <author>
      <name>david</name>
    </author>
    <id>tag:thinkincode.net,2009-01-09:772</id>
    <published>2009-01-09T11:05:00Z</published>
    <updated>2009-01-09T17:33:33Z</updated>
    <category term="Ruby on rails"/>
    <link href="http://thinkincode.net/2009/1/9/rails-hackathon" rel="alternate" type="text/html"/>
    <title>Rails Hackathon in Madrid</title>
<content type="html">
            &lt;p&gt;Last month &lt;a href='http://www.lacoctelera.com/porras'&gt;some&lt;/a&gt; &lt;a href='http://blog.lmcavalle.com'&gt;friends&lt;/a&gt; of &lt;a href='http://jobandtalent.com'&gt;mine&lt;/a&gt; organized a great event called &lt;a href='http://github.com/monstersofruby'&gt;Monsters of Ruby&lt;/a&gt;. The topic was Ruby without Rails, and the challenge was mix random technologies and create a simple web app, my teammates and I suffered with SproutCore, Ramaze and Sequel.&lt;/p&gt;

&lt;p&gt;Following its essence I'm organizing a new event called &lt;a href='http://rails-hackathon.org'&gt;Rails Hackathon&lt;/a&gt; next February 7 in the 11870.com's office. The topic will be dive into the Rails core and send as patch as we can to the &lt;a href='http://rails.lighthouseapp.com/projects/8994-ruby-on-rails'&gt;issue tracker&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Our office is not too much big so I've decided to close this event to 20 people, some of them have been already &lt;a href='http://groups.google.com/group/rails-hackathon/web/madrid-february-7-2009'&gt;invited&lt;/a&gt; but there are some available places yet. If you are a Rails core contributor or you want to be and you enjoy diving in foreign source code send me a mail to calavera AT apache DOT org and I'll include you in the list.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://thinkincode.net/">
    <author>
      <name>david</name>
    </author>
    <id>tag:thinkincode.net,2008-12-11:771</id>
    <published>2008-12-11T09:56:00Z</published>
    <updated>2008-12-11T09:58:26Z</updated>
    <link href="http://thinkincode.net/2008/12/11/european-ruby-konference-in-barcelona" rel="alternate" type="text/html"/>
    <title>European Ruby Konference 2009 in Barcelona</title>
<content type="html">
            &lt;p&gt;I'm glad to announce that we have dates and venue for the next Euruko 2009 in Barcelona, May 9 and 10 in the Citilab, a beatiful place that hosted other big international conferences like DrupalConf or OpenOffice.org Conference.&lt;/p&gt;

&lt;p&gt;You can see the official announce in the &lt;a href='http://euruko2009.org'&gt;Euruko web page&lt;/a&gt;, we'll open the call for papers in the next weeks, stay in touch!&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://thinkincode.net/">
    <author>
      <name>david</name>
    </author>
    <id>tag:thinkincode.net,2008-11-20:716</id>
    <published>2008-11-20T17:53:00Z</published>
    <updated>2008-11-20T17:56:55Z</updated>
    <link href="http://thinkincode.net/2008/11/20/abdera-gets-the-graduation" rel="alternate" type="text/html"/>
    <title>Abdera gets the graduation</title>
<content type="html">
            &lt;p&gt;Although I don't speak pretty much on &lt;a href='http://incubator.apache.org/abdera'&gt;Apache Abdera&lt;/a&gt;, I've been involved in the project for more than a year.&lt;/p&gt;

&lt;p&gt;Today, two years later Abdera is finally graduated and in the next weeks we're moving our home to &lt;em&gt;abdera.apache.org&lt;/em&gt; as a Top Level Project in the ASF. So, now the question is... when will we release a new version of Abdera? and the answer is... we're working on fix every major bug that we have in &lt;a href='https://issues.apache.org/jira/browse/ABDERA'&gt;our jira&lt;/a&gt;, and we have to look over &lt;a href='http://cwiki.apache.org/ABDERA'&gt;our documentation&lt;/a&gt;, but we'd like to release a new version as soon as our infrastructure will be migrated. &lt;/p&gt;

&lt;p&gt;Meanwhile contributions are welcome, if you find a bug or you think that you can improve our documentation, please don't hesitate to &lt;a href='http://incubator.apache.org/abdera/project.html#lists'&gt;drop us a line&lt;/a&gt;.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://thinkincode.net/">
    <author>
      <name>david</name>
    </author>
    <id>tag:thinkincode.net,2008-10-25:654</id>
    <published>2008-10-25T17:28:00Z</published>
    <updated>2008-12-12T12:53:41Z</updated>
    <link href="http://thinkincode.net/2008/10/25/google-test-automation-conference-08" rel="alternate" type="text/html"/>
    <title>Google Test Automation Conference 08</title>
<content type="html">
            &lt;p&gt;Yesterday, the third edition of the Google Test Automation Conference finished, and, although my speech was a little disaster, I'm glad. It was a challenge, this was the first time that I gave a speech in english and I chose to do it in front of the main experts in testing in the world.&lt;/p&gt;

&lt;p&gt;I'm trying to upload the slides to slideshare but I have several problems converting the file, so, if you want to get them you can &lt;a href='http://thinkincode.net/gtac_atomPub_testing_your_server_implementation.pdf'&gt;download the pdf from my server&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Update&lt;/em&gt;: I finally got to upload the presentation to slideshare, you can take it a look here:&lt;/p&gt;

&lt;div&gt;&lt;a href='http://www.slideshare.net/calavera/gtac-atompub-testing-your-server-implementation?type=powerpoint' title='GTAC: AtomPub, testing your server implementation'&gt;GTAC: AtomPub, testing your server implementation&lt;/a&gt;&amp;lt;object height='355' width='425' style='margin:0px'&gt;&amp;lt;param name='movie' value='http://static.slideshare.net/swf/ssplayer2.swf?doc=gtac-atompub-testing-your-server-implementation-3825&amp;stripped_title=gtac-atompub-testing-your-server-implementation' /&gt;&amp;lt;param name='allowFullScreen' value='true' /&gt;&amp;lt;param name='allowScriptAccess' value='always' /&gt;&amp;lt;embed allowfullscreen='true' type='application/x-shockwave-flash' src='http://static.slideshare.net/swf/ssplayer2.swf?doc=gtac-atompub-testing-your-server-implementation-3825&amp;stripped_title=gtac-atompub-testing-your-server-implementation' allowscriptaccess='always' height='355' width='425'&gt;&amp;lt;/embed&gt;&amp;lt;/object&gt;&lt;div&gt;View SlideShare &lt;a href='http://www.slideshare.net/calavera/gtac-atompub-testing-your-server-implementation?type=powerpoint' title='View GTAC: AtomPub, testing your server implementation on SlideShare'&gt;presentation&lt;/a&gt; or &lt;a href='http://www.slideshare.net/upload?type=powerpoint'&gt;Upload&lt;/a&gt; your own. (tags: &lt;a href='http://slideshare.net/tag/conference'&gt;conference&lt;/a&gt; &lt;a href='http://slideshare.net/tag/automation'&gt;automation&lt;/a&gt;)&lt;/div&gt;&lt;/div&gt;
          </content>  </entry>
  <entry xml:base="http://thinkincode.net/">
    <author>
      <name>david</name>
    </author>
    <id>tag:thinkincode.net,2008-10-20:621</id>
    <published>2008-10-20T16:37:00Z</published>
    <updated>2008-10-20T16:57:41Z</updated>
    <link href="http://thinkincode.net/2008/10/20/next-three-weeks-in-the-states" rel="alternate" type="text/html"/>
    <title>Next three weeks in the states</title>
<content type="html">
            &lt;p&gt;Right so, Tomorrow I'm flying to Seattle to speak in the Google Test Automation Conference and to seitze the opportunity I'm going to visit some friend in San Francisco next week. After that, I'm going to New Orleans to attend to the ApacheCon where I'm talking on Abdera in the Fast Feather track.&lt;/p&gt;

&lt;p&gt;If you're in my route and you want to spend some time taking a beer and talking on open source, rails, java, atom or something, just drop me a line to calavera at apache dot org or leave me a comment in this post. See you there!&lt;/p&gt;
          </content>  </entry>
</feed>
