<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.devleap.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><title type="html">Marco Russo</title><subtitle type="html">.NET, Business Intelligence e dintorni</subtitle><id>http://blogs.devleap.com/marco/atom.aspx</id><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.devleap.com/marco/atom.aspx" /><generator uri="http://communityserver.org" version="3.0.20611.960">Community Server</generator><updated>2009-08-11T15.41.00Z</updated><entry><title>Slide sessioni .NET Campus</title><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/archive/2010/03/18/slide-sessioni-net-campus.aspx" /><id>http://blogs.devleap.com/marco/archive/2010/03/18/slide-sessioni-net-campus.aspx</id><published>2010-03-18T13.57.00Z</published><updated>2010-03-18T13.57.00Z</updated><content type="html">&lt;p&gt;Per chi&amp;nbsp;è interessato a scaricare le slide delle sessioni che ho fatto a &lt;a href="http://www.dotnetcampus.it/"&gt;.NET Campus 2010&lt;/a&gt;, ecco i link:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.dotnetcampus.it/material/CSharp.zip" target="_blank"&gt;&lt;font color="#0066cc"&gt;C# 4.0&lt;/font&gt;&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.dotnetcampus.it/material/LINQ.zip" target="_blank"&gt;&lt;font color="#0066cc"&gt;LINQ – Language Integrated Query&lt;/font&gt;&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.dotnetcampus.it/material/SqlServerModeling.zip" target="_blank"&gt;&lt;font color="#0066cc"&gt;SQL Server Modeling&lt;/font&gt;&lt;/a&gt; (aka Oslo) &lt;/li&gt;&lt;/ul&gt;&lt;img src="http://blogs.devleap.com/aggbug.aspx?PostID=19418" width="1" height="1"&gt;</content><author><name>marco</name><uri>http://blogs.devleap.com/members/marco.aspx</uri></author></entry><entry><title>SharePoint Conference 2010 e .NET Campus - due conferenze terminate</title><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/archive/2010/03/14/sharepoint-conference-2010-e-net-campus-due-conferenze-terminate.aspx" /><id>http://blogs.devleap.com/marco/archive/2010/03/14/sharepoint-conference-2010-e-net-campus-due-conferenze-terminate.aspx</id><published>2010-03-14T07.01.00Z</published><updated>2010-03-14T07.01.00Z</updated><content type="html">&lt;p&gt;Questa settimana sono stato impegnato alla &lt;a href="http://www.sharepointconference.it/"&gt;Microsoft SharePoint &amp;amp; Office Conference 2010&lt;/a&gt; (Milano) e al &lt;a href="http://www.dotnetcampus.it/"&gt;.NET Campus&lt;/a&gt; (Roma). Due conferenze diverse (la prima di 3 giorni destinata a professionisti, la seconda gratuita e rivolta principalmente agli studenti, ma comunque aperta al pubblico.&lt;/p&gt;
&lt;p&gt;Partiamo dalla &lt;strong&gt;SharePoint Conference&lt;/strong&gt;: in generale mi sembra che la conferenza sia andata bene e sono rimasto impressionato... dai partecipanti! Ho curiosato tra le sale durante l&amp;#39;evento, soprattutto per&amp;nbsp;vedere il numero di partecipanti che seguivano i vari argomenti. Parlando, curiosando e sentendo le domande che venivano poste, mi sono fatto l&amp;#39;idea che il livello dei partecipanti fosse mediamente elevato. In particolare mi ha colpito il numero di partecipanti alle sessioni &amp;quot;developer&amp;quot;. SharePoint è ormai una vera e propria piattaforma di sviluppo e il concetto sembra ormai acquisito. Inoltre, questa conferenza era in gran parte dedicata alla versione 2010, che deve ancora essere rilasciata. Normalmente le conferenze di approfondimento su un prodotto raccolgono grande seguito se vengono effettuate dopo che il prodotto è uscito, non prima... Questa attenzione indica che viene compreso il fatto che la piattaforma&amp;nbsp;è complessa e richiede tempo per poter essere &amp;quot;digerita&amp;quot;, quindi è sensato partire in anticipo.&lt;/p&gt;
&lt;p&gt;Passando alle note negative... premesso che i giudizi dati a molte sessioni sono stati veramente elevati, qualche sessione non è andata per il meglio. Capita, e purtroppo è capitato anche a me! Può capitare di commettere l&amp;#39;errore di trascurare le parti che uno conosce (o dovrebbe conoscere) meglio. Poiché sto scrivendo un libro su PowerPivot (in uscita a settembre) nel preparare una sessione sulla self-service BI con SharePoint ho pensato probabilmente di non aver bisogno di riprovare tutti i passaggi delle demo di quello che sto usando da qualche mese. E, puntuale, è arrivato il problema durante la demo, cosa che avrei potuto evitare con un po&amp;#39; di attenzione. Sommando errore all&amp;#39;errore, credo che da quel punto (circa metà sessione) in poi abbia un po&amp;#39; sbagliato i tempi. Oltre a saperlo, la cosa è stata evidenziata nelle valutazioni della mia sessione (il che mi conforta un po&amp;#39;, perché significa che in generale le valutazioni sono importanti e veritiere). Sono dispiaciuto per chi fosse rimasto deluso e spero di poter rimediare in futuro, magari facendo qualche post sull&amp;#39;argomento più avanti. Soprattutto, spero di aver imparato qualcosa dall&amp;#39;errore!&lt;/p&gt;
&lt;p&gt;Seconda tappa è stata il sabato al &lt;strong&gt;.NET Campus&lt;/strong&gt;: tantissimi partecipanti, molti studenti ma anche tante persone che lavorano. E un numero per me inatteso di persone che fanno entrambe le cose! Alla sessione delle 9 su LINQ (e avere una sala piena il sabato mattina alle 9 a Roma non è qualcosa che si può dare per scontato) ho scoperto che la maggioranza dei presenti lavorano e in, buona parte, contemporaneamente studiano. Sono rimasto favorevolmente impressionato da ciò. Continuo a pensare che alla domanda &amp;quot;chi scrive i commenti nel codice&amp;quot; qualcuno abbia mentito anche a se stesso rispondendo affermativamente, ma forse è un segnale che le nuove generazioni seguono le buone abitudini: speriamo! In generale anche questo evento è andato bene e ho visto studenti (e non solo) soddisfatti. Per fortuna le mie sessioni non hanno avuto intoppi e spero di aver soddisfatto le aspettative.&lt;/p&gt;
&lt;p&gt;Prossima tappa: &lt;a href="http://www.sqlconference.it/"&gt;Microsoft SQL Server &amp;amp; Business Intelligence Conference 2010&lt;/a&gt;, dal 20 al 22 aprile a Milano. Ricordo che lunedì 15 marzo scade il termine per iscriversi con gli sconto &amp;quot;early-bird&amp;quot;... se volete venire, affrettatevi a iscrivervi!&lt;/p&gt;&lt;img src="http://blogs.devleap.com/aggbug.aspx?PostID=19411" width="1" height="1"&gt;</content><author><name>marco</name><uri>http://blogs.devleap.com/members/marco.aspx</uri></author></entry><entry><title>SQL Server &amp; Business Intelligence Conference 2010</title><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/archive/2010/02/22/sql-server-amp-business-intelligence-conference-2010.aspx" /><id>http://blogs.devleap.com/marco/archive/2010/02/22/sql-server-amp-business-intelligence-conference-2010.aspx</id><published>2010-02-22T09.34.30Z</published><updated>2010-02-22T09.34.30Z</updated><content type="html">&lt;p&gt;Da poche ore è disponibile il sito della quarta edizione di &lt;a href="http://www.sqlconference.it"&gt;Microsoft SQL Server &amp;amp; Business Intelligence Conference 2010&lt;/a&gt;, che si terrà a Milano dal 20 al 22 aprile 2010. L’edizione di quest’anno introduce molte novità, a partire dalla formula. I &lt;a href="http://www.sqlconference.it/agenda.aspx"&gt;3 giorni&lt;/a&gt; cominciano con una giornata di workshop molto verticali (il 20 aprile) a cui seguono due giornate di conferenza “tradizionale”, con tre track in parallelo per un totale di 30 &lt;a href="http://www.sqlconference.it/sessions.aspx"&gt;sessioni&lt;/a&gt; tra cui scegliere cosa vedere. Sono aumentati anche gli &lt;a href="http://www.sqlconference.it/speakers.aspx"&gt;speaker&lt;/a&gt;, arrivati a quota 16. Ed è cambiata anche la location, visto che quest’anno &lt;a href="http://www.sqlconference.it/location.aspx"&gt;la conferenza sarà nel cuore di Milano&lt;/a&gt;, ma accessibile sia in auto che con treno e metropolitana.&lt;/p&gt;  &lt;p&gt;I workshop offrono una scelta di 10 titoli diversi tra cui scegliere: ci sono workshop molto avanzati e altri più introduttivi, che coprono un po’ tutti gli argomenti della piattaforma SQL Server. Alcuni sono utili per muovere i primi passi su una tecnologia, altri sono dedicati a chi già usa certi strumenti e ha bisogno di ulteriori approfondimenti e cerca contenuti di livello avanzato. Da segnalare, tra gli altri, un workshop dedicato a &lt;strong&gt;Windows Azure e SQL Azure&lt;/strong&gt;, fruibile anche da chi non usa SQL Server ma vuole approfondire il nuovo “sistema operativo on the cloud”, e un workshop dedicato a chi vuole &lt;strong&gt;migrare una soluzione da Oracle a SQL Server&lt;/strong&gt; (io lo so che i luoghi comuni… ma credetemi, è una realtà). Ma ovviamente la cosa migliore è consultare l’&lt;a href="http://www.sqlconference.it/agenda.aspx"&gt;agenda completa&lt;/a&gt; on-line!&lt;/p&gt;  &lt;p&gt;Nella conferenza, seguendo le indicazioni emerse dall’edizione precedente, c’è uno spazio maggiore per le sessioni legate alla Business Intelligence. Il fatto di avere 3 track in parallelo ha consentito maggiore libertà nella definizione dell’agenda ed è quindi possibile saziarsi di sessioni avanzate sulla versione 2008, così come dedicarsi alle novità di 2008 R2 e di nuovi prodotti come PowerPivot e PerformancePoint Services.&lt;/p&gt;  &lt;p&gt;Avendo alcune sessioni nella conferenza ed essendo anche corresponsabile nella definizione dell’agenda, è evidente il mio conflitto di interessi – ma sono molto interessato a ricevere feedback (positivi e soprattutto negativi)!&lt;/p&gt;&lt;img src="http://blogs.devleap.com/aggbug.aspx?PostID=19394" width="1" height="1"&gt;</content><author><name>marco</name><uri>http://blogs.devleap.com/members/marco.aspx</uri></author></entry><entry><title>.NET Reflector 6</title><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/archive/2010/02/16/net-reflector-6.aspx" /><id>http://blogs.devleap.com/marco/archive/2010/02/16/net-reflector-6.aspx</id><published>2010-02-15T23.28.24Z</published><updated>2010-02-15T23.28.24Z</updated><content type="html">&lt;p&gt;Da agosto 2008 lo sviluppo di Reflector è stato preso in carico da RedGate, che ha appena annunciato il rilascio della &lt;a href="http://www.red-gate.com/products/reflector/index.htm"&gt;versione 6 di .NET Reflector&lt;/a&gt;. Oltre al supporto a .NET 4, la novità è l’add-in .NET Reflector Pro, che consente di analizzare il codice di una DLL esterna pur non avendo il sorgente.&lt;/p&gt;  &lt;p&gt;Il meccanismo (integrato in Visual Studio come plug-in) consiste nello scegliere uno o più assembly in cui si vuole “entrare” con il debugger: essi vengono decompilati nel linguaggio preferito (C# o VB) e a quel punto le chiamate alle DLL nel debugger possono essere seguite passo passo nel codice decompilato.&lt;/p&gt;  &lt;p&gt;Devo ammettere che la comodità del tool (nonché la semplicità d’uso) è impressionante. Non so quanto spesso sia utile avere uno strumento simile, ma mi vengono in mente un certo numero di episodi in cui con questo strumento avremmo trovato il problema molto tempo prima. Usando Reflector bisogna immaginare cosa fa il codice leggendolo, ma poterlo eseguire senza dover fare passaggi strani è decisamente comodo.&lt;/p&gt;&lt;img src="http://blogs.devleap.com/aggbug.aspx?PostID=19383" width="1" height="1"&gt;</content><author><name>marco</name><uri>http://blogs.devleap.com/members/marco.aspx</uri></author></entry><entry><title>Conferenze in arrivo</title><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/archive/2010/02/08/conferenze-in-arrivo.aspx" /><id>http://blogs.devleap.com/marco/archive/2010/02/08/conferenze-in-arrivo.aspx</id><published>2010-02-08T11.28.00Z</published><updated>2010-02-08T11.28.00Z</updated><content type="html">&lt;p&gt;Nei prossimi mesi ci sono diversi appuntamenti – ho pensato di fare un calendario per riassumerli (anche per me!) cronologicamente:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.sharepointconference.it"&gt;Microsoft SharePoint &amp;amp; Office Conference 2010&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;Milano, 9-10-11 marzo 2010 &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.dotnetcampus.it/"&gt;.NET Campus&lt;/a&gt; (evento gratuito)      &lt;ul&gt;       &lt;li&gt;Roma, 13 marzo 2010 &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.sqlconference.it/"&gt;Microsoft SQL Server &amp;amp; Business Intelligence Conference 2010&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;Milano, 20-21-22 aprile 2010 &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a href="http://devcon.devleap.com/"&gt;DevCon 2010&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;Milano, 18-19-20 maggio 2010 &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Terrò sessioni in ciascuno di questi eventi e non c’è bisogno che aggiunga nulla rispetto a quanto si può (o si potrà, se non sono ancora on-line le agende) vedere nei siti delle rispettive conferenze.&lt;/p&gt;  &lt;p&gt;Devo però sottolineare che mai come quest’anno a &lt;a href="http://devcon.devleap.com/"&gt;DevCon&lt;/a&gt; facciamo una grande scommessa, anzi due! Spinti dai feedback ricevuti negli anni scorsi e da considerazioni che abbiamo fatto a lungo, abbiamo rivoluzionato il modo di interpretare la nostra tradizionale conferenza rivolta agli sviluppatori. Quest’anno, infatti, avremo due giorni “mono-track”, senza sessioni in parallelo. Troppe volte ci è stato detto che (almeno su certi argomenti) era preferibile avere un flusso continuo e logico – pur alternando argomenti e speaker diversi sul palco, abbiamo scelto noi cosa “bisogna” seguire. E questa è stata la prima scommessa.&lt;/p&gt;  &lt;p&gt;Ma poiché “gambling is gambling” (l’aneddoto dietro a questa frase è una lunga storia) abbiamo pensato di fare un solo giorno di sessioni in parallelo della durata di… 30 minuti ciascuna! I motivi sono tanti, il fatto di voler trattare l’essenziale di un argomento, di coprire temi che altrimenti finirebbero “annegati” in mezzo a sessioni più generiche… Senza assecondare le tendenze più estreme (sessioni di 5 minuti – in America c’è tutto un mondo dietro questa idea e non solo per conferenze tecniche), crediamo che questa formula, per gli argomenti che abbiamo scelto, sia una buona idea. Ma è pur sempre un’altra scommessa, perché si tratta di un prima volta per l’applicazione di questa durata a un’agenda così ampia.&lt;/p&gt;&lt;img src="http://blogs.devleap.com/aggbug.aspx?PostID=19366" width="1" height="1"&gt;</content><author><name>marco</name><uri>http://blogs.devleap.com/members/marco.aspx</uri></author></entry><entry><title>PowerPivot per Excel e SharePoint</title><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/archive/2010/01/18/powerpivot-per-excel-e-sharepoint.aspx" /><id>http://blogs.devleap.com/marco/archive/2010/01/18/powerpivot-per-excel-e-sharepoint.aspx</id><published>2010-01-18T15.45.00Z</published><updated>2010-01-18T15.45.00Z</updated><content type="html">&lt;p&gt;Negli ultimi tempi sto approfondendo lo studio di &lt;a href="http://www.powerpivot.com/"&gt;PowerPivot&lt;/a&gt;, che uscirà con Office 2010 (essendo principalmente un AddIn per Excel 2010).&lt;/p&gt;
&lt;p&gt;Come tutti i nuovi prodotti, ha molte aree di miglioramento, ma indubbiamente offre degli spunti di interesse. Dal mio punto di vista, PowerPivot consente di realizzare (attraverso Excel) un vero ReportBuilder, consentendo a un power user di Excel (diciamo che un utente su 20 che usa Excel dovrebbe, statisticamente, potersi fregiare di tale qualifica) di pubblicare sulla Intranet aziendale (con SharePoint 2010) i suoi fogli con dati che si aggiornano automaticamente. Contrariamente a quello che viene pensato da alcuni, PowerPivot non sostituisce ma integra Analysis Services (tant&amp;#39;è vero che il cuore di PowerPivot è proprio Analysis Services...).&lt;/p&gt;
&lt;p&gt;Sul mio &lt;a href="http://sqlblog.com/blogs/marco_russo"&gt;blog in inglese&lt;/a&gt; ho già scritto alcuni approfondimenti su specifiche funzionalità di PowerPivot, come la funzione &lt;a href="http://sqlblog.com/blogs/marco_russo/archive/2010/01/03/how-calculate-works-in-dax.aspx"&gt;CALCULATE in DAX&lt;/a&gt; (DAX è il linguaggio con cui si scrivono le espressioni di calcolo) e come si ottiene una misura &lt;a href="http://sqlblog.com/blogs/marco_russo/archive/2009/12/26/distinct-count-measure-in-powerpivot-using-dax.aspx"&gt;DISTINCT COUNT in DAX&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Per quanto riguarda la parte di pubblicazione di SharePoint, esistono parecchie considerazioni da fare (soprattutto architetturali) e &lt;a href="http://www.sharepointconference.it/sessions.aspx#10"&gt;ne parlerò&lt;/a&gt; in maniera dettagliata alla prossima &lt;a href="http://www.sharepointconference.it/"&gt;SharePoint Conference &lt;/a&gt;che si terrà a Milano dal 9 all&amp;#39;11 marzo 2010. Le &lt;a href="http://www.sharepointconference.it/registration.aspx"&gt;iscrizioni&lt;/a&gt; sono già aperte ed è disponibile da poco l&amp;#39;&lt;a href="http://www.sharepointconference.it/agenda.aspx"&gt;agenda completa&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://blogs.devleap.com/aggbug.aspx?PostID=19355" width="1" height="1"&gt;</content><author><name>marco</name><uri>http://blogs.devleap.com/members/marco.aspx</uri></author></entry><entry><title>Code Contracts e Static Checker</title><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/archive/2009/12/27/code-contracts-e-static-checker.aspx" /><id>http://blogs.devleap.com/marco/archive/2009/12/27/code-contracts-e-static-checker.aspx</id><published>2009-12-27T10.20.00Z</published><updated>2009-12-27T10.20.00Z</updated><content type="html">&lt;p&gt;Microsoft Research sta sviluppando da tempo un progetto, &lt;a href="http://msdn.microsoft.com/en-us/devlabs/dd491992.aspx"&gt;Code Contracts&lt;/a&gt;, che consente tra le altre cose di specificare pre-condizioni e post-condizioni associate al codice di un programma .NET.&lt;/p&gt;
&lt;p&gt;Uno dei pezzi più interessanti di questa tecnologia è lo Static Checker, che durante la compilazione genera dei warning su parti di codice che non rispettano le condizioni e che talvolta possono essere la causa di un bug, magari limitato a casi limite che per la legge di Murphy si verificheranno quando è meno opportuno.&lt;/p&gt;
&lt;p&gt;Per capire meglio di cosa si tratta è sufficiente guardare &lt;a href="http://channel9.msdn.com/posts/Peli/Static-Checking-with-Code-Contracts-for-NET/"&gt;questo video di 20 minuti&lt;/a&gt; (i primi 10 bastano a capire cosa si ottiene, gli altri 10 spiegano comefunziona lo static checker internamente) di Francesco Logozzo - oltre che il nome, un evidente indizio della sua provenienza è il numero di confezioni di Illy che sono sulla mensola all&amp;#39;inizio del video!&lt;/p&gt;&lt;img src="http://blogs.devleap.com/aggbug.aspx?PostID=19331" width="1" height="1"&gt;</content><author><name>marco</name><uri>http://blogs.devleap.com/members/marco.aspx</uri></author></entry><entry><title>Call for paper: SQL Server &amp; Business Intelligence Conference 2010</title><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/archive/2009/12/14/call-for-paper-sql-server-amp-business-intelligence-conference-2010.aspx" /><id>http://blogs.devleap.com/marco/archive/2009/12/14/call-for-paper-sql-server-amp-business-intelligence-conference-2010.aspx</id><published>2009-12-14T22.24.03Z</published><updated>2009-12-14T22.24.03Z</updated><content type="html">&lt;p&gt;Dal&lt;strong&gt; 20 al 22 aprile 2010&lt;/strong&gt; si terrà a Milano la &lt;strong&gt;&lt;a href="http://www.sqlconference.it/"&gt;SQL Server &amp;amp; Business Intelligence Conference 2010&lt;/a&gt;&lt;/strong&gt;. Quest’anno la conferenza sarà a cavallo del rilascio di SQL Server 2008 R2, ma poiché si tratta di una release “minore” (anche se novità interessanti ce ne saranno) le sessioni saranno soprattutto di approfondimento su SQL Server 2008, anche se non mancheranno tutti i dettagli sulle nuove funzionalità.&lt;/p&gt;  &lt;p&gt;Quest’anno ci sarà un numero di sessioni superiore alle edizioni precedenti e un particolare rilievo sarà dato alla Business Intelligence, che non è più solo SQL Server ma si estende anche a parti di Office.&lt;/p&gt;  &lt;p&gt;Da oggi è aperto il &lt;strong&gt;&lt;a href="http://www.sqlconference.it/CFP/Default.aspx"&gt;call for paper&lt;/a&gt;&lt;/strong&gt; pubblico, rivolto a chi ha esperienze di public speaking in conferenze analoghe, italiane o estere. Le &lt;strong&gt;proposte&lt;/strong&gt; dovranno essere presentate &lt;strong&gt;entro il 7 gennaio&lt;/strong&gt; e l’agenda sarà online a partire da febbraio.&lt;/p&gt;&lt;img src="http://blogs.devleap.com/aggbug.aspx?PostID=19311" width="1" height="1"&gt;</content><author><name>marco</name><uri>http://blogs.devleap.com/members/marco.aspx</uri></author></entry><entry><title>Incontro 10 dicembre 2009 di Torino Technologies Group</title><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/archive/2009/11/29/incontro-10-dicembre-2009-di-torino-technologies-group.aspx" /><id>http://blogs.devleap.com/marco/archive/2009/11/29/incontro-10-dicembre-2009-di-torino-technologies-group.aspx</id><published>2009-11-29T15.01.33Z</published><updated>2009-11-29T15.01.33Z</updated><content type="html">&lt;p&gt;Come avevo accennato a ottobre in un &lt;a href="http://blogs.devleap.com/marco/archive/2009/10/22/nuova-community-a-torino-target-piemonte.aspx"&gt;post precedente&lt;/a&gt;, sta nascendo a Torino una nuova community, che è già stata battezzata &lt;strong&gt;Torino Technologies Group&lt;/strong&gt;. Il sito web non è ancora pronto, non appena sarà disponibile farò un post apposito.&lt;/p&gt;  &lt;p&gt;Nel frattempo, approfitto per comunicare informazioni relative al prossimo incontro&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Quando: &lt;/b&gt;&lt;b&gt;Giovedì 10 dicembre 2009 - Ore 18.00&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Dove&lt;/b&gt;: MIC – Microsoft Innovation Center, Torino     &lt;br /&gt;&lt;em&gt;Corso Castelfidardo 30&lt;/em&gt;&lt;i&gt;     &lt;br /&gt;&lt;em&gt;10129 Torino&lt;/em&gt;      &lt;br /&gt;&lt;em&gt;&lt;a href="http://www.ugiss.org/link.aspx?a=643&amp;amp;l=1947755905"&gt;http://www.microsoft.com/italy/about/mic.mspx&lt;/a&gt;&lt;/em&gt;&lt;/i&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.ugiss.org/link.aspx?a=643&amp;amp;l=811692668"&gt;MIC - Come arrivare (.doc)&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.ugiss.org/link.aspx?a=643&amp;amp;l=589589296"&gt;MIC - Mappa (.pdf)&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Il programma di questo incontro è il seguente (gli argomenti saranno in quest’ordine, per chi vuol sapere cosa si fa e a che ora):&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;Windows Embedded&lt;/b&gt; &lt;strong&gt;&amp;amp; Mobile&lt;/strong&gt; – vogliamo condividere esperienze d’uso su Windows Embedded e Windows Mobile. Abbiamo la fortuna di avere nel gruppo alcune persone che lavorano esclusivamente su queste tecnologie e potranno fornire una visione d’insieme sullo stato dell’arte e soprattutto rispondere alle domande, che sono sicuro non mancheranno da parte di chi magari è incuriosito da queste piattaforme ma non ha mai avuto modo di metterci mano.&lt;/li&gt;    &lt;li&gt;&lt;b&gt;Bug tracking&lt;/b&gt; – un po’ come abbiamo fatto nell’incontro precedente per la gestione del codice sorgente, l’idea è di condividere esperienze d’uso su prodotti che fanno da supporto a questi servizi. Avremo alcuni interventi di chi ha già usa o ha usato uno o più prodoti, max 10 minuti ciascuno, e poi discussione a ruota libera con domande e impressioni d’uso.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;L’incontro è aperto a tutti, chi vuole partecipare sarà benvenuto/a. Anche se non è indispensabile, può mandare una mail per segnalare la sua presenza (mandate pure a &lt;a href="mailto:marco@devleap.com"&gt;marco@devleap.com&lt;/a&gt;).&lt;/p&gt;&lt;img src="http://blogs.devleap.com/aggbug.aspx?PostID=19298" width="1" height="1"&gt;</content><author><name>marco</name><uri>http://blogs.devleap.com/members/marco.aspx</uri></author></entry><entry><title>PDC 2009 – niente di veramente nuovo</title><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/archive/2009/11/23/pdc-2009-niente-di-veramente-nuovo.aspx" /><id>http://blogs.devleap.com/marco/archive/2009/11/23/pdc-2009-niente-di-veramente-nuovo.aspx</id><published>2009-11-23T11.02.34Z</published><updated>2009-11-23T11.02.34Z</updated><content type="html">&lt;p&gt;La &lt;a href="http://microsoftpdc.com/"&gt;Microsoft PDC&lt;/a&gt; che si è tenuta la settimana scorsa a Los Angeles è stata una delle PDC meno “ispirate” di quelle a cui abbia mai partecipato. Cerco di spiegare meglio il mio punto di vista: il tema è stato lo sviluppo cloud usando Windows Azure e SQL Azure lato server, anticipando l’evoluzione delle RIA con Silverlight 4 lato client, con un accenno a Internet Explorer 9 che sarà ancora più bello, veloce e conforme agli standard della versione 8. Però:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;le nuove versioni di Silverlight e Internet Explorer sono un fatto quasi scontato&lt;/li&gt;    &lt;li&gt;Windows Azure è stato presentato l’anno scorso, certo ci sono stati importanti cambiamenti, ma non c’è nulla di veramente nuovo&lt;/li&gt;    &lt;li&gt;Windows 7 e Windows Server 2008 R2 sono usciti da un mese per il pubblico, da quattro mesi per gli sviluppatori. Presumibilmente stanno lavorando da un anno alle versioni successive. Assolutamente nulla a riguardo, neanche come idee delle evoluzioni che seguiranno.&lt;/li&gt;    &lt;li&gt;Su .NET Microsoft continua a dare messaggi discordanti e a questa PDC non è stato fatto molto per migliorare le cose. Tutte le funzionalità del sistema operativo sono disponibili senza .NET. Solo Visual Studio 2010 inizia a usare WPF. A parte questo, per quanto riguarda il desktop (Office 2010 in primis) sembra che in Microsoft non sappiano ancora di avere un framework a disposizione. Di questo passo, Silverlight sarà l’unico framework su cui poter fare affidamento per distribuzioni estese di un prodotto (funziona anche su Apple).&lt;/li&gt;    &lt;li&gt;Visual Studio 2010 Beta 2 dovrebbe essere feature complete. Chiaramente potrebbe essere prematuro pensare a cosa ci sarà dopo, qualcosa in qualche sessione è emerso (es. &lt;a href="http://microsoftpdc.com/Sessions/FT11"&gt;direzioni future dei linguaggi&lt;/a&gt;) ma non ci sono linee guida più generali.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;In pratica… molte sessioni di PDC sono interessanti e sono tutte &lt;a href="http://www.microsoftpdc.com"&gt;disponibili gratuitamente&lt;/a&gt; on-line, ma quello che è mancato a PDC 2009 è una linea guida più a lungo termine. Potevano essere quasi tutte sessioni buone per un TechEd Developers. Un pensiero comune che ho condiviso con diversi partecipanti è che PDC 2008 era forse troppo prematura e PDC 2009 un po’ intempestiva. Una delle due era evitabile, forse più quella di quest’anno che quella dell’anno scorso.&lt;/p&gt;&lt;img src="http://blogs.devleap.com/aggbug.aspx?PostID=19290" width="1" height="1"&gt;</content><author><name>marco</name><uri>http://blogs.devleap.com/members/marco.aspx</uri></author></entry><entry><title>Verso la fine dei dischi meccanici</title><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/archive/2009/10/23/verso-la-fine-dei-dischi-meccanici.aspx" /><id>http://blogs.devleap.com/marco/archive/2009/10/23/verso-la-fine-dei-dischi-meccanici.aspx</id><published>2009-10-23T07.54.00Z</published><updated>2009-10-23T07.54.00Z</updated><content type="html">&lt;p&gt;Quanto manca alla fine dei dischi meccanici? Degli hard disk con testine, piatti, settori, cilindri, che ci hanno accompagnato negli ultimi 30 anni? Poco, pochi anni direi.&lt;/p&gt;
&lt;p&gt;I dischi a stato solido sono una realtà. Siamo agli inizi, ci sono prodotti validi e prodotti totalmente deludenti. Ci sono prodotti costosi e prodotti economici. Bisogna fare attenzione. Ma la strada è segnata.&lt;/p&gt;
&lt;p&gt;Oggi si possono acquistare 160Gb a circa 400€+IVA (prezzo al pubblico) per un &lt;a href="http://www.intel.com/design/flash/nand/mainstream/index.htm"&gt;Intel X25-M SATA&lt;/a&gt;. Esistono prodotti più veloci e più costosi, questo è il miglior qualità/prezzo per Gb esistente, credo. Significa spendere 2,5€ a Gb. Un hard disk SATA da 160Gb oggi costa probabilmente un decimo, diciamo 40€+IVA. 0,25€ a Gb, forse si trova a meno (sicuramente il prezzo a Gb è ancora più basso per tagli più grandi. Messa così, non c’è storia. Ma se guardiamo lo storico, nel 2001/2002 avevamo dischi di una capienza e un prezzo simili a quelli del disco di cui ho parlato all’inizio. Quindi, ipotizzando un’evoluzione tecnologica che vada alla stessa velocità dei dischi meccanici, nel 2015/2016 avremo un costo per GB di un decimo rispetto a oggi. Ma il punto è che, in valore assoluto, il disco a stato solido non è più un prodotto troppo piccolo (come spazio) e troppo costoso per un uso professionale “normale”.&lt;/p&gt;
&lt;p&gt;Dopo aver letto molte recensioni, ho voluto fare una prova. Copia del disco del notebook (SATA 7200rpm, acquistato da poco) sul disco Intel X25-M. Boot da disco del notebook. Uso regolare. Prove con SQLIO. Come dire? Non saprei come tornare indietro. L’unico limite è la capacità, avevo un disco da 300Gb e dovrei tornare indietro a 150Gb.&lt;/p&gt;
&lt;p&gt;Dilemmi personali a parte, tra qualche anno questa sarà la realtà ordinaria per molti di noi. Ma cosa significa avere un tempo d’accesso random uguale a quello sequenziale? Significa che interi algoritmi e ragionamenti andranno rivisti. Per esempio, ne parlavo l’altro giorno, i piani di esecuzione di SQL Server andrebbero totalmente rivisti alla luce di un disco che ha un tempo d’accesso in lettura pari a 0? Come si ottimizza l’accesso a un disco che sotto carico ha picchi di attesa ma per il 70% fa accessi random con latenza di 0 secondi? (la media è più alta su accessi prolungati e concorrenti). Oggi SQL Server va già più veloce, ma esistono margini di miglioramento nell’uso di questa tecnologia che sono ancora da esplorare.&lt;/p&gt;
&lt;p&gt;Per tornare al quotidiano, il mio problema, oggi, è che devo smontare questo disco (destinato ad altri usi) e tornare al mio disco meccanico. Spero non per molto…&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;UPDATE 26/10/2009&lt;/strong&gt;: con le nuove tecnologie, bisogna avere un po&amp;#39; di pazienza con driver e tool vari - usando i dischi IBM è opportuno verificare di avere l&amp;#39;ultimo firmware sui dischi e i driver migliori sul sistema operativo. Intel ha una pagina di download molto utile, per esempio &lt;a href="http://downloadcenter.intel.com/SearchResult.aspx?lang=eng&amp;amp;ProductFamily=Solid+State+Drives+and+Caching&amp;amp;ProductLine=Intel%c2%ae+High+Performance+Solid+State+Drive&amp;amp;ProductProduct=Intel%c2%ae+X25-M+Solid+State+Drive%2c+160GB+SATA+II+2.5in%2c+MLC%2c+High+Performance"&gt;qui&lt;/a&gt; sono disponibili firmware e toolbox per Windows 7 dei dischi da 160Gb, ma cambiando le selezioni è possibile trovare driver e utility per altri dischi.&lt;/p&gt;&lt;img src="http://blogs.devleap.com/aggbug.aspx?PostID=19237" width="1" height="1"&gt;</content><author><name>marco</name><uri>http://blogs.devleap.com/members/marco.aspx</uri></author></entry><entry><title>Nuova community a Torino (target: Piemonte)</title><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/archive/2009/10/22/nuova-community-a-torino-target-piemonte.aspx" /><id>http://blogs.devleap.com/marco/archive/2009/10/22/nuova-community-a-torino-target-piemonte.aspx</id><published>2009-10-22T10.05.45Z</published><updated>2009-10-22T10.05.45Z</updated><content type="html">&lt;p&gt;Sta nascendo in queste settimane una nuova community per chi usa tecnologie Microsoft, basata a Torino ma rivolta a tutto il Piemonte. Il battesimo ci sarà a breve, non appena sarà disponibile il sito web. L’obiettivo è di fornire un punto di riferimento locale che diventi occasione di incontro e di scambio di esperienze, senza una particolare specializzazione verticale. In altre parole, non è una community solo per sviluppatori o solo per sistemisti, ma è rivolta a entrambi, così come ai DBA. La cosa può sembrare atipica, ma non è l’unica! L’altro aspetto è che nella community saranno privilegiate le occasioni di scambio e confronto. Pur non escludendo di fare dei veri e propri eventi (con qualcuno che prepara una sessione e fa una presentazione a tutti gli altri), il format degli incontri sarà prevalentemente quello di una tavola rotonda, dove i temi dell’incontro (definiti preventivamente!) saranno sviluppati lasciando la parola a chi su certe tecnologie ha già fatto esperienza, magari confrontando anche prodotti diversi tra loro, e quindi non solo Microsoft. Tutto questo avrà anche un impatto sul nome della community, che come ho detto sarà svelato a breve.&lt;/p&gt;  &lt;p&gt;Se qualcuno è interessato a capire meglio di cosa si tratta senza aspettare il sito e le comunicazioni più ufficiali, questa è la data del prossimo incontro.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Quando: &lt;/b&gt;&lt;b&gt;Giovedì 29 ottobre 2009 - Ore 18.00&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Dove&lt;/b&gt;: MIC – Microsoft Innovation Center, Torino     &lt;br /&gt;&lt;em&gt;Corso Castelfidardo 30&lt;/em&gt;&lt;i&gt;      &lt;br /&gt;&lt;em&gt;10129 Torino&lt;/em&gt;       &lt;br /&gt;&lt;em&gt;&lt;a href="http://www.ugiss.org/link.aspx?a=643&amp;amp;l=1947755905"&gt;http://www.microsoft.com/italy/about/mic.mspx&lt;/a&gt;&lt;/em&gt;&lt;/i&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.ugiss.org/link.aspx?a=643&amp;amp;l=811692668"&gt;MIC - Come arrivare (.doc)&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.ugiss.org/link.aspx?a=643&amp;amp;l=589589296"&gt;MIC - Mappa (.pdf)&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Il programma dell’incontro è il seguente:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Gestione codice sorgente      &lt;ul&gt;       &lt;li&gt;L’idea è di condividere esperienze d’uso &lt;/li&gt;        &lt;li&gt;Avremo alcuni interventi di chi ha usato prodotti e sistemi diversi, max 10 minuti ciascuno, e poi discussione a ruota libera con domande e impressioni d’uso &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Virtualizzazione a confronto      &lt;ul&gt;       &lt;li&gt;Avremo almeno un sistemista “serio” (la platea per adesso è a prevalenza di sviluppatori) che farà una chiacchierata introduttiva sulle tecnologie di virtualizzazione esistenti (server/desktop/prodotti/tool) e passeremo poi a un po’ di scambio di esperienze d’uso. &lt;/li&gt;        &lt;li&gt;In base alle domande e ai temi che emergeranno, valuteremo se e come fare interventi più mirati in futuro su questo argomento, che è vastissimo nelle sue molteplici ramificazioni &lt;/li&gt;        &lt;li&gt;Attenzione! NON si tratta di fare un “Hyper-V vs. VMware – chi vincerà” – quel genere di discussioni le possiamo fare di fronte a una birra magari dopo l’incontro &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Chi vuole partecipare sarà benvenuto/a. Anche se non è indispensabile, può mandare una mail per segnalare la sua presenza (mandate pure a &lt;a href="mailto:marco@devleap.com"&gt;marco@devleap.com&lt;/a&gt;).&lt;/p&gt;&lt;img src="http://blogs.devleap.com/aggbug.aspx?PostID=19234" width="1" height="1"&gt;</content><author><name>marco</name><uri>http://blogs.devleap.com/members/marco.aspx</uri></author></entry><entry><title>Programmazione multithread senza lock con STM.NET</title><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/archive/2009/09/01/programmazione-multithread-senza-lock-con-stm-net.aspx" /><id>http://blogs.devleap.com/marco/archive/2009/09/01/programmazione-multithread-senza-lock-con-stm-net.aspx</id><published>2009-09-01T06.46.04Z</published><updated>2009-09-01T06.46.04Z</updated><content type="html">&lt;p&gt;Microsoft ha da poco rilasciato una versione “sperimentale” del .NET Framework che implementa un sistema per le transazioni in memoria (&lt;a href="http://msdn.microsoft.com/en-us/devlabs/ee334183.aspx"&gt;STM.NET&lt;/a&gt;). A prima vista potrebbe sembrare qualcosa che ha a che fare con la possibilità di implementare il concetto di transazione (che siamo abituati a vedere in un database relazionale) per la manipolazione di dati in memoria, e infatti questa è una delle funzionalità disponibili. Ma l’aspetto importante di questo approccio è che può essere usato per scrivere programmi che sfruttano la disponibilità di più core senza ricorrere a tecniche di lock nell’accesso a dati condivisi.&lt;/p&gt;  &lt;p&gt;L’idea è quella di consentire al JIT di “comprendere” quali sono gli accessi a rischio di &lt;em&gt;race condition &lt;/em&gt;e di isolarli all’interno di transazioni che vengono “protette” con tecniche che possono rieseguire il codice e isolare l’effetto di una operazione interrotta da un accesso concorrente (proprio perché si usa il concetto di transazione, né più né meno di come si fa con un database).&lt;/p&gt;  &lt;p&gt;Se non avete voglia di installare questa versione del framework in una macchina virtuale (non mischiatela con la Beta di Visual Studio 2010!!), vi raccomando di dare una lettura alla &lt;a href="http://download.microsoft.com/download/9/5/6/9560741A-EEFC-4C02-822C-BB0AFE860E31/STM_User_Guide.pdf"&gt;Programming Guide&lt;/a&gt; che descrive le caratteristiche di questa tecnologia (assolutamente sperimentale, non ottimizzata, non supportata, ecc. ecc.) e che a pagina 66 mostra alcune misure prestazionali che promettono una scalabilità molto maggiore del codice scritto usando questa tecnica. Il break-even si raggiunge con 4 thread (eseguiti su 4 core), i guadagni cominciano a essere evidenti con 6 core e (cosa più importante) la curva cresce in maniera quasi lineare all’aumentare dei core (al contrario delle tecniche basate sui lock dove l’aumento dei thread non fa altro che diminuire il throughput complessivo). Seguono molti altri grafici e commenti alle differenti prestazioni ottenibili con diverse tecniche, ma il punto è assolutamente chiaro: siamo in una fase di completa transizione, l’era del multi-core è appena cominciata e con 2, 4 e forse anche 8 core su un desktop si ottiene qualche miglioramento prestazionale con il software attuale, ma guardando oltre, da qui a 5/10 anni, il codice scritto oggi è assolutamente inadeguato a sfruttare i miglioramenti prestazionali che saranno disponibili con numeri più alti di core sulla macchina.&lt;/p&gt;  &lt;p&gt;Considerato l’impatto che queste tecniche di programmazione hanno, non è assolutamente prematuro preoccuparsi oggi di questa necessità (almeno dal punto di vista degli strumenti di base, sistemi operativi, framework e compilatori) visti i tempi necessari perché una tecnologia simile sia affinate e resa disponibile in produzione. Ovviamente questi costrutti, che mirano ad aumentare il livello di astrazione nel codice di un programma che affronta situazioni di concorrenza multi-thread, dovranno diventare parti integranti dei linguaggi di programmazione. L’aspetto più complesso è probabilmente la necessità di cambiare mentalità e di riuscire a descrivere il problema in termini più astratti, pensando meno al dettaglio implementativo – cosa non facile per chi oggi è abituato a pensare in termini di lock sui singoli oggetti.&lt;/p&gt;&lt;img src="http://blogs.devleap.com/aggbug.aspx?PostID=19181" width="1" height="1"&gt;</content><author><name>marco</name><uri>http://blogs.devleap.com/members/marco.aspx</uri></author></entry><entry><title>Alert indispensabili per SQL Server</title><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/archive/2009/08/21/alert-indispensabili-per-sql-server.aspx" /><id>http://blogs.devleap.com/marco/archive/2009/08/21/alert-indispensabili-per-sql-server.aspx</id><published>2009-08-21T07.29.10Z</published><updated>2009-08-21T07.29.10Z</updated><content type="html">&lt;p&gt;Volevo segnalare questo e-book gratuito offerto da Red Gate: &lt;a href="http://www.red-gate.com/products/sql_response/offers/response_tacklebox.htm"&gt;&lt;em&gt;SQL Server Tacklebox: Essential Tools and Scripts for the Day to Day DBA&lt;/em&gt;&lt;/a&gt;. Si tratta di una guida pratica per DBA che contiene molti script ed esempi pronti per l’uso che affrontano scenari comuni ed esigenze diffuse.&lt;/p&gt;  &lt;p&gt;In particolare, trovo utilissimo il capitolo 6 per tutti quelli che si ricordano di SQL Server solo quando qualcosa va male, magari perché è semplicemente finito lo spazio su disco. Qualche allarme preventivo può evitare straordinari nel week-end perché il vostro ETL non aveva più spazio per lavorare… Anche se è un libro destinato ai DBA, credo sia indispensabile proprio in tutti quei casi dove il DBA non c’è.&lt;/p&gt;&lt;img src="http://blogs.devleap.com/aggbug.aspx?PostID=19171" width="1" height="1"&gt;</content><author><name>marco</name><uri>http://blogs.devleap.com/members/marco.aspx</uri></author></entry><entry><title>Linq to Events (Rx)</title><link rel="alternate" type="text/html" href="http://blogs.devleap.com/marco/archive/2009/08/11/linq-to-events-rx.aspx" /><id>http://blogs.devleap.com/marco/archive/2009/08/11/linq-to-events-rx.aspx</id><published>2009-08-11T13.41.00Z</published><updated>2009-08-11T13.41.00Z</updated><content type="html">&lt;p&gt;Una novità interessante di .NET 4.0 è &amp;quot;&lt;a href="http://themechanicalbride.blogspot.com/2009/07/introducing-rx-linq-to-events.html"&gt;LINQ to Events&lt;/a&gt;&amp;quot;,&amp;nbsp;una nuova estensione di LINQ chiamata anche Rx.&lt;/p&gt;
&lt;p&gt;Il risultato pratico è di poter scrivere delle logiche di concatenazione di eventi asincroni all&amp;#39;interno di una singola espressione, che (almeno con la sintassi attuale) non è ancora leggibilissimo ma è certamente più sintetico del codice che sarebbe necessario usando i comuni pattern di programmazione asincrona (BeginInvoke/EndInvoke). Al solito, la cosa che più apprezzo di questo approccio è il fatto di chiarire in maniera &amp;quot;dichiarativa&amp;quot; cosa si vuole fare, piuttosto che perdersi nei dettagli implementativi.&lt;/p&gt;
&lt;p&gt;Credo che ci voglia un attimo ad abituarsi e il debug non sia una cosa esattamente semplice - ma la strada è molto molto promettente in prospettiva e comunque già usabile con la prossima versione di .NET 4.0.&lt;/p&gt;
&lt;p&gt;Per approfondire il discorso consiglio anche la lettura di &lt;a href="http://themechanicalbride.blogspot.com/2009/08/joy-of-rx-building-asynchronous-service.html"&gt;questo post&lt;/a&gt; e di seguire quelli futuri dello stesso &lt;a href="http://themechanicalbride.blogspot.com/"&gt;blog&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://blogs.devleap.com/aggbug.aspx?PostID=19167" width="1" height="1"&gt;</content><author><name>marco</name><uri>http://blogs.devleap.com/members/marco.aspx</uri></author><category term="LINQ" scheme="http://blogs.devleap.com/marco/archive/tags/LINQ/default.aspx" /><category term="Rx" scheme="http://blogs.devleap.com/marco/archive/tags/Rx/default.aspx" /></entry></feed>