Posts
774
Comments
215
Trackbacks
25
July 2007 Blog Posts
Focus on the core: the most important part of the application - Jeffrey Palermo [MVP]

D'accordo su tutta la linea:  

Many applications written with these are being rewritten in newer technologies. 

Why?  Because the applications had no core.  By core, I mean, the center of the application that describes the business domain

Continua alla fonte: Focus on the core: the most important part of the application - Jeffrey Palermo [MVP]

posted @ Monday, July 16, 2007 11:18 AM | Feedback (0)
Delayed Signing

security Quando abbiamo la necessità di riutilizzare la stessa versione di un componente che abbiamo scritto in più applicazioni, viene naturale pensare alla GAC (Global Assemby Cache). Essa presuppone che l'assembly che andiamo a mettere al suo interno sia Strong Named, ossia sia dotato di un nome univoco composto da:

  • nome del file
  • versione
  • culture
  • publik key (o hash della chiave)

Per fornire ad un assebly uno strong name, abbiamo bisogno di una coppia di chiavi (pubblica e privata) ottenibili dal tool da riga di comando SN.EXE con le quali poi "firmeremo" il file "assicurandone" tra l'altro l'identità.

I termini "firmeremo" e "assicurandone" sono messi tra virgolette in quanto, è importante sottolinearlo (come ripete sempre l'amico Raf), lo Strong Name è uno strumento di Versioning e non di Security!

Ma non voglio divagare sul discorso Strong Name in sè (magari ne parlo in un altro post), e preferisco tornare all'oggetto del post: Deley Signing.

Partendo dal presupposto che lo strong name *dovrebbe* assicurarne l'identità dell' assembly firmato, e che per firmare l'assembly abbiamo bisogno di una chiave privata, ha senso, all'interno di un team, dare agli sviluppatori la chiave privata per la compilazione e la firma degli assembly durante la fase di sviluppo? La risposta è ASSOLUTAMENTE NO!
Ed allora, come facciamo?

Il .NET Framework supporta un meccanismo chiamato Delayed Signing che permette di firmare l'assembly usando la sola chiave pubblica. Così facendo, si da la possibilità sia di referenziare l'assembly con la corretta chiave pubblica (la stessa che verrà utilizzata firmando l'assembly regolarmente), sia di registrare lo stesso nella GAC.
Unica accortezza, in questo passaggio, è usare lo switch -Vr del tool SN.exe sull'assembly "parzialmente firmato" usando la sintassi:

SN.exe -Vr NomeAssembly.dll

In questo modo, il CLR salterà il controllo dell'Hash dell'assembly "parzialmente firmato". Controllo che fallirà in quanto l'assembly non è "completamente" firmato. 

In questo modo si può procedere con lo sviluppo in tutta tranquillità, salvo poi, prima di andare in produzione, firmare gli assembly regolarmente e riabilitare il check dell'hash sulle macchine in cui era stato disabilitato usando lo switch -Vu

Qualche riferimento su SN, Dalayed Signing etc. nei seguenti link:

http://msdn.microsoft.com/msdnmag/issues/06/07/CLRInsideOut/

http://msdn.microsoft.com/msdnmag/issues/01/03/buildapps2/

http://msdn2.microsoft.com/en-us/library/xc31ft41(VS.71).aspx

http://msdn2.microsoft.com/en-us/library/t07a3dye(VS.71).aspx

posted @ Sunday, July 15, 2007 3:49 PM | Feedback (0)
Windows Mobile Business Value Calculator

Microsoft ha reso disponibile un piccolo tool on line per il calcolo del valore che una applicazione mobile può dre all'azienza.
Il tool è molto semplice (vedi alla fonte) e permette di creare un report che, seppure orientativo, può dare una idea dei vantaggi che una soluzione di questo tipo può apportare. 

So, just how much of an impact can Windows Mobile have on your business? The answer is just a few clicks away

Il tool può essere utile a noi dev per verificare che la stima fatta sia congrua con il valore di business che la nostra soluzione apporterà, e può essere utile al nostro cliente per farsi una idea dei vantaggi.

Dopo aver "smanettato" un po' con il tool, per esperienza posso dire che sebbene i valori siano da prendere con le pinze (in pratica scordatevi di avere quei vantaggi soprattutto su un mercato italiano), rendono comunque una idea "proporzionale" dei vantaggi (in termine di business) introdotti.

Da provare.

Fonte: Windows Mobile Business Value Calculator

posted @ Saturday, July 14, 2007 1:05 PM | Feedback (0)
Communications: Improve Security with Windows Mobile 6 -- TechNet Magazine, July 2007

 Lettura veloce veloce e consigliata:

Improve Security with Windows Mobile 6

Communications: Improve Security with Windows Mobile 6 -- TechNet Magazine, July 2007

posted @ Saturday, July 14, 2007 12:59 PM | Feedback (0)
Lambda expressions in C#3.0 e VB9

Avete dubbi o perplessità sulle Lambda Expressions? Corrado, in questo post, le spiega in modo molto semplice e chiaro! 

Tra le novità di C#3.0 e VB9 sicuramente le lambda expressions sono le più "ostiche" da comprendere, vuoi per il nome che incute timore smile_teeth, vuoi per lo strano simbolo "=>" che si legge "Goes To" oppure semplicemente perchè incontrate per la prima volta con LINQ e quindi in un contesto di per se non chiaro, almeno inizialmente.
In realtà le lambda altro non sono che una versione riveduta ed "epurata" degli anonymous methods che chi usa C#2.0 sicuramente conosce e utilizza.

Leggi tutto alla fonte: Lambda expressions in C#3.0 e VB9

posted @ Saturday, July 14, 2007 11:12 AM | Feedback (1)
Vista power management & CPU frequency

Un po' di spiegazioni (corredate da test) sulla funzionalità di limitazione della frequenza di lavoro della CPU nelle impostazioni di power management su Vista:

But how does this map out in the real world? Does Vista REALLY enforce these limits in the CPU? Let's take a look. First of all, I open up the Resource Monitor. Then, I set the power profile to "High performance" - here's the CPU chart (note - the blue line shows you the CPU frequency - the green line shows you CPU utilization):

image

Leggi tutto alla fonte: Welcome to The Metaverse : Vista power management & CPU frequency

posted @ Thursday, July 12, 2007 1:44 PM | Feedback (0)
A Windows Mobile Security Primer for Developers

Lettura consigliat(issim)a: 

If you are a Windows Mobile developer and don’t spend the time to understand signatures and security on this platform, well-- it may leave you scratching your head at some point. In the desktop world, we (developers) tend to let the IT guys and administrators carry the bulk of security burden. If you want to tighten things down or open it up, you have the administrator tweak some permissions and life is good. Unless you were developing drivers or widely used ActiveX controls, most of us never had to deal with code signing in the desktop world

Fonte: The Windows Mobile RSS (Reed and Steve Stuff) Feed : A Windows Mobile Security Primer for Developers

posted @ Thursday, July 12, 2007 12:47 AM | Feedback (0)
A Performance Comparison of Windows Communication Foundation (WCF) with Existing Distributed Communication Technologies

L'amico Antonello mi segnala un interessante articolo relativo alla comparazione di performance tra WCF e le altre esistenti tecnologie di comunicazione distribuita:  

Summary: This article provides a high-level performance comparison between Windows Communication Foundation (WCF) and existing Microsoft .NET distributed communication technologies. (22 printed pages)

Leggi tutto alla fonte.

Fonte:A Performance Comparison of Windows Communication Foundation (WCF) with Existing Distributed Communication Technologies

posted @ Tuesday, July 10, 2007 4:38 PM | Feedback (0)
Be_Lead Blog : Un Ordinario weekend sui Newsgroup...

Grande Alead!!!! Una dettagliatissima telecronaca di quanto avviene sui NG Smile 

Ed eccomi qua, come avevo promesso (ed un pò in ritardo :)), a provare a fare una telecronaca di quello che succede nei Newsgroup Microsoft italiani durante un normale weekend estivo, dove mentre villeggianti e lavoratori stanchi beatamente si crogiolano al sole o si sbarazzano dello stress settimanale con camminate all'aria aperta, i nostri impavidi beneamati, piovoso o soleggiato che sia, con la loro Passione ed il loro Entusiasmo condividono ed aiutano centinaia di utenti nel troubleshooting quotidiano grazie alle loro competenze ed, appunto, al loro Spirito di Condivisione...

Leggi tutto alla fonte!

Fonte: Be_Lead Blog : Un Ordinario weekend sui Newsgroup...

posted @ Tuesday, July 10, 2007 1:52 PM | Feedback (0)
"How Do I?" Videos for Devices

Su MSDN (in inglese), da un po' di tempo è stata creata una sezione chiamata "How Do I?" Videos in cui vengono raccolti una serie di brevi screencast (la durata media è di una 15ina di minuti), in cui viene spiegato come risolvere alcune problematiche specifiche (divise per tecnologia).

La sezione dedicata ai dispositivi mobili la trovate qui e sono presenti 2 interessanti video relativi alla Merge Replication per Windows Mobile:

Tutte le altre sezioni sono visibili nel menù di desta di questa pagina.

Buona visione Wink

posted @ Tuesday, July 10, 2007 12:07 AM | Feedback (0)
Windows Embedded Blog : Kiosk Mode for CE 6.0

Interessante articolo sull'utilizzo di Windows CE 6.0 in Kiosk Mode: 

First thing to cover is what is Kiosk Mode ? - Kiosk mode can be thought of as an operating system image that boots into a custom application that only gives the user the ability to do one specific task, examples are an ATM machine, Airport Check in Terminal, that kinds of thing

Leggi tutto alla fonte: Windows Embedded Blog : Kiosk Mode for CE 6.0

posted @ Friday, July 06, 2007 5:21 PM | Feedback (0)
Download details: .NET Compact Framework 3.5 Beta1 Redistributable

Rilasciata la Beta 1 del .NET Compact Framework 3.5:  

Overview

The Microsoft® .NET Compact Framework 3.5 Beta1 testing Redistributable contains the common language runtime and class libraries built for the .NET Compact Framework. In addition to supporting version 3.5 beta1, it also supports applications developed for version 2.0 and 1.0.
Important: This redistributable enables running .NET Compact Framework applications on the Pocket PC, Pocket PC Phone Edition, Smartphone, and other Windows CE powered devices. To develop .NET Compact Framework 3.5 Beta1 applications, Microsoft Visual Studio Orcas Beta1 is required.
This package uses ActiveSync 4.0 and up to update the device, see the Windows Mobile Center for more information. Be sure to dock your device first before running NETCFSetupv35.msi. If your device is not docked, ActiveSync will store the CAB file until the time when you dock your device. Those not using ActiveSync can run the CAB files which match the device found in the install folder directly on the device.

Download details: .NET Compact Framework 3.5 Beta1 Redistributable

posted @ Friday, July 06, 2007 5:18 PM | Feedback (0)
Brad Abrams : FxCop Honored with Chairman's Award for Engineering Excellence

Quest'anno, FoxCop riceve il  Chairman's Award for Engineering Excellence. 

Every year, Microsoft honors a few innovations that have furthered the state of engineering excellence at Microsoft... Some years, Bill Gates selects one of the winners to honor with the special distinction of the chairman's award.   I am told that Bill does this for truly noteworthy achievements that have tangible impacted software development in every division at Microsoft.   In fact, until this year, the only other winner of the Chairman's award was Watson.

This year, FxCop (along with some two other static code analysts tools) were selected for this award

IMHO, il riconoscimento è stra-meritato in quanto, grazie all'utilizzo di questo tool, il codice scritto può davvero essere migliorato prima di andare in produzione. Il tool non fa miracoli (nel senso non migliora il codice scritto male), ma aiuta davvero a non commettere tutta una serie di errori. Un must. Congratulazioni a tutto il team per il riconoscimento e soprattutto a Brad Adams per averlo voluto.

Brad Abrams : FxCop Honored with Chairman's Award for Engineering Excellence

posted @ Friday, July 06, 2007 9:13 AM | Feedback (0)
Performance Tip-O-The-Day #1 : for[each]

Lo avevo letto tempo fa (ma non ricordo dove) ma in questo post viene dimostrato:

The basic idea is that foreach is slower than a for loop. I've pretty much always known this, but never really known how much slower it is. There's some overhead, sure, but I've always assumed it was negligible.

Il risultato può sembrare abbastanza sorprendente:

  foreach loop for loop
Test Run #1 1250 187.5

Test Run #2

984.375

187.5

Test Run #3

765.625

218.75

Test Run #4

828.125

203.125

Test Run #5

765.625

218.75

Per capirne il motivo, bisogna ravanare un po' con reflector, ma questo sarà argomento di un prossimo post Wink

Fonte: ToddHa's WebLog : Performance Tip-O-The-Day #1 : for[each]

posted @ Thursday, July 05, 2007 11:09 PM | Feedback (0)
Share Code: Write Code Once For Both Mobile And Desktop Apps -- MSDN Magazine, July 2007

Sul numero di Luglio di MSDN Magazine è uscito un interessante articolo sulla condivisione del codice tra applicazioni sviluppate per sistemi desktop (quindi con il .NET Framework completo) e quelle sviluppate per i dispositivi mobili (quindi con .NET Compact Framework).

For the last several years, while developers were building Microsoft® .NET Framework client applications for Windows®, many had no idea that they could also have been creating applications for Windows Mobile® using the same skills and toolsets. But Windows Mobile wasn’t as widespread in the enterprise then, so the need to write custom applications targeting mobile devices was not as great. Today, there’s a huge demand and many desktop developers are getting their feet wet with mobile development. Unfortunately, many miss the opportunity to share their .NET code cross-platform even though it is relatively easy to do so.

[continua alla fonte]

Il mio personale consiglio (e non solo mio), è che quando si sa già che una applicazione deve "girare" su entrambe le piattaforme, conviene sempre sviluppare prima l'applicazione per il dispositivo mobile e poi "portarla" sul desktop. Il CF infatti, come noto, è un sottoinsieme del (Full)Framework e, quanto implementato nella versione 2.0 è compatibile 1:1 con il Framework normale (vuol dire che se un oggetto c'è nel CF, è uguale a quello del Framework).

Spesso però (ed è normale che sia così), le applicazioni per dispositivi mobili differiscono, se pur di poco, da quelle per normali PC ed è qui che le informazioni riportate in questo articolo sono davvero preziose.

Lettura caldamente consigliata Smile

 

Share Code: Write Code Once For Both Mobile And Desktop Apps -- MSDN Magazine, July 2007

posted @ Thursday, July 05, 2007 7:40 PM | Feedback (0)
OT: Quante cosa accomunano un informatico ad una prostituta?

Queste alcune cose che accomunano un informatico ad una prostituta:

  • Lavori a degli orari bizzarri
  • Sei pagato per rendere felice il tuo cliente
  • Il tuo cliente paga tanto, ma e' il tuo padrone che intasca
  • Sei pagato all'ora, ma i tuoi orari arrivano fino a quando il lavoro e' finito
  • Anche se sei bravo, non sei mai fiero di quello che fai
  • Sei ricompensato se soddisfi le fantasie del cliente
  • Ti e' difficile avere e mantenere una famiglia
  • Quando ti domandano in che cosa consiste il tuo lavoro, tu non puoi spiegarlo
  • I tuoi amici si allontanano da te e resti solo con gente del tuo tipo
  • E' il cliente che paga l'hotel e le ore di lavoro
  • Il tuo padrone ha una gran bella macchina
  • Quando vai in "missione" da un cliente, arrivi con un gran sorriso
  • Ma quando e' finito, sei di cattivo umore
  • Per valutare le tue capacita' ti sottopongono a dei terribili tests
  • il cliente vuole sempre pagare meno e tu devi fare delle meraviglie
  • Quando ti alzi dal letto dici " Non posso fare questo per tutta la vita"

Stranamente....mi ci ritrovo in quasi tutte Stick out tongue

posted @ Thursday, July 05, 2007 11:26 AM | Feedback (0)
Resharper? Wow

Domanda: Reasharper è un tool indispensabile?
Risposta : No ma....

Ma provate ad usarlo un po' e poi ditemi se potete farne a meno Smile. Date uno sguardo a questo video per farvi una idea di quanto possa essere comodo dopo averci preso la mano!
Sebbene lo usi da un po', l'utilizzo che ne faccio non è mai stato spinto fino al punto mostrato sul video, ma mi sono ripromesso di mettermici un po' su ed imparare meglio gli shortcut da tastiera.

Passate ore ed ore in Visual Studio? Se la risposta è si, il mio consiglio è quello di farci un pensierino Smile 

Fonte: Resharper jedi video - Jeffrey Palermo [MVP]

PS: non è un messaggio pubblicitario. Non ho ricevuto ne riceverò nulla in cambio per questo post.

posted @ Wednesday, July 04, 2007 7:10 PM | Feedback (0)
jkOnTheRun: HTC Omni- is it real?

Per chi è rimasto deluso dall'HTC Advantage (e non sono il solo) HTC (che ultimamente sforna modelli eccezionali a velocitàincredibile), *pare* stia preparando una sorta di UMPC equipaggiato da Windows Mobile 6:

Ovviamente non se ne sa quasi nulla ma...in apparenza sembra un device davvero interessante: 

OMG, the Omni is drop-dead gorgeous and has some pretty decent specs:

  • Windows Mobile 6.0 OS
  • UMTS/HSDPA connectivity
  • WVGA 4″ 800×480 px display, subdisplay
  • TV and VGA out
  • 256 ROM, 1280 RAM and microSD memory card slot
  • Wi-Fi b/g, USB and Bluetooth connectivity
  • GPS/A-GPS
  • Full QWERTY keyboard
  • Dimensions: 130 x 81 x16 mm

jkOnTheRun: HTC Omni- is it real?

posted @ Wednesday, July 04, 2007 6:52 PM | Feedback (0)
WPC 2007

Anche quest'anno, a Milano, si terrà la WPC:

“WPC 2007 propone quest’anno una agenda ricchissima di contenuti, frutto di 6 mesi di lavoro da parte di un Team di professionisti tra i più riconosciuti nel mondo  dell’Information e Communication Technology, che si articola in due “linee”: la linea “Full-WPC”, della durata di 5 giorni, che è il percorso d’obbligo per le figure di sviluppatori e sistemisti alla ricerca di una approfondita formazione tecnica; la linea “2Days-WPC” che consentirà ai responsabili di funzione IT e ai manager d’azienda  di avere una panoramica specialistica sulle tecnologie di oggi e domani e di operare con maggiore competenza acquisita nel proprio ruolo direzionale.”

Per ulteriori informazioni su WPC 2007 cliccha qui WPC 2007 - NEWS

posted @ Tuesday, July 03, 2007 11:24 PM | Feedback (0)
Microsoft .NET Framework 3.5 June 2007 Community Technology Preview (CTP)

.NET Framework 3.5 builds incrementally on the new features added in .NET Framework 3.0, for example, Windows Workflow Foundation (WF), Windows Communication Foundation (WCF), Windows Presentation Foundation (WPF) and Windows CardSpace. In addition, .NET Framework 3.5 contains a number of new features in several technology areas. These new features have been added as new assemblies to avoid breaking changes...

...continua alla fonte.

Bink.nu | Microsoft .NET Framework 3.5 June 2007 Community Technology Preview (CTP)

posted @ Monday, July 02, 2007 11:50 PM | Feedback (0)
OT: Alla ricerca dell'auto perduta

Stamattina esco di casa come di consueto e, appena fuori il giardino, noto qualcosa di strano: vedevo il cancello del giardino del mio vicino. Cosa alquanto strana in quanto, generalmente, di fronte al mio cancello c'è parcheggiata l'auto di mia moglie!

Nonostante l'annebbiamento mattutino (causato dalle ormai 4 ore di sonno), non c'è voluto molto a realizzare che "mi avevano fatto la macchina" (che, in gergo locale, vuol dire "mi hanno rubato la macchia").

Da un lato c'era l'incazzatura (ho maledetto il ladro in 6 lingue diverse compreso l'Aramaico antico), dall'altro un po' di sollievo in quanto l'auto è quella usata da mia moglie per girare in paese (quindi il danno economico non era eccessivo).

Fatto stà che mentre io ero in giro con mio cognato per l'iterminabile labirinto di stradine di campagna, nella speranza di ritrovare "l'oggetto asportato*", mia moglie si è presentata al comando dei carabinieri locale per sporgere denuncia. E qui la (bella) sorpresa:

Moglie: "sono venuta a denunciare il furto della mia auto"
Maresciallo: "che auto ha signora?"
MO: "una xxxxx Bianca..."
MA: "...tragata xx 123 xx ???"
MO: "si...ma come lo sa?"
MA: "l'hanno ritrovata i colleghi di Modugno** stamattina. Stavamo venendo da lei ad avvisarla"
MO: [pensando] "sticazzi che efficienza!!!" Stick out tongue

Alla fine, la macchina l'abbiamo ritrovata e portata a casa. Qualche danno c'è (a cui si aggiunge il carrattrezzi ed il rimessaggio) ma, tutto sommato, i danni sono contenuti.

*  Nota: asportato è il termine esatto riportato sulla denuncia
**Nota: paese a pochi KM da casa

posted @ Monday, July 02, 2007 5:05 PM | Feedback (2)
News

Contact


  Curriculum
  Subscribe via RSS
  Subscribe by Email
  Free/Busy Calendar
  Goolgle Calendar
  Send me Email
  SkypeMe!
  LinkedIn Profile
  Profilo ed info



Sponsor



Contattami per info



mvp
Profilo MVP | Programma MVP




UgiMobile.Org
UgiMobile.Org, il primo User Group italiano dedicato al mondo Mobile!




Mobile Phone Assistant hosted by CodePlex







http://www.wikio.it
View blog authority
Add to Technorati Favorites







Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial 3.0 License.