Linux czy Windows — co jest lepsze do programowania?

Linux czy Windows — co jest lepsze do programowania?

25 sierpnia 2022

Dziś podejmuję się trudnego zagadnienia. Środowisko programistów od dekad spiera się na temat tego, który z tych systemów operacyjnych jest lepszy.

Na forach internetowych znajdziecie zarówno zwolenników Windowsa, jak i Linuxa (jest całkiem sporo także tych od MacOS, ale w dzisiejszym wpisie nie o tym). Choć system operacyjny powinien być jedynie narzędziem, niektórzy na siłę próbują przekonać innych, że inne systemy poza tym, którego używają sami, po prostu nie nadają się do niczego.

Osobiście od dawna używam zarówno Windowsa, jak i Linuxa. Całkiem sporo korzystam też z MacOS, a nawet ChromeOS. Z perspektywy takiej osoby, programisty, postaram się odpowiedzieć na tytułowe pytanie najbardziej obiektywnie, jak tylko potrafię.

Wszystko zależy od użytkownika i jego potrzeb

Zapewne przyszliście tutaj po jednoznaczną odpowiedź na pytanie o to, który system operacyjny jest lepszy dla programisty.

Prawda jest taka, że “bury”.

Zarówno na Windows jak i Linux znajdziecie podobne środowiska pracy i będziecie mieli podobne możliwości. A nawet jeśli nie, w Windows możecie skorzystać z WSL, a w Linux z Wine, tym samym pozwalając sobie na wyciągnięcie z drugiego systemu operacyjnego tego, co jest Wam potrzebne do pracy.

Jak już wiele razy pisałem na tym blogu: żaden system operacyjny nie napisze za Was kodu. Z tego względu ciężko mówić o tym, że jeden jest lepszy od drugiego, skoro oferują praktycznie te same możliwości.

Proponuję więc postawić Wam na system, który natywnie pozwala na obsługę tego, czego używacie w pracy, oraz na system, w którym po prostu wygodniej Wam się pracuje.

To tak jak z samochodami. Co jest lepsze? Pickup, czy hatchback? Zależy od użytkownika. Jeden będzie cenił sobie pojemność Pickupa, a inny będzie się cieszył, że ma zgrabny samochód, którym może zawsze łatwo zaparkować.

Jeżeli nadal nie wiecie, co wybrać, w poniższych punktach zaprezentuję Wam po kilka wad i zalet Windowsa i Linuxa dla programisty. Na takiej podstawie możecie wybrać coś dla siebie, ale nie dajcie sobie wmówić użytkownikom, którzy z całą pewnością przekonują Was do wyższości jednego systemu nad drugim.

Dla mnie lepszy, a raczej wygodniejszy jest… Windows, dlatego to właśnie jego używam na co dzień. Ale znam całą masę użytkowników, którzy stawiają na Linuxa, bo też mają ku temu swoje powody. Raz jeszcze, nie ma lepszego systemu. Wszystko zależy od zastosowań i preferencji danego użytkownika.

Wady i zalety Windows dla programisty

Zalety:

  • Uruchomicie na nim niemal wszystko. Większość programów i środowisk jest dostępnych właśnie pod tym systemem, ponieważ jest najpopularniejszy.
  • Jest prosty w obsłudze. Wszystko można łatwo wyklikać, więc do stricte systemowych operacji nie potrzebujecie terminala.
  • Jest stabilny. Wiem, że to dość kontrowersyjna opinia, ale odpukać, mi Windows nie wysypał się już od dobrych 8 lat. W Linuxie bardzo często miałem problemy ze sterownikami, a sam system potrafiłem łatwo “wysadzić w kosmos”, choć nie ukrywam, że zwykle z winy użytkownika, czyli własnej.
  • Dzięki WSL współczesny programista tak naprawdę nie potrzebuje już Linuxa czy MacOS.
  • Komputer z Windowsem może posłużyć do czegoś więcej niż programowania, czy przeglądania internetu. Jeżeli gracie w gry lub używacie wielu programów, ten system prawdopodobnie sprawdzi się o wiele lepiej ze względu na dostępność softu (znów, kwestia jego popularności i tego, że wielu producentom opłaca się to najbardziej).
  • Sprzyja produktywnej pracy. Jak w pewnym memie, nie musicie spędzić tu godziny, żeby zmienić tapetę na pulpicie. Co więcej, z programem takim jak np. PowerToys i odrobiną kreatywności można znacząco przyśpieszyć swoją pracę. Np. ja zrobiłem sobie skrót klawiszowy, który działa na zasadzie szybszego ALT-TABa między dwoma ostatnimi oknami.
Ustawienia PowerToys

Wady:

  • Jest dość “ciężki”. W przypadku starszych lub słabszych sprzętów może po prostu działać znacznie wolniej niż lżejsze, Linuxowe dystrybucje.
  • Ze względu na jego popularność, siłą rzeczy o wiele łatwiej nadziać się na jakieś wirusy. Wbudowany Defender działa jednak dość sprawnie, a zaawansowany użytkownik (a takim programista zwykle jest), korzystający z systemu z głową, nie powinien mieć z tym większych problemów.

Wady i zalety Linux dla programisty

Zalety:

  • Oferuje niezwykłe możliwości personalizacji. Możecie naprawdę dostroić go do swoich potrzeb.
  • Jego znajomość jest bardzo przydatna i ceniona przez wielu pracodawców. Osoba dobrze znająca Linuxa o wiele łatwiej poradzi sobie np. z konfiguracją serwerów, które to zwykle opierają się właśnie o niego.
  • Lżejsze dystrybucje fantastycznie działają na starszych lub słabszych komputerach. Jeżeli macie kiepską maszynę, Linux może być o wiele lepszym wyborem od Windowsa (zwłaszcza takie dystrybucje jak np. Xubuntu, czy antiX).
  • Linux niejako wymusza na nas naukę terminala. To z kolei przyda się początkującym programistą, bowiem w tym zawodzie dobra znajomość terminala może prędzej czy później się przydać.
  • Jest darmowy. Jeżeli macie komputer bez systemu operacyjnego, nie musicie wykładać kilku dodatkowych stówek na zakup Windowsa.
  • Jest otwartoźródłowy. Każdy może zobaczyć sobie “co w trawie piszczy”, a nawet zostać jednym z kontrybutorów. Słowem, wiesz, czego używasz.

Wady:

  • Jest mniej popularny i dzieli się na całe mnóstwo różnych dystrybucji. Z tego względu jeżeli napotkacie się na jakiś problem, istnieje niemałe prawdopodobieństwo, że w internecie nie znajdziecie żadnej solucji.
  • Większość operacji wykonuje się w terminalu. Dla niektórych to zaleta. Część osób twierdzi nawet, że w ich przypadku to o wiele szybsze niż klikanie w Windowsowych okienkach, jednak z mojego punktu widzenia, to zwykle więcej zachodu i strata czasu, bo często natkniemy się np. na wadliwe polecenia, lub takie, które są dedykowane innym menedżerom pakietów.

Zobacz także: Jaki Linux wybrać do programowania?

Podsumowanie

Podsumowując, to nie jest tak, że jeden system jest lepszy od drugiego. Jedni wolą jabłka, inni pomarańcze. Najlepiej wypróbujcie sobie obu systemów operacyjnych i sami zobaczcie, który system operacyjny bardziej Wam odpowiada i na którym Wasza praca jest bardziej wydajna. W ustaleniu tego, który system bardziej sprawdzi się w Waszym przypadku może pomóc znajdująca się powyżej lista wad i zalet obu systemów.

Ostatecznie pamiętajcie, że system operacyjny nie jest zwykle jakąś bardzo wiążącą kwestią. Osobiście dziś korzystam głównie z Windowsa, ale nie wykluczam tego, czy w przyszłości przejdę na MacOS lub Linuxa. Po prostu wybierzcie to co Wam odpowiada i nie podążajcie za modą, czy preferencjami innych osób.