The Artima Developer Community
Sponsored Link

Ruby Buzz Forum
Experiments in Iowa

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
David Naseby

Posts: 40
Nickname: naseby
Registered: Jun, 2004

David Naseby is a coder from Sydney, who codes in Ruby far too much yet not nearly enough.
Experiments in Iowa Posted: Jul 7, 2004 5:47 PM
Reply to this message Reply

This post originated from an RSS feed registered with Ruby Buzz by David Naseby.
Original Post: Experiments in Iowa
Feed Title: naseby + ruby + stuff
Feed URL: http://homepages.ihug.com.au/~naseby/rss.xml
Feed Description: Random wanderings through Ruby.
Latest Ruby Buzz Posts
Latest Ruby Buzz Posts by David Naseby
Latest Posts From naseby + ruby + stuff

Advertisement

I’ve been rather busy of late, with finishing up at my old workplace in a frenzy of activity, and then starting my own business (which largely involves, at present, contracting back to my old workplace so I can complete what the frenzy didn’t. It’s a strange world I live in…). Despite these various frenzies and fits, I’ve had a bit of time to play with Iowa, the former Avi Bryant vehicle that now has Kirk Haines firmly entrenched in the driver’s seat. (The story of my defection from the Seaside/Borges camp is covered elsewhere).

To do so, I’ve had to write a Webrick servlet for Iowa. Iowa previously didn’t work on Windows, as it depended on Process.fork and .setsid, both of which are unsupported by Windows. The Webrick version, which you can download from here, is a rough version – it doesn’t have the full level of functionality that the socket version has (yet), but its got enough to get one playing with the library.

And playing with the library is a worthwhile experience. Iowa, like Borges, has URLs that make REST advocates withdraw into twitchy, sweating foetal positions in the corner, but for an application developer, its a pretty sweet experience. Iowa has the templating system I’ve been trying to add to Borges (well – its not exactly what I was after, but its more than sufficient, and more importantly, its there). Its got page reloads without stopping and starting webrick, which is a vast improvement over Borges – I can modify on the fly. I can do most things without thinking too hard, which is a strong requirement for me.

It’s still not the application coders wet dream1 that Seaside/Borges is, but I can clearly see the foreshadowing of Seaside in it. Its nearly good enough. I don’t much like the bindings, nor the binding syntax. I’m not comfortable with the API yet, and I feel there are substantial bits I’m missing – inline components come to mind. I’ve seen a sample with an inline component, but no docs. (By “inline component”, I mean a sub-template – a partial template that can be included inside a master site-style template). These things would be handy for the majority of apps. I’m getting around it by throwing the menu-area functions in a module, and doing a lot of copy-pasting on the html, which is clearly quite undesirable. The documentation for Iowa is still spartan, but better than a lot of other libraries. Kirk has expressed a desire to improve the docs, and I’ll try to help out where possible.

Development of the sample app for comparison with the Borges version is flying along, in the brief moments I have to work on it. Iowa isn’t getting in my way, which is the best thing I can say about any toolkit.

1 With the performance problems crippling Borges, Borges is like a wet dream alright, but the kind of wet dream that after you get into it, you open your eyes and see its your grandmother. Erg.

Read: Experiments in Iowa

Topic: RubyConf 2004 Preregistration is Open Previous Topic   Next Topic Topic: Keine leichte Geburt (no easy birth)

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use