[jdev] Re: The State of Our Code-bases
stpeter at jabber.org
Mon Aug 30 14:14:16 CDT 2004
In article <opsdhv28gbqj7son at smtp.chello.nl>,
"Tijl Houtbeckers" <thoutbeckers at splendo.com> wrote:
> Exactly. There's something I don't understand from these discussions about
> the "reference" implementations. People say they want the "Apache" or
> "Mozilla" or Jabber, and in the next sentence say you really can't use C
> or C++. Ofcourse you can do an implementation in those languages, just
> like you can do it Python.
Wikipedia defines reference implementation in part as follows:
"a software example of a standard for use in helping others
implement their own versions of the standard"
I suggested Python because it easier to read and understand than C or
C++, thus helping others write their own versions of the protocols.
> If you ask me a reference client in
> Python+wxWidgets (ofcourse there are alternatives to that combination in
> Python, this happens to be the example from PSA's blog) will probably be
> more the Amaya of Jabber than the Mozilla, which is why you won't find me
> working on that project. But if there are people willing to prove me wrong
> on that.. I could be very wrong and we'd end up with a very good client
Well, the OSAF people (http://www.osafoundation.org) are using Python
and wxWidgets to write Chandler. At least it is being used. Python + Qt
is another possibility if we can work out the licensing issues.
> That's what you need for a succesfull project, developers, people willing
> to write docs, and it doesn't hurt to gain a nice community around all
> that after a while. And those developers will choose for themselves which
> language they want to use ofcourse. So if someone wants to start a Python
> client project and see right here on JDEV how much intrest from others
> there is to join him/her in that, it's fine by me. But it's not so strange
> that others will look on it as yet another new client project, rather than
> the saviour of the jabber community. That's why to me it would seem so
> strange to complain "too many clients already" and then start a new one ;)
I'm not claiming that a reference implementation would be the saviour of
the Jabber community. However, it might help quite a bit.
> So could the JSF bring any help to this situation? Well money can help.
Money is a possibility if the JSF gets involved (the JSF is not rich
either, but could work to raise money specifically for a project of this
kind). Someone could raise money for such a project outside the context
of the JSF, but I think the JSF would find it easier to raise money
since it is a known entity.
> But limiting that to new projects in a specific language might not be the
> best way to spend it.
I think that focusing on one language (at first) is the best way to go.
That doesn't stop anyone from writing code in other languages, and an
effort to write a reference implementation would be undertaken as a way
to limit anyone else's work.
> Like the starter of this thread pointed out, there's
> good quality code already out there. But you can also look at other good
> idea's like the one below by Rachel, or usability testing, documentation
> etc. What I'm wondering by now is; does the JSF have any position on this
I plan to publish a proposal soon, which will be discussed at length by
JSF members (and on this list), I'm sure, before the JSF has a settled
and official position.
> > Rather than see us all going over what should be done to produce one
> > 'reference implementation,' (or what language would be best to write it
> > in,) I would rather see a process and set of tools for testing how well
> > a given thing adheres to spec.
Personally I think that certification would be good, but that we need
more than certification. In particular, the IETF requires at least two
interoperable implementations in order for an RFC to advance from
Proposed to Draft, and if one of those implementations is not fully
open-source and well-documented then I think we're doing ourselves and
the Internet community a disservice.
But as mentioned I hope to publish a proposal about all this soon.
More information about the JDev