Całkiem niedawno miała miejsce konferencja BUILD 2019 firmy Microsoft. Prelengenci przedstawiali na niej przyszłość, jaka maluje się przed jednym z najpopularniejszych systemów operacyjnych na świecie. Pojawiło się na niej wiele zaskakujących rewelacji! Microsoft podejmuje działania, które byłyby nie do pomyślenia jeszcze kilka lat temu. Przyjrzymy się dwóm decyzjom, które mnie osobiście najbardziej zszokowały.

Windows i terminal? – niemożliwe połączenie?

Ci, którzy próbowali podejść do systemu operacyjnego Linux, od zawsze byli przerażeni jedną rzeczą – korzystaniem z terminala i ręcznym wpisywaniem komend. Fanboye Windowsa na forach dyskusyjnych, portalach od zawsze uważali terminal za jedną z kluczowych wad Linuxa.

To co jest być może złe dla zwykłych użytkowników, jest bardzo przydatne dla tych, co robią przy komputerze coś więcej. Wbrew pozorom, często o wiele szybciej wpisać krótkie polecenie lub jego alias, niż przeklikać się przez kilkanaście katalogów. Odczułem to na własnej skórze podczas korzystania z gita. Gdy byłem niedoświadczonym użytkownikiem tego wspaniałego systemu kontroli wersji, korzystałem z poleceń GUI umieszczonych w środowisku programistycznym. Jednakże gdy tylko nauczyłem się obsługiwać gita z linii poleceń zauważyłem, że jest to o wiele wydajniejszy sposób pracy. Dlaczego? Wpisanie polecenia git commit -m „costam” jest o wiele szybsze niż kliknięcie PPM na projekt->Team Work->Commit changes, a następnie wypełnianie kilku pól.

Linux posiada wiele emulatorów terminala. Wszystko zależy od zainstalowanego środowiska graficznego. Warto zauważyć, że nie ważne jak bardzo rygorystyczną skalę ocen byśmy przyjęli, jakikolwiek terminal linuksowy znajduje się lata świetlne przed jego windowsowym odpowiednikiem. Czego m.in. brakuje windowsowym terminalom?

  • kart
  • dobrej jakości historii wpisywanych poleceń (zamknięcie sesji powoduje skasowanie historii wpisywanych poleceń)
  • dobrego konsolowego edytora tekstu, który kolorowałby składnię w przyzwoity sposób
  • narzędzi zwiększających produktywność
  • łatwej możliwości tworzenia aliasów poleceń

A ponadto windowsowemu terminalowi dokuczało:

  • niewiarygodnie utrudnione korzystanie z CTRL-c CTRL-v
  • typowe dla Windowsa „rozdwojenie jaźni” (a nawet roztrojenie) – stary command prompt idzie swoją drogą, PowerShell swoją – a kiedy trzeba coś zrobić każdy z nich się krzaczy

Co bardzo dziwne, Microsoft w końcu zauważył ten problem. Nowy terminal, który zostanie udostępniony użytkownikom w połowie czerwca, a już teraz jest dostępny w formie kodu źródłowego, rozwiązuje wiele spośród bolączek, które wymieniłem powyżej. Ponadto, integruje ze sobą wszystkie do tej pory istniejące w Windowsie środowiska terminalowe. Na jednej karcie może być odpalony starodawny Command Prompt, na innej Bash z Linuxa, a na jeszcze innej PowerShell. Windows Terminal ma wspierać kolorowanie składni. Pozwalać ma ponadto na pełne dostosowanie, umożliwiając tworzenie tzw. profili.

Moja opinia

Uważam te posunięcie za bardzo dobry krok. Windows 10 posiada co prawda wiele pilniejszych wad, zarówno estetycznych jak i funkcjonalnych, które wymagają naprawy. Powiedziałbym, że jest to zwrot w kierunku, który pozwoli programistom MS jakoś ogarnąć ten cały bajzel. Posiadanie dobrej jakości terminala jest bardzo ważnym udogodnieniem dla programistów.

Windows z jądrem Linuxa? Wszystko jest możliwe!

Przyzwyczailiśmy się już do tego, że Microsoft powoli integruje się ze swoim (do niedawna) największym „wrogiem”. Nie tak dawno Ballmer i Gates tupali nóżką i mówili, że Linux to rak, bo własność intelektualna jest najważniejsza. Dzisiejsze postępowanie tej firmy, rządy Satyi Nadelli to zwrot o 180 stopni.

Windows Subsystem for Linux – mizerna do niedawna proteza staje się coraz bardziej poważnym narzędziem. Do tej pory WSL funkcjonowało w oparciu o autorskie jądro Microsoftu. Windows Subsystem for Linux jest spadkobiercą projektu Astoria, który miał umożliwiać odpalanie aplikacji androidowych na telefonach Nokia Lumia wyposażonych w system Windows Phone. Jak historia projektu Astoria się skończyła – wszyscy wiemy. Fiasko – jak wiele potencjalnie bardzo dobrych projektów tej firmy.

MS po raz kolejny uznał, że nie warto wyważać otwartych drzwi i pisać wszystkiego od nowa. Projekt własnego „linuksowego” jądra został odstawiony na plan dalszy. Zamiast tego WSL w wersji 2.0 będzie korzystał z pełnoprawnego oryginalnego jądra Linuxa, które będzie współpracowało z microsoftowym jądrem NT za pomocą mechanizmu wirtualizacji Hyper-V.

Tym samym Microsoft rezygnuje z „głębokiej integracji” podsystemu linuksowego. W zamian kierując się w stronę typowej „wirtualizacji”. Rozwiązanie to jest bardzo dobre – znikną ogromne problemy z kompatybilnością oprogramowania (mnie osobiście najbardziej kuł w duszę brak wsparcia dla sshfs). Poprawi się wydajność (mniej warstw abstrakcji) a także bezpieczeństwo (nowy WSL będzie pewnie zamknięty w jakiejś maszynie wirtualnej).

Moja opinia

WSL dla MS jest wg mnie krokiem bardzo dobrym. Pozwoli ona zachęcić „wygnańców” którzy zrezygnowali z Windowsa do powrotu. Sam używam Linuxa tylko i wyłącznie dlatego że oferuje mi narzędzia i wygodę, jakiej od dawna nie zapewniał mi Windows. Teraz to się może zmienić.

I to by było na tyle …

Oczywiście, cała konferencja Microsoftu nie opierała się tylko na tych dwóch wydarzeniach. Prelengenci powiedzieli co nieco o przeglądarce Edge, Wordzie czy Fluid Frameworku. Interesujący jest także framework Quantum, który pozwala już teraz pobawić się w programowanie komputerów kwantowych.

Mnie, jako fana systemu operacyjnego Linux, najbardziej interesowały dwie wyżej wspomniane rzeczy, o których wyraziłem swoją osobistą opinię. Czy sojusz ze środowiskiem linuksowców to dobry pomysł? Podziel się w komentarzu.

Dzięki za lekturę.Jeśli ten wpis ci się podobał, kliknij ten dzwoneczek w lewym dolnym rogu. Dzięki temu będziesz otrzymywał informacje o nowych wpisach natychmiast po ich opublikowaniu. Polub mój fanpage na Facebooku, na którym często umieszczam różne ciekawostki 🙂

Dzięki i do zobaczenia 🙂

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *