Portál AbcLinuxu, 1. května 2025 01:32
Moderujem nejeden mailing list a tak ma priebežne štvú všetky možné a najmä nemožné archívy a vyhľadávania. Už dávno som plánoval s tým niečo urobiť, ale akosi nebol čas, alebo nálada na dokončenie. Časy sa však menia.
Napísal som rozhranie k mailing listu, ktoré umožňuje základné operácie nad mailboxom. Program akých sú na webe desiatky, tie však majú dva základné problémy. Na veľkých mailing listoch sú pomalé, alebo pracujú na (pre mňa) príliš nízkej úrovni. Free sw nie je zadarmo, hľadaním (a testovaním) som zabil nemálo času. Nebolo to však až také zlé, pretože sa mi podarilo nájsť nápady, ktoré by mi inak zostali utajené (vedeli ste, že podobné veci sa píšu aj v LISPe?). Nakoniec sa situácia ustálila a ja som sa rozhodol použiť, čo najštandardnejšie komponenty a nakoniec zakotvil na JavaMail/Lucene/Hibernate (databáza je momentálne hsqldb, ale tú nie je najmenší problém zmeniť). Ak sa vám nepáči Java, tak to vôbec nevadí :)
Nevadí to pretože, by to nemalo nikoho obmedzovať. Síce som ešte pred prázdninami to plánoval postaviť ako klasickú web aplikáciu s tesnými väzbami, tak nakoniec zvíťazil model založený na web services (zásluhu na tom majú aj goldenfish a blog Amazon Web Services, kde uvidíte, na čo všetko sa to dá použiť). Web services budú mať najmä tú výhodu, že bude omnoho jednoduchšie napísať aplikáciu, ktorá bude využívať údaje z mailing listu. Okrem klasického archívu s vyhľadávaním na strane (nášho) serveru by nemal byť problém so zaintegrovaním archívu do inej webovej aplikácie (dokážem si predstaviť, že by abclinuxu vyhľadával okrem fór aj v archíve linuxovej konferencie), sprístupnením mailing listu vo forme portálu, RSS exporty, gateway do news a sám neviem na čo všetko by to ešte mohlo byť dobré :) Rozumné nápady samozrejme uvítam v diskusii. Ak by sa chcelo niekomu poradiť, tak nasleduje zoznam exportovaných funkcií. Ak si myslíte, že medzi nimi nejaká dôležitá chýba, tak mi dajte vedieť.
Funkcie sú dostupné vo dvoch verziách, kde je rozdiel v tom, či sa vráti aj telo dokumentu, alebo len hlavička (samozrejme rozparsovaná do XML a vždy v UTF-8). Väčšina funkcií je dostupná v dvoch alternatívach (tj. spolu 2x2) pričom jedna pracuje s vláknami a druhá len s jednotlivými správami.
Keď bude fungovať všetko, tak zrejme pribudne do Lucene aj nejaký rozumný lemmatizátor (prevod slova na základný tvar) pre slovenčinu/češtinu a časom snáď aj možnosť zasielania správ do mailing listu cez túto službu. Nápady, kritika, ... sú vítané. Ja si ich prečítam až v nedeľu večer. Pretože vďaka EÚ a chronickému nedostatku tlmočníkov do všetkých možných jazykov budem na konferencii o vzdelávaní dospelých a prechodu do dôchodku prekladať aj ja :) Normálne mám pocit, že je to ešte o kúsok lepšie platená práca ako programovanie, ale mínanie peňazí z rozpočtu EÚ je na úplne inú diskusiu.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.