marzo 2007 Blog Posts

Nuovi transport channels per WCF

WCF (Windows Communication Framework) e' un framework di messaggistica estremamente estendibile. Piu' di un anno fa, parlai della possibilita' di create un Diskette Trasport Channel. In pratica si inserisce un dischetto nel PC client, la richiesta viene salvata sul dischetto, si porta il dischetto sul server e la richiesta viene letta. Quindi si fa il processo inverso se il pattern di messaggistica e' request-reply. Se e' one-way ci possiamo riposare. Il protocollo e' molto affidabile in quanto si puo' ridondare assumendo piu' personale. Gestendo ferie e malattie si mantiene il servizio sempre attivo. Il punto di fallimento e' potenzialmente l'hardware (qualcosa si...

posted @ sabato 31 marzo 2007 16:39 | Feedback (0)

Dal blog di Alessandro...

Mi sono divertito a leggere il post di Alessandro. E si, comprendo le riunioni fatte in Italia e quelle fatte qui, in Silicon Valley. Molto spesso le riunioni italiane iniziano in ritardo con la meta' dei partecipanti e finisco in ritardo con un'altra meta' dei partecipanti. Nel mentre c'e' stata una metamofrosi di persone ed a volte pure di soggetto. Solitamente l'agenda e' sconosciuta ai piu', molti arrivano chiedendo di che si tratti e del perche' sono stati convocati, e a volte capita pure che non ci sia l'agenda. Molto spesso se c'e' piu' di una persona (:-)) parlano tutti...

posted @ martedì 27 marzo 2007 12:42 | Feedback (4)

string.Concat o string.Format ?

Lo ammetto, molto spesso uso String.Format (nelle sue varie forme). Lo uso principalmente perche' e' comodo, perche' il codice risulta piu' leggibile, perche' la stringa puo' provenire da una risorsa ecc. ecc. Ma se vogliamo scrivere codice estremamente performante string.Format non e' certamente la forma piu' efficiente, anzi! Il blog di Rico (un po' vecchiotto ma sempre attuale) spiega il perche': http://blogs.msdn.com/ricom/archive/2004/03/12/performance-quiz-1-of-a-series.aspx

posted @ domenica 25 marzo 2007 18:45 | Feedback (1)

Wix + msbuild

UN interessante articolo su come integrare il setup con la build: http://msdn.microsoft.com/msdnmag/issues/07/03/wixtricks/default.aspx

posted @ martedì 20 marzo 2007 14:50 | Feedback (3)

Leggere la configurazione da un file qualunque

Qualche giorno fa scrissi della possibilità di frammentare il file di configurazione in più parti. Oggi vorrei estendere il concetto proponendo un'ulteriore alternativa. Come posso leggere un file di configurazione in una locazione qualunque del mio file system (purchè il processo abbia i privilegi per leggerlo) senza seguire la naming convention (*.config) di .NET? Ci possiamo appoggiare alla classe ExeConfigurationFileMap la quale permette di definire dove si trova il file di configurazione in modo del tutto arbitrario: ExeConfigurationFileMap confFile = new ExeConfigurationFileMap();confFile.ExeConfigFilename = @"C:\\MiaConfigurazione.xml";Configuration conf = ConfigurationManager.OpenMappedExeConfiguration(confFile, ConfigurationUserLevel.None);Console.WriteLine(conf.AppSettings.Settings["test"].Value); L'unico vincolo è che il file di configurazione deve mentenere una struttura (soddisfare lo...

posted @ martedì 13 marzo 2007 08:15 | Feedback (3)

Severity level come mak invece di threshold?

In molti sistemi di logging e tracing si usa il concetto di Threshold per definire se un evento deve essere pubblicato oppure no. In pratica che metto il limite a Error vedro' solamente Error e CriticalError. Trovo questa soluzione un pochetto limitata. Mi piacerebbe di piu' avere un concetto di mask. Del tipo, voglio vedere gli eventi Error | Information, gli altri non mi interessano :-)

posted @ giovedì 8 marzo 2007 18:06 | Feedback (1)

Un servizio anti-spam per il blog

Ormai CAPTCHA sta tramontando. Pur avendolo abilitato non conto le volte in qui arrivano commenti pieni di spam!! Che Akismet funzioni meglio?

posted @ martedì 6 marzo 2007 23:58 | Feedback (96)

Questa volta il supporto Dell ha fallito

Ok, ho acquistato 2 anni e mezzo fa un Dell Precision M60. Ottimo notebook. Da 4 mesi mi sono trasferito negli USA e ho avuto la necessita' di contattare il supporto tecnico. La prima cosa che ho fatto e' scrivere un'email al supporto in Italia (non era nulla di urgente) il quale mi ha risposto di contattare quello americano essendomi trasferito li. Quindi contatto il servizio americano il quale non riconosce il mio service tag!! Mi dicono che non possono fare nulla e quindi devo contattare il siupporto italiano. Dall'altra parte mi dono il contrario. Ho chiesto ad entrambi se fan...

posted @ giovedì 1 marzo 2007 18:19 | Feedback (0)

Frammentare il file di configurazione

Abbiamo tutti in mente che cosa sia il file di configurazione, sia esso per applicazioni web (web.config) che per applicazioni windows (mioeseguibile.exe.config). Non so se a voi capita, ma i file di configurazione con i quali mi trovo a lavorare tendono ad esplodere. Gestire un web.config di 1000 righe e' improponibile. Ecco che ci aiuta il buon .NET Framework (dal 2.0 in poi) con l'attributo configSource applicabile alle sezioni. Vediamo un esempio banale. Immaginiamo di aver implementato una configuration section di una certa dimensione e che non vogliamo inserirla nel nostro web.config in quanto e' gia' abbastanza corposo. Bastera' nel nostro web.config...

posted @ giovedì 1 marzo 2007 17:55 | Feedback (2)

Novita' in casa MSDN

Il sito MSDN sta per cambiare look.

posted @ giovedì 1 marzo 2007 00:01 | Feedback (0)