node.js conf it
in questo post vi racconteremo la nostra esperienza alla prima conferenza italiana su node.js, il nuovo e discusso framework javascript che permette di realizzare applicazioni lato server.
il keynote è stato aperto da gabriele lana che per i primi minuti si è liberato dei panni da sviluppatore per indossare quelli di un’improvvisato etologo. con dovizia di particolari degna del miglior piero angela ha raccontato alla platea un’interessante curiosità sui bombi. se siete arrivati a questo punto vi starete chiedendo cosa c’entra il bombo con una conferenza sullo sviluppo di server ad alte prestazioni in javascript. per la sua conformazione fisica il bombo non dovrebbe essere in grado di volare… ma lui non lo sa e continua a farlo. allo stesso modo, un framework che sfrutta un linguaggio di programmazione nato per vivere all’interno del browser (javascript) che gira su una virtual machine sviluppata anch’essa per un browser (google chrome), senza supporto al multithreading dovrebbe essere lo strumento peggiore del mondo per scrivere server ad alte prestazioni… ma lui non lo sa e continua a funzionare. i motivi tecnici in realtà sono tutt’altro che misteriosi, e sono dovuti principalmente alla natura asincrona del framework che è il principio cardine di tutta la sua architettura, a partire dalla libreria fondante libev fino ad arrivare al linguaggio javascript che tutti conosciamo. la natura asincrona dell’architettura minimizza i tempi di attesa della CPU nelle applicazioni server che per loro natura sono fortemente I/O Bound. mettendo da parte le questioni squisitamente tecniche, il messaggio forte che gabriele ha voluto trasmettere, è il seguente: “la teoria, ha un ruolo fondamentale. spesso illumina la strada migliore per la risoluzione di problemi pratici, altre volte serve per dare una spiegazione a qualcosa che nella pratica già succede. Bisogna sempre tenere a mente tutte e due le facce della medaglia.”
dopo l’apertura di gabriele lana, si sono susseguiti altri tre talk nell’arco della mattinata. (continua…)













