Cut the Crap! Err... I mean Complexity
Years ago, when the Ruby pickaxe book came out I fell in love with Ruby. I found it to be so much more intuitive, graceful, and simple than the languages I was using at the time (C++, Java, Python). Unfortunately, there was little opportunity to use Ruby in 2001. In the years since then, I've worked on a variety of systems using all different types of tools and technologies. And for the past two year I've been fortunate enough to use Ruby all the time.
No one intends to make systems complicated. Yet, I find that the more tools we use to help us only exacerbate the complexity. FitNesse? is a great example. I put a lot of effort into developing FitNesse? such that it would make it easy for "customers" to particpate in Acceptance Testing. Lots of people use FitNesse?. But in many respects I feel I've failed. Rarely do I see the real customers writing tests and in the end, development teams are left maintaining the extra complexity of FIT Fixtures, and Wiki text.
In my thirst for redemption and a solution to the mounting complexity, I've been building a tool I call Limelight. It's backbone rests on simplicity. One language is all that's needed to build applications, web based or stand alone. A theater based metaphor offers a gentle tour of the foundation and avoids threatening acronyms. It's my open source hobby that I'd be happy to share with everyone.