[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-core-devel
Subject:    Re: Possible cause of kivio problems
From:       Martijn Klingens <mklingens () yahoo ! com>
Date:       2001-05-01 18:55:33
[Download RAW message or body]

It's easy for me to talk about things like this because I'm not involved with 
KOffice in any way but an occasional checkout and build (and maybe a bug 
report). This is also why I initially decided not to respond to this thread. 
But right now I feel like expressing my feelings nevertheless. I hope I don't 
upset people more than they already are, the following is just my opinion on 
the whole matter.
 
I would like to start asking people to calm down. Things went wrong with 
Kivio, there is nobody who can argue that. What went wrong and where it went 
wrong is hard to say. I know from past experience at some school projects how 
annoying and frustrating it is when code is moved or changed without you 
knowing it.
 
And when things break without you knowing why, your initial reaction is 
anger. Not that anger is any good, on the contrary rather. But anger _is_ a 
natural response. I assume we all know that it's hard to talk with someone 
who is angry. The most likely result is probably that people start saying 
things they'll regret later. And often people are too 'proud' to admit being 
wrong, so they will defend a proposition made when they were angry even if 
they _know_ they are wrong. People who know me personally know that I myself 
have this particular behaviour and I'm quite sure I'm not the only one. I 
rather suspect something like this going on in this thread.
 
If you ask me, I'd say all people involved with KOffice/Kivio are partly 
wrong and made mistakes. That's life - shit happens. And it always seems to 
happen at the worst possible occasion (like packaging Kivio 1.0 stable). The 
only thing we can hope is that people will learn from these experiences and 
do better in the future.
 
Continuing this discussion will only separate theKompany and KDE more and 
more - and nobody will benefit that. KDE should be very thankful to 
theKompany for all the great apps and widgets they have thanks to Shawn's 
policy of open sourcing parts of his products. Likewise, theKompany should 
also be thankful to KDE for the great platform it is to build for and for all 
the help they get from KDE. If theKompany would be developing for Windows it 
would be much harder to change the core libraries to support your Brand New 
Feature (tm) that can't be implemented without that library change. This is 
part of the power of open source, especially for base libraries.

As said before, the main problem was communication here, in every possible 
way. The Kivio developers should be subscribed to koffice-devel so they know 
what's going on for KOffice in general. Although they are writing and 
maintaining only a single app, that app is getting part of a big integrated 
whole. And I personally think that the same look and feel, the same widgets 
and all those kinds of consistency benefit all of us. They make KOffice so 
much better and are thus a great benefit to KDE and even Unix on the desktop.
 
Pulling Kivio out of KOffice is not going to benefit KDE, nor will it 
necessarily benefit theKompany. Sure, it will give the Kivio developers less 
external worries like somebody moving widgets to another location in the 
repository. It also makes sure that everything is done according the (e.g. 
communication-) rules within your company, something that cannot be enforced 
in a worldwide CVS repository.
 
I think the KOffice developers should have announced the move beforehand (or 
ultimately right after committing it) if they didn't already do that. The 
fact that the Kivio developers on their part aren't subscribed to 
koffice-devel makes the problem bigger. And also changing makefiles and 
moving icons adds to the frustration. Every single action would, in itself, 
be an improvement. Even Shawn will probably admit that. But the timing was 
chosen particularly bad. Nobody would expect that they were still packaging 
Kivio 1.0 when others were already committing code to CVS. The fact that 
Shawn seems to have understood that the Koffice beta also meant 'feature 
freeze' made problems worse. Shawn didn't expect such major changes, the 
KOffice team didn't expect somebody to rely on the CVS tree. And three (or 
maybe even more) mostly unrelated changes to Kivio that all independently 
caused breakage if you weren't aware of them certainly explains Shawn's 
initial call for ACLs.
 
But putting ACLs in Kivio is not a big benefit either. It does make sure that 
nobody with the proper rights can modify your code. But that includes the bug 
fixes that free-time developers like me might want to make. I might send the 
patch to the list instead, but I might also skip Kivio and start hacking 
another app. Being able to commit right away when you know something is 
working for you is part of the fun IMO. With such a policy you will surely 
encounter a moment that somebody like me has committed code that breaks 
elsewhere. But you will also encounter a moment that someone fixes bugs in 
your code or adds a new feature to it. It is easier to add features if you 
can maintain the code (and thus fix the bugs that might have been lurking in 
it) by committing to CVS directly. Sending each and every patch to the 
maintainer is nice for small patches, but will get annoying soon. I for one 
would not write any patch beyond the 'trivial' level if I would have to 
contact someone else to actually apply each and every follow-up.

I would personally use ACLs for all of KDE CVS in the period around beta 
and/or final releases. And the app's maintainer should be able to set and 
remove the ACLs. This way Shawn could have put a one-week ACL (or whatever he 
needed) on Kivio while he was assembling Kivio 1.0. After that he should then 
remove the ACL so he would benefit from the entire open source community and 
the improved KOffice integration David and Werner are trying to achieve. This 
particular use of ACLs is IMO an improvement - just putting an ACL on the 
code 'ad infinitum' IMO is not.

As a conclusion I would like to ask everyone who is involved with this again 
to stop the discussion and start doing what you are all so good at - creating 
all those wonderful KDE apps. We _did_ have a problem and we _were_ wrong, 
but we _all_ were. Just let us learn our lesson and start hacking again... 
Please!

Regards,

Martijn

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic