Sunday, May 20, 2007

One App, Multiple Architectures

I've got my eye on a few different technologies these days. I figure it might be fun to write one application in each of them and see how it goes. I intend to write a basic wine cellar application (gotta scratch my itch) using a few different technology stacks.

First, I'll go with my usual set. Java with Spring 2.0, Spring MVC, Spring Webflow, and Hibernate. I may not finish this as it will probably bore me, but we'll see. Maybe I'll do this as a 100% Webflow app; who knows.

Second, I'll play with something I've been dying to try for a bit now. This round will be Java with Wicket, Spring 2.0 and Hibernate. Spring and Hibernate are like peanut butter and jelly to me, they are just meant for eachother. Writing a java app without them these days is just masochism. I'm dying to try out Wicket for the MVC layer, I love the vision they've come up with.

The third iteration will be Ruby on Rails of course. This will probably take me like 2 hours to do what the previous two iterations will take me 2 days to do. Really, it will take me longer as I'm not as fluent in Ruby as I am in Java. I love the database conventions set forth in RoR and will be following those throughout this little exercise.

I may or may not make a pass at Seam. I'm on the fence as to whether or not I like it. I can't pass judgment yet as I haven't spent enough time looking into it.

I figure this will be an interesting thing to do. It gives me something to do with these technologies. I've always said that programming is like painting. You can't just paint something, you need inspiration. Same with programming, you can't just "write an app". You have to have a purpose. Hell, I may never get past the first app with all the stuff I got going on right now anyway (still gotta work on that OpenId support for Acegi).

We'll see how it goes, and I'll post little tidbits of what I find along the way. Maybe I'll throw all the code up at googlecode when I'm done, who knows.

No comments: