[QOF-devel] Future directions with DWI and QOF

Neil Williams codehelp at debian.org
Thu Apr 17 21:02:29 UTC 2008


OK, QOF has now officially moved out of SourceForge and onto Alioth.

The old mailing list has been shut down, the old CVS will no longer be
updated and has been replaced by a new SVN at Alioth. The SF website now
redirects to the Alioth ikiwiki version.

The move to Alioth does not mean that QOF and the other upstream
packages suddenly become Debian-only or Debian-native. It does mean that
I have a chance of encouraging new developers to join the team by
providing the kinds of services and support that people need when
starting off with a new project. (I suppose the one thing I don't yet
have is an IRC channel. Not sure if it is worthwhile but I'll see what
happens.)

This list is still very small but the new archive is easily indexed and
hopefully more people will be attracted. If you want to copy this email
to other lists, feel free.

You could also link to my blog entry of this content:
http://www.linux.codehelp.co.uk/serendipity/index.php?/archives/109-Data-Centric-programming-a-new-start-at-Alioth..html

(Must try to make my blog titles shorter. . . )

QOF at Alioth will form the basis of the support available for each of
the other projects - all will share this low-volume QOF-devel mailing
list and QOF Wiki as provided by Alioth. I'll also migrate QuickList
because I'm looking at restarting development on a stalled project
allied to QOF and which could provide missing functionality in
QuickList. 

I'm looking for new blood, fresh faces and a new desire to take these
projects forwards. The driving force is data freedom [0] - creating
data-driven applications that are completely agnostic to where and how
the data happens to be stored. It is user data, it should be as free as
the source code that wrote it. Who cares what format it is in? Let's get
it into a format that some other program can use and make use of the
existing data instead of duplicating it all the time. 

[0] http://www.data-freedom.org/

DWI [1] Data With Interaction (aka DUI -- Data Under the Interface) is
what can provide the missing interfaces. It'll take a while to get it
back up to date and available in Debian but it can provide the link
between data and interfaces. GNU/Linux users should be able to design an
interface purely on the basis of the data that it needs to handle and
not care one jot about how that data comes from one free software app
and goes on to the next free software app. QOF is gaining a connection
to libgda which means that data can go to and fro between a whole range
of databases and file formats. Homebank and pilot-qof can gain new data
inputs (and possibly outputs) by utilising the existing import/export
support in new ways via DWI/QOF (as libqof2). That can give a complete
interface for all PIM and financial data for a typical SOHO user and all
based on SQL-type queries so that every stage of the process can be
tweaked and optimised according to user requirements at runtime.

[1] http://dwi.sourceforge.net/

Is this groupware ? No - it is personal, ultimately flexible and
entirely customised for particular users by the users themselves. It's
about small niche markets, about independent business people with
bespoke and highly specialised requirements. No one is going to spend
time writing their reports in Scheme or Haskell, because they are the
only people who need that particular report. Instead, that individual
user needs to be empowered through a simple and intuitive interface to
take a piece of data from one source, correlate it with a static piece
of data from individual configuration sources, calculate a result
according to a third piece of data from a completely separate source and
combine them all into a new set of objects that can be used in other
queries. It's about preparing invoices from Palm data, it's about
handling customer accounts for a one-man company or handling a stocks
and shares portfolio for a partnership. Ultimately customised,
ultimately flexible and completely format-agnostic.

These are the kind of applications that hold people back from GNU/Linux
migrations - bespoke applications that are developed for just a few
small companies or just a few situations. Free software finds it hard to
provide those apps because free software depends (currently) on someone
else being motivated to write a bespoke program and that person rarely
understands the niche. This is a chance to put the development into the
hands of those with the motivation to do the work, by making the
development process more WYSIWYG.

The question is: Can we come up with a better name for DWI ?

"DWI is a fairly simple environment for quickly creating data-driven
applications, that is, graphical applications that manipulate and show
info from a database. This environment differs from others in that it is
focused on native GTK/Gnome support through the Glade GUI designer, and
thus allows you to build user interfaces as elegant as you can make them
in Glade."
http://dwi.sourceforge.net/

The big appeal is that DWI is database-agnostic - it only cares about
the data structure, not the file format. Ally that with QOF which
provides data-centric SQL-based queries and conversions between objects
(including combining elements from one object into one or more other
objects without having to hardcode the connection between the objects at
compile time) and we have an interesting and powerful combination of
engines, frontends and backends that are all data-centric [2]

[2] http://www.data-freedom.org/explain.html#example

This whole area is begging for development but it is just so far from
being usable by the target audience at this stage. There is a lot of
programming to be done by current developers before the principles can
be let loose on the masses.
:-)

This is about working between existing projects and between
distributions - no longer dedicated to a single application, platform or
file format, no more tunnel vision. Work on the edges of existing
applications (and indeed projects), remove the sharp edges of
applications that should work together but can't. The majority of the
code in these libraries and applications is already stable and mature.
Like so many parts of free software, it is time, IMHO, to put aside our
egotistical devotion to the one-true-executable and come up with an
actual solution.

Bah! I'm beginning to sound like a PR exec instead of a dedicated geek.
What does it take to motivate people and get things done around here?
:-)

-- 


Neil Williams
=============
http://www.data-freedom.org/
http://www.nosoftwarepatents.com/
http://www.linux.codehelp.co.uk/


-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://lists.alioth.debian.org/pipermail/qof-devel/attachments/20080417/bbfe4859/attachment.pgp 


More information about the QOF-devel mailing list