PIKI-kirjastojen tietokantapöyhintäni lähdekoodi, työpäiväkirja ja raportti julkistettu

BaseX:llä ja XQueryllä MARC21 -tietueiden kimpussa

Tein marras-joulukuussa freelancena töitä PIKI-kirjastoille tietokannan  siivouksen parissa. Pöyhin about 2 miljoonaa MARC21 -tietuetta kokonaan kirjastojärjestelmän (Axiell Aurora) ulkopuolella ja hauskaa oli. Lisäksi suunnittelin miten kirjastojärjestelmän ulkopuolella tehtyjä muutoksia voi tuoda tuotantotietokantaan ym. ym.

Projektin- ja asianhallintaan käytin Kirjastot.fi:n tarjoamaa Redmineä, ja käytin sitä myös työpäiväkirjanani. Avasin sen julkiseksi ja se on siis kaikkien nähtävissä. Tonkimiseen paras alku lienee lista kaikista issue-trackeriin merkityistä asioista. Kaikki kirjoittamani XQuery -kielinen lähdekoodi löytyy sensijaan GitHubista ja minua, sinua ja lähdekoodia suojaa GNU GPL-lisenssi. Työpäiväkirja ja lähdekoodi ovat mielestäni mielenkiintoisimmat dokumentit työstäni ja analyyseistä. Laadin myös raportin, joka löytyy Google Docsista, jossa sitä voi myös kommentoida.

(: Check all classification fields which claim to get their value from
YKL classification systems, see if they are really define there. Based
on my screenscraped YKL :)

declare namespace srw="http://www.loc.gov/zing/srw/";
declare namespace marc="http://www.loc.gov/MARC21/slim";

declare variable $yklres := fn:doc('ykl.xml');
declare variable $ykl := $yklres/ykl/class/@no/data();

<yklClasses>{
for $field in /records/record/srw:recordData/marc:record/marc:datafield[@tag="084"]
  let $classNo := $field/marc:subfield[@code="a"]/data()
  where $field[marc:subfield[@code="2"] = "ykl"]
  return <yklClass
    inYkl="{if ($classNo = $ykl) then 'true' else 'false'}">{
      $classNo
  }</yklClass>
}</yklClasses>

Esitelmöin ja toivottavasti myös demoan hommiani Kansalliskirjaston järkkäämillä sisällönkuvailun tiedostuspäivillä lounaan jälkeen keskiviikkona 20.3.2013 Helsingin yliopiston päärakennuksen pienessä juhlasalissa. Päivillä on muutakin mukavaa ja mielenkiintoista aihetta tarjolla. Tilaisuuteen voi osallistua etänä, ja webinaari ilmeisesti myös taltioidaan. Toivottavasti siellä tavataan.

Mainokset

Tänään viimeinen päiväni Turun kaupunginkirjastolla ja Vaski-kirjastoissa

Kiittimoi

  • ☑ Jätä pyyntö sähköpostin ja kalenterin sulkemisesta
  • ☑ Laadi ja laita sähköpostiin automaattivastaus
  • ☑ Jätä avainkortti
  • ☑ Palauta VPN-avain
  • ☑ Palauta työpuhelin
  • ☑ Palauta kahviautomaatin avain
  • ☑ Palauta nimikyltti
  • ☑ Kirjaa projektinhallinnasta tehtävät pois itseltäsi
  • ☑ Kuulumisten, ideoiden, palautteiden yms. vaihto Inkerin kanssa
  • ☑ Jätä pyyntö Rondo -tunnusten sulkemisesta
  • ☑ Jätä pyyntö Populus -tunnusten sulkemisesta
  • ☑ Tyhjennä työpöytä ja lokerikot
  • ☑ Käännä monitori pivotista normaaliasentoon
  • ☑ Kollegoiden kakutus
  • ☑ Kollegoiden halailu
  • ☐ Päätä mitä teet tulevaisuudessa
  • ☑ Aurinkoinen sää ulkona

Nyt katse Vilnaan, IFLA WLIC2012:een ja tulevaisuuteen. Kiitti moi, ikävä tulee. Onnea valitsemallanne tiellä ja palaillaan.

Projektinhallintatyökalu Redmine tyhjä omalta osaltani

Oma 2do -lista kondiksessa

Lukekaa Petrin katsaus KDK-katsaukseen

Lukekaa Petrin kirjoitus KDK:n asiakasliittymä : missä mennään, millä mennään. Hyvä Kansalliskirjaston Alli-toimisto, lisää tätä kaikkialle ympäri meidän alaa heti nyt tänään.

Näkemiin Axiell PallasPro

Viimeinen kunnon silmäys PallasProhon.

Viimeinen kunnon silmäys PallasProhon.

Varsinais-Suomen yleisten kirjastojen konsortio Vaski uudistuu. Vaihdamme kirjaston taustajärjestelmän, Axiellin PallasPron saman tutun toimittajan Auroraan. Rakennamme myös nettisivuston Axiellin Arenalla. Lisäksi Vaskiin tulee lisää kirjastoja, kollegoita, aineistoa ja toki myös asiakkaita mukaan. Kolme viikkoa kestävä yliheittomme alkaa nyt.

Keskeisen työvälineen, kuten kirjastojärjestelmän vaihtamiseen liittyy aina paljon kaikenlaista muutakin kuin varsinainen ohjelman asentaminen; esimerkiksi Aurora ei tuo mitään periaatteiltaan ja toiminnoiltaan kovin uutta tai erilaista PallasProhon verrattuna; Aurora on jo hyvinkin tutun ILS-konseptin uudelleentoteutus. Vaihto on kuitenkin huomattava kirjaston sisäisesti: prosessin käytännön järjestelyt teettävät paljon työtä, uusia ja vanhoja työtapoja arvioidaan ja niistä neuvotellaan, palveluja rukataan vastaamaan uutta järjestelmää, väännetään kättä näkyvästä ja näkymättömästä vallasta, argumentoidaan, neuvotellaan, päätetään, päätetään uudelleen, leivotaan asiantuntijoiden ja päättäjien välisiä suhteita, joustetaan, hämmästellään, viestitään, tulkitaan sähköposteja, innovoidaan, säädetään, bondaillaan kollegoiden kanssa, kouluttaudutaan jne. Ja tietenkin kökötetään kokouksissa… joista sitten toki keskustellaan jälkikäteen 😉 Ja muodostetaan suurta tarinaa esimerkiksi nostalgisoimalla.

Järjestelmän vaihtoa tuleekin tarkasteltua muistakin kuin teknillis-rationaalisesta näkökulmista. Luonnollisesti tätä tulee tehtyä kollegoiden kesken kasvotusten, mutta tekstiksi asti asiaa on vääntänyt Nasrine Olson: Taken for granted–the construction of order in the process of library system decision making (Borås, Valfrid 2010). Olsonin väikkärissä järjestelmän vaihtamisen alkuvaiheita eli hankintaa, määrittelyä ja suunnittelua tarkastellaan sosiaalisena prosessina. Jarmo Saarti on laatinut Olsonin teoksesta suomenkielisen arvion Informaatiotutkimuksen vol 29. no 4:ään 2010 otsikolla Onnen kauppaako?: kirjastojärjestelmän hankinta sosiaalisena prosessina. Jarmolle kiitos kirjoituksestaan, sekä myös näiden kahden julkaisun vinkkaamisesta. Suosittelen ehdottomasti kaikkia kirjastojen järjestelmävaihdoksista ja/tai sisäisistä kulttuureista kiinnostuneita tutustumaan näihin kahteen tekstiin.

Vaskilla on ehdottomasti Suomen kirjastopalveluista hienoin logo (Kirjastot.fi:llä on paljon hienoja myös)

Meillä on täällä Vaskissa melkoinen hulina ja vilinä, mutta koska tänään oli viimeinen PallasPro -päivä ennen järjestelmän sulkemista huomenna, soin itselleni hieman aikaa tunnustella omaa ja muutamien kollegoideni suhdetta PallasProhon. Haluaisin ajatella että eräs aika tulee tänään päätökseensä, ja on uuden ajan aatto (romantiikkaa tietenkin).

Itselläni on lyhyt ja löyhä suhde Pallakseen sinänsä, mutta oli mielenkiintoista jututella muutamia kollegoita heidän PallasPro -fiiliksistään. Oheisessa videossa Mari Tammela.

Näkemiin PallasPro.

No nyt Kansalliskirjastokin kyllästyi Primoon

ExLibris Primo

KDK-hanketta luotsaava Kansalliskirjastokin irtautui asiakasliittymäohjelmistosta Primosta. Uutinen on sikäli melkoinen pommi – joskin ihan tervetullut sellainen – että KDK:n käyttöliittymäprojekti pitää kiinni lupauksestaan olla ottamatta käyttöön ohjelmistoa ellei se ole sopiva. Kuulostaa hieman oudolta, mutta tämä liittyy aiempiin päätöksiin jatkaa pilotointia (”pilotointia”) kunnes ohjelmisto vastaa määrityksiä ja tarpeita.

Oma osuuteni tähän on se, että olen ollut täällä Turun kaupunginkirjastolla reilun vuoden, työstämässä Primoa meidän Vaski-kirjastoille (laajennumme, olemme pian 300 000 asiakasta, 20M€ tulot, 45 toimipistettä). Me irtauduimme KDK-asiakasliittymähankkeesta noin kuukausi sitten. KDK-loppuraporttimme on työn alla (älkääkä kysykö miten aiomme asiakasliittymäämme kehittää).

Lukaise Kansalliskirjaston laatima, tänään julkaistu tiedote. Kansalliskirjasto lähtee nyt etsimään muita vaihtoehtoja KDK:n asiakasliittymäksi. Minä, ja monet muutkin tervehdimme mahdollisuutta avoimempaan ratkaisujen etsintään ilomielin. Kiitos Kansalliskirjastolle että yritätte aukoa näitä kiperiä solmuja ja umpikujia joihin tässä melko ilmeisesti on jouduttu sekä Primon, että itse KDK asiakasliittymähankkeen kanssa. On rohkeaa (ja oikein) sanoa ”okei tää feilaa, tehdään jotain muuta”.

Onnea matkaan. May the source be with you.

KDK-projektin virallisen tiedotuksen uutisotsikot kertovat omaa metatarinaansa

Samaan aikaan toisaalla: Tukholman kaupunginkirjaston uudet webbisivut julkaistiin tänään. Kävin Tukholmassa maanantaina tapaamassa asianosaisia tuttaviani siellä. Vakuuttavaa menoa. Scrum -projektinhallintamenetelmällä ohjattu hanke on toteutettu omin voimin Virtuella Enheten -yksikössä, osittain ostotyönä siten, että konsultoivia ohjelmoijia ja suunnittelijoita on pidetty kirjaston omissa toimistotiloissa. Nyt ohjelmointiosaamista rekrytään omaan taloon ja ostopalvelun osuutta vähennetään. Teknologiana on Axiellin BookIT-kirjastojärjestelmä, sen Alma -rajapinta sekä avoimen lähdekoodin Drupal-julkaisujärjestelmä.

Tein esittelyvideon ehdottamastani issue trackeristä

Ehdottelin pari päivää sitten useissakin paikoissa (blogissa, Kirjasto-kaapelilla, privana useamman henkilön kanssa), että me kirjastolaiset voisimme perustaa issue trackerin sekä Axiellin verkkokirjastotuotetta Arenaa että heidän taustajärjestelmäänsä Auroraa varten ja mahdollisesti muuhunkin käyttöön. Ehdotus on saanut paljon kannatusta eri puolilta, eiköhän näillä puheilla pistetä homma pystyyn. Kirjastot.fi päivittänen Redminen uusimpaan versioon, niin päästään alkuun.

Pohjille voisi varmaan laittaa nykyiset aikataulut (testivaihe, tuotantoon meno jne), tiedossa olevat päivitykset, vaatimusmäärittelyt ja mitä ominaisuuksia on kaavailtu tulevaisuudessa sekä tietenkin bugit ja sensemmoiset.

Tein pienen esittelyvideon Kirjastot.fi:n tarjoamasta projektinhallintatyökalusta Redminestä, sekä siitä miten olen sillä itse hallinnoinut EuropeanaLocal -hanketta.

Korkearesoluutioisemmista videoista näet lukea tekstinkin, niin saat paremman kuvan miten olen järjestelmää käyttänyt.

Axiell saa palautetta; miten parannettaisi tilannetta?

Axiell

Ei kannata missata Kirjastot.fi:ssä käytävää keskustelua Axiellista sekä PIKI-alueen verkkokirjastouudistuksesta. Heikki Poroila aloitti blogissaan otsikolla PIKI-uudistus Tampereella epäonnistunut – asiakaspalaute murskaavaa ja sittemmin keskustelua on käyty Kirjasto-kaapelin puolella.

Jos minulla olisi kirjasto, se olisi varmasti Auroraton ja luultavasti Arenaton. Kirjastojen ja yritysten suhde on kiusallinen, eivätkä kirjastojen suhteet Axielin kanssa tunnu kuulopuheideni mukaan olevan kovin lämpimät. Tämä varmaan tiedetään Axiellissa kyllä, mutta itselleni lähinnä HelMetin Innovative -umpiossa kasvaneena epäluottamuksen määrä on kuitenkin ollut yllätys. Tilanne ei tietenkään ole kenenkään etu, ei kirjastojen, ei Axiellin eikä Suomen kansan etu.

Hyvä kuitenkin että tätä keskustelua käydään. Eilen taas seikkailin avoimen lähdekoodin maailmassa, ihailusta pakahtuneena. Aivan eri maailma. En nyt tarkoita tuotteita (siis tietokoneohjelmia) vaan avointa lähdekoodia kokonaisuudessaan. Mitä tapahtuisi jos avaisimme Axiellin kanssa tai ilman Axiellia jonkun issue trackerin, jonne dokumentoisimme ohjelmistohankkeitamme? Voisimme tehdä sen heti, siihen ei kauaa menisi sillä Kirjastot.fi on pitkään tarjonnut alallemme keskitettynä projektinhallintatyökaluna Redmineä.

Julkiset ongelmien raportointi-, dokumentointi- ja seurantatyökalut ovat olleet arkea avoimen lähdekoodin maailmassa vuosikausia. Vaikka Axiellin Arena ja Aurora -tuotteet eivät avointa lähdekoodia olekaan, voisimme aivan hyvin valita tehdä projektinhallintaa avoimesti, mieluusti Axiellin kanssa yhteistyössä.

Tässä vielä täydellisyyden (ja tautologian) vuoksi Kirjasto-kaapeli -foorumille kirjoittamani haaste:

Hyvää keskustelua täällä. Mutta hmm-hmm miten voitaisi parantaa tilannetta?

En tiedä moniko meistä tuntee esim. issue trackereiden kaltaisia projektinhallintatyökaluja enkä tiedä millaista ohjelmistoprojektien hallintaa Axiell sisäisesti tekee, mutta ehdotan, että avaamme julkisen issue trackerin.

Kirjastot.fi on jo pitkään tarjonnut Redmine -ohjelmistoa kirjastojen erilaisiin projektinhallintatarpeisiin, olen itse käyttänyt sitä 23 asiaa -verkkokurssin ja Suomen EuropeanaLocal -hankkeen yhteydessä. Redmine on ihan hyvin toimiva ongelmapohjaiseen projektinhallintaan, tosin en ole mikään projektinhallinnan ammattilainen enkä ole aktiivisesti käyttänyt montaakaan vastaavaa ohjelmistoa. Avoimen lähdekoodin maailmassa joitain yleisesti käytettyjä ovat Bugzilla, Launchpad, Trac (mm. Europeana), SourceForge, Google Code, Redmine.

Tällaisethän ovat tuolla ”Oikeassa Maailmassa”, kirjastokuplamme ulkopuoellla aivan arkipäiväisiä ohjelmistonkehityksen työkaluja. Avoin lähdekoodi ei ole edellytys tällaisen järjestelmän käyttämiseen (vaikka avoin lähdekoodi on tietenkin parempi asia kuin estetty lähdekoodi).

Vaski-kirjastoissa ollaan ottamassa käyttöön Auroraa. Asiakasliittymäksi tulee KDK, jota pilotoimme. Henkilökohtaisesti olen valmis sitoutumaan yllä kuvailemani kaltaiseen järjestelyyn käyttää jotain issuetrackeriä. Itseasiassa olisin hyvinkin kiinnostunut jos me Axiell -tuotteita kehittävät kehittävät päättäisimme ottaa tuollaisen jokapäiväikseksi työkaluksemme ja yhteistyöalustaksemme.

Olisiko kiinnostuneita? Tämä on erityisesti suunattu kollegoilleni Vaski-kirjastossa, Axiellille ja Kansalliskirjaston kirjastoverkkopalveluyksikölle, sekä mukaan haluaisin tietenkin kollegoita muualtakin jossa Axiellin kanssa toimitaan. Äkkiseltään tuntuisi hyvältä perustaa omat issue trackerit Axiellin Auroralle ja Axiell Arenalle, ja KDK:llekin olen kaipaillut sellaista. Miten on?