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

Re: [seul-edu] Draft letter of invitation for Schoolforge



I have watched with interest as members of the seul list and other lists
that
support the use of open source software in schools have developed the idea
of
schoolforge.  Their efforts need to be applauded and supported by the open
source
educational developers.

I am going to attempt to list a set of guidlines that should (or could) be
followed by the developers to help make their software more useful to
schools and
more useful to the general schoolforge coalition. Many of the suggestions
that I
will make are not followed by us at schoolmation.net but by version 2.0 of
our
software will be (I hope). These things are not things that need to be done
in
the next few weeks (or could be in most cases).
Some of the points are also prospective ideas for the new schoolforge site.

These are ideals but we need something to aim at.

The main points I will discuss are
1. Extensibility of the software project. (How easily can other developers
add to
your work)
2. Documentation of projects. (How do schools use it)
3. A forum of users that help determine a distributions direction.
4. A system that determines which developments become part of the main open

source distribution.
5. Support for language translations.

Extensibility.

What is this? Extensibility is really the ease with which other developers
or the
original developer can add to their project. When a new developer downloads
a
piece of software it can be quite a challenge to read the code and
understand the
direction and reason that many things are being done. Good comments in the
code
can help here but I believe a document explaining the extensibilty of the
software would be more helpful.
What we should have done with Schoolmation is build a bullet proof library
first
that covers many of the repetitive aspects or functions of the software.
Schoolmation does now have these libraries but they could be in a more user

friendly form. Once this library is fully developed and tested the software
is
built around it. Many of the repetitive functions are coded so as they are
functions (or procedures or classes or whatever) and then their use is
fully
described. i.e a searching function for schoolmation would be a simple
piece of
code that searches users in the system. The new developer then only needs
to be
told that when writing a new piece or module for Schoolmation all he/she
needs to
do is pass the  search parameters or whatever variable/s are appropriate to
the
function. The new developer does not have to worry about other relationship

issues within the software or the database. This could be done for
deleting,
adding  or any of the repetitive functions that exist in a distribution. (I
must
add here that this is much easier to say than do. Providing a searching
function
that has the flexibility to be used in all cases of searching in a system
can be
quite a daunting task)

Documentation.

I believe that in order for schools to be able to use open source software
properly decent documentation needs to be developed for each project. It
could be
done by the developers but is often an overhead many developers do  not
have the
time nor the interest to complete properly. This could be an interesting
use of
schoolforge. I believe there are many people out there (especially in the
education sector) that would help developers in this regard or develop the
documentation entirely. This creates an opportunity for people not
interested in
coding to contribute to the growing base of open source software for
schools. I
also think that in many cases the original developer of the software is not
the
best person to write the documentation. Perhaps a registration process
could be
implemented on schoolforge where people interested in this could indicate
themselves to the developers out there.


User Forum

A user forum needs to be developed for each piece of software. i.e. if you
are a
user of a particular piece of software then this should be registered on
schoolforge. These registered users then become the forum that helps
determine
the direction of a particular piece of software. i.e. if your school needs
or
wants a particular function introduced into a piece of software as part of
the
main distribution then this needs to be agreed on by the majority of the
user
group. This creates a fair and balanced way of developing software for
school
use. It also provides the important component of making it useful to
schools and
not just being a pet love of the programmer or original developer. The
direction
is determined in a democratic sort of way. This also provides an organised
way of
approaching the original developers as well as providing the developers
with many
ideas they would have otherwise not thought of.

Contributions to the original distribution.

Hopefully using a system like schoolforge other programmers or developers
will
add to already available distributions. This creates a problem in that
which of
these contributions become part of the standard distribution. Obviously the

original developers must have a large say in this but I believe it would be

productive for input to also come from the user base of the software.
Obviously
certain standards need to be met but I think the input from the user group
would
help determine what is needed in the future versions of the software. If a
contributor creates a piece of software or add on to a distribution that
the
original developers do not like because of one of those code issues (Well
look at
the way they have done that!!) then at least the point will come across to
the
developers that this module or add on is needed and that they had better
sort out
the coding issues because the user base want it.

Support for language translations.

I can tell you that support for open source software is a world wide thing.
A
quick look at our download logs quickly indicates that nearly half of the
downloads are not from the English speaking world. When we saw this we
implemented a translation system for Schoolmation. This is now almost a
prerequisite for open source software. Schoolforge could  provide a
valuable
resource to developers in this regard also. We have relied on downloaders
of our
software to do the translations for us and then contribute their work to
the main
distribution. Schoolforge could have a pool of people who have registered
their
abilities and interest in translation and could therefore be used by
developers
for the translation and also the checking of translations. Developers need
to
make it easy for the translators by just being able to pass them a sheet or
page
with the English down the left and the translation on the right or
something
equally as simple.  This provides another avenue for people not interested
in
coding to become an open source contributor.

I hope this provides some thinking points for the developers of the
schoolforge
site  I think there are probably many other ideas that could make the
schoolforge
site useful to the community. This should only be taken as some starting
points.
The discussion I have seen about this important project has only
strengthened my
resolve that open source software is the way, especially for schools. I
look
forward to checking into schoolforge in about a years time. More power to
schoolforge and it's creators.

Myles O'Meara
schoolmation.net