HomeRamblings  ⁄  wizard


A model-free wizard

Maybe I'm taking the whole MVC thing too far, but I've been reading and learning both Ruby and Rails at a fairly fast clip and just when I thought I was getting the hang of what goes in models, views, and controllers respectively, along comes The Advanced Recipe for Rails book with a recipe for implementing a wizard that threw me for a loop here. This implementation just so happens to be based off acts_as_state_machine, which plugs into your model classes. And of course, the acts_as_wizard plugin wasn't too far behind! Well, asking myself whether the wizard logic *should* be allowed to bleed over into the model prompted me to see just how hard it was to build a wizard in a web interface anyhow (this is my first attempt at a multi-step workflow bit on the web). Most of… read more

Handling Date Entries

Separate inputs for a single Date Entry? pop-up Calendars? Enforce one way (i.e. enter in "mm/dd/yyyy" format)? What happened to the end-user perspective? User input parsing and validation is classic computer science and usability fodder, yet we seem to get ever more clever at making it more cumbersome to enter a date than to get a date! (I'll leave the pun implications to the reader...) ## The Rails Way Separating inputs into month, day, year drop down lists makes the user click three times with mouse (or worse, type, tab, type, tab, type. It looks cool and minimizes programming effort to get a guaranteed valid date entry, but before Rails came along, I haven't seen this entry style in practice since the days of IBM 3270 terminal applications! At least in those old applications, there was a predictive key parser… read more