[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug-recutils] Recutils - User Feedback
From: |
John Darrington |
Subject: |
[bug-recutils] Recutils - User Feedback |
Date: |
Sun, 5 Aug 2012 06:50:35 +0000 |
User-agent: |
Mutt/1.5.18 (2008-05-17) |
Having read through the user manual over the last couple of weeks,
played with recutils a little, and of course attended Jose's
excellent presentations, my opinions on Recutils are as follows:
It would seem to be an excellent little tool to (almost) provide the means to
implement small to medium sized databases, but without the effort of
having to install some clumsy server, or to learn SQL! I particularly
like the idea of everything being user editable. Whilst projects like
Postgres and MySQL are terrific, for moderate sized datasets the effort involved
is just not justified. On the other hand something easier to manage than a
spreadsheet and more versitile than flat files are often desired.
Recutils would seem to fill the niche.
However there seem to be some limitations, which I list here in order of
importance (as from my own subjective point of view):
1. Recsel can perform a single join only.
It would be extremely useful to be able to perform a query joining 3 or more
record types at once. Eg:
recsel -t Thing0 -j ThingA,ThingB -j ThingD file.rec
My idea here is that ThingA and ThingB are foriegn keys in Thing0, whilst
ThingD is a foriegn key in the result of the first join.
I thought I could work around this limitation with something like
recsel -t Thing0 -j ThingA -d file.rec | recsel -t Thing0_ThingA -j ThingD
but it seems not. Maybe it could if the -d flag was a little more
intelligent...
This limitation seriously hinders the user's ability to be creative in his
recfiles
(at least if he is to be able to make sensible queries on the data).
2. Recfmt has limited ability.
For example some kind of conditional syntax would make it a lot more
powerfull:
Dear {{$case Gender 'Male')Sir 'Female')Madam}},
of course there are ways around this problem, but that involves makeing the
database
architecture more complex.
3. Date expressions could be somewhat more flexible.
For example, the ability to match against only one field in a date.
# Select all those people who have birthdays in March
recsel -e "Date-of-Birth >> '01 March *' && Date-of-Birth << '31 March *'
file.rec
Of course, one must be careful that "feature creep" doesn't make a monster
out of recutils. So maybe there are better ways of achieving these things.
What are your ideas?
J'
--
PGP Public key ID: 1024D/2DE827B3
fingerprint = 8797 A26D 0854 2EAB 0285 A290 8A67 719C 2DE8 27B3
See http://keys.gnupg.net or any PGP keyserver for public key.
signature.asc
Description: Digital signature
- [bug-recutils] Recutils - User Feedback,
John Darrington <=