We launched Project Kenai very quietly last Friday. It’s a developer hub with SCM and issue tracking and forums and all the other stuff you’d expect. We built it because we needed it, but it’s open for use by the world for free. For a newborn infant, it looks pretty good. Anyone can visit, but to create a project requires an invitation, which I have some of; contact me if you want one. There are lots of interesting things about Kenai; among other things, it’s a Rails app. Herewith the details.
[Update: Nick Sieger responds to heat over “control”.]

Disclosure · I was in on some of the project planning at the beginning, and have been on some of the mailing lists, but really can’t claim any credit. On the other hand, I think I was the first person to suggest, back when this was getting started, that we do it in Rails. Once the shock wore off, there was little pushback.

Nick’s Take · I went and pestered the engineers to blog about the actual technology but they claimed they were busy. So I tracked down Nick Sieger, one of the ringleaders, and got him to spill the beans in an interview format.

Tim: My understanding is that Kenai is competition for GoogleCode and GitHub and so on. Is that right?

Nick: You could look at it that way, and at face value that’s certainly true, however it’s not our goal to directly compete with those services. Kenai is a recognition by Sun that, as the largest open source company in the world, we need to take control of our own destiny. We need a place to nurture and grow our open source communities that we ourselves can control; we need to demonstrate credibility in building on top of more traditional LAMP/SAMP web stacks (not just Java EE); and we need to show viability of Sun technologies and hardware for next-generation web applications.

By launching, I think we’re well on the way toward showing progress toward those goals. Where we go from here is going to be a blend of what the community asks of us and our own ideas for what we think would be cool new features to build on top of a collaboration portal that no one else has done yet.

Tim: What’s your role?

Nick: I’m the lead developer. Some might accuse me of being the architect as well, however I believe that the project’s architecture is a shared responsibility for which I serve as ringleader. We’re learning a lot as we go, myself included of course.

Tim: The sound-bite is, it’s a reasonably conventional Rails app with a stew of OSS components and Sun-flavored technology behind and underneath. Want to give us a tour?

Nick: We’re using Sun T2000 servers along with an X4500 for storage. OpenSolaris Nevada 70b is the OS. (We haven’t been able to upgrade to OpenSolaris with IPS yet because there is no SPARC port of IPS. We’re eagerly awaiting it though.) Apache runs in front, using mod_proxy_balancer to connect to multiple redundant GlassFish V2 instances talking to a single MySQL database. The main site is a Rails application running on JRuby, deployed in GlassFish as a war file built with Warbler. Perl, Python, and other various bits of Apache-based bailing wire help integrate Mercurial, Subversion, Sympa (mailing list software) and Bugzilla into the mix as well. Also, my teammate Fernando Castano just gave a great overview of our system at RailsConf Europe last week. His slides are available if you missed the presentation.

Tim: How much Rails experience on the team, going in?

Nick: I had a couple years of Rails experience, but not on any full-time projects. Rails and Ruby were an entirely new thing for the rest of the team.

Tim: What were the really hard parts?

Nick:Not surprisingly, Rails is not one of them. Beyond the initial learning curve of the “magic” that is Ruby and Rails, most of the difficulties were in making system configurations uniform and deployments repeatable.

We got the feeling of being one of the first to build this kind of application with this combination of Sun and other open source technologies. We hope to help ensure that other people won’t have to feel the pain we went through to build on top of this stack, because now that we’ve got it up and running, we think this could be a great base for building highly scalable web applications.

Tim: If you were doing it again, what parts of the design would you change?

Nick: It’s too early to give a definitive answer. Application-wise, there will continue to be things in the user interface we want to change. Deployment pains have been part of the problem, and having a rock-solid approach for that from day one would have been a big win. Systems configuration and automation still seems to be the secret story that you don’t hear much about.

Tim: What are you guys working on now?

Nick: In the near term, we want to beef up the feature set to make it more usable for daily development by students and open source projects. We want to add a files facility to host project binaries and downloads. We want to add JIRA as an issue tracking option and Git as an SCM option. An incremental refresh of the site navigation and layout is also in progress.

Finally, we want to establish a pattern of responding to community feedback by releasing frequently. You can post feedback in the site forums or visit kenai.uservoice.com to vote for your pet feature or improvement that you’d like added to the site.

What I’m Doing · I transferred mod-atom to Kenai; not much to report yet. Setting up the project and dumping it into Subversion and checking it out again and adding another committer and making a couple of changes; it all worked, and was snappy, big deal.

The world needs there to be a small number of developer hubs in active competition; the state of the art is young and there are lots of low-hanging fruit, so I expect rapid progress from Kenai and its competitors.



Contributions

Comment feed for ongoing:Comments feed

From: Will Schenk (Sep 09 2008, at 14:16)

Really? Reminds me of collab.net vs sourceforge. What a waste of time. I think sun needs to work on their Not Invented Here syndrome.

[link]

From: Elliot Murphy (Sep 09 2008, at 14:32)

Hi Tim! Great to see more people stepping up and doing things in this space. Can I have a project invite? (full disclosure: I have close ties to the launchpad.net team).

I'm curious, does the roadmap include exposing web APIs to this, to allow folks to mash things up with other services?

[link]

From: Michael Neale (Sep 09 2008, at 16:52)

I think its some great work. An innovative use of some "new" tech to show it all works nicely together (especially interested to see how jruby fares).

Well done.

[link]

From: Jim Pick (Sep 09 2008, at 19:32)

Cool.

What I'd really like to see from Sun is a real github competitor, for Mercurial. Allow anybody to sign up, and every project would have a "fork" button, and a viewable "network graph", plus a built-in social network, just like github has now.

[link]

From: Matt Ronge (Sep 09 2008, at 20:19)

Jim,

Have you seen BitBucket (http://www.bitbucket.org). It's just like GitHub but for Mercurial. I just started using it myself, but so far it's pretty awesome.

[link]

From: Lester (Sep 10 2008, at 02:25)

I live in Kenai (Alaska)!

[link]

From: Bob Aman (Sep 10 2008, at 05:35)

One of the things I like about github is that I can host both closed and open source projects there.

Also, it uses git.

[link]

From: Dalibor Topic (Sep 10 2008, at 17:53)

Looks and feels nice, from over here, congrats!

[link]

From: Kevin Teague (Sep 11 2008, at 13:14)

Is there source code for Project Kenai available? I couldn't find it if it is? This has always been a hesitation for some people to launchpad.net, although they've got plans to make the source available eventually.

It'd be lovely to hear more about how the team approached the "repeatable deployments" problem - especially towards repeating the deployment process in a development environment. In Python-land zc.buildout has made great strides in this area, but my Ruby co-workers are still doing hand-rolled deployments.

[link]

From: Nick Sieger (Sep 11 2008, at 13:42)

I've seen some comments elsewhere regarding my use of the word "control" and I thought I'd set the record straight. I acknowledge the bad connotations of the word "control" in the context of open source and project hosting. We have no interest in exercising any sort of control over projects on the site. What I meant is that we want to go through the process of building the site to learn as we go, and to be able to respond to the needs of the communities that come to the site more quickly than can be accomplished by third-party vendors. Hopefully you'll give us the chance to prove that we're clueful and will do right by the communities that decide to try hosting their projects on kenai.com.

[link]

From: David Waite (Sep 12 2008, at 21:40)

Just curious if this will affect java.net in the (near/mid) term future.

[link]

From: Jason Lee (Sep 16 2008, at 06:47)

Will, if you've used java.net (or SF, for that matter), you know they're not perfect. Java.net, in particular, can be quite a pain. I'm glad to Sun (note: I work for Sun) doing this, and I really hope this is our escape hatch from java.net to something usable and modern. Time will tell.

Anyone have an invitation? :)

[link]

From: Robin (Sep 16 2008, at 13:41)

Why the weird pronunciation? I would have expected it to be pronounced like "Ken-Eye" ("Keen-Eye" sounds like Kinai). But I guess it should sound "English" and the spelling of English is a mess anyway.

[link]

From: Janos Koppany (Sep 17 2008, at 05:10)

It has some similarities with javaforge.com, codebeamer.com and sourceforge, but but in implementation some years behing these platforms. Will/can Sun really compete with Google on this?

[link]

author · Dad · software · colophon · rights
picture of the day
September 09, 2008
· Technology (77 fragments)
· · Open Source (82 more)
· · Web (385 more)
· Business (106 fragments)
· · Sun (63 more)

By .

I am an employee
of Amazon.com, but
the opinions expressed here
are my own, and no other party
necessarily agrees with them.

A full disclosure of my
professional interests is
on the author page.