14 kwi 2021 POIT #111: .NET
Witam w sto jedenastym odcinku podcastu „Porozmawiajmy o IT”. Tematem dzisiejszej rozmowy jest .NET.
Dziś moim gościem jest Kajetan Duszyński – .NET Developer z ponad 9-letnim komercyjnym doświadczeniem w ASP.NET. Tworzył oprogramowanie wykorzystywane przez Samsung Electronics czy Falck. Twórca Szkoły Dotneta, kanału na YouTube „Porozmawiajmy o Programowaniu”, a także grupy na facebooku „Naucz się .NETa”.
W tym odcinku o .NET rozmawiamy w następujących kontekstach:
- skąd się .NET wziął i jakie były początki tej technologii?
- jakie języki programowania mamy do wyboru decydując się na .NET?
- jaką technologią jest ASP.NET?
- jakie są najczęstsze zastosowania i obszary występowania?
- jak wygląda wsparcie twórców i community?
- czym jest .NET Roadmap?
- jakim frameworkiem jest Blazor?
- czy Xamarin ciągle żyje?
- czym jest .NET MAUI – Multi-Platform App UI?
- z jakimi bazami danych najczęściej współpracuje się stosując .NET?
- jak wygląda obecnie rynek pracy związany z .NET?
- jakie braki i bolączki obecnie są spotykane?
- jak zacząć przygodę z tą technologią?
Subskrypcja podcastu:
- zasubskrybuj w Apple Podcasts, Google Podcasts, Spreaker, Sticher, Spotify, przez RSS, lub Twoją ulubioną aplikację do podcastów na smartphonie (wyszukaj frazę „Porozmawiajmy o IT”)
- ściągnij odcinek w mp3
- poproszę Cię też o polubienie fanpage na Facebooku
Linki:
- Profil Kajetana na LinkedIn – https://www.linkedin.com/in/kduszynski/
- Profil Kajetana na Twitter – https://twitter.com/kajdusz
- Profil Kajetana na Instagram – https://www.instagram.com/kajetan.duszynski/
- Szkoła dot.NETa – https://szkoladotneta.pl/
- Podcast “Praca Deva” – https://anchor.fm/pracadeva
- Oferty pracy SOLID.Jobs – https://solid.jobs/
Wsparcie na Patronite:
Wierzę, że dobro wraca i że zawsze znajdą się osoby w bliższym lub dalszym gronie, którym przydaje się to co robię i które zechcą mnie wesprzeć w misji poszerzania horyzontów ludzi z branży IT.
Patronite to tak platforma, na której możesz wspierać twórców internetowych w ich działalności. Mnie możesz wesprzeć kwotą już od 5 zł miesięcznie. Chciałbym oddelegować kilka rzeczy, która wykonuję przy każdym podcaście a zaoszczędzony czas wykorzystać na przygotowanie jeszcze lepszych treści dla Ciebie. Sam jestem patronem kilku twórców internetowych i widzę, że taka pomoc daje dużą satysfakcję obu stronom.
👉Mój profil znajdziesz pod adresem: patronite.pl/porozmawiajmyoit
Pozostańmy w kontakcie:
- 📧 Jeśli masz jakieś pytania lub komentarze, pisz do mnie śmiało na krzysztof@porozmawiajmyoit.pl
- 📩 Zapisz się na newsletter aby nie przegapić kolejnych ciekawych odcinków.
- 🎙 Subskrybuj podcast w lub
Muzyka użyta w podcaście: „Endless Inspiration” Alex Stoner (posłuchaj)
Transkrypcja podcastu
To jest 111. odcinek podcastu Porozmawiajmy o IT, w którym z moim gościem rozmawiam o .NET.
Przypominam, że w poprzednim odcinku rozmawiałem o wykorzystaniu danych dzięki chmurze. Wszystkie linki oraz transkrypcję dzisiejszej rozmowy znajdziesz pod adresem porozmawiajmyoit.pl/111.
Ocena lub recenzja podcastu w Twojej aplikacji jest bardzo cenna, więc nie zapomnij poświęcić na to kilku minut.
Sponsorem dzisiejszego odcinka jest również platforma rekrutacyjna SOLID.Jobs. Jeśli szukasz pracy w IT, koniecznie odwiedź adres: https://solid.jobs/. Znajdziesz tam oferty pracy z widełkami wynagrodzeń.
Jeżeli aktualnie nie myślisz o znalezieniu nowej pracy, to koniecznie zapisz się na job alert. Otrzymasz regularne wiadomości e-mail z zestawieniem ofert, które mogą cię zainteresować. Jeśli w swojej pracy nadal korzystasz z SVN-a, to koniecznie odwiedź SOLID.Jobs.
Nazywam się Krzysztof Kempiński, a moją misją jest poszerzanie horyzontów ludzi z branży IT. Środkiem do tego jest m.in. ten podcast. Zostając patronem na platformie Patronite, możesz mi w tym pomóc już dziś. Wejdź na porozmawiajmyoit.pl/wspieram i sprawdź szczegóły!
Jednocześnie bardzo dziękuję moim obecnym patronom.
Teraz życzę Ci miłego słuchania. Odpalam!
Cześć! Mój dzisiejszy gość to .NET developer z ponad 9-letnim, komercyjnym doświadczeniem w ASP .NET, tworzył oprogramowanie wykorzystywane przez Samsung Electronics czy Falck, twórca Szkoły Dotneta, kanału na YouTube o nazwie Porozmawiajmy o programowaniu, a także grupy na Facebooku Naucz się .NET.
Moim i Waszym gościem jest dzisiaj Kajetan Duszyński.
Cześć, Kajetan! Bardzo miło mi gościć cię w podcaście.
Cześć, Krzysztof! Dziękuję bardzo za zaproszenie. Jest mi niezwykle miło, że będę mógł dziś z tobą porozmawiać na, mam nadzieję, bardzo interesujący temat, jakim jest właśnie .NET.
Jestem o tym przekonany! Właśnie pomyślałem, że to będzie najkrótszy tytuł odcinka z mojego podcastu, bo tylko cztery znaki!
Zanim przejdziemy do bardziej merytorycznej rozmowy, to u mnie klasycznie na początek jest zawsze pytanie, czy słuchasz podcastów, może masz jakieś swoje ulubione, którymi możesz się podzielić?
Pewnie! Od roku, od kiedy zaczęła się pandemia słucham trochę mniej, bo zazwyczaj słuchałem podcastów dojeżdżając do pracy, jak gdzieś się przemieszczałem. Przez ostatni rok troszeczkę mniej – natomiast tak czy inaczej, jeśli chodzi o kilka podcastów, staram się zawsze być na bieżąco.
Jeśli chodzi o moje tematy, tematy technologiczne, to na pewno jest to jeden z zagranicznych podcastów .NET Rocks!, gdzie dwóch chłopaków rozmawia na najróżniejsze tematy i dzięki temu zawsze jestem na bieżąco, zawsze mogę być na bieżąco z moim światem, ze światem .NET – natomiast jeśli chodzi o polskie podcasty, to oczywiście – twój podcast zawsze daje ciekawe spojrzenie na najróżniejsze tematy, ale też muszę się przyznać, właśnie w związku z tym, co robię w internecie, jak działam, to dużo więcej słucham podcastów związanych z biznesem, rozwojem osobistym i tak tutaj mamy np. Biznes DZIŚ Mirka Burnejki i Bogusza Pękalskiego, czy oczywiście Mała Wielka Firma, która jest wszystkim znana.
Tak – klasyka polskiego podcastu! Jasne. Zawsze warto polecić, bo faktycznie tam jest tona konkretnych, fajnych odcinków – decydowanie.
Zacznijmy rozmawiać o .NET – sprawdziłem sobie ostatnio, to jest taka technologia, która niedługo będzie miała 20 lat. Technologia od Microsoftu – można powiedzieć, że dosyć dużo jak na świat IT.
Technologia, która obejmuje runtime, standardowe biblioteki i co ciekawe, ta technologia, ta platforma nie jest związana z żadnym, konkretnym językiem.
Powiedz proszę kilka słów na temat tego, skąd ten .NET się wziął, jakie były początki tej technologii, w jaki sposób się narodził?
Mówisz, że ma prawie 20 lat – właściwie to ma ponad 20 ze względu na to, ze pierwszy raz został zaprezentowany w 2000 roku i na początku była to kolaboracja między Microsoftem, Intelem i jeszcze jedną firmą.
Pomysł już dawno przyświecał temu taki, aby stworzyć platformę, która zunifikuje wszystko, co mamy dostępne, z redefiniuje pojęcia internetu i pozwoli nam na zupełnie nowe doświadczenie, jeśli chodzi o interakcje z urządzeniami i oprogramowaniem
Microsoft miał takie plany, aby .NET był wszędzie. Nawet Windows w pewnym momencie miał się nazywać Windows.NET.
Mieli plan na to, żeby wprowadzić taką jedną platformę do wszystkich swoich usług, oczywiście to przez wiele lat nie wychodziło, natomiast faktycznie sama platforma bardzo się rozrosła, zyskała bardzo na popularności.
Obsługuje w tej chwili najróżniejsze języki programowania, także nie jesteśmy zamknięci tylko do jednego czy dwóch, ale możemy naprawdę w najróżniejszych językach, stylach pisać oprogramowanie i na najróżniejsze platformy. Historia .NET jest na pewno bardzo ciekawa, ale to, co się dzieje w tej chwili wydaje mi się zdecydowanie ciekawsze, bo mam wrażenie, że jeszcze dzisiaj o tym porozmawiamy, ale .NET przeżywa pewnego rodzaju rozkwit dokładnie teraz.
Czy myślisz, że ta diagnostyczność, jeśli chodzi o języki programowania to było tak trochę by design, taki był pomysł, by oddzielić tę warstwę związaną z językiem od pewnych konceptów, pewnej architektury czy pewnych abstrakcji? To faktycznie na początku leżało w designie podejścia związanego z .NET-em czy wyszło przypadkiem? Jak to odbierasz?
Wydaje mi się, że ostatecznie wyszło to trochę przypadkiem. Gdzieś może idea z tyłu głowy jeszcze u Billa Gatesa na ten temat, natomiast myślę, że technologicznie to było za wcześnie na to, żeby podejmować tego typu próby. Że jeszcze technologia, ta architektura, którą znaliśmy nie była gotowa na to, żeby zunifikować to wszystko, żeby stworzyć coś, co będzie zupełnie oddzielone od języka programowania i żeby można było mówić o takim podejściu zupełnie całościowym do platformy Microsoftu jako takiej.
Myślę natomiast, że u pracowników cały czas z tyłu głowy to się działo i po prostu ewoluowało przez lata.
Okej. Powiedzmy może, jakie obecnie języki mamy do wyboru? Z tego, co się orientuję to są bardzo różne. Nawet gdyby porównać paradygmaty – możemy sobie wybierać i ten bardziej funkcyjny, bardziej obiektowy.
Jakie najpopularniejsze języki związane z .NET byłbyś w stanie wymienić i które poleciłbyś też na początek? Myślę, że można się trochę zgubić!
Pewnie. Wybór jest olbrzymi. Może zacznę od końca i od tego, co wspiera .NET, ale co nie leży u jego fundamentów. Przy .NET możemy programować zarówno w Pythonie, Javie jak i w najróżniejszych językach, natomiast u podstawy samego .NET-a leżą trzy języki. C#, F# i Visual Basic.
Wybór jest olbrzymi. Może zacznę od końca i od tego, co wspiera .NET, ale co nie leży u jego fundamentów. Przy .NET możemy programować zarówno w Pythonie, Javie jak i w najróżniejszych językach, natomiast u podstawy samego .NET-a leżą trzy języki. C#, F# i Visual Basic.
Ze swojej strony polecam C# jako język zdecydowanie najczęściej używany, najbardziej uniwersalny. Jest to język jak wszystkie z rodziny C, język obiektowy i zdecydowanie najpopularniejszy.
Faktycznie, najwięcej materiałów do nauki jest w tym C#, natomiast jeżeli kogoś interesuje programowanie funkcyjne, to zdecydowanie można polecić F#i pozostaje jeszcze ten Visual Basic.
Usłyszałem kiedyś, że był to język stworzony dla sekretarek. To znaczy – niikogo nie obrażając, ale wiemy, że programiści potrzebują jakiegoś rodzaju abstrakcyjnego myślenia, myślenia o obiektach i dodatkowo muszą nauczyć się składni tych języków, natomiast Visual Basic miał być językiem najbardziej zbliżonym do język, którym się posługujemy na co dzień, w związku z czym teoretycznie ten próg wejścia miał być jak najniższy, natomiast od jakiegoś czasu już sam Microsoft się tak bardzo na tym języku nie skupia i faktycznie tymi dwoma podstawowymi w tej chwili już będą C# i F#.
Myślę, że możemy sobie robić mniejsze lub większe żarty na ten temat, ale jakby spojrzeć na index TIOBE czy inne sposoby określenia najpopularniejszych języków albo najczęściej stosowanych, to wyszłoby, ze Basic jest tam ciągle dość wysoko.
C# oczywiście też zajmuje bardzo wysoką pozycję. Czy wiesz może, czy Microsoft czy jakieś inne podmioty prowadzą jakąś formę indeksu czy określenia, które języki związane z .NET-em są najpopularniejsze? Czy to jest bardzo oczywiste i jasne? Jesteś w stanie powiedzieć, że C# króluje i długo, długo nic, cz też raczej niektóre w miarę równolegle zajmują te pierwsze pozycje?
Wydaje mi się, że to najbardziej widać po tym, co prezentuje Microsoft. Za każdym razem, kiedy jest jakakolwiek konferencja związana z nowym .NET-em, związana z nowościami w .NET, to praktycznie wszystkie przykłady oparte są o C#. Oni sami najchętniej go używają, a popularność Visual Basica, jeśli chodzi o indexy, na Stack Overflow, na TIOB-ie, to jest bardziej związane z dostępnością z Visual Basic for Applications, czyli technologii do tworzenia makr na przykład w Excelu i cały czas dużo osób próbuje zautomatyzować swoją pracę – i bardzo dobrze, oczywiście – biurową za pomocą tego Visual Basica i dlatego on będzie jeszcze przez długi czas na pewno wysoko we wszelkich językach.
To nie ulega wątpliwości, natomiast jeśli chodzi o trendy i w co inwestuje Microsoft, to tutaj C# zdecydowanie króluje niepodzielnie.
Myślę, że pewnie jest też sporo projektów typu legacy – napisanych, chociażby w Visual Basicu, które trzeba utrzymywać, rozwijać, które nie sposób wręcz przenieść – to też może podbijać trochę te współczynniki.
Na początku, gdy cię przedstawiałem, powiedziałem, że masz wieloletnie doświadczenie w ASP.NET – jak ta technologia wpasowuje w cały krajobraz, całe spektrum możliwości .NET? Gdzie się wykorzystuje, jakie możliwości na daje?
Tego nie powiedzieliśmy na początku, ale jeśli chodzi o .NET to mamy możliwości tworzenia najróżniejszych aplikacji.
To mogą być aplikacje webowe, jest chmura, jest IoT, Machine Learning, GameDev – całe spektrum, jeśli chodzi o programowanie jest obsłużone przez .NET, natomiast ja faktycznie przede wszystkim siedzę w ASP, czyli w technologii webowej, która też już od wielu lat ewoluowała i co roku się zmienia na lepsze.
W tej chwili widzimy taki trend, że ASP.NET core czy ASP.NET z powrotem, jeśli chodzi o najnowszą wersję .NET 5 jest najchętniej i najczęściej wybieranym backendowym frameworkiem, jeśli chodzi o tworzenie aplikacji webowej. Opieram swoje dane na najnowszej ankiecie ze Stack Overflow, gdzie ten ASP.NET core zdecydowanie wyprzedził wszelkie inne frameworki i jest oceniany jako ten najbardziej lubiany i najbardziej przyjazny deweloperom. Także zdecydowanie polecam spróbowanie swoich sił, jeżeli kogoś interesuje ten backend development w .NET.
Widać, że samo zainteresowanie webem i ASP.NET cały czas rośnie. Mamy od kilku lat taki trend, gdzie wszystko właściwie co tylko można przypisuje się do weba, więc te technologie wystrzeliły.
Oczywiście z jednej strony, od strony frontendu mamy olbrzymi boom na wszelkie frameworki frontendowe, co też w .NET ma miejsce od jakiegoś czasu, natomiast ten core backendowy tutaj bardzo mocno się rozwija, widzimy cały czas ewoluujące architektury, które są coraz bardziej przyjazne skalowalnym aplikacjom, więc naprawdę, nawet jeżeli ktoś w tej chwili programuje w innych językach to warto spojrzeć na ASP, ponieważ ta platforma faktycznie może sporo namieszać w najbliższych latach.
Właśnie – spróbujmy to porównać do technologii, które też nam się mocno kojarzą z backendem aplikacji webowych typu Python, Ruby, Java. Tam najczęściej z frameworkiem mamy zestaw możliwości jak podejście typu NBC, ORM, wsparcie do tworzenia API.
Domyślam się, że podobne komponenty funkcjonują też w ASP.NET. Tu jest podobne podejście czy też może zupełnie inne?
Oczywiście jest bardzo podobne, nawet jedna z części ASP nazwana jest po prostu ASP.NET NVC, gdzie u podwalin leży ten wzorzec. On już nie jest tak do końca wykorzystywany, zresztą mam wrażenie, że we wszystkich językach ta architektura ewoluowała w ten sposób, że takie czyste NVC już nie jest do końca wykorzystywane ze względu na to, że daje nam zbyt małe rozproszenie naszych zależności i zbyt mocne powiązanie pomiędzy różnymi zależnościami w związku z czym powstały architektury, które – fakt – nadal wykorzystują NVC, ale nie jest to klucz do sukcesu.
Dodatkowo oczywiście mamy ASP.NET WEB API, czyli technologię do tworzenia API. Głównie do tworzenia restful API, natomiast też są implementacje do tworzenia czy RPC czy GraphQL, a jeśli chodzi o ORM-y, to tutaj jest zdecydowanie najciekawiej ze względu na to, że mam wrażenie, że nawet pomiędzy n.NET-owcami tworzy się niemal święta wojna.
Znamy wszyscy świętą wojnę pomiędzy Javowcami i .NET-owcami i to się nigdy nie skończy, natomiast mamy małą wojnę domową pomiędzy .NET, jeśli chodzi o wybór ORM-ów, które ORM będzie najlepszy.
Czy MTT Framework, który jest rozwijany pod brandem Microsoftu czy jakieś mniejsze, lżejsze ORM-y jak Dapper, który teoretycznie miał być szybszy, a od kiedy powstał NTT Framework Core z .NET Core to te różnice zaczynają się zacierać, także to tez jest dyskusja warta uwagi, warta śledzenia.
Ciekawe! Czyli niezależnie od technologii takie wojenki się gdzieś tam toczą. Myślę sobie, że konkurencja jest dobra, więc to może i z korzyścią dla wszystkich.
Zdecydowanie.
Pewnie. Powiedziałeś trochę na temat zastosowań ogólnie szeroko rozumianego .NET, że to jest wiele różnych możliwości. Chciałbym cię trochę podpytać – w jakich projektach najczęściej możemy zaobserwować zastosowanie .NET. Chodzi mi o branżę, może jakieś firmy, które są bardziej znane i używają .NET?
Jakie jest zastosowanie, przyjęcie i używanie tej technologii w szeroko rozumianym świecie technologicznym?
Są dwa przykłady, które najczęściej wskazuję, bo właściwie wszyscy w Polsce związani z IT, ale też po prostu wszyscy ludzie, którzy żyją w Polsce znają jedną z tych firm i są to po pierwsze Stack Overflow.
Bardzo dużo swojego stacku technologicznego ma opartego o .NET i bardzo się tym chwalą, że faktycznie wykorzystują tę technologię i z powodzeniem mogą tworzyć, rozwijać swoje usługi właśnie w oparciu o webową technologię .NET-a, a drugą firmą jest polski mBank.
mBank od wielu lat opiera się na .NET, wcześniej na ASP.NET Web Forms, jeszcze wiele lat temu. W tej chwili przeszli na NVC – wiem, że mają swój stack oparty o mikroserwisy, w ASP.NET Core i pamiętam – jeszcze kilka la temu, jak dopiero ASP.NET Core wychodził, to oni już szukali developerów, którzy mogliby zaadoptować właśnie tę technologię, tę wersję w ich systemach, więc oni bardzo chętnie patrzą na te nowości związane z .NET. A skoro branża bankowa jest w stanie zaufać tej technologii, to myślę, że nie trzeba wiele dopowiadać, jeśli chodzi o bezpieczeństwo i zaufanie do technologii.
Odpowiadając w drugą stronę: zdecydowanie największy wzrost widać w aplikacjach webowych, bo mamy drugą działkę, która w najbliższych latach będzie się mocno rozrastać. Tzn. pod Microsoftem tworzony jest silnik Unity do gier i na pewno on będzie jeszcze wykorzystywany w wielu dużych produkcjach i tam też wsparcie dla samego C# jest coraz większe, więc będzie coraz większa dostępność tej platformy dla developerów. Natomiast faktycznie najbardziej popularny jeszcze przez wiele lat będzie właśnie ASP.NET i wszelkie technologie webowe, które też świetnie się potem w chmurę wpasowują, co też wiemy, że jest trendem od kilku lat.
To może być jakaś droga do sukcesu, podobnie jak było z JavaScriptem, który możliwy do wykorzystania na różnych platformach od serwerowej i po webową i mobilną powoduje, że firmy z chęcią inwestują w technologię, która będzie w stanie być używana przez teoretycznie tego samego developera – będzie ją w stanie z kolei wykorzystać na różnych polach, w których ta firma działa.
Skoro mówisz, że faktycznie pod parasolem .NET coraz więcej, coraz szerzej technologii plus zastosowań może się zmieścić, to faktycznie może spowodować, że coraz więcej osób zacznie z tej korzystać.
To jest jedna rzecz, żeby odnieść sukces. Drugą rzeczą jest wsparcie i odtwórcy – tutaj mamy potężnego gracza w postaci Microsoftu, ale tez community – coby nie było, nawet super fancy technologia bez tego wsparcia community może się szybko rozpaść, nie będzie przyjęta. Developerzy są jednak takimi adwokatami – często przekonują do danej technologii. Jeśli się z tą technologią nie czują, nie ma tam tego community, to technologia też może nie przejść.
Jak to wygląda w przypadku .NET-a? Jakbyś mógł powiedzieć coś na temat community, wsparcia twórców. Jak to pomaga w zwiększeniu popularności tej technologii?
Fajnie, że wspomniałeś o tym dużym graczu. To też kwestia warta uwagi – jeśli chodzi o Microsoft, to nie wiem na ile ty czy twoi słuchacze śledzą poczynania czy słyszą o poczynaniach Microsoftu, ale raz na jakiś czas – ostatnio mam wrażenie, że coraz częściej – Microsoft „wybiera się na zakupy”. Jak „wybiera się na zakupy”, to oni jeńców nie biorą, bo już kupili jakiś czas temu GitHub. Wszyscy myśleli „O, GitHub się skończy”, a okazało się, że znowu przeżywa rozkwit. Mało osób wie o tym, że LinkedIn jest Microsoftu. Też wszyscy myśleli, że „O nie, będziemy uciekać, bo teraz będzie zalew reklam”. LinkedIn rozkwita.
Dzisiaj, dosłownie kilka godzin temu przeczytałem, że Microsoft prowadzi rozmowy o tym, żeby przejąć Discorda. Jeśli chodzi o developerów może nie do końca, bo bardziej chodzi im o to, żeby rozwijać swoje portfolio związane z XBoxem, natomiast wiemy też, że cała masa develoeprów odchodzi troszkę od Slacka, przechodzi bardziej w stronę Discorda. To też może być ciekawe rozwinięcie ich usług.
Wspominasz i chciałbyś usłyszeć trochę o community – mam wrażenie, że kilka lat temu, kiedy ja zaczynałem programować, kiedy stawiałem pierwsze kroki w .NET, to informacji w internecie nie było zbyt dużo. Nie było community albo nie było ono rozwinięte tak jak w tej chwili. Mieliśmy w Polsce i za granicą kilku blogerów, natomiast tych informacji też nie było nie wiadomo ile.
Microsoft kilka lat temu postanowił, że .NET będzie open source’owy – tak właśnie powstał .NET Core. Po to m.in. został kupiony GitHub, żeby właśnie tam zahostować całego .NET-a i w tej chwili ilość open source’owych rozwiązań .NET-owych jest naprawdę olbrzymia. Dodatkowo na GitHubie powstają solucje, które przedstawiają jako demo jakichś technologii, bibliotek, mamy dema najróżniejszych architektur, także na samym GitHubie można spędzić godziny obserwując najróżniejsze projekty, z których moglibyśmy się naprawdę bardzo dużo nauczyć.
Microsoft kilka lat temu postanowił, że .NET będzie open source’owy – tak właśnie powstał .NET Core. Po to m.in. został kupiony GitHub, żeby właśnie tam zahostować całego .NET-a i w tej chwili ilość open source’owych rozwiązań .NET-owych jest naprawdę olbrzymia. Dodatkowo na GitHubie powstają solucje, które przedstawiają jako demo jakichś technologii, bibliotek, mamy dema najróżniejszych architektur, także na samym GitHubie można spędzić godziny obserwując najróżniejsze projekty, z których moglibyśmy się naprawdę bardzo dużo nauczyć.
A jak wspomniałem o ankiecie Stack Overflow wcześniej – o .NET na Stack Overflow się bardzo dużo mówi, praktycznie codziennie dochodzą nowe pytania, nowe odpowiedzi i są one bardzo wysokiej jakości, także można bez żadnego problemu je znaleźć.
Nie mówiąc o tym, że sam staram się oczywiście propagować tę świadomość, że .NET nie jest taki straszny, jak go czasami ludzie malują, bo kilka razy w internecie spotkałem się z opinią, że C# czy . NET to nie jest dobra technologia na początek, bo próg wejścia jest nie wiadomo jak wysoki, a okazuje się, że jeżeli dobrze pokierujesz kilkoma osobami, które chcą się nauczyć, pokierujesz do odpowiednich źródeł, do odpowiednich materiałów i on wcale nie wydaje się już taki trudny, nie wydaje się taki straszny i ludzie w przeciągu kilku miesięcy tworzą naprawdę niesamowite rozwiązania webowe.
Tej pomocy naprawdę nie trzeba daleko szukać, także to community rośnie i jest dosyć przyjazne. Mam wrażenie – może to się zmieniło w ostatnich latach, jak patrze po internecie, że nie ma takiego zacietrzewienia u seniorów, którzy chcą koniecznie trzymać tę swoją wiedzę i się z nikim nie dzielą, tylko coś stało się kilka lat temu, że developerzy zaczęli wychodzić do ludzi i zaczęli chętniej dzielić się wiedzą i to nie tylko w .NET, a w ogóle w programowaniu, także mam wrażenie, że pomimo tego, że mamy teraz bardzo dużo osób, które chcą się przebranżowić, to te osoby pojawiają się właśnie ze względu na to, że mamy dużo wysokiej jakości materiałów do nauki.
Cieszę się, że to zauważasz, bo myślę, że to wsparcie community jest bardzo ważne.
Chciałbym zapytać cię o road mapę do .NET-a, czyli jaką przyszłość tej technologii przewiduje Microsoft? Co w najbliższym czasie planuje wypuścić, w jakim kierunku tę technologię popchnąć?
Microsoft od zawsze co parę lat stara się czymś zaskoczyć. Najpierw samym .NET-em i przez kilka lat rozwijał tę technologię, potem zaskoczył nas tym, że .NET będzie open source’owy, w końcu odpowie na zarzuty od Javy i zacznie być cross platformowy i nagle zaczęło się to rozwijać w bardzo ciekawą stronę, w stronę .NET Core’a. Mieliśmy wersję .NET Core 3.1 i nagle, w zeszłym roku w listopadzie przeskoczyliśmy na .NET-a 5. Bez Core’a, bez czwórki, po prostu .NET 5.
Po co? By oddzielić pewien etap. Pokazać, że zaczynamy znowu coś nowego. I pierwszy raz pojawiło się coś takiego o czym wspomniałeś, czyli .NET Roadmap. Microsoft dokładnie pokazał, co się będzie działo w najbliższych latach, jeśli chodzi o .NET-a. Tzn. teraz wiemy, jaką wersję mamy w tej chwili, jaką będziemy mieć w przyszłym roku, jaką za trzy lata.
W tej chwili co roku będziemy mieli nową cyferkę, która teoretycznie mogłaby niczego nie zmieniać, bo to jest tylko cyfra związana z wersją, natomiast też część tych wersji będzie oznaczona znaczkiem LTS, czyli long term support.
Taka wersja będzie wychodziła co dwa lata – w tej chwili mamy .NET-a 5., który tego LTS nie ma, to będzie dopiero od wersji 6. i tutaj pojawia się znowu ta sama analogia, która się pojawia bardzo często w przypadku Microsoftu. To znaczy, że oni co dwie wersje wypuszczają coś dobrego – zawsze się tak o Windowsie mówiło, że Windows XP był świetny, potem była Vista, o której wszyscy woleliby zapomnieć, potem 7 wspaniała, 8 nienajlepsza i teraz mamy 10, która faktycznie jest fajnym produktem i podobnie w tej chwili planują zrobić z .NET-em. .NET 6. – w związku z tym, że chcą oznaczyć ją jako LTS domyślam się, że będzie to bardziej dopracowana wersja 5., którą będą przez najbliższe trzy lata chcieli wspierać.
Co to oznacza w przypadku open source’owych projektów? Przede wszystkim dla korporacji, które wykorzystują i płacą za niektóre rozwiązania, że będą mieli dostęp do lepszego wsparcia od storny supportu Microsoftu, w związku z tym też będzie widoczny trend w upgrade’ach tych frameworków, w firmach, kiedy będzie warto przejść na nowszą wersję, kiedy będzie warto myśleć o jakichś zmianach technologicznych i w jaki sposób być może lepiej radzić sobie z tzw. technical dept, który w wielu firmach na pewno się pojawią w związku z tym, że pracujemy na starych wersjach oprogramowania.
Właśnie – na ten rok, 2021, przewidziane jest wydanie wersji 6., czyli LTS. Mówiłeś – Microsoft mocno stawia na wieloplatformowość. Jakie najważniejsze rzeczy, najważniejsze zmiany czekają nas w tej wersji oprócz trzyletniego wsparcia?
To jest to, co Microsoft już powiedział 2 lata temu – że Microsoft chce być wieloplatformowy, ale chce tych wiele platform zunifikować. W tej chwili mamy problem taki, że zupełnie inaczej programujemy na desktopy, zupełnie inaczej aplikacje mobilne, inne technologie wykorzystywane są w webie. To wg Microsoftu nie powinno tak wyglądać – powinno tak, że tworzymy, jak najmniej kodu, który powinien działać na jak największej ilości urządzeń. W związku z tym powstaje coś takiego jak MyUI, czyli Multi Platform App UI, który w przyszłości ma zostać rozszerzony o wszystkie platformy: tzn. teraz zaczyna się dziać na platformach mobilnych, na Xamarinie, natomiast ma on zostać też rozszerzony o desktopy i webówkę.
Z drugiej strony mamy coś takiego co się nazywa Blazor, który też jest cały czas rozwijany i Blazor zaczął być frameworkiem frontendowym w webie, a będzie powoli przechodził też na inne platformy.
Widać, że to jest kolejne podejście – jak już mówiłem na samym początku przy historii. Chcieli zunifikować swoje usługi, teraz chcą ponownie zunifikować to, w jaki sposób będziemy tworzyć kod. Myślę – pierwszy raz widzę, bo kilka razy już to słyszałem, już przy prezentacji Windowsa 8, że chcieliby zrobić coś takiego, żeby Windows experience był taki sam na desktopach, na urządzeniach mobilnych, na telefonach, na tabletach.
To nie wyszło do końca i to w pewien sposób zarzucili, zresztą wiemy, jak Windows 8 Mobile w ogóle skończył, lepiej zapomnieć o tej platformie, natomiast to jest kolejne podejście i pierwszy raz, szczerze mówiąc, widzę to, że to ma prawo się udać.
Ciekawe. Mówiliśmy chwilę o tworzeniu aplikacji webowych, powiedzieliśmy, że ASP.NET jest fajnym wyborem w tym kierunku, ale wspomniałeś też o Blazorze. Staje się on coraz popularniejszy, więc chciałabym zapytać czym jest Blazor i taka nowinka, o której ostatnio wyczytałem, czyli Blazor Desktop?
Jest to pierwszy framework frotnednowy od Microsoftu. To jest coś, o czym sam marzyłem od dawna ze względu na to, że bardzo nie po drodze było mi z frameworkami java scriptowymi.
Próbowałem nauczyć się Angulara, Reacta, podchodziłem do View JS i nigdy nie starczyło mi samozaparcia do tego, żeby faktycznie nauczyć się tego i zostać pełnoprawnym full stack developerem. Cały czas siedziałem w swoim backendzie, który znałem, lubiłem i nagle pojawił się Blazor, czyli framework frontendowy, w którym jeżeli chcemy, możemy w ogóle nie używać Java Scriptu, używamy C# , opieramy całe swoje rozwiązanie o C# i silnik Razor i to jest coś, co jeszcze w tej chwili ma swoje bolączki oczywiście tak jak każda świeża technologia. Mamy problemy z performance’em, obsługą na wielu przeglądarkach, bo wykorzystywane jest WebAssembly, które jest dosyć świeżą technologią w ogóle w Webie, także to trzeba na pewno Balzorowi czas na to, żeby dojrzał, natomiast widzę wielkie zainteresowanie w tym frameworku. Widzę, że nie tylko ja chciałbym wyjść do frontendu i poznać smak tego, żeby klienci, użytkownicy zobaczyli, co ja właściwie robię, bo to zawsze frontendowcy spijają całą śmietankę, jak się wszyscy zachwycają UI-em, a backendowy sobie siedzą i przyklaskują.
Widzę, że nie tylko ja chciałbym wyjść do frontendu i poznać smak tego, żeby klienci, użytkownicy zobaczyli, co ja właściwie robię, bo to zawsze frontendowcy spijają całą śmietankę, jak się wszyscy zachwycają UI-em, a backendowy sobie siedzą i przyklaskują.
Mam nadzieję, że i my, .NET-owcy wyjdziemy troszkę z tych swoich piwnic, a jeśli chodzi o Blazor Desktop, no to właśnie to jest kolejny etap do tego, żeby zunifikować te platformy i tak jak mówię wielu osobom, że WPF, który do tej pory królował w Windowsie jako technologia do tworzenia aplikacji okienkowych, tak teraz od .NET-a 6. będziemy mogli tworzyć aplikacje desktopowe właśnie w Balzorze.
Co ciekawe, pierwszy raz, bo do tej pory pomimo tej wieloplatformowości przy .NET, która rozpoczęła się z .NET Core pierwszy raz będziemy w stanie stworzyć aplikacje, które będą aplikacjami natywnymi dla np. Macbooków, czyli na system OSX.
W związku z czym jest to na pewno spora zmiana i żeby to podkreślić, .NET i Microsoft pokazują właśnie dema takich aplikacji na Macach, żeby podkreślić tę wieloplatformowość i to, na czym się skupiają, także myślę, że może chcą tego, żeby aplikacje desktopowe troszkę wróciły do łask. Zobaczymy, co im z tego wyjdzie, natomiast ja bardzo mocno Blazorowi kibicuję.
Ciekawe! Czyli mówiliśmy o aplikacjach webowych, desktopie, zostaje nam jeszcze z tego zakresu oprogramowanie mobilne. Xamarin jako technologia od Microsoftu właśnie do tworzenia takich natywnych aplikacji mobilnych. Nie wiem, czy się ze mną zgodzisz, ale ja coraz mniej słyszę o tej technologii. Mam wrażenie, że był swego czas trochę bum, zainteresowanie nią, teraz raczej mniej słychać – przynajmniej ja w swojej bańce mniej o tym słyszę.
Jestem ciekawy czy też to podzielasz i gdybyś mógł powiedzieć jak programowanie mobilne w .NET wygląda, czy mimo wszystko tworzy się zaawansowane, mobilne rozwiązania za pomocą .NET-a i Xamarina?
Niestety, jest tak jak mówisz – o Xamarnie słyszy się coraz mniej i właściwie widzę ten trend, od kiedy – znowu w tym przypadku Microsoft kiedyś kupił Xamarina, bo to też nie jest ich produkt od zawsze, tylko to była kiedyś oddzielna firma i akurat w tym przypadku, kiedy kupili Xamarina coś się zaczęło dziać, że ta popularność zaczęła spadać. Być może jest to też związane z tym, że te natywne aplikacje pokonały swoje bolączki, tzn. pamiętam, że pierwsze aplikacje na Androida tworzyło się w Android Studio, w którym praktycznie nie dało się pracować. Pierwsze aplikacje na iPhone’y robiło się w Objective-C, który nie był do końca przyjazny programistom. Teraz mamy Swifta, jeśli chodzi o aplikacje Androidowe, zresztą – aplikacje corssplatformowe, mamy różne ciekawe rozwiązania też oparte o JavaScript, także wydaje mi się, że ten Xamarin raczej pozostanie w tej swojej niszy, bo on się fajnie sprawdza jako dodatek, jeżeli w firmie mamy aplikację webową, to możemy w prosty sposób dorobić do tego aplikację mobilną, która będzie corss-platformowa, ale ona raczej powinna zostać jako aplikacja wewnątrz firmy, wewnątrz organizacji, a niekoniecznie jako aplikacje, które mają podbić rynek mobilny.
Na to raczej bym nie liczył, fakt, że będą starać się na pewno cały czas rozwijać tę technologię, bo jakby nie patrzeć – jeśli dobrze pamiętam 60% ruchu idzie przez urządzenia mobilne, w związku z tym, jeżeli chcemy być cały czas na topie, to musimy mieć takie rozwiązanie w swojej stajni, natomiast nie wróżę jakiegoś wielkiego wybuchu Xamarina i myślę, że trzeba raczej pogodzić się z tym, że to będzie technologia, która pozostanie w tej swojej ciekawej, ale jednak niszy.
Powiedziałeś, że od wersji 8. Windowca zaczęto mówić o experience, które jest wspólne dla różnych platform, teraz się dużo dzieje w tym kierunku i takie wspólne doświadczenie, które mamy, odwiedzając i aplikacje webowe, i desktopowe, i mobilne jest możliwy dzięki m.in wspólnemu interfejsowi.
Ten .NET Multi Platform App UI, czyli zunifikowany interfejs crossplatformy, to jest kierunek, który obrał Microsoft, żeby właśnie uwspólnić interfejs. Zacząłeś o tym mówić, że to jest elementem road mapy.
Nie uważasz, że to jest trochę naśladowanie czy taka próba odpowiedzi na to, co inni dostawcy Apple czy ze stajni Androida też dostarczają? Czy to rozwiązanie wg ciebie ma sens? Czy trzeba iść w tym kierunku, czy to ma sens rozwijać ze strony Microsoftu?
Jeśli chodzi o naśladowanie, to trzeba przyznać, że w dzisiejszych czasach trudno o innowacje i żeby zrobić coś, czego nie zrobił nikt inny. Jeżeli inni robią i robią to dobrze, to czemu nie spróbować tego powtórzyć?
Jeśli chodzi o naśladowanie, to trzeba przyznać, że w dzisiejszych czasach trudno o innowacje i żeby zrobić coś, czego nie zrobił nikt inny. Jeżeli inni robią i robią to dobrze, to czemu nie spróbować tego powtórzyć?
Ciężko mi powiedzieć, jak się rozwinie ten projekt, bo mam wrażenie, że Microsoft chciał zrobić trochę szumu na ten temat, szumnie mówili o unifikacji wszystkiego i spodziewałem się już czegoś więcej po samym .NET 5., gdzie mieli zaprezentować cokolwiek. Przesunęli to troszkę na .NET 6. Teraz się okazuje, że póki co będzie to tylko w Xamarinie i będą starać się zarówno ten interfejs programistyczny, jak i samo UI zunifikować pomiędzy Androidem i iOsem.
Nie wiem, czy jestem fanem tego rozwiązania. Chciałbym, żeby kiedyś doszło do tego, że ja tworząc aplikację internetową, żebym mógł bez problemu dorobić do tego aplikację mobilną, właściwie paroma kliknięciami czy korzystając z jakiegoś Wizarda, który wygenerowałby mi delikatnie zmieniony kod, ale właściwie taki sam, ale nie jestem przekonany, czy na pewno doczekam takich czasów.
Chciałbym wrócić na chwilę do stacku webowego, w którym poruszasz się najczęściej. Backend też jest mi trochę bliski – jak sobie pracujemy po tej stronie aplikacji, to najczęściej prędzej czy później będziemy musieli operować na danych, będziemy musieli te dane zapisywać, odczytywać, wysyłać.
Jakie tutaj możliwości mamy, jeśli chodzi o ASP.NET?
Jeśli o to chodzi, to zdecydowanie najczęściej wybieraną bazą danych jest SQL SErver i to się pewnie przez długi czas nie zmieni. Trochę ze względu na to, w jakich branżach najczęściej wykorzystywany jest .NET.
W branży bankowości, w całym Fintechu relacyjne bazy danych będą królowały, bo relacje tam są niezwykle ważne, m.in ze względu na bezpieczeństwo danych, także pomimo wzrostu zainteresowania bazami noSQL-owymi, to tutaj cały czas ten SQL Server będzie na topie.
Mamy ciekawą alternatywę w postaci Cosmos DB i to jest faktycznie noSQL pełną gębą, który jest oparty na technologiach związanych z Chmurą, z Azurem i to rozwiązanie faktycznie ma swoje niesamowite plusy, bo mówi się o tym, że Cosmos DB będzie miało najmniejsze opóźnienia w dostarczaniu danych, będzie najlepiej skalowalną technologią bazodanową ze względu na to, że możemy bez problemu rozdystrybuować ją po różnych Data Center azurowych, w związku z tym, jeżeli będziemy tworzyć aplikację, która powinna być dostępna na całym świecie, to jesteśmy w stanie zapewnić dokładnie taki sam dostęp do danych zarówno z Europy, jak i Ameryki czy Azji, co na pewno będzie ciekawe natomiast ja tak samo, jak nie jestem zawsze bardzo optymistycznie nastawiony do rozwiązań, na które jest wielki hype – nie jestem wielkim fanem mikroserwisów, bo niektórzy myślą, że to jest rozwiązanie, które rozwiąże nam wszystkie problemy, a tak nie jest.
Tak samo noSQL nie jest do zastosowania w każdym projekcie i zawsze trzeba jednak z głową podejść do wyboru wszelkich technologii, dlatego pomimo ciekawych nowości, pomimo wielkich słów jak bezproblemowa dystrybucja, jak skalowalność, o których też chcemy chętnie słuchać, to ten Cosmos DB tez nie będzie rozwiązaniem do wszystkiego.
Jak to w IT – trzeba po prostu wybierać rozwiązania do problemu, a nie wszędzie starać się na siłę wpychać jedno. Było kilka takich momentów podczas naszej rozmowy, kiedy mówiłeś, że być może coś mogłoby być zrobione lepiej, być może są jeszcze jakieś braki. To jest oczywiście normalne w każdej technologii, ale jestem ciekaw twoich obserwacji związanych z brakami, problemami, w tym, co ci doskwiera, może w czym, co byś chciał zmienić, jeśli chodzi o technologie .NET-owe.
O czym mógłbyś opowiedzieć w pierwszej kolejności?
Mam wrażenie czasami, że to o czym sam wspomniałeś – tzn. .NET czasami stara się skopiować jakieś rozwiązania, dopasować od trendów społecznych, które w ogóle w świecie IT istnieją i przez to część zmian w samej platformie, część zmian w języku nie do końca wydaje mi się trafna.
Czasami za bardzo próbuje dopasować się do tego otwartego świata, zapominając o tych podwalinach naszego języka, naszej technologii, bo nie oszukujmy się – .NET zawsze będzie kojarzony z Windowsem. To jest zupełnie naturalne i chciałbym, żeby to się trochę zmieniło, bo cały czas .NET na innych platformach kuleje.
Na Linuksie, jeżeli bardzo chcemy, to możemy odpalić, natomiast Visual Studio czy w ogóle IDE na inne platformy mocno kuleją. Próbowałem się swojego czasu przesiąść, też chciałem być nowoczesny i trendy, chciałem przesiąść się na Maca i tam odpaliłem Visual Studio For Mac. Dałem sobie naprawdę długi czas, bo 3 miesiące i ostatecznie na swoim Macu zainstalowałem Windowsa i wróciłem do standardowego Visual Studio, bo zbyt wielu elementów mi tam brakuje.
Nie wiem, czy to jest kwestia mojego wieku i tego, że zbyt wiele lat spędziłem na Windowsie, w Visual Studio, ale jednak mam wrażenie, że ta otwartość, cross-platformowość jeszcze potrzebuje czasu.
Nie wiem, czy to jest kwestia mojego wieku i tego, że zbyt wiele lat spędziłem na Windowsie, w Visual Studio, ale jednak mam wrażenie, że ta otwartość, cross-platformowość jeszcze potrzebuje czasu.
Mam nadzieję, że im się uda, bo to jest faktycznie ciekawy trend, ale w tej chwili trzeba jednak pomyśleć i pamiętać o tym, że .NET to wciąż przede wszystkim Windows.
Jasne, rozumiem. Zacząłeś mówić o Visual studio, czyli takim podstawowym IDE kojarzonym z .NET-em.
Jak wygląda toolbox programisty, te narzędzia, z których korzystasz na co dzień programując. Co mógłbyś wymienić?
Na pewno Visual Studio, natomiast ma ten problem, że jeżeli chcemy komercyjnie wykorzystywać go w większej organizacji, to jest płatny.
Natomiast mamy zupełnie darmowe rozwiązania również od Microsoftu – mamy Visual Studio Code, który jest wykorzystywany coraz częściej przez frontendowców, bo tam faktycznie programowanie czy w Reactie czy Angularze jest dosyć fajnie ogarnięte. Da się to wszystko też pożenić z samą platformą .NET-ową, zarówno z ASP jaką jak i chyba nawet z WPF-em, natomiast problem jest taki, że to jest tak jakbyś sobie ściągnął Notepada ++, do tego 200 wtyczek i jakoś to zadziała.
To jest takie rozwiązanie pewnie na chwilę i na początku, ale mamy też coś, co jest bardzo ciekawą alternatywą, czyli IDE, które nazywane jest Rider i jest od firmy JetBrains. Myślę, że wielu osobom jest ona dobrze znana, bo tworzy bardzo ciekawe rozwiązania dla wielu programistów z różnych środowisk i też dla .NET-a został stworzony Rider.
Swojego czasu zaczęło się od wtyczki do Visual Studio, jaką jest ReSharper i dopiero przeszło to do pełnoprawnego IDE, które faktycznie ma bardzo ciekawe funkcjonalności, które ułatwiają taką codzienną pracę. Więcej skrótów klawiszowych, generowanego refaktorowania kodu i część funkcjonalności, która pozwala programistom zapomnieć o kilku kwestiach, bo dzieją się one automatycznie, co może być z jednej strony dobre, a z drugiej potem, jak się okazuje, że czegoś w nowej firmie, do której pójdziemy, może zabraknąć i o czymś możemy zapomnieć.
Takie trzy główne narzędzia, które są u nas wykorzystywane i oczywiście Management Studio do SQL-a jako tool do przeglądania naszych danych w bazie danych, ale to już jest zupełnie odrębna kwestia.
Jak wygląda teraz rynek pracy związany z .NET-em? Chodzi mi o ilość ofert, wynagrodzenia w porównaniu do innych technologii? Jakbyś mógł opisać ten rynek – czy on jest na tyle atrakcyjny, żeby wybierać tę technologię, bo praca czeka na człowieka?
Zdecydowanie – w .NET jest tak jak w tym żarcie, że nawet jak programista traci pracę, to jest najsmutniejsze 7 minut w jego życiu. Rynek .NET-owy jest bardzo chłonny i ściąga wszelkiej maści specjalistów. W ostatnim roku faktycznie, ale to myślę, że w każdej technologii widzimy lekki przestój, że firmy trochę nie wiedziały co ze sobą zrobić, dalej nie wiedziały do końca jak będą operować w tym formacie zdalnym.
Wiem też, że niektóre firmy cały czas pomimo braków kadrowych wstrzymują się z rekrutacjami, bo nie wyobrażają sobie onboardingu developerów w formie zdalnej i faktycznie to jest wyzwanie. Jeżeli firma nie ma kultury pracy zdalnej to jest wyzwanie, żeby wprowadzić nową osobę. Jestem w stałym kontakcie z wieloma rekruterami, którzy specjalizują się w stacku .NET i oni zalewają mnie ofertami i to najróżniejszymi – od juniora po seniora, team leaderów, także rynek jest gotowy na to, żeby przyjąć jak największą ilość specjalistów i też te wynagrodzenia cały czas są w topie.
Jest na pewno tak, że frontendowcy w niektórych technologiach mogą zarabiać troszeczkę lepiej. Javovcy na pewno zarabiają lepiej, ale jestem zdania, że jeżeli jesteś specjalistą to te różnice są tak marginalne, że właściwie jest to pomijalne. Zarówno Javoviwec, .NET-owiec, Angularowiec albo frontendowiec mogą zarabiać podobne kwoty, jeżeli są prawdziwymi specjalistami jak i jeżeli pokażą swoją wartość na rynku pracy.
Zgadzam się! Po takim zachęceniu nie pozostaje nic innego niż rozpocząć naukę tych technologii, aby w nie wejść. Oprócz dołączenia do Szkoły Dotneta, która prowadzisz, to co byś jeszcze zalecał – co byś polecał, od czego zacząć, jakich materiałów – może jakieś rady na początek?
Jest też dosyć ciekawa rzecz, którą odkryłem stosunkowo niedawno. Jest coś takiego jak Dev Essentials. Jeżeli stworzymy sobie np. konto w Chmurze Microsoftowej, na Azurze, to razem z tym kontem dostajemy to Microsoftowe i konto Dev Essentials, dzięki której dostajemy cały pakiet bonusów na start.
M.in. są to darmowe kredyty na Chmurę, żeby wypróbować sobie różne usługi. Jest to pakiet oprogramowania, który, tak czy inaczej, jest darmowy, ale mamy to wtedy zebrane w jednym miejscu. Mamy również dostęp do całej platformy Plural Site. To jest platforma podobna o Udemy, natomiast mam wrażenie, że Plural Site, w związku z tym, że jest w formie abonamentowej ma trochę inny sposób na to, żeby prowadzić studenta za rękę. Tzn. tam są wypisane całe ścieżki kursowe, które można przejść i właśnie dołączając do Dev Essentials dostajemy darmowy miesiąc albo trzy dostępu do Plural Site’a, gdzie możemy przejść sobie podstawowe kursy z .NET-a, z C#, z ASP i jeżeli ktoś jest gotowy na to, żeby zacząć intensywną pracę, to zdecydowanie można od tego zacząć i spróbować stworzyć swoje pierwsze projekty na podstawie tych kursów i to, co zdecydowanie chciałbym podkreślić to to, że żaden kurs nigdy nie da tyle, co sama praktyka.
Jeżeli mamy możliwość to zacznijmy tworzyć swoje projekty jak najszybciej. Poznajmy podstawy składni i stwórzmy swój własny projekt, bo dopiero tam nauczymy się programować, dopiero tam zobaczymy, z czym możemy mieć problemy i nauczymy się również wyszukiwania rozwiązań dla tych problemów. Także zdecydowanie to jaką ścieżkę mogę polecić, to po prostu otwórz Visual Studio, stwórz pierwszy projekt – czy to konsolowy czy od razu webowy, w zależności od tego, czy masz jakiekolwiek doświadczenie i po prostu zacznij pisać.
Zdecydowanie to jaką ścieżkę mogę polecić, to po prostu otwórz Visual Studio, stwórz pierwszy projekt – czy to konsolowy czy od razu webowy, w zależności od tego, czy masz jakiekolwiek doświadczenie i po prostu zacznij pisać.
Tak jest. Nic więcej nie mogę do tego dodać. Kajetan – bardzo dziękuję za tę rozmowę, za pokazanie świata .NET-a, za zachęcenie do wejścia do tego świata. Z mojej strony wielkie dzięki za ten czas i powiedz proszę, gdzie cię można znaleźć w internecie, jak się z tobą skontaktować?
Myślę, że najłatwiej na Facebooku. Szkoła Dotneta to jest mój fanpage, tam spokojnie można do mnie na Messengerze napisać, zazwyczaj odpisuję i można też mnie szukać po imieniu i nazwisku – Kajetan Duszyński na Instagramie. Tam może nie udzielam się tak regularnie, natomiast regularnie koresponduję ze swoimi followersami, także tam możemy się spotkać i zawsze będę zachęcał po prostu do odwiedzenia strony szkoladotneta.pl – zapisania się na newsletter i po prostu napisania do mnie maila. Maile to najbardziej intymna, najprzyjemniejsza forma komunikacji z drugim człowiekiem w internecie, także zachęcam do tej formy!
Świetnie! Dodam do tego, że współprowadzisz też podcast, PracaDeva i do niego też warto tutaj odesłać!
Oczywiście! Jeżeli ktoś ma ochotę posłuchać głównie o .NET, bo na tym się z Adamem skupiamy, to zdecydowanie pracadeva.pl to też jest bardzo ciekawe miejsce dla osób, które chciałyby nauczyć się .NET-a.
Oczywiście! Wszystkie linki będą w notatce do odcinka. Z mojej strony jeszcze raz bardzo dziękuję.
Do usłyszenia, cześć!
Dziękuję! Do usłyszenia, pozdrawiam!
To na tyle z tego, co przygotowałem dla Ciebie na dzisiaj. Platforma .NET ma wiele obszarów zastosowań i Microsoft nie powiedział jeszcze ostatniego słowa, jeśli chodzi o tę technologię.
Jeśli ten odcinek był dla ciebie interesujący i przydatny, odwdzięcz się proszę recenzją, oceną lub komentarzem w social mediach.
Jeśli masz jakieś pytania, pisz śmiało na krzysztof@porozmawiajmyoit.pl. Zapraszam też do moich mediów społecznościowych.
Nazywam się Krzysztof Kempiński, a to był odcinek podcastu Porozmawiajmy o IT o .NET.
Zapraszam do kolejnego odcinka już za tydzień!
Cześć!