Most of this weekend I spend digging through some of the lightest documentation around, trying to figure out how to make a simple plasmoid in python. Took me over two days, but I finally got it done. I even wrote a tutorial on how I did it!
The fruits of my labor:

And of course, powerchart-pre0.1.plasmoid
I also made my first commit with it today.
That makes me cool now, right?
First, I’ll show off the logo for Glovebox:
Second, Glovebox development has stalled a little bit over the last few weeks due to college starting up again for me. So, I’ll just give a quick overview over whats changed since I first announced the project.
Much like KDE’s libraries, Gloveui is the name for the base library I forsee all Glovebox components using. This will allow for super easy theming and other bits of consistency. As of now though, it only has an implementation of the Freedesktop icon and sound theme naming specifications, along with GIcon and GNotify classes.
A GIcon has a simple constructor. You pass it the fd.o icon name, and it uses the QIcon methods to load up images. Icons are still drawn using the basic QIconEngineV2, so it doesn’t always draw the proper size. Thats coming soon though.
The GNotify is a rough outline for a much more broad system. I soon home to have something similar to the galago-project implementation of the fd.o notification specification, where information bubbles can pop up on the display somehow. But for now, GNotify only does one thing: plays fd.o-named sounds. Since it is static, you just call GNotify::global()->sound("desktop-login"); to play the startup sound. GNotify uses Qt’s Phonon classes to accomplish this with minimal effort.
Over on the right is the current view of the Launchpad main window. Nothing too exciting to look at, I know, but there is now a fully-functional GPS data engine! And on the map page, I’ve implemented two handy widgets: A compass and a signal chart. The two widgets are independent of Glovebox, so any other Qt developer is welcome to use them. The only issue with them right now is the size hints aren’t working properly.
With a full school schedule (class and work from 9-6 on a good day), I don’t have a whole lot of free time. I try to hack on Glovebox when I get a chance, and I’ve got a quick list of things I’m working on from time to time:
That last item is a bit troublesome to me. A main feature of my Launchpad is to show a dashboard with widgets for the home page. Idealy, I’d like to implement this using Plasma. Unfortunately, that means I’d have to add KDELibs as a requirement. Right now, my plan of attack is to strip out all the KDE-specific code and replace it with Glovebox code.
Its bothering me though that I seem to be duplicating the efforts of KDELibs just to import one (awesome) feature (set). With all the recent work on getting Plasma to work great for embedded devices, it seems like I should just bite the bullet and link in KDELibs. I feel that goes against my biggest design goal for Glovebox, in that it should be small as possible and depend on as few libraries as possible.
So, lazyweb, any input on this problem?
Critics everywhere are saying it, KDE4.1 rocks.
However, some aren’t. Some, like Steven J. Vaughan-Nichols, are saying that “4.0″ must mean “100% complete”. In fact, he goes on to attack Aaron Seigo for not making it clear enough that 4.0 isn’t a user-ready release.
For those confused, here’s some quick background info. Long before KDE4 was first released, the powers that be decided that to prevent development stagnation, they had to push a release of KDE out to the world. That way, it would get some visibility, and everyone would know all the new technologies that were going to be in the complete KDE4 series. Technologies such as nepomuk, plasma, strigi, and kwin compositing. Those technologies weren’t going to be feature-complete as one would think a x.0 release would be, but they were going to simply showcase the building blocks that developers would be building on in the future. Aaron repeatedly said that even Plasma’s API wouldn’t be stable until KDE 4.1 was released. Even so, some users found that KDE4.0 was a usable desktop. More users are finding that 4.1’s beta release is almost on-par with KDE 3.5.
However, Steven is taking Aaron’s implications that 4.1 would be “the big one” word for word. 4.1 isn’t the big one, it is a big one. When comparing 4.0 to 4.1, you see a few huge differences, both in terms of stability and features. As Ars Technica writer Ryan Paul writes,
I have used both GNOME and KDE extensively over the years, but have been mostly committed to GNOME in recent times. When KDE 4.0 was first released, I was extremely skeptical about Plasma. I saw a lot of innovation under the surface, but didn’t see anything at all to impress me in the parts that were visible to the end user. The work that has been done in the time since the 4.0 release is very compelling and has completely convinced me that the strength of Plasma’s underlying architecture can be translated into very real and tangible improvements to the end user experience.
The critics are wrong: KDE doesn’t need a fork – Ryan Paul
Ryan is right. KDE4 wasn’t meant to be like Vista, where you first turn it on and are supposed to get the “wow”. Even Steven himself admits that Microsoft doesn’t get their releases right. If a huge corporation with some of the best programmers in the world can’t push a finished product out the door for the big 1.0 release, why should open source developers be criticized for not getting it finished when everyone else wants it? Open source has a totally different view for the importance of releases. Open source depends on fresh developers and insight to stay alive. Microsoft depends on people buying their products. When the money goes low, Microsoft needs to scramble to push out a new product, regardless of how complete it is. Once its out there, they can still keep tacking on new features, which is why Vista’s SP1 is in the pipeline.
As for open source, when the developers think they have reached a certain point where they think others can start building on their work, they push it out to the public. New ideas come in, and get put into later releases. Its the same thing, really. Just a different currency.