eccoci alla nostra terza puntata!
aime’ avrete notato che non sono riuscito a tenere il ritmo ![]()
uaglio’, qua i ritmi sono stati serrati come pochi! sta gente sta avanti al PC dalle 10 del mattino alle 4 di notte.. minzica..
e chiaramente hai voglia di conoscere almeno un 50% dei presenti (ricordo che siamo stati oltre 50 persone al giorno di media) e quindi anche gli spazi dedicati al riposo (mangiare, spostarsi, farsi una
birra, ..) sono estremamente interessanti e “stressanti” !
1. grandissimo divertimento e gusto per chi apprezza queste cose come me
2. cerco di riassumere i punti salienti per farvi vivere (e rivivere) queste splendide giornate
ok, dopo la premessa, prima di tutto il gruppo:
http://jardigrec.eu/gallery2/main.php?g2_itemId=15046
gran bella gente, signori.. ho una lista di personaggi veramente indimenticabili, che saranno oggetto di un mio post conclusivo..
tutti si sono integrati, a parte pochi casi sporadici e un poco patologici, tutti sono riusciti a godersi la festa che stava andando vanti, tutti erano molto comprensivi e disponibili quando venivano
stressati, sia gli organizzatori (grazie ragazzi: Abstract si e’ spesa molto per la buona riuscita della cosa), sia i presenti (chiunque poteva essere coinvolto per cercare di risolvere qualsiasi esigenza o problema emergessero, e tutti rispondevano in modo rapido e gentile al meglio).
ma questa sembra gia’ l’ultima mail, invece qualcosina di tecnico c’e’ ancora..
da subito, grazie alle indicazioni di Alec, mi ero deciso a lavorare sul pacchetto relations, avendo inteso che uno degli obiettivi fosse quello di rendere funzionante il pacchetto in plone 3.. e il “mentore” era proprio Alec Mitchel (che ha ricevuto una nomination come uomo plone dell’anno, e numerosi consensi da parte di chi ancora non aveva avuto il piacere di conoscerlo..).
in attesa di Alec, mi sono messo a fare lobbing e a cercare di aiutare il debugging di plone 3, e seguendo un ticket piuttosto sciocco, nel piu’ classico dei meccanismi noti, sono emersi interi grappoli di questioni da sistemare..
in particolare plone 3 viene considerato da alcune delle “star” dello sprint una sorta di Frankestein
(http://www.flickr.com/photos/47748406@N00/438078055/ forse su questo ci torneremo), in ogni caso ci sono interi sotto-sistemi interamente riscritti (es. plone control panel ora si basa completamente su viste e formlib, gran bei pezzi di tecnologia Z3, capaci di gestire interfacce in modo efficiente e senza aver bisogno di oggetti instanziati a cui appoggiarsi).
queste ingenti riscritture fanno si che molto sara’ il debugging e il fixing necessario prima di poter considerare la versione 3 di plone come qualcosa di tranquillamente usabile da parte dell’utente amministratore finale.. (a naso almeno 3/4 release di aggiornamento).. nel frattempo, noi non avremo
problemi.. ma chi si scarica plone per la prima volta si!
in ogni caso il concetto che ormai ci era chiaro sta mostrando i suoi frutti.. il passaggio alle tecnologie Z3 e’ in piena fase esecutiva, e i nuovi entrati in ambito sviluppo probabilmente avranno qualche guaio proveniente dal tentativo di digerire l’attuale stato di plone “as a technology” (ancora una volta, quelli che gia’ sanno dove mettere mano non avranno grosse difficolta’, le tech Z3 in generale migliorano e di molto la vita, quindi sara’ un piacere metterci mano).
sempre nell’attesa ho anche iniziato a lavorare in coppia con Antonio, che si stava occupando delle questioni proposte da Rob Miller (altro candidato al premio di uomo plone dell’anno) inerenti il completamento dello sviluppo di Remember per plone 2.5. ricordo che Remember ha come finalità quella di sostituirsi alla normale implementazione degli utenti del portale basandosi sulle tecnologie di Membrane (ricorderete la puntata precedente). In sostanza Remember mira
a re-implementare le funzionalita’ offerte da CMFMember con le nuove tecnologie basate su PAS e Z3.
tale attivita’ e’ stata a sua volta interessante e stimolante, tanto da dover utilizzare ad un certo punto gli eventi di Zope (altra cosa molto potente introdotta in zope 2 come backport da Z3).
gli eventi di base disponibili possono essere rintracciati in parte in zope.app.events.interfaces e zope.app.container.interfaces (date un’occhiata a http://plone.org/documentation/how-to/set-up-subscriber-in-five/view per ulteriori dettagli.
a tal proposito introduco questo concetto, e che i puristi si fottano (scusate il francesismo):
1. tutto quello che c’e’ da capire del grosso di zope 3 e’ che il concetto di interfaccia/implementazione/adattatore e’ pervasivo. (assolutamente da comprare in duplice copia il libro di philikon, che tutti i plonisti/zopisti presenti hanno adottato a bibbia di Zope3: http://worldcookery.com/WhereToBuy)
2. tutto si riduce ad accoppiare un’interfaccia ad una implementazione, eventualmente mediante un adattatore, attraverso un file di configurazione, credeteci o no! :p
3. i tutorial e la documentazione necessaria agli smanettoni (chi non si leggera’ il libro di Philikon..) sono tutte gia’ al loro posto!!
questi 3 punti sono veri per la gestione degli eventi, per la gestione delle viste, per la gestione degli schemi nel nuovo modo di gestire gli schemi (es. in formlib), nella gestione delle possibilità offerte dagli oggetti (che spesso si limitano a dichiarare di voler implementare un’interfaccia specifica.. sara’ poi la configurazione zcml ad associargliela.. spettacolo!)
insomma, tornando a bomba, inutile dire che Rob molto velocemente ha apprezzato il poco che riuscivamo a dargli in cambio della sua immensa disponibilita’, e oltre a dare tutto il necessario supporto e un ottimo terreno per mettere le mani sulle nuove tecnologie, ci ha prontamente
fornito l’accesso al Poi Tracker di Remember come manager
bella soddisfazione! (certo ora un pochino dovremo contribuire.. senno saremmo veramente degli ingrati, no Antonio?!).
Remember e’ anche un ottimo modo (e soprattutto non troppo complesso) per capire cosa significa “testare” un’applicazione in modo professionale e scientifico. Nella sua cartella test ci sono una serie di moduli python, facilmente attivabili con un semplice
“./zopectl test -m remember”,
che ne testano ogni funzionalita’ prevista utilizzando la PloneTestSuite come base, modificata adeguatamente per remember.
ora, non voglio certo affermare che mettere in piedi un tale ambiente di test (unittest nella fattispecie) sia cosa semplice, ma certo, aiutandosi un po’ con la documentazione e prendendo ad esempio un prodotto come remember, molto puo’ essere compreso. oltre a cio’, il nostro compito e’ molto facilitato dal fatto che altri (coraggiosi pionieri!) hanno predisposto la maggior parte dell’ambiente di test per noi.
aggiungere test per gestire nuove necessita’ e’ questione veramente di pochi minuti per un utente esperto delle chiamate da operare.
cio’ non significa che non sia attentamente da valutare quando usare tali “finezze” per le verticalizzazioni che operiamo per esigenze sporadiche e occasionali.
significa pero’ che la qualita’ del software prodotto e la sua manutenibilita’ aumentano di molto, la qualita’ di cio’ che si rilascia pure (quindi il prezzo che potremo chiedere in cambio), e, per finire, se mai metteremo mano ad un prodotto da rilasciare per plone, o a plone stesso, se non produciamo adeguatamente dei test per ogni estensione operata, e se non siamo in grado di far validare tutti i test gia’ a corredo del software, qualcuno dice che il responsabile possa subire pene corporali
da far invidia al Torquemada..
tanto per fare un esempio, Simone e Fabrizio, che hanno operato su KSS, possono testimoniare il dispendio di energie investito anche per testare tale fronte, affatto banale, e per alcuni del tutto trascurabile.
una nota di colore (Antonio, ricordati di metterla su plone.org!): testando testando ci siamo accorti che le mail non venivano inviate da plone 3 seppur perfettamente configurato in tal senso.. il problema e’ stato risolto patchando aime’ smtplib.py dell’installazione python, una patch veramente semplice. in sostanza il server smtp ci stava rispondendo di essere capace di operare autenticazione con sistema CRAM (corretto antonio?) ma di fatto pretendeva di ricevere richieste plain:
quel che abbiamo fatto e’ stato indicare come primo sistema nella lista dei preferiti il plain, mentre di base quello richiesto era il CRAM, proposto ma non disponibile sul server.. forse la pratica non sara’
ortodossa.. ma potrebbe essere utile ad altri.
molte sono state le altre cose viste, tanto da richiedere un ulteriore mio post, ma voglio concludere con la breve sintesi della serata piu’ spettacolare che abbiamo trascorso insieme a questi gaudiosi e simpatici sprinter!
il venerdi’ sera ormai la gente si era conosciuta, e tutti avevano voglia di fare un po’ di vera baldoria.. un altro su tutti, anch’egli in nomination per il plone man of the year award: David Convent.. ma vedremo poi..
in sostanza il mitico Alec da appuntamento “ufficiale” a chiunque lo desideri per le 23.30 nella hall dell’albergo.. per una uscita collegiale.
al ritrovo il mitico barman Daniele (questo no che non concorre per il premio, ma solo perche’ non ne sa un tubero di plone!), gran dispensatore di perle di saggezza e bevute, suggerisce un pub/bar
vicinissimo all’albergo.
si va!
era il classico posto per “autoctoni“, non certo per turisti, strapieno, con un gruppo pietoso che suonava dal vivo e un mare di gente tra cui intrufolarsi. il tempo di prendere una birra e decidere che il posto non faceva per il mio gruppetto, che nel frattempo si era formato.
la pattuglia era costituita dai redomini, dagli astratti, da simone, alec, ramon bosch, il mitico Raffaele, Nadia, e kapil che andava e veniva (presto le foto su flickr
!).
ad un tratto vedo che ramon estrae un gadget niente male, il suo nokia N800 ricevuto in regalo dalla casa madre in quanto portatore di applicazioni gnome su tale gioiellino, e in tal modo si forma un
capannello da cui esce un nuovo target..
si va di nuovo!
dopo qualche minuto di passeggiata eccoci in un posto completamente diverso, molto piu’ tranquillo e fighettino, strapieno di bottiglie di vino e bella gente..
il nostro alec e’ immediatamente soddisfatto!
da buon cittadino di L.A., amante del cibo e dei vini italiani, questa era una dimensione per lui molto piu’ confortevole
qualche occhiata in giro fino ad individuare il posto giusto in cui collocarsi, e ben presto la tavola viene invasa da ottimo vino e squisiti stuzzichini per aiutare la libagione.. gran bella storia..
gli animi si scaldano presto.. il mitico rainwiz emerge per quel che effettivamente e’ (un gran bel personaggio!).. nadia ride di gusto per aver ritrovato il suo uomo in forma smagliante.. io e antonio ci facciamo due grasse risate insieme al nostro “pop-eye” :p alec e ramon se la intendono sui vini.. e su tutti vincenzo che ci magnifica con la sua presenza quale nostro anfitrione..
la serata stava andando benissimo, fino a che non sono arrivati praticamente tutti gli altri che erano usciti! (un buon 50% dei presenti allo sprint)
a quel punto e’ letteralmente esplosa! ci siamo appropriati della sala in cui ci trovavamo, i livelli di alcool erano quelli giusti in ciascuno, e tutti hanno veramente mostrato la propria voglia di divertirsi
insieme, come una scolaresca di scuola superiore in gita! e’ tutto dire!
chi non c’era si accontenti delle foto e del gran finale: il plotone in ordine sparso che se la chiacchiera tornando in albergo, chi piu’ chi meno sbandando per la strada (per la stanchezza, ma non solo).
ebbene, alcuni stanchi e non curanti, se ne sono andati di filato a letto (erano quasi le 4 del mattino), ma tutti gli altri sono andati in direzione della abandoned house…
quel personaggione di Daniele, il barman, gli aveva detto che era ricca di storie e, chissa’, infestata di fantasmi, e cosi’ in preda ai fumi dell’alcool, david, balasz, tristan, e non so chi altro hanno iniziato la scalata delle mura della casa dei fantasmi (cerca su flickr le prove..)
non diro’ come e’ andata a finire.. gli interessati chiedano ai presenti.. che qualcuno e’ rimasto addirittura dopo che io, ormai esausto e senza nessuna voglia di rischiare l’arrivo della polizia, me ne sono andato…
well guys.. that’s all for now!