|
Red Squirrel Reflections
Dave Hoover explores the psychology of software development
|
I had lunch with my mom yesterday at the Signature Room in the John Hancock building. The view was spectacular, but I saw something else up there that caught me by surprise: spiders.
As we ate our lunch 95 stories high, I couldn't help but stare at several of the somewhat beefy spiders clinging to their webs outside the window. What is their story? How did they get up here? Did they ride some sort of updraft? Is that what brings insects into their webs? Or are they simply heirs of older spiders who generation by generation, slowly worked their way up the building? I wonder...
Prevayler in XMLOne of the aspects of Prevayler that sent up red flags for me was that it stores data in binary format. I downloaded JSX and changed 4 lines in Prevayler, and voila! Human readable data! I can shut down the prevayler system, modify the XML data, restart it again, and my change appears.
I ran the test that comes bundled with Prevayler and it failed after I made the change, so I need to look into that a bit further. But it looks like thus far, XML serialization is working fine with Diary.
Update: I ended up reverting to Java's native serialization after things kept getting screwed up. I think it was quotes within quotes...
AcceptanceI'm finally getting around to playing with some acceptance tests. I'm using jWebUnit to build automated test scripts to walk through Diary. I shouldn't be as surprised as I am at how much I enjoy writing these tests. I've been developing web apps for three years, all the while manually testing them from the browser (though I've incorporated unit tests in the last year). Automated acceptance tests will save me untold amounts of time and frustration.
I very much enjoy writing the acceptance test first, watch it fail, and do whatever I need to do to make it pass. Then the refactoring begins. It's an addictive cycle, especially since it kicks off smaller unit-test-driven cycles along the way.
Prevayler Learning CurveI've been having a lot of fun building the ReflectingTeam Diary. Prevayler has been so easy to work with, I usually forget it's there. The only times I notice it are when I realize how fast things are running or when I need to make a change to a domain object and only have to change something in one place.
I find myself coping with the long and somewhat steep learning curve for Struts far more frequently than the small hurdle of a learning curve for Prevayler. I'm going to try to get the second release of the project out tonight.
Powered by Greymatter