Chi come il sottoscritto ha problemi di "affaticamento" con la lingua inglese, deve sapere che da ieri è attivo su MSDN il nuovo forum italiano su Silverlight. Il forum è stato aperto dal team di Microsoft Italia sulla piattaforma di forum MSDN assieme ad altri riguardanti ASP.NET, C# etc. Chi avesse domande in merito mi troverà nel forum in qualità di moderatore e ovviamente attivo anche nelle risposte.

Spero di vedervi numerosi, attivi nelle domande ma anche e soprattutto nelle risposte perchè da solo difficilmente riuscirò a soddisfare le necessità di tutti... :)

Link: http://social.microsoft.com/Forums/it-IT/silverlightit/threads

tags: - categories: XAML

ProModelAppScreenShot263x211 Che Silverlight si stia muovendo verso le applicazioni di "Line of Business" è ormai abbastanza chiaro, soprattutto guardando alcune delle novità presenti nella ultime release 3.0.

Stamane in questo post di Tim Heuer c'è la dimostrazione che i passi fatti stanno dando i frutti attesi. Vi invito a vedere l'applicazione realizzata dall'esercito degli stati uniti per la gestione della logistica e delle proprie risorse umane con Silverlight e gli strumenti di DevForce.

Poi magari iscrivetevi al prossimo meeting del 6 Novembre 2009 in cui vi intratterro per un'ora abbondante sugli strumenti presenti e futuri di cui Silverlight è dotato per questa tipologia di applicazioni, che nel bene o nel male interessa la maggior parte di noi.

Nel post di Tim troverete tutti i link a case-study di DevForce.

Link: Army of One…and Silverlight


In un post di ieri sul blog del programma MVP viene proposto un utile elenco di shortcut da tastiera disponibili in Windows7. Vi consiglio di darci un'occhiata perchè sono veramente eccezionali. Il mio preferito è WIN + SHIFT + left or right che consente di spedire velocemente le finestre da un monitor ad un'altro quando siete in modalità multimonitor.

Link: Keyboard Krazyness With Windows 7


Ecco l'elenco dei nuovi Community Meeting in programma a partire dal prossimo 25 Settembre:

25 Settembre 2009 – PATTERN TRACK

  • Model-View-ViewModel Applied: real world WPF application
  • Model-View-ViewModel e la UI Composition: WPF Power

16 Ottobre 2009 – TFS TRACK

  • Team Foundation Server Database Edition
  • Scrum for Team System, non solo teoria

6 Novembre 2009 – WEB TRACK

  • Windows Communication Foundation: normalizzare e controllare i servizi WCF
  • Silverlight do it better: Silverlight, Ria Services e le LOB Applications

11 Dicembre 2009 – DATA TRACK

  • Entity Framework 4.0: Promessa mantenuta?
  • Dynamic Data 4.0

Vi segnalo inoltre la presenza di due nuovi Virtual Meeting, che si terranno per mezzo di Live Meeting nelle seguenti date:

30 Ottobre 2009 – Dynamic (Language) Programming for the Static (-cally Typed) Programmer

20 Novembre 2009 – Microsoft Velocity: overview, practical setup and usage

Per iscrizioni:

http://www.xedotnet.org/nextmeetings.aspx

http://www.xedotnet.org/virtual-meetings.aspx

tags: - categories: News

bordertown_ver2 Ieri sera mi sono concesso una serata televisiva e ho visto il film BorderTown con Jennifer Lopez. Il film è davvero inquietante e me ne sono andato a letto con l'amaro in bocca, non prima di aver controllato sul fondo del mio PC il luogo in cui è assemblato. La scritta "POLAND" mi ha tranquillizzato, ma ricordo ancora la che sul mio primo Palm un marchio sul retro recitava "made in mexico".

Nel film si narra una storia ispirata alla realtà, in cui una giornalista si imbatte nella situazione creata nelle zone di frontiera dagli accordi NAFTA. Questi accordi hanno portato alla nascita di una serie di aziende dedite soprattutto all'assemblaggio di apparecchiature elettroniche, grazie al bassissimo costo della manodopera (nel film si parla di 5$ al giorno).

Non sto a raccontarvi il film, che peraltro non è nemmeno così articolato nella trama, ma fossi in voi un'occhiata gliela darei, non fosse altro che per poi controllare quanti "made in mexico" ci sono in casa e quanto si sia involontariamente contribuito incredibile alla situazione.

Technorati Tags: ,,

La scorsa domenica sono tornato dalle vacanze estive a Zacinto, e come mi è consueto è giunto il momento di farne un breve riepilogo, non foss'altro perchè quest'anno le ferie si possono dire perfettamente riuscite. Inoltre, se c'era bisogno di una dimostrazione che operatori La spiaggia del Naufragioturistici e agenzie di viaggio siano inutili e inutilmente dispendiosi, il viaggio da cui sono felice reduce ne è la piena conferma.

Zacinto (o Zante) è una splendida isola, facente parte dell'arcipelago delle Ionie, che ha la piacevole caratteristica di godere di una lussureggiante vegetazione di bassi ulivi, cipressi e altre piante tipiche della macchia mediterranea. Questa caratteristica che la distingue  da altre isole della Grecia si nota già in lontananza mentre si giunge in traghetto dal vicino porto di Kyllini dopo circa un'ora e un quarto di navigazione. La città infatti è adagiata al centro di una grande valle che si estende sul versante est dell'isola da nord a sud - interrotta solo da piccole colline nei dintorni della capitale - che è anche la zona più densamente popolata dell'isola.

Giunti sull'isola ci siamo immediatamente resi conto di essere stati particolarmente fortunati (o abili?) nella scelta dell'alloggio. Pur nella sua bellezza l'isola di Zacinto infatti tende in due o tre cittadine a scadere pericolosamente nello sfrenato turismo. Tsilivi, Laganas, e in parte Alykes sono luoghi che vanno accuratamente evitati a meno che non si cerchi una vacanza stile "notti brave". Noi invece abbiamo scelto un alloggio presso la spiaggia di Psarou Beach, nella parte nord orientale dell'isola sufficientemente distante da Tsilivi e Alykes da risultare un luogo di singolare tranquillità.

Nemorosa houses è un gruppetto di case a solo 150 metri dalla spiaggia di Psarou Beach, immerse tra gli ulivi che di giorno regalano un forte frinire di cicale, e di notte un rilassante silenzio. Le case, gestite da una famiglia greca che alloggia nello stesso complesso, sono dotate di tutti i comfort necessari - compreso l'impianto di aria condizionata che peraltro non abbiamo mai usato - e vengono pulite giornalmente in modo eccellente. Se aveste intenzione di andare a Zacinto non posso non consigliarvi queste case (vedi figura a fianco).

L'isola si visita abbastanza facilmente, soprattutto se come noi vi portate la macchina, anche se ci vuole un po' di tempo a familiarizzare con le contorte indicazioni stradali che quando non sono del tutto assenti tendono a complicare la vita piuttosto che indicarvi la strada. Tuttavia, se trovate una buona carta - spendeteci Nemorosa Housesalmeno una decina di euro se non volete che poi qualcuno vi faccia notare come è successo a noi che la carta è sbagliata - raggiungere le località principali dell'isola è semplice. Vi consiglio di scegliere nei primi giorni un giro dell'isola in barca (assicuratevi di usare un operatore serio e rispettoso dell'isola) così da familiarizzare con le decine di spiaggie che poi potrete raggiungere con la macchina e visitare quelle che invece sono inaccessibili come la famosa spiaggia del Naufragio (Navajo) considerata a ragione una delle più belle del mediterraneo per la sua sabbia bianca e le scogliere a picco.

I luoghi da vedere sono innumerevoli. Oltre alla citata spiaggia del naufragio vi consiglio le Blue Caves a capo Skinari dove potrete anche scendere a piedi e fare snorkeling su 8 metri di limpida acqua. Inoltre la spiaggia con le acque sulfuree di Xigia e la vicina Makri Gialos, la bella spiaggia di Marathia nella parte sud dell'isola il faro di Keri e la spiaggia di Geracas dove se avete un minimo di amore per la natura eviterete accuratamente di affittare un ombrellone per non disturbare i nidi dei piccoli delle tartarughe caretta-caretta (peraltro in via di estinzione) che scelgono ogni anno questa spiaggia per riprodursi.

Va detto che i greci non hanno gran che di amore per le proprie risorse naturali e archeologiche. Ho visto con i miei occhi violare la tranquillità di splendide spiagge da imbarcazione affittate dai villaggi turistici, e non mi riferisco a piccoli natanti ma a grandi navi turistiche con un centinaio di passeggeri. Così le spiagge delle tartarughe sono lasciate alla sorveglianza di un manipolo di ecologisti volontari che devono difendere i nidi dall'invasione di un'orda di turisti-idioti. Mi hanno raccontato che sull'isola vi è una strada che porta alla spiaggia di Dafni la quale viene di anno in anno asfaltata dall'amministrazione e puntualmente distrutta nottetempo dagli ecologisti che tentano di arginare il turismo selvaggio e irrispettoso della natura.

Tuttavia Zante è un'isola da vedere e godere sicuramente. Si mangia bene, ci sono spiagge belle e tranquille e per chi lo desidera anche luoghi ameni e divertimenti per chi ama la vita nottuna. Io ve la consiglio.

Technorati Tag: ,,,

moon_apollo Non nascondo di essere un fan sfegatato dei viaggi interplanetari e delle missioni spaziali. Oggi come molti festeggio il 40esimo anniversario dell'allunaggio da parte del mitico Apollo 11, ma lo faccio con un pizzico di amarezza. Tale amarezza deriva dalla consapevolezza che nonostante siano passati quarant'anni, cioè praticamente la durata della mia vita fino ad oggi, siamo ancora fermi al palo, a guardarci indietro ai fasti di queste missioni senza la capacità di progredire oltre, senza che nessun'altro abbia mai più messo piede sul nostro satellite e senza che le ventilate possibilità su una missione per Marte abbiano in qualche modo guadagnato una certa concretezza.

Certo direte voi, stai con i piedi per terra, renditi conto che andare sulla Luna non è poi così utile, ma rimane la consapevolezza che se lassù non ci siamo più andati dipende dal fatto che non siamo ancora stati in grado di risolvere i problemi quaggiù. Se fossimo stati abbastanza intelligenti come esseri senzienti, i problemi della fame e delle guerre sarebbero risolti e potremmo guardare con speranza alla vastità del cielo che ci aspetta per essere esplorato. Se fossimo solo un po' più intelligenti potremmo intuire che nell'esplorazione spaziale non si cela solo la supremazia di un popolo rispetto agli altri, ma forse la possibilità di avere nuovi orizzonti da esplorare, possibilmente risorse da sfruttare e anche solo una spinta tecnologica innovativa. Tutte opportunità che ci potrebbero aiutare a risolvere i problemi che nei prossimi anni dovranno per forza di cose acutizzarsi.

Festeggiamo quindi le nostre conquiste, ma nel celebrare i fasti passati pensiamo a costruire un mondo nuovo e migliore sulle basi della ricerca, dell'intelligenza e della scienza. Le nostre uniche possibilità di rimanere a galla come forma di vita.


Recentemente ho avuto la necessità di scrivere un batch in C# che nottetempo facesse delle operazioni un po' pesanti su un database, attingendo ai dati, compiendo elaborazioni e alla fine salvando i risultati nel medesimo database. Dopo un po' di test mi sono reso conto che il problema principale era dato dai timeout che saltuariamente il batch otteneva su alcune query con il rischio di compromettere l'integrità del lavoro.

Così, LINQ alla mano mi sono create un piccolo script che, presa in carico una operazione effettua un numero dato di tentativi intervallati da un ragionevole timeout così da dare il tempo al database di fare il suo lavoro.

   1: /// <summary>
   2: /// Does the retry.
   3: /// </summary>
   4: /// <param name="maxRetry">The max retry.</param>
   5: /// <param name="waitTimeout">The wait timeout.</param>
   6: /// <param name="action">The action.</param>
   7: public static void DoRetry(int maxRetry, int waitTimeout, Action<int> action)
   8: {
   9:     for (int current = 1; current <= maxRetry; current++)
  10:     {
  11:         try
  12:         {
  13:             action(current);
  14:             return;
  15:         }
  16:         catch (SqlException ex)
  17:         {
  18:             // TIMEOUT | DEADLOCK
  19:             if (ex.Number != -2 && ex.Number != 1205)
  20:                 throw ex;
  21:         }
  22:  
  23:         Thread.Sleep(waitTimeout);
  24:     }
  25: }

Lo script è davvero semplice e pulito. Chiede in ingresso il numero massimo di tentativi e il tempo di attesa, oltre ad una Action<int> ovvero una lambda expressione con l'azione da compiere. Poi fa un semplicissimo ciclo for che ad ogni iterazione chiama l'Action. Nel caso vada tutto bene esce altrimenti - in caso di timeout o di deadlock - attente il timeout e riprova. Naturalemente in caso di diversa eccezione il metodo notifica l'eccezione al chiamante. Ecco come usarlo:

   1: public void ExecuteLongRunningQuery(int parameter)
   2: {
   3:     Operations.DoRetry(5, 10000,
   4:         n =>
   5:         {
   6:             DataStore.LongRunningQuery(parameter);
   7:         });
   8: }

Poche righe e otteniamo di ripetere la query 5 volte intervallata di 10 secondi l'una dall'altra. Il parametro "n" che viene passato alla lambda è il numero di iterazione corrente e permette di scrivere in un ipotetico log il numero di tentativi effettuati.

Technorati Tags: ,

Con l'arrivo un po' travagliato della release 3.0 di Silverlight ho pubblicato alcuni articoli nuovi su .

Buona lettura a tutti.


In questa pagina trovate i 3 video di Scott Guthrie che parla di Silverlight presso il .NET London User Group.

Nell'abstract dei video si legge anche:

In Part 1 Scott summarises the key features of Silverlight 3.
In Part 2 he gives a walkthrough of the new SketchFlow product, including demonstration of some features "not previously shown in public".
In Part 3 he uses coding examples to show the core Silverlight 3 concepts, and takes a lively Q & A session.

Buona visione.

http://exposureroom.com/members/RIAViewMirror.aspx