Re: API Fragmentation and Cleanup



hi kenny,

I just spent 10 minutes writing a long answer but evolution's C-W
shortcut (close composer window) killed my window (yes, in emacs, it
means, cut selection!!!). So, here is a shorter answer:

1) Simple solution: redesign everything. Rewrite a new Gnome, reuse
everywhere a set of weel defined design patterns, orthogonalize the
API... Blah... Result: 2 years, 200 developpers, 80 managers, millions
of dollars. even then, it will be difficult to get it right if you want
to keep a minimum o interoperability with previous Gnome.

2) more complicated solution: add new cleaned up APIs, deprecate old
ones. Keep binary compatibility. Possible, long and error prone. the new
APIs have to be fuckingly well designed and thought out.

3) the most complicated solution: WRITE GREAT DOCUMENTATION.
This includes in the order of most important to least important:

    - overall architectural introduction to the Gnome development
    platform. 
    - overall architectural introduction to major parts of the
    development platforms. This includes a quick tour of the code with
    pointers to important source files.
    - pointers to great API documentation.


What I just described is basically a redesign of the Gnome developer
documentation ? volunteers ? I volunteer myself to hack an outline of it
for review by everyone to yell at me.

regards,
Mathieu

> I feel that GNOME's API is becoming increasingly fragmented. At least
> in GNOME 1.x, there are becoming more and more ways to do things, each
> of which comes with it's own set of advantages, limitations, quirks,
> and problems.

-- 
Mathieu Lacage <mathieu gnu org>
Portable: <lacage itineris net>





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]