it occurred to me that it was pretty crazy to have suggested to restart the workspace stuff from scratch. throwing away a known codebase is rarely advisable, but in this case i still feel it was the right decision, if a really ballsy one. sometimes you need the big brass ones, though. i certainly wasn't the only one doing so, as kde4 is turning out to be rife with ideas that were just so crazy that they've ended up working. (and you thought that only worked in the movies!)
the emerging architecture in plasma is turning into something very nice imho that we can build on for years to come. whereas i constantly felt i was running into walls with kicker and kdesktop (i hacked on both in the kde3 days, maintaining kicker for a few years even), i feel only possibilities with plasma. i am not limited anymore by the framework, but by how much code i can write and debug.
the downside is that everything is new. there are bugs everywhere. there are things that still need to be rewritten. i'm regularly struggling with QGraphicsView which is also a brand new technology; it's doing rather well but we're still turning up issues in it on a regular basis. this is largely because we're pushing every possible envelope with it, while also trying to adjust our QWidget mentality to a QGrahicsItem one.
Andreas-of-QGraphicsview hasn't taken out a contract on my head yet (that i know of, anyways) so although i'm sure he's amazingly annoyed with me as the relatively constant harbinger of bugs and api complaints, he's also doing a pretty remarkable job of improving things as much as he humanly can.
that said, with any such ambitious project that aims for the stars, it first needs to reach the moon. with 4.0 we'll get pretty close to that rock, and it's very reassuring to see the "to the stars!" ideas i tucked away 2 years ago are actually going to be possible.
one thing i'd never really considered was libplasma as a library for other applications to use. we all know about amarok, but now we're looking hard at LinuxMCE, which functionality wise is probably the most impressive media center / home automation systems on linux today.
two leading members from the LinuxMCE community and i had a conference call and we're going to be seriously looking into the plausibility of rewriting the interface using plasma. we can keep all their great functionality, but bring the interface up a bit while making it painlessly integratable with other libplasma apps such as, well, plasma. all without tieing it to the kde desktop either. nice. there's still investigations to be done, but we'll be pow-wowing on this over the next couple of months. the goal is to have a road map ready and some basic concept to show at the 4.0 release event in january. the LinuxMCE people also want to GPL as much as possible (perhaps even all of the work) and we also have started talking about the possibility of a design studio.
really, a design studio is all that plasma is missing from really being a more humane flash, right? i mean, harri even has plasmoids rendering in web pages, and the stuff that frerich has been chatting at me about on irc makes that seem a bit passe ;)
an additional twist is that the LinuxMCE project could be one of the first commercial applications of plasma and as such bring additional kde focussed contract work into the ecosystem. i really didn't consider monetization of the technology when first thinking about plasma; it was really just about making something that didn't disappoint me every time i logged in.
there's no way it would have been possible without the team that's gathered around kde to provide the underlying kdelibs and work on plasma itself. the future is bright here.
i think the recent article in Linux Magazin summed it up well by concluding (roughly translated):
"The integration of programs with plasma is still in the beginning stages. The concept is recognizable, however, and its possibilities are likewise. If new programs use the KDE-4 capabilities correctly, a complete and modern Desktop might develop.
still lots to do before 4.0 though .. so .. back to the salt mines of g++ for me =)
oh, in other news i managed to speed up fetching of cached icons via KIconLoader by a factor of ~5 last night.