<?xml version="1.0" encoding="UTF-8"?>
<feed xml:lang="en-US" xmlns="http://www.w3.org/2005/Atom">
  <title>Nick Sieger: Project Kenai at JavaOne</title>
  <id>tag:blog.nicksieger.com,2005:Typo</id>
  <generator uri="http://www.typosphere.org" version="4.0">Typo</generator>
  <link rel="self" type="application/atom+xml" href="http://blog.nicksieger.com/xml/atom10/article/515/feed.xml"/>
  <link rel="alternate" type="text/html" href="http://blog.nicksieger.com/articles/2009/06/09/project-kenai-at-javaone"/>
  <updated>2009-06-23T08:55:21+00:00</updated>
  <entry>
    <author>
      <name>Odchudzanie Poznan</name>
    </author>
    <id>urn:uuid:492df852-6bdd-45e9-8701-07f3aca44fbb</id>
    <published>2009-06-23T08:55:15+00:00</published>
    <updated>2009-06-23T08:55:21+00:00</updated>
    <title>Comment on Project Kenai at JavaOne by Odchudzanie Poznan</title>
    <link rel="alternate" type="text/html" href="http://blog.nicksieger.com/articles/2009/06/09/project-kenai-at-javaone#comment-523"/>
    <content type="html">&lt;p&gt;I&amp;#8217;m really greatful that you posted your slides&amp;#46; Too many people post stuff like &amp;#8220;oh yeah I did that presentation&amp;#46; People loved it&amp;#8221; but when asked for some materials or video they never post it&amp;#46;&lt;/p&gt;</content>
  </entry>
  <entry>
    <author>
      <name>Nick</name>
    </author>
    <id>urn:uuid:b6453298-8ff0-48b7-ade3-b8d0ca8f5917</id>
    <published>2009-06-09T13:12:01+00:00</published>
    <updated>2009-06-09T13:12:05+00:00</updated>
    <title>Comment on Project Kenai at JavaOne by Nick</title>
    <link rel="alternate" type="text/html" href="http://blog.nicksieger.com/articles/2009/06/09/project-kenai-at-javaone#comment-517"/>
    <content type="html">&lt;p&gt;JRuby&amp;#45;Rack and Warbler, deploying to GlassFish v2&amp;#46;&lt;/p&gt;</content>
  </entry>
  <entry>
    <author>
      <name>Christian Seiler</name>
    </author>
    <id>urn:uuid:ec48b53e-964e-4a96-a4f1-ccc1f22561f8</id>
    <published>2009-06-09T12:28:09+00:00</published>
    <updated>2009-06-09T12:28:18+00:00</updated>
    <title>Comment on Project Kenai at JavaOne by Christian Seiler</title>
    <link rel="alternate" type="text/html" href="http://blog.nicksieger.com/articles/2009/06/09/project-kenai-at-javaone#comment-516"/>
    <content type="html">&lt;p&gt;Are you using JRuby&amp;#45;Rack or the Glasfish gem?&lt;/p&gt;</content>
  </entry>
  <entry>
    <author>
      <name>Nick Sieger</name>
    </author>
    <id>urn:uuid:9a1f22f6-e5db-4cf7-a49d-79c06dbb4bf2</id>
    <published>2009-06-09T02:23:36+00:00</published>
    <updated>2009-06-09T02:23:36+00:00</updated>
    <title>Project Kenai at JavaOne</title>
    <link rel="alternate" type="text/html" href="http://blog.nicksieger.com/articles/2009/06/09/project-kenai-at-javaone"/>
    <category term="kenai" scheme="http://blog.nicksieger.com/articles/tag/kenai"/>
    <category term="jruby" scheme="http://blog.nicksieger.com/articles/tag/jruby"/>
    <category term="rails" scheme="http://blog.nicksieger.com/articles/tag/rails"/>
    <content type="html">&lt;p&gt;It&amp;#8217;s just the beginning and a small milestone, but it&amp;#8217;s a goal we set for ourselves by JavaOne last week that we reached: 10K registered users at &lt;a href="http://kenai.com/"&gt;http://kenai&amp;#46;com/&lt;/a&gt;&amp;#46; We were fortunate to be highlighted in the Tuesday afternoon keynote, which, to our collective relief, &lt;a href="http://blogs.zdnet.com/BTL/?p=19181"&gt;went off without a hitch&lt;/a&gt;&amp;#46; I also had a chance to speak a bit about Project Kenai behind the scenes in my technical session&amp;#46;&lt;/p&gt;

&lt;p&gt;&lt;a href="/TS5413_09J1_SiegerLessons.pdf"&gt;My slides are available&lt;/a&gt; and contain a decent overview of what we&amp;#8217;ve been doing&amp;#46; One slide in particular seems to have &lt;a href="http://twitter.com/olabini/status/2027466455"&gt;surprised&lt;/a&gt; some folks: our codebase metrics&amp;#46;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;12K lines of application code (everything in &lt;code&gt;app/{controllers,models,helpers}&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;10K lines of views (HTML + template code in &lt;code&gt;app/views&lt;/code&gt;) &lt;/li&gt;
&lt;li&gt;1K lines of custom Javascript (&lt;code&gt;public/javascripts&lt;/code&gt; excluding jQuery and plugins)&lt;/li&gt;
&lt;li&gt;8K lines of test code (RSpec + plain text stories) (yes, we&amp;#8217;re upgrading to &lt;a href="http://cukes.info"&gt;Cucumber&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;73&amp;#46;7% test coverage&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you&amp;#8217;re doing Rails, you&amp;#8217;re probably not all that surprised by these numbers; hopefully you&amp;#8217;ve seen similar ones yourself&amp;#46; If you haven&amp;#8217;t tried Rails, consider a site like kenai&amp;#46;com and ask yourself if you could build and maintain a production site like it with these numbers in your favorite language/framework&amp;#46;&lt;/p&gt;

&lt;p&gt;Other takeaways from my talk:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Use Java what it&amp;#8217;s good for; in this case, long&amp;#45;running server apps&amp;#46; The downtime of the JRuby/GlassFish&amp;#45;deployed Rails application has been minimal for us; the few cases where we&amp;#8217;ve had issues, they&amp;#8217;ve usually been self&amp;#45;inflicted application problems&amp;#46; Instead of running Monit with a pack of Mongrels that need to be periodically recycled, we run a few GlassFish domains per server and only recycle them when we deploy new code&amp;#46;&lt;/li&gt;
&lt;li&gt;For the Java programmers out there, don&amp;#8217;t be afraid to use stuff other than Java&amp;#46; We use Python, Django, Memcached, Perl, and anything that gets the job done&amp;#46;&lt;/li&gt;
&lt;li&gt;You can build cool stuff quickly with community Rails plugins like &lt;a href="http://github.com/technoweenie/attachment_fu/tree/master"&gt;attachment_fu&lt;/a&gt;, &lt;a href="http://geokit.rubyforge.org/"&gt;geokit&lt;/a&gt;, and &lt;a href="http://wiki.github.com/mislav/will_paginate"&gt;will_paginate&lt;/a&gt;&amp;#46; Not news to Rails programmers, but I&amp;#8217;d be interested to hear of any equivalents for Java&amp;#45;based web frameworks&amp;#46;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jruby.org/"&gt;JRuby&lt;/a&gt; is a big win, allowing co&amp;#45;development on MRI and JRuby with deployment to GlassFish&amp;#46; JRuby&amp;#8217;s java integration also allows for neat tricks like &lt;a href="http://kenai.com/projects/image-voodoo"&gt;image_voodoo&lt;/a&gt;, a pure&amp;#45;Java imaging plugin for attachment_fu&amp;#46;&lt;/li&gt;
&lt;/ul&gt;</content>
  </entry>
</feed>
