Microsoft e l'opensource
Autore:[Antonio Gallonetto]
Microsoft con la gestione di Satya Nadella invece di ostacolare l’opensource ha deciso di appoggiarlo.
Le sue iniziative sono state, acquisire Github, ha una directory abbastanza corposa di software libero, ha reso disponibile uno strumento di sviluppo multipiattaforma Visual Studio Code, Windows può installare un sottosistema Linux dal Microsoft Store, il framework di sviluppo .net è multipiattaforma.
Github il più grande contenitore di software libero
Github è un contenitore di codice nel quale si possono depositare i propri progetti, e si può interagire in modo automatizzato sia per la condivisione del codice che sincronizzazione, gestione delle versioni, update. Un po’ di numeri:
- E’ stato acquisito da Microsoft per 7,5 Miliardi il quattro giugno 2018. Pagato caro rispetto al suo reale valore.
- Github ha in deposito oltre duecento milioni di directory di codice sorgente, sicuramente più di cinquanta milioni sono a codice sorgente aperto.
- Github nasce con l’intento di supportare il codice a sorgente aperto, quindi i repository di software erano pubblici. Dal gennaio 2019 si possono avere un numero illimitato di directory private e 500 Mb di spazio a disposizione.
- Github ha dei piani a pagamento targetizzati per i team e per le grandi aziende a costi più che accessibili.
- Github non deve essere confuso con Gitlab che è un progetto opensource sviluppato da Gitlab inc. consorzio di aziende quali IBM,Sony, Nasa, O’Relly, Alibaba ecc. Piattaforma che fa da supporto a git, strumento sviluppato da Linux Torvalds per il mantenimento dei progetti opensource.
- Git può interagire tranquillamente anche con github
Progetti opensource di Microsoft
- Web-Dev-For-Beginners, corso per web designer
- PowerToys estendere e potenziare Windows
- Visual Studio Code, editor di codice sorgente
- Terminal, un terminale potenziato per Windows
- Playwright una libreria node.js per automatizzare i browser internet
- Wslg sottosistema Linux con la parte grafica
- Swin-Transformer, progetto in python per l’implementazione della tecnica delle Shifted window
- TypeScript è un sottoinsieme di Javascript
- Calculator una super calcolatrice
- Maui framework per .net che permette di costruire applicazione per desktop e dispositivi mobili.
- cascadia-code font per programmare
- winget-cli
- Bringing-Old-Photos-Back-to-Life
- Qlib piattaforma basata sull’intelligenza artificiale per gli investimenti
- Playwright-python libreria python per il testing e l’automazione
- PowerShell la shell multipiattaforma
- Ebpf-for-windows controllare l’interazione tra kernel e software
- Monaco-editor Editor di codice dove fonda le sue radici Visual Studio Code
- STL Implementazione di Microsoft delle librerie standard C++
- Runtime di .net che permette l’esecuzione multipiattaforma di quello che è basato su .net
- eShopOnContainers containers .net che ne dimostrano le funzionalità
- DeepSpeed acquisizione di dati in modo distribuito per il training delle applicazioni AI
- Recommenders
- Aspnetcore infrastruttura basata su .net per il cloud multipiattaforma
- Api-guidelines guida alle api di REST
- Graphormer implementazione di “Do Transformers Really Perform Bad for Graph Representation?”
- Ai-edu materiale didattico per studenti e insegnanti cinesi
- Nni automazione del processo di apprendimento per il Machine Learning
- Power-Fx linguaggio di programmazione di basso livello
- Pyright validatore di tipo per il linguaggio Python
- Windows-rs RUST per Windows
- Mimalloc evoluzione del comando malloc, di allocazione di memoria, super efficiente
- Vcpkg libreria C++ multipiattaforma
- LoRA “LoRA: Low-Rank Adaptation of Large Language Models”
- AirSim, simulatore di veicoli autonomi basati su Unreal Engine / Unity, da Microsoft AI & Research
- Tye utility per lo sviluppo di microservices
- Reverse-proxy
- Onefuzz
- LightGBM gestione di un albero decisionale ad alte performance
- React-native-windows framework per sviluppare applicazioni native in REACT
Visual Studio Code
Visual Studio Code è uno dei migliori editor di codice sorgente. E’ multipiattaforma, si può installare tranquillamente su Linux, Mac, Windows.
E’ un software estendibile ed esiste una quantità infinita di moduli aggiuntivi, è veramente completo e ben fatto.
WSL windows subsystem for linux
Nato dalla collaborazione tra Microsoft e Ubuntu, si può tranquillamente installare un sottosistema Linux perfettamente integrato dallo store di Microsoft. Questo permette di utilizzare Linux e Windows contemporaneamente senza dover installare macchine virtuali con degrado delle prestazioni e delle performance. Due sistemi che convivono perfettamente e che si possono usare contemporaneamente. WSL non prevede l’utilizzo di software con interfaccia grafica.
WSL2 windows subsystem for linux versione 2
Con WSL2 abbiamo l’interfaccia grafica anche per le applicazioni Linux.
.Net multipiattaforma
.Net era il framework di sviluppo per Windows. Per framework si intende un vasto insieme di funzionalità, di librerie che possiamo usare per sviluppare il software. Quindi ogni volta che andremo ad esempio a visualizzare un bottone, non andremo a scrivere il codice per costruire il bottone e associargli le varie funzionalità, ma chiameremo una funzionalità del framework che lo farà per noi.
.Net è diventato multipiattaforma dall’aprile 2016. Questo è estremamente importante perché facilità la portabilità su piattaforme diverse del software.