LibreOffice’i arendaja intervjuu: Lionel Elie Mamane, LibreOffice Base’i hooldaja ja vabatahtlik

Jätkates “Arendajaintervjuu” sarjaga, rääkisime seekord Lionel Elie Mamane’ga tema tööst LibreOffice’i koodiga ja tema erilisest huvist Base’i vastu. Just Lionel’i juhtimise all on kogu Base’i mooduli arendus- ja hooldustööde läbiviimine, aidates selle tööga kogu LibreOffice’i kommuuni tervikuna.

Kuidas LibreOffice Sinuni jõudis?

Lionel Elie Mamane

Debian vahetas OpenOffice’i kontoritarkvara LibreOffice’i vastu.

LibreOffice eksisteerib ainult tänu sellega töötavatele inimestele; seega palun räägi endast natuke lähemalt. Lisaks, milliste teiste tarkvaraprojektidega Sa veel seotud oled?

Peamiselt Debianiga, aga viga nähes olen alati paranduspaikasid saatnud, sealhulgas:

  • IPv6 tugi privoxy’ile, mis on anonüümsust tagav HTTP proksi
  • veaparandused gfax’ile, mis on graafiline kasutajakeskkond fakside saatmiseks. Parandus ise sisaldas dünaamilist tühikute arvestamist faksinumbrites
  • Linux’i kernel: SIT tunnelis, mis on seatud “tos inherit” peale, levita IPv6 transportklassi sisemise paketi bait’i ka välimise paketi ToS baidile, nagu seda tehti nii IPIP kui ka GRE tunnelites
  • Pan (uudisteluger): Pan’i ja mutt’i (e-kirja tarkvara) koostöövõime parandus
  • Pan: veaparandus kategooriate filtris
  • Parandused mõnedes LaTeX’i pakettides
  • mutt: mailto: URL’ide parandus parsimisel

Millega sa peale LibreOffice’i veel tegeled?

Lõpetan oma doktorantuuri väitekirja teoreetilises arvutiteaduses/ arvutimatemaatikas.

Milles sinu doktoritöö seisneb?

Minu täpsem eriala on interaktiivne teoreemitõestamine. See on tarkvara, mille abil matemaatikud saavad luua ja haldada erinevaid teoreeme, aga ka tõestada nende kehtivust. Väidan, et praegused automaatsed teoreemitõestajad ei suuda kunagi anda kõigile kergesti loetavat teoreemi kinnitust. Meil tuleb õige vähe muuta nii konkreetseid süsteeme (programme) kui ka teoreetilisi aluseid,

Lisaks tegelen ma ühe väikse ettevõtte (15 inimest) IT teenuste vajadustega.

Kui tohib küsida, siis millise ettevõtte? Ehk võid meile rääkida selle toodetest või anda näiteks lingi?

See on Gestman S.A, mis tegeleb administratiivse, raamatupidamis- ja juriidiliste teenuste osutamisega.

Samas olen ma Matanel’i fondi nõunik. Fondi missiooniks on julgustada sotsiaalset ettevõtlus-suhtlust üle terve maailma. Täpsema kirjelduse fondi missioonist leiab siit (inglise keeles).

Lisaks osalen ka veel “klassikalistes” heategevusprojektides (toit, haridus, kultuur, …), olen peasüüdlane Debconf11 ja Debconf12 logode taga. Ilmselt märkate, et ka minu tööandja (Gestman s.a.) on üks nende konverentside toetajatest, makstes kinni ka minu osalemiskulud: http://debconf8.debconf.org/corporate.xhtml.en.

Millal sa LibreOffice’iga tavaliselt töötad?

Kui mind teel koju keset mõttelendu või vigade parandamist segatakse, siis lõpetan kodus.

Seega enamasti pärast tööd?

Jah.

Miks sa projektiga ühinesid?

Sellepärast, et tahan oma ametikohal LibreOffice’it erinevate andmebaasipõhiste ärirakenduste programmeerimise platvormina kasutada. Soovi korral võib seda pidada Microsoft Access’i põrmustamise katseks. Ma alustasin kergete vigade kõrvaldamisega ja väikeste lisavõimaluste lisamisega, mis olid minu jaoks kasulikud. Ja veel enne, kui ma sellest arugi sain, leidsin ma ennast olevat LibreOffice’i andmebaaside ekspert.

Väga põnev! Mida sinu ärirakendused teevad? Saad sa sellest ülevaate anda?

Ärirakenduste põhiülesanded:

  • Kliendiandmebaas
    • kontaktandmed
    • jälgib, kes saavad tellida,
    • track who is authorized to order which action on behalf of customer
  • arveldamine: manuaalne, automaatne, poolautomaatne
    • kui klient soovib eritellimust, arvesta tunnitasu
    • statistika töötajate erinevate tööaegade ja -tulemuste kohta
    • statistika toote müügihinna ja tegelikult kulutatud ressursi kohta (iga kliendi lõikes)
  • käibes oleva vara- ja investeeringute jälgimine
  • konkreetse tööülesande progressi jälgimine, kui see liigub töötajalt töötajale või väljaspool ettevõtet
  • Näiteks ettevõtte tuludeklaratsiooni esitamine:
    • raamatupidaja koostab bilansiaruande: 1. töötaja
    • ettevõtte juhataja kinnitab selle: 2. töötaja
    • saadetakse audiitorile: 3. töötaja
    • oodatakse audiitori vastust: väline teenus
    • esita audiitori poolt kinnitatud tuludeklaratsioon: 4. töötaja
    • kas maksuamet sai deklaratsiooni kätte?

Milline oli sinu esmane koostöö kogemus LibreOffice’iga?

Väga avatud kommuun. Nad teavad mu tugevusi ja hindavad minupoolset panust.

Milline oli sinu esimene panus LibreOffice’isse?

Minu esimene sissekanne vearaportisse paistab olevat: (kuupäev: Sat Jan 15 05:39:40 2011 +0100)

#116187: report left/right page margin setting ignored on Unix 64 bit

Viga seisnes asjaolus, et tehes ääriste muudatusi 64bitisel Linux’i versioonil, ei salvestatud ühtegi seadet.

Mida sa peale seda parandust veel teinud oled?

Eemaldanud mitmeid erinevaid vigu Base’ist ja natuke ka skriptinud.

Lahe! Võibolla seletad natuke nende vigade eemaldamise olulisust?

Peaaegu kõik “ettevõtte/äri- tarkvarad” töötavad stiilis “loe sellest andmebaasist, tee sellega seda tööd, salvesta tulemus andmebaasi,…”. LibreOffice ei saa kunagi Microsoft Office + Visual Basic for Applications’i laadseks kiireks tarkvara-arendus platvormiks, millel puudub korralik andmebaasidega suhtlemiseks ja haldamiseks vajalik korralik komponent.

Kuidas see kasutajatele kasuks tuleb?

Kõigil on võimalik kasutada LibreOffice’it andmebaasidele ligipääsemiseks ilma segavate vigadeta.

Milline on sinu tulevikuvisioon ja/või mida sa sooviksid paremaks teha?

  • ideaalis sooviksin Base’i ümber näha suurt ja elavat arendajate/testijate/kvaliteedikontrollijate kommuuni
  • Kui keegi on huvitatud andmebaasidest või skripitimisest, ühinege meiega! Sõltumata sinu kogemusest või oskustest, on meil alati tarvis programmeerijaid, vigade haldureid, kvaliteedi kontrollijaid, testijaid, dokumentatsiooni kirjutajaid…
  • Vigade teavitus-süsteem on aegunud ning sellele kuluks ära korralik uuendus.
  • Oleks tore, kui väljad suudaksid näidata ka mitut kirjet ühe korraga (mitte ainult võrk-vaates)
  • Mitmed sõltuvused Java’st, mis ei ole usaldusväärsed, ja mille sooviksin eemaldada.

Mida sa arvad uuest LibreOffice’i ülesehituse viisist?

gbuildification kasutuselevõtt on samm õiges suunas, aga tegemist on “rekursiivse” kompileerimisega, mis on tegelikult halb. Lähemalt saad uurida siit: http://miller.emu.id.au/pmiller/books/rmch/. Vähemalt praegu oleme selles suhtes samal tasemel enamike teiste projektidega.

Märkus: Nagu hiljem selgus, tähendab LibreOffice’i “rekursiivne” kompileerimisviis tegelikult siirdamist – väiksed kompileeritud osad viiakse üle tail_build moodulisse, mis seal omakorda üheks tervikuks liidetakse.

Olen 100% veendunud, et meie seoseid puudutav informatsioon on poolik ja/või liiga katkendlik. Siiani puutun koodi kompileerimisel kokku vigadega, mille ainukeseks lahenduseks on “make module.clean” või midagi sarnast. Proovides täpsemaid puhastuse meetodeid, ei ole see lihtsalt võimalik, sest reaalselt faili ei muudeta. Kompileerimine lõpeb lihtsalt “file you removed mising” (fail, mille sa eemaldasid, kadunud) veateatega.

Millist tekstitöötlejat sa eelistad ja miks?

Emacs. Harjumus (mitmed klaviatuurikäsud on käe sees), võimalused, programmeerimine korralikus keeles (olen pigem funktsionaalne programmeerija).

Kuidas sa julgustad uusi liikmeid endaga töötama?

Olen teinud mõned “easy hacks” (programmeerimis)ülesanded koos soovitustega.

Teed sa veel midagi põnevat peale häkkimise?

Ei, häkkimine on mu elu ;)

Äitäh leitud aja eest LibreOffice’i projektis!

(Intervjueeris Michael Meeks, toimetas Marc Paré)