" /> Notebook: December 2005 Archives

« November 2005 | Main | January 2006 »

December 31, 2005

last post of 2005!!!

2005 was a good year for me. Juliana started Kindergarten, Ava started talking in FULL FORCE and Tracey and I moved back to a city. I am posting this from the first floor stairwell of our new house in the Bayview neighborhood of Milwaukee, WI. Go WI!!!!!!

I am taking a break from ripping out the carpet from our first floor (in preparation for the refinishing that will start on monday). Ripping out carpet starts off nice and easy. Then you have to get the tacks up. Then you have to get all the staples up. Then you have to keep reaching for the tissue box to blow your nose since the dust is getting to you. Fun!

I will be posting up before, middle and after pictures of the floor process when i get some time tomorrow. At least I will be able to get the before and middle pictures. :) We have uncovered a pretty nice floor, but one that definitely needs to be sanded and refinished. Wish us luck with the rest of the floors!!!

Anyway, back to the work. To everyone I spent time with in 2005, here's to another year. To everyone i lost contact with or neglected to get back to, i hope to do better next year!

December 26, 2005

excellent set of polaroids for every day in 2001

Marcel Molina Jr is a core developer for Ruby on Rails and contributes to the entertaining (if perl and python dissing) Project.ioni.st Tumblelog (what the hell is a "tumblelog?" It seems like a blog, but with a different name and one of those clever URLs. Oh, and it seems very stream of consciousness and has many contributors.). I was checking out the profiles of the other contributors to Project.ioni.st and wandered over to his site. One section on the site has a polaroid for (nearly?) every day of 2001. I am a big fan of self-indulgent photography, so i spent a while this evening browsing through this set. There is some good stuff here. Do yourself a favor and go check them out.

Marcel Molina Polaroid

Also, to prove that i love self-indulgent polaroids, here is one of my own: One of my own self-indulgent polaroids

Totally mope-tastic.

December 25, 2005

well done software sales

I recently ditched my palm tungsten e2 for a new treo 650. I was using the palm, but tiring of hooking up the usb cable to my little samsung phone to get net access that i could only really use on my laptop. Anyway, i bought a treo. It is a happy-making device.

Since palm support on the mac is a bit sketchy, i did some research and read some really positive review of the new Mark/Space Missing Sync for OS X. I used their software a couple of years ago with my first palm phone. It was pretty nice then, and the only option for syncing that phone with my mac.

I was happy to see that they offered me upgrade pricing even though i haven't purchased anything from them in over 2 years. They have a nice little form on their site that asks for your email address. If they have it, they send you a link for the discounted purchase price on their newest software. Super simple and super nice. If only more companies would make things that simple.

December 17, 2005

Rails View Error Handling

I am writing a few apps right now in rails. Actually, i am converting some apps from Mason to Rails to see how it goes.

One thing that i want to change right away is the big red summarized set of error message when a form has trouble.

Searching through the rails wiki turns up an example of customizing the display of an individual field that has an error (with the caveat that it doesn't work on fields hooked up to foreign keys in the model). This requires redefining a helper method stored in a class variable. The redefinition looks like this:

ActionView::Base.field_error_proc = Proc.new do |html_tag, instance|
      msg = instance.error_message
      title = msg.kind_of?(Array) ? '* ' + msg.join("\n*") : msg
          "<div class=\"fieldWithErrors\" title=\"#{title}\">Please fill in this field: #{html_tag}</div>"
end

To be able to display my own error message summary, i need to do the following:

class ActionView::Base
    def error_messages_for(object_name, options = {})
        options = options.symbolize_keys
        object = instance_variable_get("@#{object_name}")
        unless object.errors.empty?
            content_tag("p", "Bah!  There were errors!")
        end 
    end
end

While this is simple, it is a weird option. At the snakes and rubies, David spoke about what was "above the cut" for rails. To David, an rss generator is above the cut. Apparently, requiring users to redefine internals to change the display of error messages is not above the cut.

What seems simpler is to provide a place for your controller or application view to define templates for error messages and an optional method to transform object.errors on its way into this template. At least leaving display logic in the views/ tree would give people most of what they need in the place that they would look for it first. Now, i know that ActionPack is a pretty tightly coupled controller + view combination, but this still seems clunky.

I didn't find a lot of good info online for this need, so if anyone knows of any examples that i can look at, i would appreciate the links. Also, if anyone knows a simpler way that i can get these things done, please let me know.

Selenium Hackfest

I went to the Selenium Hackfest that was sponsored by the Chicago Ruby Users Group and hosted at ThoughtWorks with Chris, Eric and Garret from work.

The purpose of the event was to investigate a few patches and improved the ruby driver support for Selenium. Chris and I tried to integrate and test the Frame Support patch from James Wang, but ran into a lot of trouble. The patch is fairly large and we were both completely unfamiliar with Selenium's internals. I need to post our results to the Selenium Dev List and try to contact James as well, to get a better feel for what was done and what i need to do to understand it.

Update: James contacted me and gave me some more info on the patch. Hopefully this will help me integrate and test it better!

I have a vested interest in having frame support, since the main application i want to test sadly uses iframes to poorly mimic Excel's "Freeze Panes" feature.

The event itself was a lot of fun, even though i didn't technically accomplish anything. Also, this was probably my final user group event of the year.

December 14, 2005

Self portrait


Self portrait
Originally uploaded by plural.


Purse and magazine


Purse and magazine
Originally uploaded by plural.

Downtown street sign


Downtown street sign
Originally uploaded by plural.

Snapped this on my way home from work with my new treo...

December 13, 2005

A Picture Share!


A Picture Share!
Originally uploaded by plural.


December 11, 2005

Chicago User Group Goodness

Chicago seems to be buzzing lately, with all sorts of fun stuff.

I have always been active in the user groups in the area, but lately things have really been picking up. Attendance at the perl, python and ruby meetings has been growing at a healthy clip and we are even starting to do more cross-language events (even if this one was being pitched as a fight. ;) ).
Thursday saw the first Perl and Python social event in chicago. A bunch of snakes and camels piled into a crowded Monk's pub on lake, talked code, made introductions, had beer spilled on us by drunk lawyers and stumbled home through chicago's first big snowstorm of the season.

For a couple of upcoming examples, there will be a cross language hack fest for Selenium on Tuesday, December 13th, hosted by ThoughtWorks. Also, the Yet Another Perl Conference North America, which will be held here in Chicago, has extended room out to the local language groups.

Despite the recent fun, one thing that i have found myself doing (and regretting) is spending more time on the language bickering itself over the spirit of an open, dynamic language. People bitching about perl can suck it, since perl pays my bills. :) In all seriousness, though, while everyone has the desire to defend their choices, i really see everyone learning something from the idea pollination that has been happening.

2005 has been, and 2006 looks like it will shape up to be, a great time for Beautiful Dynamic Languages.

December 3, 2005

Snowy park on Damen


Snowy park on Damen
Originally uploaded by plural.