Thinkpads and attracting girls.

Doornroosje, a club in Nijmegen

On Thursday, my Thinkpad T60 arrived. So I had some fun setting up Linux on too new
hardware, but it went almost well. The only thing that does not work yet is suspend, but I’ll
probably be able to fix this. Right now, some libata driver oopses or hangs the machine on resume.
Luckily, the thing is really fast, it compiles my custom kernelpackage in about 6 minutes, including
drivers needed. Makes debugging driver problems fun. ;-)

Last night, we went out to Doornroosje where a
concert of Tony Allen Bigband
was taking place. Really good stuff, jazzy music with a lot of African influences. After the gig, I
figured it would be a good thing to buy one of their CD’s, I liked the music, and I think it’s a
good thing to circumvent the big record labels in this way. Said, done.
I was asked if I’d
like to have my copy of their album signed, and that I could have done that backstage, sure, why
not.
The female lead singer had a ballpen, so I asked her if she’d sign the booklet. I tried to
make a joke telling her that I wasn’t even asking for her telephone number. She apparently didn’t
get that (admittedly poor) one and was enthousiast that I was asking her telephone numer. She wrote
down her nigerian cellphone number, along with her emailaddress and I had to promise her that I’d
either call or send an email. Totally freaking weird.

Suspend2, variae.

my Suspend2 theme.

Gaah. Trying to fix a bug in guidance didn’t work out (yet?), so I guess
I’d better call it a day, again.
The past days have been quite OK, last weekend Kim and I started building a new home for the
two chinchilla’s we share a flat with. That should increase the space that they can use
considerably. The biggest gain will be in the height, which more than doubles. They’re climbers, so
that’s a big plus.

Last night, I build a new kernel for my notebook. Took the 2.6.16 vanilla and patches it
with suspend2 to have faster and nicer suspend to disk.
Suspend to RAM is quite useless for this notebook since the battery is more or less dead. It loads
up to 18% which is just enough to change power sockets, but nothing you would trust offline for
longer than 5 minutes. The second patch I applied is Con Kolivas’ -ck patch which has a different
i/o scheduler as the default. This patch improves system responsiveness under (I/O) load
considerably, and given the slow harddisk, that’s more than noticeable. The fbsplash and vesafb-tng
patches add a nice splashscreen to the suspend-to-disk process, for which I’ve created my own
theme.
What buggers me about suspend2 though is that it’s not yet found its way into the
linux kernel. To explain that a bit, suspend2 has been developed out of tree, but is well tested,
documented, has an active maintainer (= one that doesn’t reply “send a patch” by default), supports
encryption and compression (doubling the speed of reading and writing the memory image) of the
suspend image, is much more stable in terms of freezing processes, supports writing the suspend
image to regular files and is much more configurable in general. Yet Pavel Machek refuses to even
consider working together with Nigel Cunningham to get suspend2 merged for the sake of happy users who just want a fast
and reliable suspend-to-disk implementation in Linux. Nigel on the other hand has been helpful for
users for years, has done everything the kernel people asked to make the code mergeable. Pavel has
gotten a lot of criticism lately, not that that changed anything in his attitude. In november he
began realizing that the in-kernel swsusp isn’t all that scalable and that users demand more. So he
began writing swsusp from scratch in userspace(!), adding another one or two years until the
featureset of suspend2 is available to users who don’t want to patch their kernels. That pisses a
lot of people of. It’s time someone kicks that guy swiftly in the butt. I’ve been helping testing
suspend2 releases for about 3 years now, and the contrast between two developers just cannot be
bigger. Lately, Pavel seems to have won the battle of PM maintainers, Nigel announced that he’s given up trying to merge his
patches, but will maintain them as an out-of-tree patch. Sad. Well done, Pavel. Sigh, I’ll stop
ranting at this point, just wanted to raise awareness for that topic though.

Today, I started writing a paper which I plan to submit for FrOSCon. It’s about Guerilla Marketing and the approach we’re
taking in KDE. I’m also writing on an article for the german c’t magazine, which deals with KDE in
general, stuff like dcop, kio, a couple of desktop-wide concepts. In order to get a better idea what
the ‘improved workflow’ in plasma means, I asked Aaron if he could clear that up for me. He swiftly
called me and we had a nice and interesting phone call for about an hour. Thanks for taking the time
to explain that stuff, dude!

Ow, and Ha,Ha, those made my day.

demoing kde at events.

At events, people are often demoing the KDE desktop. At this point if you watch someone
demoing the desktop, there are roughly two options: You see the personal information of that person,
photos, addressbook, documents, or you get an empty, default desktop without example data.
The event teams would benefit if someone could create a fictional KDE user, and populate her
homedirectory with data. Adriaan had a nice idea how to do that:

Take your favorite harmless book – say, something with Sherlock Holmes – and create a user
on your system “watson”. Populate the KDE data for that user from the book, google a few images,
take a photo of a landscape, tar up that user dir, done.

The amount of work involved with that is probably about one evening, yet someone has to do
it. I can imagine that this kind of a task is fun, and that people will be willing to help you with
material and ideas. Collect a couple of documents to show off in KOffice, populate the addressbook,
find some free mp3 or ogg files and so on, there’s room for your ideas
So if you have a little spare time and would help out the people that are demoing KDE at
events, send an email to kde-promo@kde.org
and volunteer for creating the role model KDE user!

on decision-making.

Pinky: What are we going to do tomorrow night, Brain?
Brain: The same thing we do everynight, Pinky.
Pinky: What’s that?
Brain: …I have no idea.

I think a lot of us Open Source people are taking part in a community hoping that the whole
will be greater, not less than the sum of its parts. That assumption is also the basis for
democracy, although the real effect is questionable in some cases. We’re lucky, since we don’t have
to discuss that. Wait, we have. Meritocracy
has been the government system in KDE for quite some time, but recently we saw a shift towards democracy. While I’m pretty convinced that
democracy can suck badly, and especially in merit-based communities, there are certainly some
positive effects. In my opinion these have a lot to do with the meritocracy not having been explicit
enough, and are as such very Open Sourcish. Open Sourcish since explicit sharing of skills is
certainly not one of the strengths of most Open Source communities. Tacit knowledge is what we’re
good at and we need to find ways to make that knowledge more easily available to others
if we want to open up for new
contributors. And we can since we might just
have solved one of our biggest problems that has been slowing down the development process:
scalability of the group decision-making process. Enter our Technical Working Group.

I am really happy to see that decision-making actually is happening again. For a major new
release, someone has to do the job of trying to get the heads into the same direction, and that is
no fun. Coding is fun. Dealing with politics is not. What I’m missing sometimes is some sort of
shared vision. Sure, that doesn’t fit into a naturally grown community like most Open Source
projects are, but at least it’s a good idea to remember that making decisions and communicating them
is an essential topping for the pizza that’s called world domination. Bottom line: We went far
beyond what’s supposed to work “together”, and we’ve certainly proven the mythical man month wrong in more than one
aspect. But if we want to keep doing so, guidance is certainly needed. And that’s what I’d like the
Technical Working Group to give to KDE. Guidance, and a clear direction.

In Patterns of Governance in Open Source by Steve Weber (Published in Open Sources 2.0 – The continuing
evolution
), the author proposes to design the governance institutions in ways that facilitate
information paths, rather than the other way round. Sounds like a no-brainer, sure. Now try to think
about the complex information structure in most Open Source projects. That’s where I’m getting
dizzy. Nevertheless we did quite a good job, since our decision-making-dudes are respected,
long-time contributors and as such, they’re also information hubs within the community.

Well done, KDE.

berlin, t60, promo!

Discussing various KDE issues LTR: sebas, Marcus, Mirko, Eva, Ellen.

Last weekend, I’ve been to Berlin to attend the meeting of the KDE e.V. board. Together with Cornelius, Eva and Mirko. We discussed
issues such as what needs to be done for aKademy2006 and reports of the different Working Groups of
KDE. Mostly boring stuff though. The meeting went really well, and we managed to go through a pile
of topics within our planned schedule.

Saturday night, Ellen invited us to join her to go to a party. An your later, we arrived at
a very nice techno party where the ‘not-so-shallow’ part of
Berlin’s nightlife took place. Good to see that Berlin hasn’t changed too much recently.

I’ve written that the battery of my
notebook is pretty worn out, so I decided to replace that thing (the whole notebook though). My
requirements were 14″ in 4:3, long battery life, a good keyboard and a high-res display. The 14″ and
4:3 cuts down the number of possibilities to about two models. Dell sells crappy keyboards, so the
model I’ve ordered is a Thinkpad
T60
. Unfortunately there’s one minor problem with it – no video driver for Linux. ATi
has not yet released a linux driver for the radeon 500 (r500) chip that’s needed for the integrated
X1300 video adapter. So I’ll be bound to use the VESA driver in the meantime. I hope that vesa-tng
works though, because it’s much faster than ‘standard’ vesa, and the standard driver also doesn’t
support a resolution of 1400×1050 pixels. Not the optimal solution though, but still a very nice
notebook. If someone from ATi reads this, PLEASE IMPROVE YOUR LINUX SUPPORT!

Then, there’s kde-promo. Recently, we’ve got a few additional contributors to join. There’s
Jasper, one of my officemates, he’ll tackle the taskmanagement system for SpreadKDE, Barbara, who volunteered to keep track of events,
Joerg, who’s collecting things to do to have a boothbox (a box with all kinds of stuff you need at
events, that can be shipped through Europe to have available at events), Danil, who’s taking care of
screenshots for the 3.5 branch, Friedrich, who’ll be consolidating the events webpages … Hack,
listing up the things that are currently happening gets me a smile on the face. (And that’s
something I really needed lately, since a hellofalottawork has been cutting down my spare time
during the last weeks to zero). So thanks everyone stepping up. (And if you want to get involved
with all those cool people from the promo team, we’re
“hiring”
).

Again, my conclusion is that the KDE community really rocks (and ATi less-so).
:-)

brussels, fosdem, what an amazing community!

The Atomium in Brussels.

Back from Brussels! I arrived back home yesterday night, coming back from a four-night-visit
to Brussels. The first part was dedicated to a meeting with fellow researchers and some Open Source
enterprises about a European research project that in the long run should improve KDE’s quality of
the source code, project management and other aspects of quality related to Open Source projects in
general, and KDE specifically. If we can pull this off well, KDE can profit greatly from combined
efforts of the European Union, research institutes and coorporations.

On friday, I took a couple of hours off from work for a walk through a part of Brussels city
centre and a visit to the Atomium which has been
renovated and re-opened only about a week ago. Nice.

FOSDEM (my photos) inofficially started with the
annual beer event in “Roy d’Espagne”, a nice café at the Grand Place in the heart of Brussels.
Naturally, we kept “socialising” until deep into the night. After four hours of sleep, we went to
the university to attend the keynote of RMS who talked about patents and made a
couple of the usual jokes (GNU/Linux, png = png’s not gif, you get the point). We skipped the last
couple of minutes in favor of some fast food, though.

Later that day, I presented KDE’s recent marketing efforts to the people that didn’t fit into
the room that was overcrowded with people interested in Xgl. I was delighted to see that people are actually
very interested in the work that has been going on for the past months. My talk (slides) was received
very well, and it started some lively discussion. After the talk, a couple of people came to me,
stating that they are very happy about the things we’re working on. Heck, I didn’t really expect
that kind of enthousiasm, but all the better of course.

Saturday night, we went out for Indian food, and didn’t return to late to the Hostel where we
had some beer and discussion. Didn’t go to bed too late that night, since I was already lacking too
much sleep. Sunday, KOffice day at FOSDEM brought us a wealth of knowledge and updates about
KOffice. Bottom line: Krita is very nice and some features are extremely cool, such
as embedding all kinds of office documents in others. Imagine embedding some spreadsheet into your
photo, you’re working on in krita. As soon as you click on the spreadsheet part in the image, krita
switches into KSpread so you get all the features of that, same goes with KWord (and OpenDocument!).
Oh, and my personal favorite: adjustment layers. That kind of nifty features add so much flexibility
in your workflow. Aaah well, you should try it yourself! Bart (from the amaroK team showed us some
of the new eye-candy of a recent svn-snapshot of amaroK, Ooooh, Aaaah, nifty!
KDE is an amazing project, getting new, extremely cool, useful and innovative stuff added
everyday. I am very proud to be able to take part!

One thing though, some people might not be aware of the actual success of the KDE project, but
the userbase of KDE is growing at an extremely fast pace. A personal guess would be that a couple of
thousand new users a day is really not exaggerated, but of course we need some research there to get
real figures. (We’re working on that on the freedesktop promotion platform, though.)

Bottom lines:

hosp networking event and more

This month’s Holland Open networking event was quite nice. First attended a presentation about
community, sharing knowledge within that. Close to things I’ve studied. Frightening, at least.
The day started off with a 35 EUR fine because I bought a salmon baguette instead of a train
ticket. Bummer, but probably a good lesson (never get up before half past seven again?). The
morning, we spent with a bunch of kids at a school in the South of the Netherlands, giving
instructions for becoming better geeks. In fact, they probably don’t need those, but some
explanation regarding subversion workflows will save them some time in the future. The real reason
we got there was vanity. NRC, a dutch quality paper, showed interest in CodeYard, and asked for an interview, which Adriaan, Jasper and I
were happy to give.

In the train to Delft, where the Holland Open networking event had to take place in a nice
building in the old centre of the City, I talked to a girl who had been working on a watermanagement
project in Bangladesh. We discussed merits of information technology for third world countries for
some time, and it was quite an informative and enjoyable chat. Actually, having a worn-out battery
in the laptop can have advantageous side-effects.
At the networking event itself, I talked to
quite some people, introduced Martijn and Claire whereever possible to reduce single points of
failure in KDE-NL’s relationships. I also talked to a couple of people, mostly about marketing
related issues, which left me wwith a longer list of “Oh, then you should read this!” items, which
I’m happy with. His presentation refered quite often to Crossing the Chasm, which only proves my
point. Everyone involved with KDE marketing should read that book.
Coming home after a 16 hours
day, I only had 80 emails to walk through, but Kim left me a pancake, so I had something to enjoy,
apart from flamewars and bikeshedding on different mailinglists.
Tomorrow: Brussels.

Hooray for unstructured blogentries!

marketing: broad vs. niche

market segmentation - defining the piece of the pie

Should KDE target a broad or a niche market?
That question has been
raised on the kde-promo list recently, and people are arguing away. The question itself is rather
valid, of course, but — and here comes the surprise — the right way to answer it is not discussing
to reach consensus. The right way is doing research.

From a scientific point of view (yeah, marketing is also a science), there’s a couple of things
that can help with answering the ‘broad vs. niche’ question. First, the strategic situation has to
be taken into account. Crossing the Chasm offers quite some insight on that topic. I’ll not go into too much
detail here, but consider two scenarios.

Imagine you want to introduce your product into a mainstream market (‘crossing the chasm’
between early and mainstream market), choosing for a broad approach is generally considered the
wrong thing to do. The right thing in this situation is concentrating on a market segment (niche)
and try to become market leader there. Rationale: Being a market leader in one market will gain you
much more than being second in several markets. Supporting technologies are developed for the
leading product, not for the second. Mouth-to-mouth advertising does not promote the ‘second best’
implementation, and there are many more situations where the 2nd winner is the first loser.

So you’ve entered the mainstream market, you have a market segment where you are the
first choice. Consider that the king-pin that initiates a chain reaction. Now you can concentrate on
the second wave of market segments to take over. Look at your strenghts, the needs of possible
target markets and use mouth-to-mouth advertising. But why not keep concentrating on one market?
Here’s why: The added support of the first market segment you took over gains you additional
resources, makes you stronger, and offers a basis to work off. Now you actually have the resources
to broaden your strategic approach.

Second, what is your product. Some product have been designed for niche markets. (To be clear,
KDE as a ‘general purpose Desktop’ is not one of those.) KDE is a platform, rather than a product.
This has certain implications on a decision for or against a niche-strategy, as I stated above. In
fact, a general purpose ‘platform’ such as KDE can be used in many niche segments. So what do we
have? A product that can easily be changed to serve as a good solution in a niche, and a product
that can easily be changed to accomplish a task in another niche. Voila, low switching costs when it
comes to ‘marketing mandates product development strategies’. In fact, consider a whole product based on KDE. Now try to work out what has to be changed to
target one market, or the other. You’ll probably come to the conclusion that those changes have to
be made in the outer ring. That’s why KDE can easily be marketed into different
markets. But there’s also a threat buried in this conclusion: The fact that we can does not mean we
should target broadly. It merely means that we could.

So the actual strategic position is one consideration for the choice “broad vs. niche”. I do
not want to advocate one or the other right now, but show that we should not ask each other the
‘broad vs. niche’ question, but we should try to answer the question “Where are we
now?”
. The answer to that question mandates one or the other approach.

Yeah, mandates. Marketing is – sadly – no rocket-science. Uuuhm, sadly? – Exactly.
Here’s where the infamous bikeshedding comes into the picture.
We should be aware that one possible approach to those strategic issues is discussing it and trying
to reach consensus. It’s rather easy to have a personal opinion on the ‘broad vs. niche’ issue. But
frankly, this is wrong as an approach to get real results. Marketing has been
researched for quite some time, and trying to solve the problem by discussion does throw away all
that previous work we have available. But luckily, marketing KDE is no rocket-science. It
certainly makes sense to lay the marketing and strategic groundwork in a structured and validable
fashion – it even isn’t all that hard to do. Structured means scientific here, it means
applying professional methods. Validable means: Make it easy to follow why you took a certain
decision. You’ll need that validity in two respects: First, strategic decisions are generally
important ones. You have to convince people why your direction is the right one. People need to
understand why a decision is made. Second, you’ll be getting new data and new insight all the time.
Decisions based on longish discussions would have to be reiterated then. That does not scale.
Structured and validable strategic analyses can be reworked in the input data that have been used,
you can change only the bits that have changed.
And all that’s worth nothing if you do not open your mind for a strategy that seems
counter-intuitive.

Marketing KDE is moving towards a structured, professional approach.

it’s a 0.6!

displayconfig.

Last night, guidance 0.6 has been
released. This is the feature-complete version that will go into Kubuntu Dapper Drake.
Highlights of this release are

  • Dualhead support in guidance
  • i18n support
  • Disklayout and usage is displayed now
  • bugfixes, bugfixes, bugfixes

Furthermore, guidance has seen multiple improvements in usability, such as a lot of consistency
fixes in the wording in the interfaces, the user interface should be a fair bit more self-explaining
now. Another nice thing is that displayconfig should now detect when another graphics adapter has
been plugged in, so X still works (and thus can be set up with displayconfig). The disk usage widget is also released now.

We will release updated versions during the next months more oftenly, fixing more bugs that’ll
be revealed by testing the modules, so please drop me
an email if you’ve tried guidance and tell me if it worked. We expect updated packages to appear in
the Dapper repositories soonish.

borg, it is!

Wade
seemed to be wondering if I were using a Singleton in my PyQt code from yesterday
night, well, probably not.

Still, it made me get my Design Patterns book out and read up on Java a little. Explaining the
problem a Singleton is supposed to solve to my not-so-geeky girlfriend, I came to the conclusion
that instead of using only one agenda, I’d rather have more than one, but all of those with the same
appointments in them.

So Borg it is!