Ho appena letto l'articolo di Microsoft su Microsoft's breaking change (compatibilità non retrocompatibile) con l'introduzione di dot net. È interessante e riflette esplicitamente la condizione durante quel periodo. Ma ora sono trascorsi quasi 10 anni.
La modifica di rottura
È soprattutto su quanto sia pessima la Microsoft che introduce strumenti di sviluppo di compatibilità non retrocompatibili, come dot net, invece di migliorare l'asp classico o VB6 già ampiamente utilizzato. Come noto, dot net non è nativamente integrato in Windows XP (sì in Vista o 7), quindi per poter utilizzare le app .net, è necessario installare il framework .net di oltre 300mb (è grande quel giorno).
Tuttavia, come vediamo oggi molti usi aziendali .net come i loro principali strumenti di sviluppo, con asp.net o mvc come loro applicazioni web-based. Oggi C # è uno dei migliori linguaggi di programmazione (la maggior parte delle domande in StackOverflow). La parte più interessante è che win32api è ancora in vita anche se c'è una nuova tecnologia (e ancora ampiamente utilizzata).
Immagina che se Microsoft non introdurrà il cambiamento di rottura, molte aziende utilizzeranno ancora le applicazioni classiche di asp o vb (c'è ancora, ma non così tanto). Ci sono molte aziende che utilizzano servizi aggiuntivi come l'azzurro o il sharepoint (oltre a quanto costoso è).
Tieni presente che so anche che ci sono molte applicazioni di punta (forse adobe e blizzard) che usano ancora la lingua C o più vecchia e non eseguono il porting al più recente linguaggio di alto livello.
La domanda
Come può Microsoft convincere gli utenti a migrare le loro vecchie applicazioni in dot net? Come sappiamo, è molto difficile e non dà alcun valore immediato quando riscrivi le applicazioni (netscape story) ed è molto rischioso. Sono più interessato al modo di Microsoft e non a opinioni come "perché dot net è OOP, o dot net è dll-embedable, ecc."
Questa domanda può essere costruttiva, in quanto la tecnologia è molto cambiata nel corso degli ultimi tempi. Come possiamo vedere, Microsoft cambia il webform Asp.Net in MVC, ora winform è legacy, sta iniziando a cambiare per usare windows store piuttosto che basic-ratment, touchscreen e in seguito avremo applicazioni see-through come google class. E questo cambierà i cambiamenti.
Al giorno d'oggi dovremo considerare la portabilità come un problema. Avremo bisogno di altro oltre alla semplice scelta tecnologica, ma anche ai piani di migrazione. Forse anche così critico come potremmo aver bisogno di compilatore di linguaggio multipiattaforma, come accennato da Wasabi di Joel . (hey, ho letto troppo i suoi articoli!)