On Wed, 29 Oct 2003, Nathan Hurst wrote:
- Gtk-compliant user interface
Can we go further and say Gnome (including HIGs)?
We can; I was deliberately being vague to give us some wiggle room. E.g., I didn't want to specificy Gtkmm directly; it's a logical choice once you say Gtk-compliant, but not the only choice.
- Extensible using various scripting languages
Aiming for first-class external language access
- Open, community-oriented development processes
A Biggy
- Baseline is the Sodipodi 0.32 codebase
Yep
- Strives to use commonly available libraries
Yep, how about when ever we share some functionality with another program, share a library. That's the GnuCash fill-o-sophy, and I think the results speak volumes!
It's good idea. Creating a piece of code as a reusable library requires significantly more work than just using it as an internal module in an application, but in the long run it can be well worth it.
Also, I know that often a third party library doesn't *quite* give the functionality needed. It's common for this to frustrate the developer into rewriting the library themselves, but experience shows this to be much easier started than finished.
It would probably be wise, when we run into these situations, to adopt the practice of creating and submitting patches to the owners of those libs and in parallel develop 'work arounds' and/or compile options that are used if the user doesn't have the latest version of the lib. I know this is a pain from a development perspective but it avoids a huge amount of maintenance hassle in the long term.
Thoughts? More? Less?
Oh, another common invariant I forgot to put in there is what OS's to target. Sodipodi seems to have done well by seeking to be portable to all systems for which a suitable Gtk port exists, so it'd be sensible to adopt a similar approach.
Bryce