Microsoft cerca di creare fiducia nelle librerie .NET di terze parti

Lamentando che molti sviluppatori nella comunità .NET siano riluttanti a utilizzare librerie non create da Microsoft, Microsoft vuole aiutare gli sviluppatori .NET a prendere decisioni di fiducia e incoraggiarli a fidarsi di librerie sviluppate da terze parti.

In un documento pubblicato il 14 dicembre su GitHub, "Crescita dell'ecosistema .NET", Immo Landwerth, program manager per il team di Microsoft .NET Framework, ha scritto che Microsoft ha insegnato ai clienti ad aspettarsi che tutte le funzionalità provengano da Microsoft. Ma poiché Microsoft non può costruire tutto, soprattutto non al ritmo con cui si evolvono altri ecosistemi open source, il set di librerie affidabili per .NET "deve crescere oltre Microsoft".

Microsoft deve normalizzare la pratica secondo cui gli sviluppatori di applicazioni possono dipendere da biblioteche non controllate dalla società, ha osservato Landwerth, aggiungendo che per raggiungere questo obiettivo sarà necessario un cambiamento culturale in Microsoft. Pertanto, un obiettivo per la versione pianificata di .NET 6 è promuovere una visione che includa la fiducia nelle librerie non Microsoft. .NET 5 è appena arrivato ad ottobre mentre .NET 6 è previsto per novembre 2021.

Landwerth ha scritto che esiste la percezione che altri ecosistemi, in particolare Java, JavaScript e Python, abbiano una maggiore diversità tecnologica e quindi "un ecosistema open source complessivamente più forte". Ha anche notato la percezione che Microsoft "risucchia l'aria" dall'ecosistema .NET perché le soluzioni Microsoft sono generalmente promosse e sono spesso strettamente integrate nella piattaforma, rendendo le soluzioni esistenti meno attraenti.

Per risolvere questi problemi, ha scritto Landwerth, Microsoft deve interagire con i proprietari delle librerie esistenti per aumentare la loro qualità e rafforzare la loro integrazione nell'esperienza degli sviluppatori .NET. Microsoft lo ha già fatto con gRPC, OpenTelemetry e Apache Spark / Arrow, ha aggiunto.

Inoltre, ha osservato Landwerth, è necessario modificare l'approccio quando vengono create nuove tecnologie per le quali non esiste ancora un ecosistema. Invece di costruire tutto, i progetti dovrebbero essere creati in modo tale che Microsoft non sia l'unico manutentore. Dovrebbero essere ricercati collaboratori esterni. C'è anche un problema relativo al supporto, ha detto Landwerth, con la percezione che il codice prodotto da Microsoft sia sempre supportato mentre il codice da altrove non lo è.

Il documento ha sottolineato che le esperienze di terze parti possono essere valide quanto le esperienze di prima parte e ha concluso che è necessario un processo di rilevamento e acquisizione curato per i componenti opzionali di .NET. Con .NET 6 e il supporto per i carichi di lavoro mobili, Microsoft sta passando a un modello in cui parte di .NET è facoltativa. Ciò garantisce che il prodotto principale possa essere piccolo e "scattante" da installare, pur supportando l'intera gamma della piattaforma .NET.