in the 80s/90s there was this crew-cut, thin, blond woman name Susan Powter who went around America shouting "STOP THE INSANITY". she was something of a female Richard Simmons, having gone from whale-riffic to minnow-tiffic and in the process been possessed with the need to spread the gospel of eating sensibly, exercising regularly and getting healthy.
as of yesterday, there's a new CVS branch for kicker called stop_the_insanity. the idea is to do to kicker what Susan wanted to do to America: knock off the pounds and get some sensibility into the code base.
in the first patch (which was a 2000+ line diff, but which netted only ~200 more lines of code) the Panel, PanelManager and PanelOpMenu classes have all gone bye-bye and many of the global settings have been centralized into the Kicker class. the start up sequence, which was one a crazy maze of object instantiation and code paths is now very, very simple: set up our resources, create our key bindings, create the KMenu, start the ExtensionManager (which loads the panels).
there is lots more to go, of course, but i'm really excited about where this is headed. with a simpler code base fixing bugs and attracting new developers will be easier. with less code duplication and settings mania we may even get kicker into a size 3 dress one day. it's also quite likely that we'll gain new opportunities for speed optimizations as things become simpler and the special cases become fewer. KConfigXT is coming to kicker, which should also help with config setting caching and synchronization issues.
what's really cool is that this is actually making kicker more functional than less since we're just a few patches away from being able to optionally disable the main panel altogether for that windowmaker look.
unfortunately, kicker still looks the same. otherwise i'd post a cutesy picture. that's right, my hacking is boring to look at. =P