[Kopete-devel] Post 3.2 Kopete and packagers
Martijn Klingens
klingens at kde.org
Tue Nov 25 21:14:47 GMT 2003
On Tuesday 25 November 2003 21:40, Jason Keirstead wrote:
> Being part of the release cycle is *better* for features. You get a longer
> time period to implement and test new features properly, and get proper
> planning of what features are needed via release schedules so you can
> properly focus your time.
Sure, we could (and probably should) have a release cycle for Kopete as well.
Until now we didn't really have a release _cycle_, we just implemented stuff
and when the new stuff was considered finished we began evaluating a new
release. And while having a more formal Kopete release cycle is a good thing,
how is it better to use the KDE release cycle rather than having our own at
twice the rate? As long as you have a cycle in the first place it's ok.
> When we aren't using the KDE release schedule things just turn into a huge
> mess. We're releasing every few months, which results in features getting
> rushed in and debugged on a part by part basis, instead of considering the
> product as a whole and doing them properly from the get-go, which is much
> easier when you have 8-10 months do design, develop, refactor, develop...
> (repeat as needed), instead of having to freeze the code every 8 weeks for
> another release.
Ehm, since when were features 'rushed in'? The only thing different this time
compared to, say, 0.7 is the much longer freeze period of a couple of months
rather than only roughly a month, but we still had a freeze and I don't think
_anything_ was "rushed in". We could argue that a longer freeze is important,
but that still is not an argument in favour of a yearly release as KDE does
instead of 2-3 releases a year as we used to do.
> That paradigm is great for tacking on features like piecemeal, but it's no
> way to develop a properly design application. Over time you just end up
> with a huge mess.
Well, open source is not designed beforehand usually, hardly any OSS project
follows the design rules you learn at school. It usually comes much closer to
Extreme Programming.
And face it, designing beforehand only works if you know _exactly_ what you
need to implement, with requirements study and all that. Kopete is way too
dynamic for that, as is most open source software. It doesn't really work for
most KDE apps. That doesn't mean one shouldn't design at all, it just means
that design should be done on a smaller scale, and the design should be
iteratively refactored after the initial implementation. I think even
Konqueror and KMail still work this way.
> It seems like this is all this project does is hack stuff in.
> Mainly because there is not enough time between its over-frequent
> releases to properly design, develop, re-adjust, redevelop, etc etc a
> feature to get it right the first time.
This is self-contradicting. If you get it right the first time you don't need
to re-adjust and redevelop. If you need to re-adjust and redevelop you get
EXACTLY what we have been doing until now. And so far I've seen libkopete
slowly turn from a total mess into an API that's actually getting quite
decent, so even though we still have about the same amount of work ahead
before we can declare the API more or less stable I see little reason to
complain.
PS: Reading the above I'm not sure if we should continue this discussion here.
If anyone replies and it's not really on-topic for core-devel it might be
better to move this off to kopete-devel instead. Even better of course would
be to stop bitching about how bad we apparently have been doing and start
coding instead, but I don't think I've got much of right to speak here until
I can start some coding again halfway december.
--
Martijn
More information about the kde-core-devel
mailing list