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

List:       kopete-devel
Subject:    [Kopete-devel] Re: Maintaining BC
From:       Thomas Zander <zander () planescape ! com>
Date:       2003-09-01 8:41:11
[Download RAW message or body]

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Olivier,

> > The difficult part, that takes time, tht, experience and again TIME is
> > getting an API to stabilize and mature.
>
> The api didn't realy change since the kopeteaccount port.
> and i see that it is almost perfect.
> preuve: almost no changes since there

That statement misses the point entirely; creating a library that is BC is not 
hard, and I really think you are confusing the magic BC with the concepts of 
a stable API.
If you have a stable API, BC will follow automatically.

Creating a library that has an API which is stable means that the methods and 
the patterns inhathe design are sane and are stable.
If you look at Qt1 and the move to Qt2 you will notice a huge change in API.  
The reason for that to happen is simple; the creators found that the library 
used the wrong design patterns in various places.
This is not obvious and can only be found when you have extensive experience 
in the field; declaring a young API stable will mean you don't have that 
experience yet, and you have very subtle (but very big) problems in them.


> libkopete is realy stable. there are not real bug against libkopete, now
> that 
> all the UI is go away outside libkopete.

I'm pretty sure Martijn did not want to point to bugs in the current API, but 
he wanted to point to unfinished design. The difference is that until you 
finished coding the full design, AND feel happy with it, its impossible to 
say how many problems reside in the library.


> > Go over each method. Look at it.
> > Compare it with API docs. Apply unit tests on them. Check code for awkward
> > algorithms that are in need of refactoring, etc.
>
> this has already been done.
> our apidoc make sence now.

I have extensive experience with creating libraries and have been coding for 
15 years now; I hope you won't take it personally but simply take my word for 
it when I say that your conclusion is just naive, you are looking at the 
wrong things here. Its the design, not the API that makes the library.
6 to 9 months may seem a long time, but in the end you will be glad you took 
them.
Compare it to running downhill too fast, it WILL make you fall on your face 
pretty darn hard. So better slow down a bit, there is life after 3.2 :)

- -- 
Thomas Zander

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)

iD8DBQE/UwYrCojCW6H2z/QRApehAKCZN2mlBoM0C/Zgi59v/BJaJwXc5ACg4FKA
PSHBIM0h07/OTq5zbg89+nc=
=N9xr
-----END PGP SIGNATURE-----
_______________________________________________
Kopete-devel mailing list
Kopete-devel@mail.kde.org
http://mail.kde.org/mailman/listinfo/kopete-devel

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

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