March 2007 Blog Posts

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 @ Tuesday, March 27, 2007 8:42 PM | 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 @ Monday, March 26, 2007 2:45 AM | 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 @ Tuesday, March 20, 2007 10:50 PM | 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 @ Tuesday, March 13, 2007 4:15 PM | 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 @ Friday, March 9, 2007 2:06 AM | 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 @ Wednesday, March 7, 2007 7:58 AM | 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 @ Friday, March 2, 2007 2:19 AM | 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 @ Friday, March 2, 2007 1:55 AM | Feedback (2)

Novita' in casa MSDN

Il sito MSDN sta per cambiare look.

posted @ Thursday, March 1, 2007 8:01 AM | Feedback (0)