.NET Core - Diventa selvaggio e open source. Microsoft, perché ci hai messo così tanto?!
Pubblicato: 2022-03-11“Si forma qualcosa di misterioso, nato nel vuoto silenzioso. In attesa da solo e immobile, è immobile, ma in continuo movimento…”
In verità, due dei più grandi eventi della storia umana si sono svolti uno dopo l'altro:
La missione Rosetta dell'ESA ha fatto atterrare dolcemente la sua sonda Philae su una cometa, la prima volta nella storia che un'impresa così straordinaria è stata raggiunta.
Microsoft Open Source .NET
Il primo evento è un grande passo per l'umanità e il secondo è ancora più grande per Microsoft!
La Missione Rosetta prenderà il suo posto nei libri di storia e sarà ricordata tutte le volte che ricordiamo Laika. È stato concepito e pianificato attentamente per un decennio, ha spinto l'umanità un passo avanti e ha dimostrato che la tecnologia sviluppata dieci anni fa può ancora fare cose incredibili.
Il secondo evento è stato una sorpresa per molti. Non è stato molto pubblicizzato e sono sicuro che ogni dettaglio del suo annuncio non è stato pianificato dieci anni fa; ma era ovvio che Microsoft avesse intrapreso questa strada qualche tempo fa e .NET core non è la prima cosa che hanno spinto verso l'open source (Roslyn).
Quindi, l'umanità aveva davvero bisogno di una sonda su una cometa? Forse no, ma è fantastico che sia atterrato! Microsoft aveva bisogno di un'epifania per iniziare l'open source .NET core? Sì! Ne avevano bisogno più di un decennio fa!
Cosa è cambiato in una delle più grandi società di sviluppo software al mondo? Cosa li ha spinti sulla strada dell'OSI?
Secondo il blog di .NET Framework, ci sono due ragioni per questo:
- Getta le basi per un .NET multipiattaforma
- Costruisci e sfrutta un ecosistema più forte
Ma perché Microsoft dovrebbe aiutare gli sviluppatori a creare software .NET multipiattaforma? Questo va contro tutto ciò che hanno fatto prima. Microsoft ha spinto i propri sistemi di infrastruttura per anni. Linux e Mac erano nemici da sconfiggere, non alleati. Che cosa è questa storia?
Qualunque sia la loro vera motivazione, gli sviluppatori ne traggono il meglio. Vorrei ringraziare Microsoft per aver fatto questo passo. Meglio tardi che mai!
L'impatto a lungo termine della tecnologia Microsoft open-source sarà enorme. Il vero .NET multipiattaforma avrà un impatto diretto sui costi di hosting, licenza e manutenzione. Ciò semplificherà la vendita di applicazioni .NET di una grandezza che non riesco nemmeno a immaginare.
Ho speso gran parte della mia carriera professionale scrivendo codice. Il mio primo amore è stato Borland Pascal e "Blue Screen" era qualcosa che guardavo con molto rispetto all'epoca. In seguito ho utilizzato una varietà di piattaforme e linguaggi di sviluppo, ma siamo onesti: da quando Microsoft ha rilasciato .NET, Visual Studio è il miglior ambiente di sviluppo disponibile oggi. È uno sportello unico per tutto ciò di cui un singolo sviluppatore o team potrebbe aver bisogno per creare qualsiasi tipo di applicazione. È strettamente legato alle fantastiche funzionalità dei compilatori .NET e ogni nuova versione di Visual Studio sembra un prodotto che non potrebbe essere ulteriormente esteso; tuttavia, Microsoft riesce a sorprendere continuamente introducendo nuove fantastiche funzionalità con ogni nuova versione di Visual Studio.
La creazione di software è un ottimo processo, che fa sentire ogni sviluppatore che abbia mai incontrato creativo, fantasioso e realizzato. Ma hai mai provato a vendere o supportare i processi di vendita? Non sono sicuro che ogni venditore possa dire lo stesso degli sviluppatori di software per la loro parte dell'equazione. Vendere per una società di sviluppo software è orribile: devi preoccuparti di molti fattori che non hanno nulla a che fare con lo sviluppo effettivo del software. Le persone che lavorano nel reparto vendite devono dimostrare/convincere i clienti che il prodotto/servizio venduto è il migliore che i clienti possono ottenere per il prezzo da pagare; pertanto, tagliare i costi di sviluppo e manutenzione del software è sempre fondamentale. Il mondo reale non smette mai di calcolare il valore rispetto al costo.

D'altra parte, avviare un'azienda non è mai stato così facile. Se hai una buona idea, non è troppo difficile raccogliere fondi per creare "qualcosa" (l'ultimo nome di "qualcosa" è Prodotto minimo vitale, ma probabilmente verrà aggiornato in futuro), mostrare "qualcosa" al mondo, ottieni un feedback positivo, ottieni più finanziamenti e ripeti fino a quando non inizi a fare soldi, vendi la tua azienda o fallisci.
Qual è il modo più semplice per ridurre il costo di un prodotto software? Bene, lo sviluppo è qualcosa che devi pagare e nella maggior parte dei casi pagherai solo la tariffa oraria dei tuoi sviluppatori, indipendentemente dalla piattaforma di sviluppo che stanno utilizzando; quindi il modo più semplice per ridurre i costi è distribuire il software in un ambiente che non richiede licenze aggiuntive. È qui che Microsoft ha fallito più e più volte! Avremmo potuto accendere dibattiti su prestazioni, qualità del software, scalabilità, ecc., ma è facile vedere che la piattaforma .NET può facilmente far fronte a qualsiasi sfida tecnica lanciata. In molti casi, credo che mostri la sua superiorità rispetto ad altre piattaforme; ma non vinco spesso i dibattiti sulla distribuzione e sulle licenze dell'infrastruttura.
Il mercato ha iniziato ad allontanare gli sviluppatori dalla piattaforma di sviluppo Microsoft e sì, sono uno di quegli sviluppatori. Ho adottato Node.js come piattaforma di back-end principale, indipendentemente dal fatto che non sia ancora abbastanza maturo per far fronte a tutto ciò di cui ho bisogno. Amo WebStorm e apprezzo l'ottimo lavoro svolto da JetBrains, ma ho amato ancora di più Visual Studio 2013. Sì, sono consapevole che posso scrivere app Node.js in VS! Ma quando si passa da C# a JavaScript, da SQL Server a PostgreSQL, da IIS ad Apache, perché preoccuparsi di usare PC basati su Windows?
Ero un vero evangelista Microsoft, anche prima dell'uscita di .NET e sicuramente prima che .NET fosse open source e multipiattaforma. Ma tutto questo è morto quando ci hanno portato via (un dito) su Skype. Ho sempre amato creare applicazioni per piattaforme Windows. Ho passato molto tempo a imparare trucchi e trucchi del mestiere, e credo di essere stato molto bravo. Tuttavia, il mercato dello sviluppo del software è cambiato molto negli ultimi dieci anni. Le startup stanno fiorendo ovunque e ogni nuovo cliente è alla ricerca della soluzione più conveniente. Microsoft non è riuscita a tenere il passo con questo nuovo mercato e io sono solo uno dei tanti sviluppatori Microsoft che hanno sostituito il suo laptop Windows con un MacBook. Microsoft ha finalmente capito che darci la possibilità di distribuire le nostre applicazioni su piattaforme open source manterrà enormi comunità di sviluppo Microsoft che utilizzeranno i loro strumenti e alla fine porterà anche più clienti a loro.
Microsoft ha fatto un piccolo passo verso un grande cambiamento e ha i migliori strumenti di sviluppo e una grande comunità di sviluppo. Cosa accadrebbe se ricevessimo un sistema operativo open source su un ottimo IDE? “Nemmeno io oso calcolare le quote”.