venerdì 10 dicembre 2010

Il futuro visto da Microsoft Office Labs

Non posso fare a meno di condividere con i lettori del mio blog questo articolo, che oggi sembra descrivere una realtà ancora lontana, ma che penso potrebbe diventare tra non molti anni qualcosa di molto reale e concreto. Nel guardare il video linkato nell'articolo, ho avuto la stessa sensazione di quando ho scoperto l'esistenza del progetto Natal (oggi commercializzato con il nome di Kinect): pensare che il nostro stesso corpo potesse diventare un controller mi aveva lasciato meravigliata, eppure oggi è una cosa quasi scontata.
Insomma quello che oggi ci sembra lontano, già domani potrebbe far parte della nostra quotidianità!


lunedì 22 novembre 2010

Presentazione del proggetto Creative Swarm

Chi non ha potuto assistere alla lunch session dell'evento di martedi scorso, nel corso della quale è stato presentato il progetto Creative Swarm, può trovare i relativi video a questo link.

mercoledì 17 novembre 2010

Community Tour Sviluppare per Windows Phone 7: il giorno dopo

Semplicemente un GRAZIE a tutti coloro che hanno preso parte alla giornata di ieri, e a tutti coloro che ne hanno reso possibile la realizzazione.

Ieri mattina, mentre continuavano ad arrivare persone, ho avuto paura che non bastassero i posti a sedere...ma per fortuna questa volta, ci siamo fermati appena al di sotto delle 300 presenze.

Intanto vi anticipo che noi di OrangeDotNet stiamo già cominciando a pensare ai prossimi appuntamenti...


martedì 9 novembre 2010

Community Tour Sviluppare per Windows Phone 7

Esattamente tra una settimana ci ritroveremo di nuovo insieme per un altro evento di OrangeDotNet in collaborazione con Microsoft. Questa volta il protagonista sarà Windows Phone 7 e tutti gli strumenti di sviluppo che ruotano attorno a questo nuovo sistema operativo.
Per i dettagli sull'agenda vi rimando alla pagina ufficiale sul nostro sito e vi invito a iscrivervi all'evento a questo link.
Per partecipare ai laboratori, che come riportato dall'agenda si terranno tra le 12 e l 14, è necessario prenotarsi, inviando una mail a itamsdnATmicrosoft.com e portare con se il pc sul quale avete installato i tool per lo sviluppo e Zune.

Vi ricordo inoltre che nel corso della lunch session verrà presentato il progetto Creative Swarm, che è ormai pronto a prendere il volo!

Vi aspettiamo numerosi come sempre!

domenica 24 ottobre 2010

Programmare ad oggetti con C#...e con i colleghi ingegneri

Riuscire a sintetizzare in qualche ora di corso, le specifiche del C# e le tecnologie che ruotano intorno al mondo .Net, non è stato semplice. Ma il numero e l'attenzione dei presenti, e la quantità di domande che ci è stata rivolta, ci dà la certezza che siamo riusciti a far nascere in loro la curiosità per lo sviluppo di applicazioni in C#.

Quello che abbiamo cercato di fare insieme a Luca e Sergio, è stato anche quello di portare lo spirito di community (voglia di condividere e confrontare le nostre conoscenze ed esperienze professionali) nato con l'esperienza di OrangeDotNet, all'interno di una struttura rigida come è quella di un ordine professionale.

Abbiamo dimostrato che tra i linguaggi di programmazione orientato agli oggetti, C# è sicuramente quello più evoluto, e con gli strumenti forniti da Visual Studio 2010 (e a breve anche dalla sua versione LightSwitch) sviluppare applicazioni per il framework .Net è una strada in discesa.

Grazie a tutti coloro che hanno partecipato al corso, e adesso vi aspetto alla tappa catanese del Community Tour dedicato allo sviluppo di applicazioni per Windows Phone 7, il 16 novembre presso l'aula magna della facoltà di ingegneria e ovviamente spero di rivedervi alle riunioni della commissione informazione.

A questo link potete scaricare le slide relative agli argomenti affrontati da me e gli esempi di codice scritto durante il corso.

lunedì 6 settembre 2010

Lo sciame creativo sta per prendere il volo.

Vi è mai capitato di riflettere su quanto la qualità e la quantità della nostra conoscenza sia cambiata da quando esiste internet? Vi siete mai chiesti quanto l'informazione abbia un ruolo fondamentale per la nascita e lo sviluppo di qualsiasi iniziativa? Avete mai pensato che dall'unione di piccolissime forze possa scaturire una forza immensa?




Queste sono le domande che hanno accompagnato la mia estate, visto che insieme a Sebastiano, abbiamo dato inizio ad un progetto, che speriamo possa presto tradursi in un sistema virtuoso capace di premiare le idee vincenti: Creative Swarm


La traduzione letterale di Creative Swarm, vuol dire sciame creativo, ed esprime perfettamente quello che con questo progetto vogliamo rendere possibile. Esempi concreti in tutte le parti del mondo, hanno infatti dimostrato, come anche un piccolissimo contributo fatto da moltissimi individui possa permettere ad un'idea di prendere il volo. Quello di cui sto parlando è il concetto di crowd funding, che non è sicuramente una novità. Ciò che c'è di nuovo nella nostra proposta è il fatto di mettere a disposizione di tutti coloro che hanno un'idea da realizzare, una vetrina dove raccontarla e raccogliere l'appoggio, materiale (e non solo), di quegli internauti che credono in tale idea .

La piattaforma su cui si basa Creative Swarm, è ancora è in piena fase di sviluppo, e si propone come un progetto open source.

Anche se qualcuno potrebbe pensare che in Italia riuscire a concretizzare un sistema meritocratico che parte dal basso, sia solo un utopia, io credo invece, che è questo il momento migliore per introdurre anche nel nostro Paese il concetto di crowd founding, perchè come afferma Pierre Lèvy, il fine più elevato di Internet è l'intelligenza collettiva e in Italia il popolo della rete esprime ormai da anni le sue doti.


Per tutti i dettagli del progetto Creative Swarm vi rimando al sito ufficiale, e se qualcuno crede come noi in questa idea, non esiti ad aderire.

domenica 5 settembre 2010

Si ricomincia...

Guardando la data del mio ultimo post mi rendo conto che questa estate è stata davvero intensa se non ho trovato il tempo per condividere con chi mi segue, qualcosa di interessante.
Ma non sono stata solo in vacanza. L'estate è stato il tempo per riorganizzare le idee, fare delle scelte, iniziare nuove scommesse...ed è proprio di una scommessa che comincerò a parlarvi nei prossimi giorni...

martedì 6 luglio 2010

Tipo entity key e relativo pattern di creazione.

Quando si crea una nuova entità di EF, la prima cosa che si deve scegliere è la proprietà che farà anche da chiave primaria. Al momento della creazione si può scegliere solo se attivare o meno la property key, e il relativo tipo

Una cosa che non viene chiesta però, è la modalità con la quale generare questa chiave, che di default è Identity:


ovvero il valore della chiave, viene calcolato al momento dell'insert.

Nel caso in cui però il tipo della chiave primaria non è un intero, ma ad esempio un Guid, questo pattern non funziona, e non riusciremo mai ad eseguire un inserimento sul nostro db, passando dagli oggetti che ci mette a disposizione il nostro modello, perchè la chiave primaria resterà sempre a null.

La strada più semplice da seguire in questo scenario, è quella di scegliere come StoreGeneratedPattern il valore None, e ricordarsi di inizializzare la chiave delle nuove entità ogni volta che esse vengono create.


giovedì 1 luglio 2010

DIGITPA e la qualità delle forniture ICT




Quello delle forniture IT è un settore dove le regole sono state definite da un mercato che si è sviluppato così rapidamente, che non c'è stata la possibilità di controllarlo o regolamentarlo.

Nessuno si sognerebbe di far fare il progetto della propria casa ad un manovale, eppure ci sono aziende che affidano i loro data center a improvvisati sistemisti, o che commissionano la realizzazione di applicazioni software a programmatori che non hanno mai sentito parlare di design pattern o ALM.


Purtroppo non esistono parametri oggettivi con i quali, un ignaro destinatario di una fornitura software può valutare la prestazione che riceve. Lui vede solo una user interface che risponde più o meno a ciò che nella sua mente aveva immaginato, e non sa se quel sistema che si appresta ad usare è sicuro, è stabile, è mantenibile!
E la gravità di tutto questo cresce esponenzialmentenel momento in cui è la pubblica amministrazione a richiedere una fornitura, visto che poi gli utilizzatori finali del sistema siamo proprio noi cittadini.
In Italia da qualche anno è nato un ente, il DIGITPA, che ha come principale obbiettivo proprio quello di regolamentare le forniture dell'IT all'interno della
pubblica amministrazione.
I documenti che ha prodotto sono rivolti principalmente alla pubblica amministrazione, ma quelli relativi alla qualità delle forniture e dei servizi ICT, possono rappresentare un punto di riferimento non solo per la PA, ma anche per tutte quelle aziende che si apprestano a ricevere o intendono cercare una qualsiasi fornitura ICT.

martedì 8 giugno 2010

Un nuovo incontro con OrangeDotNet


Venerdi 11 giugno presso l'aula Oliveri della facoltà di ingegneria, noi di OrangeDotNet, saremo presenti per una nuova giornata formativa, che dedicata agli studenti, di fatto avrà dei contenuti che possono rivelarsi di grande interesse anche per chi dello sviluppo con tecnlogie Microsoft, ne ha fatto una professione.



L'agenda della giornata è:



9.00: Entity Framework 4.0 (speaker Laura La Manna): Gestire la persistenza dei dati con EF e LINQ




11:00 Windows Communication Foundation 4.0 (speaker Giancarlo Sudano): Il mondo delle applicazioni distribuite nel .NET Framework. Come sviluppare applicazioni Enterprise, scalabili, distribuite, interoperabili.



14:00 Interazione tra varie piattaforme con WCF (speaker Giancarlo Sudano)



16:00 Mobile (speaker AlfioLo Castro): Sviluppo con Silverlight e XNA su Windows Phone 7 (con possibili cenni a Xbox)



martedì 4 maggio 2010

Client Profile 4.0

Le applicazioni windows form o WPF, affinchè vengano eseguite richiedono come prerequisito la presenza del framework .net, allineato alla versione con la quale le applicazioni sono state realizzate. Questo obbliga a distribuirlo anche nei pacchetti di installazione, o a richiedere che esso venga scaricato e installato direttamente dalla rete.

Il .net framework a partire dalla versione 3.5 nelle sue versioni full, ha assunto una dimensione notevole. Per questo motivo il suo team di sviluppo, ha previsto a partire proprio dalla versione 3.5 la possibilità di distribuire una versione ridotta del run-time, che prende il nome di Client Profile, in quanto è dedicata esclusivamente alle applicazioni client. Per garantire che l'applicazione client utilizzi solo le feature del framework incluse nel client profile è necessario configurare opportunamente i progetti.

Con Visual Studio 2008 utilizzare il Client profile era una scelta, visto che bisognava andare sulle proprietà del progetto e spuntare la relativa casella .





Con Visual Studio 2010, l'uso del client profile per le nostre applicazioni client è diventato il default. Infatti se provate a creare un nuovo progetto WPF e andate sulle sue proprietà vi accorgerete che non c'è più il check sotto la casella Target Framework




Il Client profile nella sua versione 4.0 è stato ampiamente potenziato. Tra le sue novità più importanti rispetto al 3.5, c'è il fatto che che supporta tutte le piattaforme supportate dal framework nella sua versione full, ad eccezione degli IA64.

giovedì 15 aprile 2010

300 volte grazie!

Fare la sintesi dei momenti salienti della nostra tappa del Community Tour in un unico post è veramente difficile. Sicuramente la prima cosa che devo fare è ringraziare le quasi 300 persone che erano presenti





A Vittorio e Lorenzo dire un grazie non basta, vista la disponibilità e la simpatia con la quale hanno risposto a tutte le nostre domande e alle domande di coloro che erano presenti all'evento.






Vittorio nella sua sessione ha presentato in maniera semplice concetti come il Claim-based Identity e Windows Identity Framework.




Con Lorenzo tutti gli amanti di sviluppo di applicazioni mobili, hanno avuto una bellissima notizia, visto che ha mostrato tutti gli strumenti già disponibili per poter iniziare a sviluppare applicazioni per Windows Phone 7 e soprattutto ha dimostrato come chi sviluppa in Silverlight è già pronto per sviluppare applicazioni per il nuovo sistema operativo mobile di casa Microsoft.



Giancarlo ha avvertito tutti: cominciamo a pensare parallelo perchè tra qualche anno se i nostri programmi non saranno scritti con del codice che sia in grado di sfruttare le architetture multiprocessore, le loro prestazioni sono destinate a degradare.




Infine io ho spiegato perchè WPF non è solo un modo per costruire l'interfaccia dei nostri programmi, ma rappresenta lo strumento per poter ripensare completamente la user interface, in modo che essa possa risultare adeguata alle nuove esigenze degli utenti.



Conoscere di persona Vittorio ha rinnovato in me la passione per tutto ciò che è il mondo con il quale io lavoro da anni. Non ho potuto fare a meno di chiedergli cosa significasse lavorare a Redmond e la sua risposta mi ha fatto capire perchè li chiamano evangelisti:


Quando sai che le tue ore di lavoro possono risolvere un problema che aiuterà migliaia di sviluppatori non ti accorgi più del tempo che passa. E sacrificare un paio d'ore del tuo tempo diventa una cosa naturale.


Questo evento è stato il risultato di una grande collaborazione di tutto lo staff di OrangeDotNet

Ognuno di noi è stato essenziale per organizzare una giornata perfettamente riuscita come quella di mercoledi scorso.


Ancora un'immenso grazie a tutti!

giovedì 8 aprile 2010

Visual Studio 2010 Community Tour, 14 Aprile 2010: AGENDA

Ecco l'agenda definitiva del tappa siciliana del Community Tour:

Agenda:
09.30 - 10.00Registrazione
10.00 - 10.30Keynote (Vittorio Bertocci, Lorenzo Barbieri)

10.30 - 11.40
Claim-based Identity e Windows Identity Framework (Vittorio Bertocci)

Il codice che gestisce l’autenticazione utente e’ una delle parti peggiori di qualsiasi sistema distribuito. L’attuale situazione e’ il risultato di molte cause, dalla stretta dipendenza da determinate tecnologie all’aspettativa che all’occorrenza tutti gli sviluppatori si improvvisino esperti di sicurezza.

La claims-based identity, un approccio che sta guadagnado sempre piu’ consensi nell’industria, cambia le regole del gioco appoggiandosi a open standards e proteggendo lo sviluppatore dalla complessita’ dei protocolli di sicurezza. Microsoft e’ stata tra i leader a introdurre ed evolvere l’idea, ed e’ tra i primi a metterla in pratica. Questa sessione mostrerà come gli svluppatori .NET possano sfruttare Windows Identity Foundation per liberarsi dal fardello di dover gestire l’autenticazione utente nella loro applicazione, mentre architetti ed esperti di sicurezza guadagnano maggior controllo nel sistema.



11.50 - 13.00Introduzione allo sviluppo con Windows Phone 7 Series (Lorenzo Barbieri)

Il palcoscenico del Mix 2010 ha visto protagonista d'eccezione Windows Phone 7 Series, il nuovo sistema operativo per cellulari consumer che si presenta con le carte in regola per essere un concorrente di tutto rispetto nel mercato della telefonia mobile. L'adozione di Silverlight come strumento di sviluppo e la forte presenza di XNA ne fanno una piattaforma semplice da programmare e pronta allo sviluppo di applicazioni e giochi. In questa sessione vedremo un'anteprima di questo nuovo straordinario sistema operativo.

13.00 - 13.15Sponsor Time
13.15 - 14.15Break (Lunch Session)
14.15 - 15.30A Lap Around C# 4.0 (Giancarlo Sudano)

Continua inarrestabile l'evoluzione di uno dei linguaggi più usati al mondo. In questa sessione apprenderemo come il linguaggio statico si è aperto a trend di mercato di natura più dinamica, alle problematiche di scalabilità su manycore con la programmazione parallela e a gioielli architetturali come i Code Contracts.

15.40 - 17.00WPF 4.0, il nuovo modo di concepire il Presentation Layer (Laura La Manna)

Windows Presentation Foundation ha cambiato il modo di concepire e progettare totalmente la User Interface cambiando anche il modo in cui si relaziona il ruolo di designer e del coder. Potenza e flessibilità ma non tutto è gratuito. Nuovi paradigmi e pattern da acquisire, WPF 4.0 inoltre perfeziona l'ambiente con ulteriori evoluzioni.

17.00 - 17.15 Conclusioni (e sorprese...come sempre!)



Vi ricordo inoltre che l'evento è assolutamente gratuito, previa registrazione, e per la prima volta sarà di tipo full-day.

La TV completamente senza fili.

Oggi nell'appuntamento settimanale con radio Zammù, parleremo di come un idea pensata circa cento anni fa da Nicola Tesla, abbia permesso nel 2010 di presentare ad un importante conferenza internazionale una TV completamente wireless, anche per quanto riguarda la sua alimentazione.

E poi racconteremo come stanno andando i preparativi per il Community Tour della prossima settimana.

giovedì 1 aprile 2010

Oggi parliamo di nuvole

Dopo l'intervento di Sergio, e di Giancarlo, questo giovedi sarò nuovamente io ad intervenire su radio Zammù.
Oggi parleremo di cloud computing, cercando di capire quali sono le tecnologie che si nascondono dietro queste due parole, qual'è la sua storia e perchè oggi se ne parla tanto.

Scopriremo insieme che non è il futuro, ma è una realtà con la quale ogni giorno interagiamo.
E' un fenomeno così già tanto diffuso che ha attirato l'attenzione di GreenPeace.



martedì 30 marzo 2010

Visual Studio Image Library

Per supportare coloro che intendono realizzare un'applicazione avente un aspetto simile alle più diffuse applicazioni Microsoft, è stata messa a disposizione con Visual Studio 2010, la Visual Studio Image Library che però non è disponibile con le versioni Express.
Questa libreria contine circa 1000 risorse, che sono organizzate nelle cartelle mostrate di seguito:







Per installare questa libreria è sufficiente estrarre il file VS2010ImageLibrary.zip, che solitamente si trova sotto


..\Program Files\Microsoft Visual Studio 10.0\Common7\VS2010ImageLibrary\1033\


Per utilizzare le risorse che a questo punto sono disponibili, basta seguire le istruzioni indicate nel file .html che si trova in ogni cartella:




lunedì 29 marzo 2010

WPF e il binding con oggetti dinamici

Con c# 4.0 è stata introdotta la possibilità di creare degli oggetti dinamici, ed non poteva mancare tra le novità di WPF 4.0 il supporto per il binding con questo tipi di oggetti.
Affinchè un oggetto dinamico risulti bindabile, con un controllo WPF, è necessario che esso implementi l'interfaccia IDynamicMetaObjectProvider. Basta ad esempio far derivare gli oggetti da bindare dalla classe DynamicObject.

martedì 16 marzo 2010

Lancio di Visual Studio 2010 in streaming..

E' stato reso disponibile il link per registrarsi all'evento in Smooth Streaming HD, che si terrà proprio il 12 aprile, dalle 14,30 alle 18, in occasione del lancio internazionale di Visual Studio 2010.

Io mi sono già registrata!
E voi?

domenica 14 marzo 2010

Community Tour: agenda e registrazione


L'agenda è pronta, il link per la registrazione pure, dobbiamo solo aspettare che passi questo mese per ritrovarci di nuovo tutti insieme presso

Cittadella Universitaria Aula Magna - Facoltà di Ingegneria (Edificio per la didattica), Viale Andrea Doria, 6 - Catania





e scoprire le novità più importanti che arrivano con il framework 4.0 e con Visual Studio 2010.

venerdì 12 marzo 2010

Snoop per WPF 4.0

Chi sviluppa in maniera avanzata con WPF avrà sicuramente utilizzato il tool Snoop per monitorare le sue applicazioni. Già da febbraio sul sito di codeplex sono disponibili i download della sua versione per WPF 4.0.


giovedì 11 marzo 2010

Oggi si parla di ebook.

Ma i libri stampati sulla carta sono destinati a scomparire? Quando saremo nella sala di attesa di una stazione o di un'areoporto, tra qualche anno non vedremo più i viaggiatori in attesa che sfogliano un giornale? E a scuola sono destinati a sparire gli zaini pieni di libri?

Non abbiamo una sfera magica per rispondere con certezza a tutte queste domande, ma di sicuro oggi scopriremo insieme a Stefania, nel corso della trasmissione Aria Fritta di Radio Zammù, cosa sono gli ebook e quali sono i dispositivi che ruotano attorno a questa nuovo modo di rendere fruibile la cultura e l'informazione.

lunedì 8 marzo 2010

Visual studio 2010: cosa aspettarsi al primo avvio

Di Visual Studio 2010 la prima cosa che vi colpirà appena lo avvierete per la prima volta sono i colori! Poi passato l'entusiasmo per il suo nuovo aspetto, se cominciate a gironzolare tra i suoi menu, mentre disegnate un form wpf, e attivate la finestra "Document Outline" scoprirete, che al suo interno non solo potete visualizzare l'albero dei controlli presente nella finestra, ma posizionandovi su un suo ramo vedrete l'anteprima dei controlli in esso contenuto:

Be questa è solo una piccolissima novità che Visual Studio 2010 portà con se! Piano piano scopriremo quelle più interessanti e vi assicuro che sono veramente tante.

8 Marzo: giornata internazionale della donna

Oggi 8 marzo è definito come il giorno della festa della donna. Anche se a me piace molto di più la definizione che ne dà wikipedia. Non mi soffermo a dire che secondo me non è una festa, ma un giorno nel quale ricordare chi ha lottato per ottenere ciò che noi donne siamo oggi.

Quando mi vengono rivolti gli auguri, io li accetto, perchè so che chi me li rivolge lo fa con affetto e con gentilezza. Ma vorrei tanto un mondo dove alla donna non fosse dedicata una giornata, perchè, pur nelle evidenti cose che ci differenziano dagli uomini, noi donne nelle realtà sociali e lavorative in cui operiamo non dobbiamo essere soggette ad alcuna discriminazione.
Ma mi chiedo: è sempre colpa degli uomini, o talvolta siamo noi a voler essere trattate in maniera differente? a non creare le condizioni per un equo trattamento?
La speranza che ho è quella che le donne nel mondo della tecnologia, ed in particolare nel mondo dell'informatica, possano presto aumentare, non solo numericamente, ma soprattuto nello spazio e nel peso che ci viene dato, e questo ovviamente perchè ce lo siamo meritate!

OrangeDotNet è membro di Ineta.

Ineta (International .NET Association) è un'associazione internazionale no profit, che ha come scopo quello di offrire supporto a tutti gli user group, che hanno come principale obbiettivo quello di condividere e diffondere le conoscenze che ruotano attorno alle tecnologie Microsoft ed in particolre del mondo .net.


E' da oggi ufficiale che anche noi di OrangeDotNet ne siamo entrati a far parte. Non vi nascondo il pizzico di emozione quando specificando in questa pagina il nostro nome, e avviando la ricerca, è apparso il nostro logo con accanto la scritta:

The first community on Microsoft .NET Development Platform in Sicily (Italy)





domenica 7 marzo 2010

Mentre contiamo prepariamoci alle novità

Mancano solo 35 giorni al lancio di Visual Studio 2010, e basta aggiungerne due per attivare anche il count down per la tappa siciliana del Community Tour.

Non si può certo arrivare impreparati alle novità che verranno presentante nel corso di questo evento, così ho pensato bene di condividere nel mio blog giornalmente (almeno spero), ciò che di nuovo arriva con il framework 4.0 e con Visual Studio 2010.

Ho pensato di cominciare questo appuntamento, parlando del nuovo tipo che verrà reso disponibile con il 4.0 e che si chiama System.Tuple, che è una collezione di dati tipizzati ma eterogenei.
Detto così sembrerebbe che non c'è nessuna novità, visto che è lecito oggi scrivere del codice del tipo:

object[] vettoreDatiEterogenei = new object[]{"Laura", 10}




o sfruttare le classi del namespace System.Collections.Generic.
Il vantaggio che si ha dall'utilizzare le Tuple,

var t= Tuple.Create("Hello", 4);



è che è possibile evitare l'uso di cast, perchè sarà lo stesso compilatore ad assicura la conversione al giusto tipo.

giovedì 4 marzo 2010

OrangeDotNet & Radio Zammù continua...

Continua il nostro appuntamento con radio Zammù.

Oggi parleremo della nuova frontiera dei controller per i dispositivi elettronici, con particolare riferimento al progetto skininput.


E poi daremo una bella dritta a tutti coloro che spesso si trovano a dover collaborare per la creazione di un documento, ma che non sono fisicamente davanti allo stesso pc. Il modo tradizionale sarebbe quello di scambiarsi una serie di email con allegato il documento, al quale aggiungere le proprie modifiche.
Scopriremo invece, come sfruttando dei servizi online gratuiti, è possibile evitare il triste rito di: mando la mail, scarico il documento, lo confronto, poi lo aggiorno, poi creo una nuova mail, allego il file modificato, mando la mail…etc…




lunedì 1 marzo 2010

Articolo su No Repro Bug

Sia gli sviluppatori, sia i tester si trovano sempre ad affrontare il problema del No Repro Bug.
Per capire come poter limitare il suo impatto nel ciclo di vita del software utilizzando Visual studio 2010, vi consiglio di leggere l'articolo che Giancarlo ha pubblicato su questa rivista.

domenica 28 febbraio 2010

Microsoft Community Tour 2010

In occasione del lancio di Visual Studio 2010, Microsoft ha organizzato un nuovo Community Tour, e ovviamente noi di OrangeDotNet siamo già pronti!
Per il momento posso però solo confermare la location

Aula Magna - Facoltà di Ingegneria (Edificio per la didattica)
Viale Andrea Doria, 6 - Cittadella Universitaria (Catania)
la data 14 aprile, e soprattuto la presenza di Vittorio Bertocci, Lorenzo Barbieri e ovviamente di Giancarlo.

Sull'agenda e sulle modalità per le prenotazioni all'evento, dobbiamo ancora aspettare qualche giorno.

Behaviors e prestazioni in WCF

Quando si progetta un sistema, qualunque sia la sua natura, le prestazioni rientrano quasi sempre tra i vincoli progettuali che devono essere rispettati.
Qualsiasi applicazione software è un sistema, e quindi anche per essa esistono dei parametri per valutarne la bontà. Se poi questa applicazione è un applicazione distribuita, le performance, insieme alla sua scalabilità, diventano delle caratteristiche fondamentali, che possono decretarne il successo o il fallimento.

Per non creare ambiguità, e sebbene il loro significato sia noto, iniziamo dando la definizione di

  • Concorrenza: misura quanti tasks (richieste, jobs, transazioni) possono essere eseguiti contemporaneamente;
  • Tempo di esecuzione: misura quanto tempo occorre per completare un task;

Per una applicazione WCF, uno dei parametri che può essere usato per stabilirne le prestazioni è il throughput, ovvero al quantità di task che vengono eseguiti in uno specifico intervallo di tempo.

N.Task/tempo di esecuzione


Da questa definizione si capisce come per aumentare il throughput si può intervenire o sulla velocità di esecuzione dei task, o sul numero di task che possono essere eseguiti parallelamente.
La velocità di esecuzione dipende dall'algortimo con il quale il task è implementato o dall'hardware su cui esso è eseguito, pertanto WCF non può migliorarlo.

Quello su cui invece può agire WCF è il numero di task eseguiti nell'unità di tempo, ovvero la concorrenza, che è controllabile attraverso i behaviors IstanceContextMode e ConcurrencyMode.


Il primo è usato per controllare le istanze del servizio e può assumere tre valori:

  • Single: tutte le richieste vengono gestite da un'unica istanza del servizio, che implementa un singleton;
  • PerCall: per ogni richiesta viene creata un istanza del servizio;
  • PerSession:viene creata un istanza del servizio per ogni sessione del client.

Il ConcurrencyMode è un behaviors utilizzato per controllare la concorrenza di un thread all'interno dell'istanza di un servizio e può assumere i valori:

  • Single: un solo thread alla volta può accedere al servizio;
  • Reentrant: solo un thread alla volta può accedere al servizio, ma può lasciarlo e ritornare dopo;
  • Multiple: thread multipli possono accedere al servzio simultaneamente.

Per default un servizio wcf ha uno stato che gestisce un solo thread sul servizio (ConcurrencyMode.Single), ed il servizio viene istanziato per ogni nuova sessione (InstanceContextMode.PerSession)

Per creare invece un servizio che possa migliorare le sue performance, si può settare il suo behaviors in modo che su una singola sua istanza possano accere più thread:

[ServiceBehavior (InstanceContextMode= InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Multiple)]

venerdì 26 febbraio 2010

Blog assolutamente da seguire

Vi presento un interessante blog, che è nato da poco tempo, ma che sembra avere tutte le premmesse per crescere in fretta e con contenuti interessanti , visto che il suo fondatore è l'ingegnere Sebastiano Amato, esperto di domotica.

E visto che a me piace tanto scrivere, ogni tanto pubblico anche io qualche articoletto!

Fiero di essere siciliano!

Vorrei segnalare questo bellissimo gruppo che è nato su facebook, e che in pochissimo tempo ha superato i 25000 fan. Io ho subito aderito, perchè sono fiera di essere siciliana, e mi rattrista guardarmi intorno e vedere quanto questa terra sia stata abbandonata, proprio da noi siciliani.

Io ho scelto di vivere e costruire il mio futuro in Sicilia, perchè il mio sogno è far parlare di lei come un esempio positivo di sviluppo e di rinascita. Ma anche se il futuro dovesse mettermi nelle condizioni di doverla lasciare, la lontananza, mi farebbe diventare ancora più orgogliosa di appartenere a questa meravigliosa isola.

E allora siciliani sparsi in tutto il mondo uniamoci per far sentire quanto innamorati e orgogliosi siamo della nostra terra! e ai non siciliani auguro di poter presto conoscere e vivere, anche solo per una bella vacanza, la nostra Sicilia.

giovedì 25 febbraio 2010

Non dimenticate l'appuntamento fisso...

Visto che questa è solo la seconda settimana che OrangeDotNet partecipa alla trasmissione Aria Fritta di radio Zammu, e per molti non è ancora un abitudine, vi ricordo l'appuntamento (il mio intervento sarà intorno alle 15,10).

La scorsa settimana abbiamo parlato del Mobile World Congress 2010, e delle sue più importanti novità, come l'annuncio dell'imminente rilascio del nuovo sistema operativo per dispositivi mobili, di casa Microsoft

Oggi parlermo...e be ancora non so bene di cosa, perchè le novità e le notizie di questa settimana sono tantissime, e scegliere è davvero difficile.


Vi aspetto!

martedì 16 febbraio 2010

OrangeDotNet e Radio Zammù, un appuntamento fisso.

Venerdi è stato veramente divertente partecipare allo speciale che radio Zammù ha dedicato alla manifestazione M'illumino di meno. Devo fare i complimenti ai ragazzi della redazione per il loro entusiasmo e per la determinazione con la quale portano avanti il palinsesto della radio.
E poi per la prima volta ho visitato il monastero dei Benedettini di Catania, e oltre tutto di notte, in un'atmosfera veramente magica, visto che il percorso guidato era accompagnato solo dalla luce delle candele. Ho fatto però molta attenzione a non allontarmi dal gruppo, visto che il mio senso dell'orientamento (scarso anche in condizioni in cui è impossibile perdersi), sarebbe risultato completamente inadeguato in un luogo dove tutti i corridoi si assomigliano!

La collaborazione di OrangeDotNet con radio Zammù, diventa adesso un appuntamento fisso. Ogni giovedi pomeriggio all'interno della trasmissione Aria Fritta, ci sarà infatti uno spazio durante il quale, qualcuno del nostro staff commenterà insieme alla simpaticissima Stefania Tringali, le notizie tecnologiche più interessanti della settimana.




mercoledì 10 febbraio 2010

OrangeDotNet e l'informatica ecosostenibile

Anche quest'anno è stata riproposta l'iniziativa M'illumino di meno, e lo staff di OrangeDotNet darà il suo supporto, partecipando allo speciale che Radio Zammu sta dedicando a questa iniziativa, e che andrà in onda venerdi 12 febbraio a partire dalle 21.

Nel corso del nostro intervento si parlerà di come ogni utente può essere un utente ecosostenibile, sia scegliendo dispositivi realizzati da aziende che si stanno impegnando un una produzione a basso impatto ambientale, sia assumendo abitudini che rispettano i principi del green computing.

Cercheremo anche di capire quali sono gli strumenti che le aziende di qualsiasi dimensione, possono usare per gestire le loro risorse informatiche in maniera green. E tanto altro ancora.

Vi aspettiamo dunque sulle frequenze di Radio Zammu e vi ricordiamo che le trasmissioni di Radio Zammu, possono essere seguite anche via streaming direttamente dal loro sito.

martedì 26 gennaio 2010

WCF e la comunicazione TCP su IIS 7

Con il precendente post vi ho mostrato come abilitare all'interno di IIS 7 la possibilità a comunicazioni non HTTP. Ma questo non basta per esporre un servizio WCF, che utilizzi un binding basato ad esempio sul protocollo TCP , come il netTcpBinding.


Affinchè questo tipo di comunicazione venga associata ad un nostro servizio WCF, è innanzitutto necessario bindare il sito che ospiterà la nostra applicazione alla porta net.tcp, tramite l'utility a riga di comando Appcmd.
Ad esempio volendo abilitare questa porta per il "Default Web Site", presente nella collezione dei siti di IIS, il comando che deve essere eseguito dal prompt avviato con i privilegi di amministratore è

%windir%\system32\inetsrv\appcmd.exe set site "Default Web Site" -+bindings.[protocol='net.tcp',bindingInformation='808:*']


Si deve poi aggiungere la nostra applicazione WCF al "Default Web Site", tramite la console di gestione di windows, che si può avviare semplicemente digitando mmc.exe, nell'area di ricerca attivata cliccando sul bottone Start.
Dal menu file si sceglie l'opzione Aggiungi/Rimuovi Snap-in e si aggiunge la voce Gestione Internet Information Services (IIS)





Click con il bottone destro sul Default Web Site e si seleziona la voce Aggiungi applicazione

per aprire la finestra di dialogo dalla quale selezionare il percorso e il nome dell'applicazione da aggiungere





Supponendo che per l'applicazione aggiunta abbiamo scelto il nome TestWCF, dal prompt bisogna poi eseguire questo comando, per renderla raggiungibile con un protocollo tcp


%windir%\system32\inetsrv\appcmd.exe set app "Default Web Site/TestWCF" /enabledProtocols:http,net.tcp

Nel prossimo post analizzeremo cosa inserire nel web.config di un'applicazione WCF, per la quale vogliamo utilizzare il netTcpBinding.

Una nota per gli smanettoni: l'utilità da riga di comando Appcmd modifica il file di configurazione di WAS, che si trova nella cartella %windir%\system32\inetsrv\config e che si chiama applicationHost.config, che è editabile direttamente (anche se molti sconsigliano di farlo!)

Abilitare protocolli non HTTP su IIS 7

In IIS 7 è stato introdotto il WAS (Windows Activation Service), un componente in grado di ospitare servizi WCF, che utilizzano protocolli non solo HTTP , ma anche protoclli come il TCP e l'MSMQ. Per rendere possibile ciò è necessario configurarlo opportunamente.

Analizziamo brevemente come configure WAS con Windows 7.

Dal pannello di controllo selezionare "Programmi"e quindi "Attivazione o disattivazione delle funzionalità di Windows"











Nella finestra che si apre espandere il nodo relativo a Microsoft .NET framework 3.5.1 e selezionare Windows Communication Foundation Non-HTTP Activation

Fare click sul bottone OK e il nostro IIS è pronto per ospitare servizi che utilizzano binding non HTTP.