Avi Bryant, the creator of Smalltalk web application framework Seaside, will be giving a workshop at ETech this Monday entitled Applied Web Heresies. His thesis? Modern frameworks like Rails and Django have some outdated concepts in them that can be thrown out. He calls these concepts “onions” (taken from a Primo Levi story). As you can read in his post about the tutorial, it’ll be a meaty day:
That’s the thesis behind the Applied Web Heresies tutorial I’m giving at ETech later this month. It’s a follow up to the Web Heresies talk I gave at OSCON last July. Both of these talks are about Seaside, but they’re not about how or why you should run out and use Seaside yourself – there just aren’t that many prospective Smalltalkers out there. Instead, you might say they’re about Seaside’s recipe, and what new ingredients it gets to use after taking the bold step of chucking the onion into the compost pile. In the tutorial, I’m hoping that we’ll build some mini Seaside-style frameworks in Ruby, Python, and other dynamic languages. I don’t know how far we’ll get, but at least whatever we make will be onion-free.
As an appetizer, here are some things I think are onions: template systems, hidden fields, meaningful query parameters, and sessions stored in databases. Why? Because we have, but aren’t fully appreciating, these thermometers: CSS, RSS, fast CPUs with gigs of RAM, and smart load balancers. What new ingredients do we get to use? By far the spiciest of these is closures or blocks: it’s amazing how much pain they can take away once you’re committed to using them pervasively at the framework level.
If you don’t make it to ETech, take heart. Avi will be on a panel with 3 other web application framework creators (Rails, Django, and Symfony) at the Web 2.0 Expo. I think the topic of onions will come up there as well.