Italian Perl Workshop 2009

Il 22 e 23 Ottobre si terrà a Pisa la quinta edizione dell’Italian Perl Workshop, organizzato da Perl.it e Pisa.pm in collaborazione con l’IIT-CNR (Istituto di Informatica e Telematica del Consiglio Nazionale delle Ricerche). L’evento è non-profit e rappresenta la conferenza nazionale sul linguaggio Perl e tecnologie correlate.

Alcuni importanti ospiti internazionali, non solo legati al mondo Perl, sono già confermati:

  • Tim Bunce: autore di moduli CPAN quali DBI, DBD::Oracle, Devel::NYTProf, autore O’Reilly Media, relatore a OSCON e a numerose conferenze e workshop.
  • Jonathan Worhington: core developer del compilatore Perl 6 Rakudo e della virtual machine Parrot.
  • Mike Whitaker: membro della comunità Moose, ha tenuto vari talk in altri workshop su Moose e su Perl. Mike lavora nel team di sviluppo di iPlayer della BBC ed è uno dei fondatori della Enlightened Perl Organisation.
  • Thomas Fuchs: JavaScript guru, autore di script.aculo.us, membro del core team di Prototype e di Ruby on Rails.
  • Amy Hoy: esperta di user interaction and product design, relatrice a OSCON.

20 speaker da tutto il mondo, quasi 40 interventi: più di 24 ore totali di conferenza, se li mettessimo l’uno in fila all’altro. La lista dei talk previsti è disponibile qui:

http://conferences.yapceurope.org/ipw2009/talks

Appena avremo le conferme di tutti gli interventi pubblicheremo il programma dettagliato.

Il Workshop vuole essere un’occasione d’incontro rivolta a tutti gli utilizzatori di Perl, professionisti o amatoriali che siano, ma anche a chi si avvicina per la prima volta a questo linguaggio e ne vuole conoscere le particolarità, la cultura e la comunità che lo circonda.

L’evento è gratuito: è sufficiente registrati sul sito web. La partecipazione darà diritto a:

  • accesso a tutti gli interventi
  • gadget degli sponsor
  • 2 coffee break giornalieri
  • attestato di partecipazione (su richiesta)
  • accesso all’asta finale (ove verranno battuti interessanti e validi prodotti donati dagli sponsor)

Per chi lo desiderasse, è anche possibile acquistare un supporter pack, che darà diritto alla maglietta e ad altri plus.

Per ulteriori dettagli in merito all’evento si prega di visitare il sito web di IPW 2009.

Introduzione al Perl Object Environment (POE)/2

L’articolo che segue è la seconda e ultima parte di questa introduzione al Perl Object Environment. La prima parte è disponibile a questo link.

Wheel e componenti

La prima classe di oggetti che possono aiutare a sviluppare più rapidamente le nostre applicazioni con POE sono chiamate Wheel. Si tratta di insiemi di event handler, che possono essere iniettati all’interno di una sessione per istruirla a reagire ad un più ampio insieme di stimoli senza dover faticare troppo. Un esempio semplice da seguire é quello che adopera la classe POE::Wheel::FollowTail. Si tratta di una wheel che aiuta a creare applicazioni che, come il comando UNIX tail, seguono l’evolversi di un file specificato.

[Read more...]

Introduzione al Perl Object Environment (POE)/1

Se vi siete sempre cimentati con script di shell, applicazioni web o semplici CGI — e questa è una sorte comune a molti programmatori Perl — allora siete probabilmente abituati a concepire i vostri programmi come una sequenza di operazioni che avvengono l’una dopo l’altra in maniera lineare, o al più pilotate dallo stato del sistema e dall’input fornito al programma.

Ci sono però tanti casi in cui un simile approccio non va bene: ad esempio tutto l’insieme delle applicazioni GUI, che devono essere reattive alle azioni dell’utente, e per le quali di conseguenza non è possibile individuare a priori una sequenza di operazioni da svolgere: l’impredicibilità dell’agire dell’utente, e la quantità di attori che devono modificare il proprio stato in base ad esse, impedisce — o rende molto difficile — usare il medesimo approccio che normalmente governa i programmi tradizionali. Altra categoria che può trarre beneficio da un approccio ad eventi è quella dei software che devono implementare protocolli di comunicazione con agenti esterni, come quelli di networking.

[Read more...]

Tanti Auguri Perl!

Il 18 dicembre del 1987, esattamente vent’anni fa, veniva rilasciato al mondo perl 1.0, un evento che nel bene o nel male avrebbe cambiato per sempre lo scenario informatico mondiale. Però la man page scritta da Larry Wall diceva solo :

Perl is a interpreted language optimized for scanning arbitrary text files, extracting information from those text files, and printing reports based on that information

In vent’anni Perl è diventato sempre più potente, e utilizzato in miriadi di ambiti diversi, tanto da essere definito duct tape of internet e swiss army chainsaw. Perl è stato usato per costruire quello che per un decennio è stata la definizione stessa di scalabilità, slashdot, ed è stato il primo linguaggio a integrare davvero tutte quelle caratteristiche come hash, liste dinamiche & regexp che oggi sembrano “normali”.

Ruby è un nipotino di Perl, così come PHP, e anche se non lo ammettono volentieri anche Java, Python e C# hanno pescato nelle idee che venivano dalla comunità. Mica è un caso che si parli di Perl Compatible Regex Engine.

Insomma, è vero che si può scrivere executable line noise in perl, sì va bene, è un linguaggio write only, ok, io preferisco Ruby e tanta gente preferisce altro. Però gli auguri se li merita, in fondo Dio non ha mica fatto l’universo in Lisp.

I linguaggi di programmazione più popolari in Italia nel 2007

Google Trends permette agli utenti di confrontare la popolarità di alcune chiavi di ricerca. Il servizio offerto da Google limita il confronto a cinque keyword, ma consente di definire la locazione geografica di interesse. Spinto dalla curiosità, ho deciso allora di confrontare la popolarità in Italia di alcuni linguaggi di programmazione (per l’anno 2007). Chi sarà il più popolare?

[Read more...]

Utilizziamo i device TunTap per realizzare una piccola VPN in userspace su GNU/Linux (parte 1).

Di recente sulla mailing list italiana di python è nata una discussione interessante sull’implementazione di stack
IP utilizzando python. Una scuola di pensiero relegava questo tipo di programmazione in kernel space, ma io faccio parte
dell’altra scuola…

Però sono un perlista (perdonatemi) quindi ora illustrerò come realizzare una semplice VPN completamente in userspace
(niente ipsec, kame e amici) in perl.

[Read more...]