.NET Core - Going Wild și Open Source. Microsoft, ce ți-a luat atât de mult?!

Publicat: 2022-03-11

„Se formează ceva misterios, născut în vidul tăcut. Așteptând singur și nemișcat, este nemișcat, dar în continuă mișcare…”

Într-adevăr, două dintre cele mai mari evenimente din istoria omenirii tocmai au avut loc unul după altul:

  • Misiunea Rosetta a ESA și-a aterizat ușor sonda Philae pe o cometă, pentru prima dată în istorie când a fost realizată o astfel de performanță extraordinară.

  • Microsoft Open Sources .NET

Primul eveniment este un pas grozav pentru omenire, iar cel din urmă este și mai mare pentru Microsoft!

Misiunea Rosetta își va lua locul în cărțile de istorie și va fi amintită de câte ori ne amintim de Laika. A fost gândit și planificat cu atenție timp de un deceniu, a împins umanitatea cu un pas mai departe și a arătat că tehnologia dezvoltată cu un deceniu în urmă poate face încă lucruri uimitoare.

Al doilea eveniment a fost o surpriză pentru mulți. Nu s-a făcut prea mult reclamă și sunt sigur că fiecare detaliu al anunțului său nu a fost planificat acum un deceniu; dar era evident că Microsoft a luat acest traseu în urmă cu ceva timp, iar .NET core nu este primul lucru pe care l-au împins spre open source (Roslyn).

Este .NET open source? În sfârșit, .NET multiplatformă pe care îl așteptăm.

Deci, omenirea chiar avea nevoie de o sondă pe o cometă? Poate că nu, dar este minunat că a aterizat! Microsoft a avut nevoie de o epifanie pentru a începe open-source .NET core? Da! Au avut nevoie de el în urmă cu mai bine de un deceniu!

Ce s-a schimbat într-una dintre cele mai mari companii de dezvoltare de software din lume? Ce i-a făcut să meargă pe drumul OSI?

Potrivit blogului .NET Framework, există două motive pentru aceasta:

  • Puneti bazele unui .NET multiplatform
  • Construiți și folosiți un ecosistem mai puternic

Dar de ce ar vrea Microsoft să ajute dezvoltatorii să construiască software .NET multiplatformă? Acest lucru este împotriva a tot ceea ce au făcut înainte. Microsoft își promovează propriile sisteme de infrastructură de ani de zile. Linux și Mac erau dușmani care trebuiau învinși, nu aliați. Despre ce este vorba?

Oricare ar fi motivația lor reală, dezvoltatorii obțin tot ce este mai bun din asta. Aș dori să mulțumesc Microsoft pentru acest pas. Mai bine mai tarziu decat niciodata!

Impactul pe termen lung al tehnologiei Microsoft open-source va fi enorm. Adevăratul .NET multiplatform va avea un impact direct asupra costurilor de găzduire, licențiere și întreținere. Acest lucru va simplifica vânzarea aplicațiilor .NET cu o magnitudine pe care nici nu mi-o pot imagina.

Mi-am petrecut o mare parte din cariera mea profesională scriind cod. Prima mea dragoste a fost Borland Pascal, iar „Ecranul albastru” era ceva la care mă uitam cu mult respect pe atunci. Am folosit apoi o varietate de platforme și limbi de dezvoltare, dar să fim sinceri - de când Microsoft a lansat .NET, Visual Studio este cel mai bun mediu de dezvoltare disponibil astăzi. Este un ghișeu unic pentru tot ce ar putea avea nevoie un singur dezvoltator sau echipă pentru a construi orice tip de aplicație. Este strâns legat de caracteristicile excelente ale compilatoarelor .NET și fiecare versiune nouă de Visual Studio arată ca un produs care nu ar putea fi extins mai mult; cu toate acestea, Microsoft reușește să surprindă continuu prin introducerea de noi funcții interesante cu fiecare versiune nouă de Visual Studio.

Crearea de software este un proces grozav, care face ca fiecare dezvoltator pe care l-am întâlnit vreodată să se simtă creativ, inventiv și împlinit. Dar ați încercat vreodată să vindeți sau să susțineți procesele de vânzare? Nu sunt sigur că fiecare persoană de vânzări poate spune la fel ca dezvoltatorii de software pentru partea lor din ecuație. Vânzarea pentru o companie de dezvoltare de software este hidosă - trebuie să vă faceți griji cu privire la mulți factori care nu au nimic de-a face cu dezvoltarea reală a software-ului. Oamenii care lucrează în departamentul de vânzări trebuie să demonstreze/convinge clienții că produsul/serviciul vândut este cel mai bun pe care îl pot obține clienții pentru prețul care trebuie plătit; prin urmare, reducerea costurilor de dezvoltare și întreținere a software-ului este întotdeauna crucială. Lumea reală nu se oprește niciodată din calcularea valorii față de cost.

Pe de altă parte, înființarea unei companii nu a fost niciodată mai ușoară. Dacă aveți o idee bună, nu este prea dificil să strângeți fonduri pentru a crea „ceva” (cel mai recent nume pentru „ceva” este Produs minim viabil, dar care probabil va fi actualizat în viitor), arătați „ceva” lumii, obțineți feedback pozitiv, obțineți mai multe fonduri și repetați până când începeți să câștigați bani, să vă vindeți compania sau să eșuați.

Care este cel mai simplu mod de a reduce costul unui produs software? Ei bine, dezvoltarea este ceva ce trebuie să plătiți și, în majoritatea cazurilor, veți plăti doar tariful orar al dezvoltatorilor dvs., indiferent de platforma de dezvoltare pe care o folosesc; deci, cel mai simplu mod de a reduce costurile este să vă implementați software-ul într-un mediu care nu necesită licențe suplimentare. Aici Microsoft a eșuat din nou și din nou! Am putea avea dezbateri aprinse despre performanță, calitatea software-ului, scalabilitate etc., dar este ușor de observat că platforma .NET poate face față cu ușurință oricărei provocări tehnice care i se aruncă. În multe cazuri, cred că își arată superioritatea față de alte platforme; dar nu câștig adesea dezbateri despre implementare și licențiere de infrastructură.

Piața a început să-i împingă pe dezvoltatori departe de platforma de dezvoltare Microsoft și da, eu sunt unul dintre acești dezvoltatori. Am adoptat Node.js ca platformă back-end primară, indiferent de faptul că încă nu este suficient de matur pentru a face față la tot ce am nevoie. Îmi place WebStorm și apreciez munca grozavă pe care a făcut-o JetBrains cu el, dar mi-a plăcut și mai mult Visual Studio 2013. Da, știu că pot scrie aplicații Node.js în VS! Dar când ești împins de la C# la JavaScript, de la SQL Server la PostgreSQL, de la IIS la Apache, de ce să te deranjezi să folosești PC-uri bazate pe Windows?

Am fost un adevărat evanghelist Microsoft, chiar înainte de apariția .NET și cu siguranță înainte ca .NET să fie open source și cross-platform. Dar toți au murit când ne-au luat (degetul) pe Skype. Întotdeauna mi-a plăcut să fac aplicații pentru platformele Windows. Am petrecut mult timp învățând sfaturi și trucuri ale meseriei și cred că am fost foarte bun la asta. Cu toate acestea, piața dezvoltării de software s-a schimbat foarte mult în ultimul deceniu. Startup-urile înfloresc peste tot și fiecare client nou caută cea mai rentabilă soluție. Microsoft nu a reușit să țină pasul cu această nouă piață și sunt doar unul dintre mulți dezvoltatori Microsoft care și-au înlocuit laptopul Windows cu un MacBook. Microsoft și-a dat seama în sfârșit că oferindu-ne opțiunea de a implementa aplicațiile noastre pe platforme open-source va menține comunitățile uriașe de dezvoltare Microsoft să își folosească instrumentele și, în cele din urmă, le va aduce și mai mulți clienți.

Microsoft a făcut un pas mic către o schimbare majoră și are cele mai bune instrumente de dezvoltare și o comunitate de dezvoltare grozavă. Ce s-ar întâmpla dacă am primi un sistem de operare open-source pe lângă un IDE grozav? „Nici măcar eu nu îndrăznesc să calculez șansele”.