Italian Perl Workshop 2009
<p>Il 22 e 23 Ottobre si terrà a Pisa la quinta edizione dell’Italian Perl Workshop, organizzato da <a href="http://www.perl.it/" target="_blank">Perl.it</a> e <a href="http://pisa.pm.org/" target="_blank">Pisa.pm</a> 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.</p>
<div id="current">
<p>Alcuni importanti ospiti internazionali, non solo legati al mondo Perl, sono già confermati:</p>
<ul>
<li><strong>Tim Bunce</strong>: autore di moduli <span class="caps">CPAN </span>quali <span class="caps">DBI, DBD</span>::Oracle, Devel::NYTProf, autore <span class="caps">O’R</span>eilly Media, relatore a <span class="caps">OSCON </span>e a numerose conferenze e workshop.</li>
<li><strong>Jonathan Worhington</strong>: core developer del compilatore Perl 6 <a href="http://rakudo.org/">Rakudo</a> e della virtual machine Parrot.</li>
<li><strong>Mike Whitake</strong>r: membro della comunità <a href="http://www.iinteractive.com/moose/">Moose</a>, ha tenuto vari talk in altri workshop su Moose e su Perl. Mike lavora nel team di sviluppo di iPlayer della <span class="caps">BBC </span>ed è uno dei fondatori della Enlightened Perl Organisation.</li>
<li><strong>Thomas Fuchs</strong>: JavaScript guru, autore di script.aculo.us, membro del core team di Prototype e di Ruby on Rails.</li>
<li><strong>Amy Hoy</strong>: esperta di user interaction and product design, relatrice a <span class="caps">OSCON.</span></li>
</ul>
<p>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:</p>
<p><a href="http://conferences.yapceurope.org/ipw2009/talks" target="_blank">http://conferences.yapceurope.org/ipw2009/talks</a></p>
<p>Appena avremo le conferme di tutti gli interventi pubblicheremo il programma dettagliato.</p>
<p>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.</p>
<p>L’evento è <strong>gratuito</strong>: è sufficiente registrati sul sito web. La partecipazione darà diritto a:</p>
<ul>
<li>accesso a tutti gli interventi</li>
<li>gadget degli sponsor</li>
<li>2 coffee break giornalieri</li>
<li>attestato di partecipazione (su richiesta)</li>
<li>accesso all’asta finale (ove verranno battuti interessanti e validi prodotti donati dagli sponsor)</li>
</ul>
<p>Per chi lo desiderasse, è anche possibile acquistare un supporter pack, che darà diritto alla maglietta e ad altri plus.</p>
<p>Per ulteriori dettagli in merito all’evento si prega di visitare il <a href="http://www.perl.it/workshop/">sito web di <span class="caps">IPW</span> 2009</a>.</p>
</div>
Tutorial gratuito di Django
<p>
In anteprima esclusiva per <a href="http://stacktrace.it">Stacktrace.it,</a> Apogeo ha deciso di rilasciare gratuitamente una cospicua parte del testo di <a href="http://www.apogeonline.com/libri/9788850328178/scheda">Sviluppare applicazioni WEB con Django</a> a cura del "nostro" Marco Beri.
</p>
<p>
La <a href="/site_media/luambo/uploads/2009/09/14/Copia_visione_Django.pdf">parte rilasciata</a> comprende il tutorial iniziale di sette capitoli più tre capitoli finali.
</p>
<p>
Grazie alla disponibilità di Apogeo sarà quindi possibile scaricare <a href="/site_media/luambo/uploads/2009/09/14/Copia_visione_Django.pdf">il PDF di 115 pagine</a> dai nostri server ed usarlo come un tutorial gratuito di Django.
</p>
<p>
La scelta oculata dei capitoli permette infatti di leggerlo come un tutorial utile di per sé anche senza l'acquisto del resto del libro (che è comunque consigliato).
</p>
<p>
La copia visione contiene i seguenti capitoli:
</p>
<ul>
<li>Introduzione</li>
<li>1. Installazione, a.k.a. "Hello World"</li>
<li>2. Il database</li>
<li>3. L'Admin</li>
<li>4. Gli URL</li>
<li>5. I template</li>
<li>6. I form</li>
<li>7. Django e Apache</li>
<li>18. Navighiamo tra i dati (databrowse)</li>
<li>19. Uscire dal seminato (generare file non HTML)</li>
<li>20. Pulito sì, fatica no (Ajax)</li>
</ul>
<p>
<a href="/site_media/luambo/uploads/2009/09/14/Copia_visione_Django.pdf">Scaricatelo</a>, commentate liberamente sul suo contenuto, e se potete <a href="http://twitter.com/home?status=RT%20%40stacktrace%20Tutorial%20gratuito%20di%20Django,%20estratto%20dal%20libro%20della%20Apogeo:%20http://bit.ly/OSuop.%20Fate%20passaparola.">fate passaparola</a>.
</p>
Yes, I am a data geek /1
<p>
Riprendo a parlare di programmazione, dopo i <a href="http://blog.liquida.it/2009/09/liquida-e-blogbabel-insieme-per-valorizzare-la-blogosfera/">deragliamenti di questi giorni</a>, con il primo di una serie aperiodica di post sulla manipolazione dei dati. È un argomento che mi ha sempre affascinato, e in questa serie descriverò per ogni post un piccolo problema che mi è capitato di dover risolvere lavorando, e una delle sue possibili soluzioni.
</p>
<p>
In questo primo post vi racconto un problemino che mi è capitato sottomano giusto ieri in ufficio: come calcolare degli aggregati periodici (ad esempio ogni 5 minuti) da un elenco di rilevazioni del traffico di un servizio. I dati che ho ricevuto erano in formato Excel, ma per semplificarci la vita senza inciampare in tabelle pivot e soprattutto dato che siamo <em>geek</em>, per trattarli utilizzeremo un database relazionale (nel mio caso MySQL).
</p>
⇢ questo post continua, leggi il resto
Linux kernel hacking: real-time backup con i kernel tracepoints
<p>
I tracepoint (Documentation/trace/tracepoints.txt) sono degli hook “lightweight” che possono essere piazzati in determinati punti nel codice del kernel per registrare l’occorrenza di determinati eventi.
</p>
<p>
Un tracepoint definisce automaticamente la “probe function” che potrà essere piazzata in punti desiderati all’interno del codice del kernel (instrumentation).
</p>
<p>
Ogni volta che l’esecuzione passa da tali punti la “probe function” viene invocata e l’infrastruttura di tracing provvede a salvare il contesto dell’evento e le informazioni desiderate all’interno di un tracing buffer. Il tracing buffer sarà poi accessibile dallo userspace tramite il debugfs (/sys/kernel/debug/tracing/trace).
</p>
<p>
I kernel tracepoint sono utilizzati tipicamente come strumento di debug per tracciare in tempo reale l’occorrenza di particolari eventi, raccogliere statistiche, ecc.
</p>
<p>
In questo articolo vedremo un utilizzo dei tracepoint un po’ diverso dal solito e sfrutteremo la capacità di tracking in tempo reale e la leggerezza dell’infrastruttura dei tracepoint per realizzare un sistema di notifiche efficace e soprattutto a basso overhead.
</p>
⇢ questo post continua, leggi il resto