catalogi

Een paar dagen geleden had ik een paar tips gekregen, en ik heb zelf ook nog wat rondgesnuisterd. Ik was vooral op zoek gegeaan naar mac-based software, bij voorkeur met export mogelijkheden en/of een web based addendum. Hierbij een aantal bevindingen / links (tenzij anders vermeld zijn de programma’s voor het mac os platform).

CDs

iCDc
http://www.waehlby.com/icdc/
15 USD
Zag er veelbelovend uit, met een interface heel gelijkend op iTunes, maar je kan de CDs enkel ingeven door de CD in de CD-lezer van de computer te steken. Jammer.
InCDius GH for Mac OS X
http://homepage.mac.com/grhowes/Helpful/InCDius2.html
gratis (resuméware)
Van ’t zelfde laken een broek: door de CDs in te lezen.

Boeken

Books for MacOS X
http://books.aetherial.net/
gratis (open-source)
Fantastische toepassing. Vindt zowat alles, zolang het een ISBN heeft. Behalve het ene struikelboek (De Bhagavad-Gita zoals ze is – ISBN 9070742098), maar dan weer wel het andere (De Kracht van het Woord – ISBN 00816442), al heeft het programma het daar wel moeilijk met het vinden van de juiste titel.
Export to iPod Text Files
Booxter
http://www.deepprose.com/
14,99 USD
Schoon ende proper, maar vindt geen van beide struikelboeken. Vindt wel Elsschots brieven, maar niet mijn Herfsttij der Middeleeuwen.
Export to iPod
Chronopath Library
http://www.chronopath.com/index.php?page=library
USD
Nice try. Ik had het eerder al geprobeerd, maar ook toen niet goed genoeg gevonden. Vindt geen van beide struikelboeken.
Singlefile
http://books.singlefile.com/
De vreemde eend in de bijt. Een on-line only toepassing, en het allereerste wat ik destijds heb geprobeerd. Helaas kreeg ik onlangs de volgende boodschap: Singlefile will be shutting down on January 31, 2005 Hét gat in de markt.

Alles

bruji: de pedia’s
Bookpedia, CDpedia en DVDpedia
18 USD per stuk of 39 USD voor de drie
Vindt geen van beide struikelboeken, noch Huizinga, noch Elsschot; vindt pop, maar heeft problemen met klassieke CDs.
Export to iPod
Delicious Library
http://www.delicious-monster.com/
40 USD
Dé hype van ’t moment. O.a. besproken op arstechnica, valt het vooral op door de interface. Er bestaat ten andere een utility DeliciWeb, waarmee je de gegevens uit Delicious Library naar een ‘web page‘ kan exporteren. Vindt geen van beide struikelboeken. Zeer goed wat betreft looks & features, maar scoort behoorlijk laag wat betreft content.
iPod Sync (geregistreerde versie)
Collectorz
Book Collector, Comic Collector, Movie Collector, Music Collector
Voor Windows
39,95 EUR ’t stuk of 79,85 EUR voor Book, Movie & Music Collector
Vindt zowat alle boeken met ISBN, inclusief de twee struikelboeken; problemen met klassieke CDs; oogt niet echt goed (al mag dat geen doorslaggevend criterium zijn).

Zie ook het Reader Report bij MacInTouch over Catalogs. Mijn hoop ligt bij Collectorz (An Apple Mac OS X edition is in development (ETA Q1 2005)), maar veel liever nog had ik een web-based catalog gezien. Singlefile was een stap in de goede richting, en ik heb ook een blik gesmeten op Media Mate.

Komaan, we hebben nu al flickr en del.icio.us, is er niemand die een community catalog tool wil maken (met export mogelijkheden)? Lijkt mij gefundeness fressen voor (een partnership met) Amazon/IMDB/Google.

rewrite spam

Eventjes een kleine test om te zien of ik die comment spammers kan tegenhouden met een rewrite rule.

Als het een robot is, die geen gebruik maakt van het formulier op de site, zou dit moeten werken:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www.)?volume12.net [NC]
RewriteRule mt-v12commnts.cgi$ http://www.volume12.net/ [L]

Eens kijken wat het geeft…

[Update]: ik had beter wat rapper gegoogled op rewrite rules comment spam. Zie ook de volgende zeer gelijkaardige methodes:

Comment spam and mod_rewrite
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .mt-comment.cgi*
RewriteCond %{HTTP_REFERER} !.*unix-girl.com.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^-$
RewriteRule (.*) /post_error.html [R,L]

More SPAM controls
RewriteEngine On
RewriteCond %{HTTP_REFERER} “!^http://my.site/.*$” [NC]
RewriteCond %{REQUEST_URI} “.*wp-comments-post.php$”
RewriteRule .* - [F]

nieuw

Een nieuw jaar, nieuwe produktjeuns.

  1. TV1 wordt één. Met de nodige nostalgie denk ik terug aan de eenvoud van de NIR.. euh, wacht, dat is van vóór mijn tijd… *kuch* de BRT dan maar.
  2. De Mac mini (kwijl); de iPod Shuffle; Apple iWork; de vernieuwde iLife
  3. De Standaard Espresso: Vlaanderen krijgt er een krant bij. Vanaf maandag 24 januari brengt de Vlaamse Uitgeversmaatschappij De Standaard Espresso op de markt. De nieuwe krant, die van maandag tot vrijdag zal verschijnen, wil vooral de internetgeneratie aanspreken. Note to self: niet afschieten (of toejuichen, godbetert) voor je ’t gezien & gelezen hebt.

mediatheek (2)

We beschikken ondertussen over een database, die we gepopuleerd hebben met items, auteurs, etc. Nu dienen we de gegevens uit de database te ontsluiten.

Personen, items, series, zijn allemaal gelijkaardig opgebouwd. Ze bestaan minstens uit een hoofbestand zonder extensie, waarvoor er in een .htaccess bestand een ForceType directive wordt meegegeven:

ForceType application/x-httpd-php

Deel 2: de personen

people
‘people’ is het hoofdbestand. Het gebruikt een aantal bestanden waarin functies gegroepeerd zitten, stelt de SQL queries op, en toont de gegevens.
inc.php
Bevat twee functies die op elke pagina worden gebruikt.
alphaNav ($link,$vet = '') dat het alfabetisch submenu (links) opstelt, en eventueel een letter ‘ontlinkt’ en vet maakt
function fncParams ($welke = 1) dat de parameters aan het einde van de URL inleest (bvb de ‘m’ op het einde van http://www.volume12.net/library/people/m)
people.php
Twee functies die worden aangewend om de gegevens te tonen.
getAuthors($skwel = '', $alphaid = ''): krijgt de SQL query mee die in het hoofdbestand wordt bepaald, en roept de tweede functie op, als er een letter werd gekozen (zoals de ‘m’ hierboven); is er geen letter gekozen, wordt er enkel een alfabetisch geordende lijst van ‘auteurs’ getoond.
getWorks($recid = 0,$wat='',$detail='short') is de functie die in de eerste functie wordt opgeroepen om de werken, geassocierd met een gegeven ‘auteur’ te tonen.
elders
Elders staat ook nog ergens de functie connection($query) verborgen, waarin de connectie naar de database wordt gedefinieerd.

Verder uitgediept en uitgeschreven (zonder de meeste HTML opmaak) geeft dat dan:

people
require_once ("inc.php");
require_once ("people.php");
» roept de twee bestanden met functies op
$alphaid = fncParams(1);
» haalt de eerste parameter aan het einde van de URL op
if ($alphaid == '0-9')
{
$skweltoo = 'FROM lib_author WHERE liba_lname RLIKE "^[' . $alphaid . ']"';
} else {
$alphaid = $alphaid{0};
$skweltoo = 'FROM lib_author WHERE liba_lname LIKE "' . $alphaid . '%"';
}
» hier sluiten we meteen uit dat er ‘gevaarlijke code’ kan worden meegegeven in de URL: er wordt enkel naar het eerste karakter ($alphaid{0}) gekeken, of de string ‘0-9’
$cntrecords = connection('SELECT * ' . $skweltoo);
$nrrecords = mysql_num_rows($cntrecords);
» telt het aantal records voor de query
$skwel = 'SELECT * ' . $skweltoo . ' ORDER BY liba_lname, liba_fname ASC';
» stelt de volledige query op
echo alphaNav ('people', $alphaid);
echo $nrrecords;

» toont het alfabet-menu links en het aantal records
if ($nrrecords > 0)
{
echo getAuthors ($skwel, $alphaid);
} else
{
echo ('Sorry. No records.');
}
» toont de data, of in het geval er geen gegevens zijn, de melding Sorry. No records.
inc.php
function alphaNav ($link,$vet = '')
{
$arr = array('0-9','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z');
$aNav = '';
foreach ($arr as $value)
{
if ($value == $vet)
{
$aNav .= ' <strong>' . $value . '</strong>';
} else {
$aNav .= ' <a href="' . $link . '/' . $value . '">' . $value . '</a>';
}
}
$aNav .= ' - ';
if ($vet == '')
{
$aNav .= ' <strong>all</strong>';
} else {
$aNav .= ' <a href="' . $link . '/">all</a>';
}
return $aNav;
}
» geeft het alfabetisch menu weer, volgens de parameters die werden meegegeven in echo alphaNav ('people', $alphaid); people wordt toegevoegd via $link, en naar gelang de letter,gedefinieerd als/in $alphaid wordt één van de letters vet getoond
function fncParams ($welke = 1)
{
$var_array = explode("/",getenv("PATH_INFO"));
$num = count($var_array);
if ($num > $welke)
{
$param = $var_array[$welke];
} else {
$param = 'all';
}
return $param;
}
» geeft de eerste parameter aan het einde van de URL terug
people.php
De twee functies, zonder verdere commentaar (het is laat, ik ben moe; als er vragen over zijn, stel ze gerust in de comments bij deze entry)
function getAuthors($skwel = '', $alphaid = '')
{
$returnit = '';
// if there are any records, then please show them
if ($skwel != '')
{
$beginletter = '';
$start = 0;
$returnit .= '<ul>';
$returnit .= "n";
$result = connection($skwel);
while ($row = mysql_fetch_array($result))
{
extract($row);
$start += 1;
if ($beginletter != strtolower($liba_lname{0}))
{
if ($start > 1) { $returnit .= '<li> </li>'; }
$beginletter = strtolower($liba_lname{0});
}
$returnit .= '<li&gt,<a href="person/' . $liba_id . '">' . $liba_fname . ' ' . $liba_lname . '</a></li>';
$returnit .= "n";
if ($alphaid != '')
{
$returnit .= getWorks($liba_id,'');
}
}
$returnit .= '</ul>';
$returnit .= "n";
} else {
$returnit = 'Sorry. No records.';
}
return $returnit;
}
» bovenstaande functie toont de ‘auteurs’ en roept, indien nodig de volgend functie op
function getWorks($recid = 0,$wat='',$detail='short')
{
$retworks = '';
if (is_numeric($recid) && $recid > 0)
{
$listworks = 'FROM lib_work, lib_wauthor WHERE libwa_work=libw_id AND libwa_author = ' . $recid;
if ($wat != '')
{
$listworks .= ' AND FIND_IN_SET("' . $wat . '",libw_media)>0';
}
$listworks .= ' ORDER BY libw_title, libw_year';
$cntrecords = connection('SELECT COUNT(*) as bar ' . $listworks);
$nrrecords = mysql_num_rows($cntrecords);
if ($nrrecords > 0)
{
$retworks = '<ul class="' . $detail . '">';
$retworks .= "n";
$result = connection('SELECT * ' . $listworks);
while ($row = mysql_fetch_array($result))
{
extract($row);
$retworks .= '<li><a href="item/' . $libw_id . '">' . $libw_title . '</a> (' . $libw_year . ')';
if ($detail == 'long')
{
$retworks .= '<br />';
$br = 1;
$retworks .= $libw_format;
if (isset($libw_length) && $libw_length != '')
{
$br += 1;
$retworks .= ', ' . $libw_length;
if (substr_count($libw_media,'book')>0 || substr_count($libw_media,'comic')>0)
{
$retworks .= ' pages';
} else {
$retworks .= ' minutes';
}
}
if (isset($libw_code) && $libw_code != '')
{
$br += 1;
if (substr_count($libw_media,'book')>0 || substr_count($libw_media,'comic')>0)
{
$retworks .= ', ISBN ';
} else {
$retworks .= ', ';
}
$retworks .= $libw_code;
}
if ($br > 0)
{
$retworks .= "<br />n";
}
$br = 0;
if (isset($libw_where) && $libw_where !='')
{
$retworks .= 'from: ' . $libw_where;
$br += 1;
}
if (isset($libw_when) && $libw_when !='')
{
$retworks .= ' on ' . DateName($libw_when,'short');
$br += 1;
}
if ($br > 0)
{
$retworks .= "<br />n";
}
$retworks .= 'info & sales: ';
if (isset($libw_amazon) && $libw_amazon !='') { $retworks .= ' [<a href="http://www.amazon.co.uk/exec/obidos/ASIN/' . $libw_amazon . '/decemberorg00/" title="buy @ amazon uk">amazon uk</a> / <a href="http://www.amazon.fr/exec/obidos/ASIN/' . $libw_amazon . '/xi12-21/" title="achetez @ amazon fr">amazon fr</a>]';}
if (isset($libw_imdb) && $libw_imdb !='') { $retworks .= ' [<a href="http://us.imdb.com/title/' . $libw_imdb . '" title="info @ imdb">imdb</a>]';}
}
$retworks .= '</li>';
$retworks .= "n";
}
$retworks .= '</ul>';
$retworks .= "n";
}
}
return $retworks;
}
elders
De connectie naar de database
function connection($query)
{
$db = @mysql_connect("UW DATABASE HOST", "UW DATABASE USER", "UW DATABASE PASWOORD");
if (!$db) {
echo("Connection to database failed.");
}
if (!@mysql_select_db("UW DATABASE")) {
echo("Database connection failed.");
}
$result = mysql_query($query,$db);
if (!$result) {
echo("Error: " . mysql_error());
}
return $result;
}

In het menu bij de personen zal je zien dat je enkel de ‘auteurs’ van boeken, cds, strips, of films kan laten weergeven. Die links leiden naar bestanden waarin de SQL werd aangepast om enkel op boeken, cds, strips, of films te zoeken. In het geval van boeken bvb, door dit toe te voegen: WHERE FIND_IN_SET("book",libw_media)>0 aan de SQL statement. De lib_work tabel (cfr) had een SET, libw_media waarin kon worden gespecifieerd of het om audio, book, comic, movie ging, of een combinatie. Als je dan enkel zoekt op WHERE libw_media = 'book', dan mis je de items die bvb zowel een boek als een cd bevatten (zoals The Future Dictionary of America); daarom zoek je of een bepaald ‘iets’ voorkomt in de set (FIND_IN_SET).

Voila. Tot zover het inzicht in de code achter de mediatheek. Hopelijk heeft iemand er iets aan.

catalogus wishlist

Alvorens ik een lijstje met catalogi overloop, wat zijn mijn verwachtingen?

Minimumvereisten:

  • Sorteren op de familienaam van de auteur/uitvoerder/whatever.
  • Titels sorteren op eerste betekenisvolle woord (eventueel zelf een lijst van lidwoorden e.d. kunnen ingeven).
  • Sorteren op serie
  • Chronologisch ((eerste) release datum)
  • Automatisch invullen/ophalen van de gegevens via de EAN/UPC/barcode.
  • Web based of op zijn minst publiceerbaar op een website (al is het maar een HTML-export, maar dan wel customisable en standards compliant)
  • Boeken, CDs, Strips, Films, in éénzelfde programma.
  • Geen features, maar een degelijke en goed functionerende basis (titel, auteur(s), barcode/ISBN, jaar eerste release, jaar deze release).

Leuk, maar van secundair belang:

  • Niet US-centrisch: er bestaan ook Franstalige, Nederlandstalige, etc. boeken en CDs.
  • Cover art: goed voor visuele identificatie.
  • Genres
  • Uitgever / Record Company

Zéér wenselijk, maar waarschijnlijk utopisch:

  • Ophalen, verdelen en linken van alle gegevens (bvb bezetting bij Miles Davis op Birth of Cool: Lee Konitz, Gil Evans, Miles Davis, Gerry Mulligan, Al McKibbon, Max Roach, Kenny Clarke, John Lewis, Al Haig), en bij klassieke CDs natuurlijk.
  • Searchable / browseable track listing
  • Sleeve notes / libretto / synopsis

Veeleisend zijn we anders niet. Het hoeft zelfs niet eens gratis of Open Source te zijn.

mediatheek (1)

Hoe zit die mediatheek in elkaar, kreeg ik als vraag via e-mail (nadat ik eigenhandig mijn comments off-line had gehaald). Ewel, da’s simpel. Letterlijk. Geen fancy dingen; geen automatische lookups, zelfs geen admin tool. Alles wordt ingegeven via phpMyAdmin. (Wel, dat klopt niet helemaal: ik gebruik CocoaMySQL, maar dat doet eigenlijk krak hetzelfde.) Een zeer primitief systeempje.

Deel 1: de database.

Er zijn vijf tabellen in een MySQL database: work, author, series, wauthor en wseries.

work
De centrale tabel, waarin de cruciale identificatiegegevens van het item worden bijgehouden.
Bevat een id, de title, wat het is (audio, book, comic, movie), in welk formaat (hardcover, paperback, CD, SACD, LP, DVD, VHS), en facultatief het jaar, de lengte, de nummers van de barcode, de amazon ASIN, de imdb code, wanneer gekocht, waar gekocht en eventuele notities.
Wat het is, en het formaat zijn SETs, waardoor je dus meer dan 1 item kan kiezen
CREATE TABLE lib_work (
libw_id mediumint(9) unsigned NOT NULL auto_increment,
libw_title varchar(150) NOT NULL default '',
libw_media set('audio','book','comic','movie') NOT NULL default 'audio',
libw_format set('hardcover','paperback','CD','SACD','LP','DVD','VHS') NOT NULL default 'CD',
libw_year varchar(4) default NULL,
libw_length varchar(5) default NULL,
libw_code varchar(150) default NULL,
libw_amazon varchar(23) default NULL,
libw_imdb varchar(23) default NULL,
libw_when date default NULL,
libw_where varchar(50) default NULL,
libw_notes text,
PRIMARY KEY (libw_id),
KEY libw_title (libw_title,libw_media,libw_year)
) TYPE=MyISAM;
author
Een id, de voornaam, familienaam, en facultatief de geboortedatum, sterfdatum en notities. Die laatste drie velden heb ik nog nooit gebruikt.
CREATE TABLE lib_author (
liba_id mediumint(8) unsigned NOT NULL auto_increment,
liba_fname varchar(25) default NULL,
liba_lname varchar(50) NOT NULL default '',
liba_born date default NULL,
liba_died date default NULL,
liba_notes text,
PRIMARY KEY (liba_id),
KEY liba_fname (liba_fname,liba_lname)
) TYPE=MyISAM;
series
Voornamelijk in het leven geroepen voor de stripverhalen, maar is ook van toepassing voor de rest (John Zorn’s Masada bvb)
Een id, een naam, en notities.
CREATE TABLE lib_series (
libs_id mediumint(8) unsigned NOT NULL auto_increment,
libs_title varchar(50) NOT NULL default '',
libs_notes text,
PRIMARY KEY (libs_id),
KEY libs_title (libs_title)
) TYPE=MyISAM;
wauthor
En nu begint de leute: we linken de auteur aan het werk. Auteur wordt hier heel ruim gezien.
Een id, het work id, het author id, en de rol die de auteur speelt (alweer in een set): composer, conductor, editor, dessins, director, performer, scenario, writer
CREATE TABLE lib_wauthor (
libwa_id mediumint(9) unsigned NOT NULL auto_increment,
libwa_work mediumint(9) NOT NULL default '0',
libwa_author mediumint(9) NOT NULL default '0',
libwa_role set('composer','conductor','editor','dessins','director','performer','scenario','writer') NOT NULL default 'performer',
PRIMARY KEY (libwa_id)
) TYPE=MyISAM;
wseries
En hetzelfde voor de series.
Een id, het work id en het series id; en dan ook nog eens de plaats in de serie (deel 1, 2, 3 etc)
CREATE TABLE lib_wseries (
libws_id mediumint(9) unsigned NOT NULL auto_increment,
libws_work mediumint(9) NOT NULL default '0',
libws_series mediumint(9) NOT NULL default '0',
libws_order mediumint(9) NOT NULL default '1',
PRIMARY KEY (libws_id),
KEY libws_order (libws_order)
) TYPE=MyISAM;

Voila, een zeer eenvoudige database dus. Alle invulwerk gebeurt manueel. En ja, de benamingen en zo konden properder, maar het was eigenlijk alleen maar voor eigen gebruik bestemd, en niet voor publicatie.

commentaar

Oeps. Ik was aan ’t prutsen met MT-blacklist en consequently aan ’t rommelen in mt.cfg, toen ik als de gesmeerde bliksem weg moest om alsnog te laat te komen op een nieuwjaarsfamiliefeest.

Waardoor ik vergeten was, niet alleen van mt.cfg terug te uploaden, maar tevens van het weblog in MT te rebuilden. Waardoor de comments niet meer toegankelijk waren.

Gisteren en vandaag begon ik last te krijgen van de commentaarspammers, en ik was op zoek gegaan naar een oplossing. MT-blacklist heb ik voorlopig niet aan de praat gekregen, maar ik heb wel de naam van het commentaar-script gewijzigd, zodat de spambots hopelijk toch enkele dagen op afstand worden gehouden.

En natuurlijk heb ik nog zelden zoveel commentaar gekregen op een entry als nu (dank u, overigens). Ik bundel zo snel mogelijk mijn antwoorden in een artikel of twee.

Oh, en de commentaar zou terug moeten werken.

[update:] ik zal ondertussen ook maar eens de Six Apart Guide to Comment Spam doornemen.

hd audio

Jawel: harddisk opslag van film en muziek goes mainstream in 2005. Hier is de Cambridge Audio Azur 640H. CA is in de tweede helft van vorig jaar (nog) sterk(er) komen opzetten als betaalbaar en kwaliteitsvol audiomerk. Als kers op de taart kreeg het merk in het Franse tijdschrift Diapason voor de Cambridge Audio Azur 640C CD speler een Diapson D’Or 2004 uitgereikt.

Met Audiofile kan een volledige muziekverzameling opgeslagen en beheerd worden en kan ook gedownload worden van muziek die aanwezig is op Internet, PC‘s of Mac‘s. Dit kan niet alleen met een Ethernetverbinding maar ook m.b.v. een draadloze Wi-Fi verbinding. Dit betekent dat de ene 640H ook met een andere kan communiceren waardoor een hoogwaardige multi-room installatie opgebouwd kan worden zonder dat daarvoor bedrading aangebracht dient te worden.

Het toestel bevat ook een 24-bit/192kHz DAC (zoals hun recente CD-spelers).

Centraal in de 640H staat een krachtige VIA C3 1GHz processor die gekoppeld is aan een flinke (160Gb) harddisk. Deze capaciteit betekent dat er geen compromissen gesloten hoeven te worden als het gaat om geluidskwaliteit, m.a.w.: datacompressie is niet noodzakelijk. De opslagcapaciteit is gelijk aan ongeveer 300 albums met behoud van CD (PCM) kwaliteit.

Nog even wachten, en er kunnen externe HDs aangesloten worden (via firewire of USB2) om de opslagcapaciteit te vergroten. Het toestel wordt op de markt gebracht tegen het einde van de lente.

collecte

“Goedemorgen, meneer.”

We waren om kwart voor acht holderdebolder de trappen afgerold naar beneden, onze gezellige bed-in verstoord de deurbel.

“Ik kom een klein stukje staatsschuld en innen, en tegelijkertijd de post wat rendabeler maken.”

Al waren dat niet de exacte bewoordingen van de postbode.

Een tijdje geleden had ik al mijn amazon.com gift certificates gespendeerd. De gift certificates dateerden nog vanuit de tijd dat ik de Michael Nyman website runde; bij de discografie had ik mijn amazon partner code bij de link meegegeven, waardoor mijn tegoed langzaam maar zeker aantikte (in totaal had ik ondertussen net geen 100 USD).

Van amazon had ik ondertussen bericht gekregen dat mijn zending in twee gesplitst werd, en de eerste van die zendingen werd vandaag bezorgd.

Paid by Visa: $0.00
Paid by Gift Certificate: $38.95

En daarbij gevoegd de volgende rekening:

B.T.W.: 8,32
EG-invoerrechten: 1,05
Aanbiedingskosten: 8,68
Totaal bedrag van de kosten: EUR 18,05

Met die eerste twee had ik rekening gehouden, maar niet met de 8,68 EUR aanbiedingskosten. (Hopelijk is dat per zending, en niet 4,34 EUR per item –er volgt nog een zending van vier items.) Soit, het blijft minder dan de kost van de items, dus ik heb er alsnog mijn broek niet aan gescheurd.

traag, maar …

De jazz CDs zitten er in tot en met de ‘B’ (op uitvoerder). Alles zit er maar heel basic in, op één enkele naam per CD.

Wat al onmiddellijk problemen geeft bij bijvoorbeeld de laatste B: Don Byron. Bij het album, Romance With The Unseen uit 1999, wordt Byron vermeld als errm ‘eerste auteur’ (uitvoerder), maar minstens even belangrijk is het gezelschap waarmee hij op deze plaat speelt (en dan hebben we het nog niet over de componist).

Het zijn niet de minsten, die meespelen op dit album: Bill Frisell, Drew Gress, en Jack DeJohnette. Die zouden kunnen gecrosslinked worden naar Pat Metheny, John Zorn, en de soloplaten van Frisell, om maar iets te noemen.

Ondertussen geef ik ook telkens de bar code mee; dat leek me nuttig voor het geval ik ooit naar een écht programma overstap. Zo kijk ik al een tijdje met ruime interessa naar Delicious Library, maar ook naar Books. Dat laatste is interessanter voor niet-Amerikanen: het zoekt in veel meer on-line databestanden, maar houdt helaas alleen maar boeken bij, en geen CDs of DVDs.

Ondertussen zitten we aan 416 CDs. Niet allemaal jazz, maar CDs van 2004 die in 2004 werden ingegeven (alle genres) + jazz tot en met de ‘B’ van Don Byron. Op naar de volgende letter.