[sword-devel] My group OpenSource ideologies

Leon Brooks sword-devel@crosswire.org
Mon, 10 Dec 2001 10:42:33 +0800


On Monday 10 December 2001 05:25, Troy A. Griffitts wrote:
> It's just too easy to use
> an Rapid Application Development environment like Borland's C++Builder
> and their Visual Component Library (VCL).  What are my alternatives?  To
> use gtk on windows?!

With the Gnome development tools, naturally. (-:

Or the KDE libraries (at least Qt, with KDevelop), Python and suitable 
libraries (with IDLE).

>>> but it seems we're in the business of spreading the Gospel of Christ
>>> not necessarily the Gospel of Open Source.  My point is open source in
>>> all its glory is still just a means to an end, not necessarily the end
>>> in and of itself.

>> As you said, Open Source IS a means to an end. That's why you are using
>> it, because it IS an effective means. Closed source is not such an
>> effective means.

> No, we're using it because we want others to be able to use our
> software, not because it has been of much benefit to us.

Well, that too.

>>> If an external library does it faster and more compact than we could
>>> on our own, I don't see anything against it, especially if we can
>>> distribute it ourselves and the end user doesn't even have to know.

>> Will you see something against it when Objectspace pulls it and you are
>> left high and dry?

> We'll change it!  That would be unfortunate, and I don't believe legal
> (I don't think they can retroactively change their license on code
> they've already released under one license, but instead a new license
> would apply, only for future releases) but we can always change our
> code.  It's much easier than writing and maintaining our own library
> that has nothing to do with our project, just to avoid the possiblity
> that we might have to change our calls to their api.

Why not just use a portable Opne Source library? Works with everyone's tools, 
low to zero maintenance burden, portable across OSes, no possibility of 
obscelescence or NDA entanglements etc ad infinitum?

> What if a project dies whos code I'm
> using and I don't feel like-- or have the knowledge to-- maintain their
> code.  I'll change our code to use someone elses.

This is still circle-the-wagons non-community oriented thinking. If you don't 
feel like maintaining a library, sure as sunrise someone else will.

> But I won't make
> decisions based on extremist, opensource-only thinking.

Thank you for the gratuitous collective ``extremist'' label. (-:

As a stitch in time saves nine, so a little effort (if indeed there is real 
effort involved) now will avoid a large amount of effort (and trauma) later. 
There's nothing extremist about that.

Let's have a little extremist now. Turn to John 3:8. (-:

As no mortal controls God's people, as such (and church bodies etc 
notwithstanding) so nobody controls an Open Source project. If you don't like 
what the project is doing you (or someone else) can cleave off your own copy 
and sail a different course (mix in your own metaphors to refine the taste of 
this paragraph :-).

Turn to James 3:4; small changes in libraries that you have an emotional, 
work or other investment in can have a large effect on your final product. 
Consider David, Solomon and their wives. Bolting on ActiveX controls, .NET or 
or something similar via the library would become the equivalent of 
rebuilding the high places for pagan wives.

Now Matthew 24:14; marrying the thing to particular proprietary libraries 
means that it cannot be developed without either purchasing those libraries 
(in practice, the whole IDE) or going through the pain of a significant 
rewrite. There are many places, subsets of ``all the world,'' which would 
benefit from a localised version of the software but for a roadblock like 
that.

James 3:11; developing the application primarily in and for Windows or a 
particular Windows IDE will inevitably result in the system acquiring 
Windows-specific operating metaphors. For example, named pipes on Windows 
suck, but on practically every other OS in the world they are the method of 
choice for interprocess communication. The preferred Windows IPC methods are 
alien to everything else. GDI is the primary display/print method for 
Windows, but PostScript rules on Mac and Unix. GDI and PostScript have some 
significant conceptual differences. The MDI metaphor is a Windows specialty, 
essentially not used anywhere else. And so on.

OK, that's enough extremism for now. (-:

Please don't lose sight of my main point: there are very good, pragmatic 
reasons for choosing to stay Open Source throughout. You don't appear to be 
speaking directly to those arguments, and IMNSHO should be. Please have 
another go at the original message and take care to address the reasons 
themselves rather than digressing into what amounts to an anti-zealotry 
speech.

Cheers; Leon