if you watched sesame street as a kid, this phrase will either bring back warm memories or send shivers down your spine (depending on how you feel about muppets, i suppose =): "today's show was brought to you by the number 3 and the letters 'n' and 'p'. sesame street is made possible through the support PBS..."
whenever i look at a kde application a similar thought runs through my head: "this application was brought to me by this application and the kde, qt and x.org projects". yes, that's a simplification, but the idea is clear: our applications don't stand as lone monuments to the application developer's work. they are both part of something bigger (a whole universe of cool apps!) while also made possible by the efforts of those working on the platforms on which they rest.
if you are a kde application developer, perhaps take a moment over the holidays to look through your code and see all the K's and Q's in there. and if you look deeper into the libraries those letters came from you'll see other letters like X.
for me, there are two really important things here. first off, when i write an application i have something of a duty to the platform i'm using. when i diverge to afar afield, i'm actually not doing anyone aside from my ego a favour. when i don't send my Cool Amazing Generally Applicable Techqnique(tm and copylefted, patent not pending) down-stream so that other app developers can benefit and help me maintain it, i'm also losing out. kdelibs would not be where it is today without these concepts.
the other important bit for me is that spending some time working on the foundations is really, really valuable. applications are what defines values on a platform, but without a solid platform you don't get valuable applications. it's a virtuous circle.
right now, however, that virtuous circle is breaking down. and not just in kde. tim janik wrote a really great blog entry today abut the unfortunate state of maintenance in gtk+. i really recommend reading the email tim sent to the gtk devel list on this same topic. there are some truly sage points in that email and it is as applicable to kdelibs as it is to gtk+.
it really doesn't take much, either. even helping maintain just one class or one set of functionality goes a long, long way. every lib hacker has the support of the others and it doesn't take a huge time commitment, just a little time here and there consistently. those who do put in large amounts of effort are also welcome and needed, of course, but that isn't the only way to be involved in a meaningful manner. and when you are involved in a meaningful way with the libs, every application benefits including your own.
this tuesday is "libs monday" (due to monday being a signficant holiday for many people, so we moved it ahead one day so as to work around that) and much of the work i'll be doing could be done by anyone with a bit of direction and an svn checkout of kde4. even if libs mondays don't work for you time-wise, pick any day or time that works for you and find us on #kde-devel or #kde4-devel and there's probably someone there than can help with your questions and what not. the usual mailing lists (kde-devel at kde dot org being the most common one) are also at your disposal.
by getting involved we'll continue to be able to say for years, even decades, to come: "these apps were brought to you by the developers of the application and made possible by the support of the kde project..." =)
Wednesday, December 20, 2006
Subscribe to:
Post Comments (Atom)

4 comments:
Good point, but I think this needs some sort of effort and organization to channel the resources to where they are most needed. Most developers only get involved and start to make their hands dirty with the underlying libraries when they encounter serious problems when coding something that relies on these very libraries. Other people don't have a clue on where to start especially since the kde4 libs are (yet) not in widespread use compared to the kde3-libs. There should be a central place where people are told what classes need more polish or new maintainers, and what classes should be written etc.
@momesana: those of us who work on libs are nearly always around and can make suggestions. in fact i made one the other day in my blog here =)
but it's not like people are beating down our door asking these questions; that's one thing that needs to change =)
that said, people should work on things that impact their app. that way they are most likely to stay interested.
so i look at things like the volume slider in amarok and ask, "why isn't that in kdelibs?" it took a bit of discussing with the amarok devs until some of them started to see why that might be a good thing to do.
i had a conversation with a kaffeine dev the other day about phonon. they started out being very unconvinced that spending time with phonon would be useful enough to kaffeine. we talked about things they have in kaffeine that might make sense in phonon, and slowly they started seeing the potential.
i agree with you that people often do only get involved when they encounter serious problems, and that's something that needs to change. people should get involved when there aren't serious problems: a small inconvenience, an unclosed bug report, a better way of doing something or a missing set of functionality should be enough to get engaged.
it all comes down to appreciating the platform.
as for "kde4 libs are not in widespread use", well we have our 4 million lines of code using it so it's not like nobody is using it. some third party apps are also being ported and more will be in the coming weeks and months. however, even if kde4 libs weren't ready it's a complete excuse: people haven't stepped up to help with kde3 libs either, even before kde4 work was begun.
there is a general issue with app developers being consumers only rather than participants. there are a few great examples of those who aren't, but they are the rarity.
Hi Aaron,
To hack on the libs, one needs to be very used to them. I'd love to help, but with only a few monthes experience during which I used mostly Qt classes, I just don't know kdelibs enough. I'm sure I'm not the only one. Unless I'm mistaken, KDE went from 1200 to 1500 SVN accounts in 2006. That's what I'd call exponential growth. By the way, I think this growth is seeded by the very inspiring dream of KDE4. Anyway, my point is that there is a lot of fresh blood among KDE's SVN accounts and I'm optimistic that some of it will evolve into new kdelibs hackers in the future. We newcomers just need some time to get experienced enough. But yes, blog entries like this one are certainly useful to remind us that we should try to eventually contribute to the libs.
@Benoit: i completely agree with everything you said =)
just remember that we, the current libs hackers, are here for you.
a fellow came onto irc tonight who is just learning kde and qt as well and i helped him find a manageable task in kdelibs (cleaning up the rather bitrotted kpassworddialog and kpasswordedit classes) ... all he had to do was ask for matt rogers and myself to spend some time with him =)
Post a Comment