October 2009 Archives

A recensire il workshop dovrebbero essere i partecipanti e non gli organizzatori, pertanto mi asterrò quasi da ogni giudizio e scriverò quanto segue più come un diario personale dei giorni dell' Italian Perl Workshop 2009.

Arrivato a Pisa due sere prima del workshop assieme a Sabrina, Peppe si è offerto di portarci in giro a birre. Caso ha voluto che anche Mark Keating (mdk) e Matt Trout (mst) fossero giunti in città con tale anticipo così ne è uscita una piacevole serata di cena in un simpatico locale di cui non ricordo il nome seguita da birre varie allo Spaventapasseri. È stata una buona occasione per capire meglio Reaction, grazie alla lunga ed interessante spiegazione di mst.

Abbiamo trascorso in pratica l'intero mercoledì al CNR o in vari negozi ad acquistare materiale per il workshop. Appena ho visto l'auditorium mi è sembrato una cosa incredibile: è stato semplicemente fantastico vedere che eravamo riusciti ad ottenere (peraltro gratuitamente) una venue di tale livello. Qui va dato merito a bepi di essersi occupato della questione. Tra la preparazione delle borse e la sistemazione dei cartelli (che poi ci hanno anche fatto togliere, sik), abbiamo tirato un'ora sufficientemente tarda da permetterci il trasferimento al mai troppo lodato Orzo Bruno per cena + birre. Quest'anno, oltre ad essere sede del meeting pre-workshop, la birreria in questione era il luogo fissato per la storica firma dell'Atto Costitutivo di Perl.It: ben 13 di noi dovevano apporre il proprio segno sul pezzo di carta! È stato un gran momento, atteso da anni, al quale tra l'altro hanno fatto da testimoni vari attendees internazionali: oltre ai già citati mdk e mst, c'erano anche virtualsue e Tim Bunce.

Alzarsi (alle 7) il primo giorno del workshop è stata sufficientemente dura, anche a causa delle copiose pinte di birre artigianale della sera rima. In ogni caso stavo entrando in quella che mi piace chiamare la "forma workshop" e la stanchezza stava sparendo. Man mano che l'orario di "apertura dei cancelli" si avvicinava diventavo più curioso di vedere se l'evento sarebbe stato assaltato o ci sarebbe stato un afflusso graduale: con oltre 200 iscritti sul sito, ci si poteva attendere di tutto. Per evitare che io mio perdessi troppo in questi pensieri, dakkar mi ha spedito ad appendere cartelli di indicazione dalla fermata del bus fino al CNR: da solo, sotto la pioggia battente e senza ombrello. Dopo un primo momento di buon ammassamento di fronte ai banchi di registrazione, la situazione si è normalizzata, facendo prevedere un afflusso piuttosto graduale: le persone sono in effetti arrivate un po' alla spicciolata durante la mattina (ed in parte durante quella successiva). Sono persino riuscito a seguire qualche intervento, ed ho spedito Sabrina al corso di larsen: ci ha provato per un paio d'ore e poi ha desistito, evidentemente la programmazione non è per lei. Sul finire del pomeriggio ho tenuto i miei due lightning talk: Perl.It wants you e Perl e vicinanze in Gentoo Linux.
Brevissima sosta in hotel e pronti-via verso il ristorante per le cena dei partecipanti: mangiato direi alla grande per quanto in quantità forse eccessiva: in molti hanno lasciato lì buona parte del secondo. A fine cena mst ha trascinato me ed altri in centro per qualche pinta celebrativa fino all'1, ora di chiusura dei locali di Pisa nei giorni infrasettimanali.

Secondo giorno di workshop ed altra levataccia: bepi, pur non avendo tirato tardi la sera prima, non si è presentato puntuale a colazione così ho fatto da solo ed ho poi preferito andare al CNR a piedi (due passi ci volevano, e per puro caso in quel momento c'era uno sprazzo di cielo sereno). Sabry ha deciso di dedicare la giornata ad un giro in centro con shopping, per presentarsi al CNR giusto per l'asta di chiusura. Al mattino sono riuscito a seguire il talk di polettix su Amazon::S3, al termine del quale peppe ha dovuto esibire il cartello di ALT a me e ferz che ormai avevamo dato vita ad un talk tutto nostro. :-) A differenza del giorno precedente, il giovedì sono persino riuscito a pranzare, con joel e mirod, in un piacevole ristorantino vicino alla venue, dove abbiamo mangiato bene e avuto qualche problema con le ricevute fiscali. Il pomeriggio è stato allietato dall'allucinante (in senso positivo) talk di mst dal nome Antiquated Perl, e poi mi sono un po' rilassato in zona reception fino all'asta finale. Qui non mi sono fatto mancare nulla, acquistando 3 libri ed un presenter... ho speso, ma comunque meno rispetto al 2008 quando mi ero decisamente rovinato. Alla fine di tutto, quando alla soddisfazione si mescola anche un po' di ovvia malinconia, non resta che smontare faticosamente tutto (ed andare a togliere i cartelli fino alla fermata del bus ovviamente...), chiacchierando su cosa è andato bene e su cosa si può migliorare. Tanto per gradire, siamo andati poi a finire all'Orzo Bruno, dove c'erano anche gran parte dei partecipanti che rimanevano a Pisa anche quella sera, mangiando qualcosa e festeggiando l'ottima riuscita anche di quest'edizione dell'Italian Perl Workshop.

Alla fine di tutto: 124 partecipanti (che ringrazio) in 2 giorni di convegno; 3 tracce contemporanee il primo giorno, 2 il secondo; metà interventi in inglese e metà in italiano. E la YAPC::EU 2010 da organizzare a Pisa il prossimo anno. In definitiva, credo proprio che ci sia di che essere soddisfatti.

I Perl Mongers italiani, che includono me, sono lieti di annunciare la nascita dell'Associazione di promozione sociale Perl.It. Si tratta della doverosa formalizzazione di quanto da anni si sta facendo in Italia per promuovere Perl, a partire dall' Italian Perl Workshop.

Grazie all'Associazione saremo in grado di organizzare la YAPC::EU 2010, prevista a Pisa nell'Agosto del 2010.

Per maggiori informazioni, consulta la pagina dell'Associazione:

http://www.perl.it/associazione/index.html

Qui si trovano alcune slide (in XUL, quindi serve Firefox per visualizzarle) relativa alla situazione attuale del Perl in Italia che ho presentato a IPW 2009.

It's sometimes useful, or even necessary, to represent strings containing accented or other letters, which are outside of the US-ASCII set, as pure ASCII. That is, for instance:

perché   ==> perche

This transliteration might be desirable for various reasons, mainly to use the string somewhere where only ASCII is supported (or desirable). Some folks call this process deaccent, as it's commonly used to remove accents from words in order to make comparisons possible. In practice, accents are not necessarily the only problem, and you'll want to handle things like:

straße   ==> strasse
Tromsø   ==> Tromso

There's a CPAN module which can help here: Text::Unidecode by Sean M. Burke.

use utf8;
use Modern::Perl;
use Text::Unidecode;

for my $word(qw/Tromsø perché straße/) {
    # ASCII representation
    say unidecode($word);
}

This will print, as expected:

Tromso
perche
strasse

As you can see in the module documentation, it's not meticulous, so it doesn't always do a good job. However, Text::Unidecode works nicely with Western European languages along with some others.

Real World Haskell
Bryan O'Sullival, John Goerzen & Don Stewart
O'Reilly Media, 2008
ISBN: 978-0-596-51498-3
US$ 49.99

Rating: 5/5 (excellent)

When Real World Haskell arrived in my studio, I knew almost nothing about this language, except for the fact that Haskell could have helped me to become a better programmer, even when continuing to code in another language (Perl, in my specific case). This book not only succeeded in this task, but made me realize that I really like Haskell (unlike Lisp, to say it all: all those parentheses have irritated me from the very first time I saw the language). The appealing syntax and the powerful language features make Haskell a charming language, which also happens to be very useful in the real world with an increasing user base and a variety of libraries available.

This is a solid book of nearly 700 pages, which guides the reader into the language from the basics. The authors know that the mind shift for programmers coming from imperative languages can be hard, and they therefore help the reader by providing comparisons with other languages, especially C, C++ and Java; these are not just a couple of words, but full blown examples with source code.

Haskell features are unveiled a few at a time, while looking at real world examples. Chapters either gather together one or more topics (fex. monads, concurrent programming, ...) or walk through the construction of specific programs (fex. barcode recognition, JSON parsing, ...). Regardless of the contents of each chapter, explanation revolves around code. Any given language feature is explained in words and sentences, but it's the huge amount of code samples - often commented line by line - which makes the reader understand the concepts.

Speaking of concepts, these tend to occur several times throughout the book: they are often briefly described a second time (which is quite useful) when they happen to be used again, and a pointer to the page with the full explanation (which can also be located later in the book as opposed to previously) is provided.

The authors put also a lot of effort on beauty, non-redundancy and efficiency. Code can pass through several stages: it is first shown you in the most obvious form, and is then optimized in many clever (and very "Haskellish") ways. This is a very interesting part of it all: it's where one learns how to write beautiful code.

All in all, Real World Haskell is an outstanding book: it makes for an excellent introduction to Haskell and works very well as a tutorial on how to write good software. Five stars, absolutely.

About this Archive

This page is an archive of entries from October 2009 listed from newest to oldest.

September 2009 is the previous archive.

November 2009 is the next archive.

Find recent content on the main index or look in the archives to find all content.

Categories

Pages

OpenID accepted here Learn more about OpenID
Powered by Movable Type 5.14-en