Dlaczego Windows?

Chyba faktycznie warto wiec zakładam.

http://rubyonrails.pl/forum/t2143-�rodowisko-programisty---IDE%2C-edytor-tekstowy%2C-albo-%3F%3F

[quote=gregorz]Czy czasem nie przesadzacie?
Windows/Linux/Mac to tylko narzedzie w ktorym mozna zrobic to damo.
Co za roznica gdzie developer stworzy projekt - zadna.
To tylko i wylacznie gusta programisty.[/quote]
No właśnie nie. Własny (dobry!) zestaw narzędzi oraz umiejętność biegłego posługiwania się nimi to jedna z podstawowych wartości dobrego rzemieślnika. Jeśli rzemieślnik używa słabych narzędzi to nie przeskoczy pewnego (z reguły niskiego) poziomu biegłości.

Oddałbyś samochód do wyklepania kolesiowi który umie prostować blachę tylko młotkiem, dłutem i kilofem? :wink:

[quote=Tomash]Własny (dobry!) zestaw narzędzi oraz umiejętność biegłego posługiwania się nimi to jedna z podstawowych wartości dobrego rzemieślnika.

Oddałbyś samochód do wyklepania kolesiowi który umie prostować blachę tylko młotkiem, dłutem i kilofem? ;)[/quote]
Robi się z tego “święta wojna” :slight_smile:
Ale dobre narzędzia występują pod każdym OS’em, to chyba się ze mną zgodzisz?

OS to też narzędzie.
Windows to beznadziejne narzędzie w kategorii “rozwijanie i praca z aplikacją Ruby on Rails”.

[quote=Tomash]OS to też narzędzie.
Windows to beznadziejne narzędzie w kategorii “rozwijanie i praca z aplikacją Ruby on Rails”.[/quote]
Nie popadajmy w skrajnosci.
Widze ze czas konczyc temat bo kazdy przy swoim uparcie stoi.
Troche elastycznosci Panowie.
Jak dla mnie to czy Windows czy Linux to tak samo pracuje wiec, niech tak zostanie.

@Grzegorz

Nie do końca. Kiedy ja na Winzgrozie wykonam jeden test, koder pod Linuksem lub Makiem zdąży wykonać ich… trzydzieści. Przyjąłem, że jeden feature ‘wykonuje się’ pod Win w pięć minut - a na pewno będzie wykonywał się o wiele dłużej (spójrz na jeden z moich ostatnich postów w tym wątku).

W skali miesiąca ta różnica będzie wynosiła nawet kilka(naście) godzin, więc te czasy już nie są minimalne.

To jak dla mnie po prostu nie miałeś jeszcze przyjemności popracować nad rozwijaniem (pisaniem, testowaniem, deploymentem, zarządzaniem plikami, SCMami itd.) nietrywialnej aplikacji w obu systemach. W pewnym sensie Ci zazdroszczę tego braku doświadczenia :slight_smile:
Uwierz mi, kiedyś stawiałem cały stos technologiczny na windowsie dla freelancerki która robiła nam html i css w jednym projekcie – najpierw ja się narobiłem jak głupi żeby to wszystko działało, a potem ona się bezsensownie męczyła pracując z tym na co dzień. A nie robiła przecież rzeczy gdzie *nix-y błyszczą najbardziej, czyli np. deploymentu.

Widocznie mamy inne doswiadczenia, cos nie kazdy musi miec takie same.
Szkoda tylko ze zaczyna psuc sie atmosfera. Troche to przypomina fanboya jednej technologii, ktory uwaza siebie za “the best of all”.
Dalej pozostane przy uzywaniu oby systemow Linuxa i Windowsa, przeciez kazdy ma swoje cechu ktorych nie posiada inny.
A z ta wydajnoscia 30x lepsza to juz chyba jakas przesada.
Pozdr.

30x rzeczywiście przesada. Ale według Antonio Cangiano około 2 razy: http://antoniocangiano.com/2009/08/10/how-much-faster-is-ruby-on-linux/. Ja (i pewnie wiele innych osób) używam Ruby Enterprise Edition również do developmentu, które jest sporo szybsze od 1.8.6, więc ta różnica może być jeszcze większa.

Przy TDD/BDD to jest bardzo duża różnica. Pewnym wybawieniem dla windowsowców może być www.devver.net, ale na to też trzeba mieć kasę.

Wyszlo im ze na Linuxie jest szybciej o okolo 70%, to juz nie 30x.
To teraz nalezy sie zastanowic czy te 70% to faktycznie strata kilkudziesięciu godzin miesięcznie.
Wg mnie taka roznica przy operacjach uruchamianych co jakis czas nie robi wiekszej roznicy.
Zwlaszcza ze nie mozna klepac kodu non-stop. A ciezsze procesu mozna odpalac w wolnym czasie.
Zreszta czy cos potrwa 3 minuty czy “cale” 5, zadna roznica dla developera.
Proces tworzenia programowania to nie wyscigi i lepiej nie przesadzac bo mozna sie przejechac.

Oczywiscie w kwesti systemu na serwis produkcyjny w grę wchodzi tylko Linux.

Nie chodziło mi o to, że Ruby pod Linuksem jest 30x szybsze, chodziło mi tylko i wyłącznie o wykonywanie testów, powiedzmy przy włączonym autotest - ile pod Linuksem będzie wykonywało się te 10 stepsów z jednego pliku .feature?

70% dla 1.9.1.

Dla 1.8.6, czyli dla wersji, w której rozwijana jest obecnie większość aplikacji, jest tak jak napisałem 2x, przy czym można pracować na REE, które jest sporo szybsze od 1.8.6 (co również napisałem).

Ale jeżeli dla Ciebie nie ma różnicy czy testy uruchamiają się 2 czy 4 minuty, to nie będę się przecież kłócił :wink:

A mozesz powiedziec co ile odpalasz testy?

Ja odpowiem: przed każdym commitem do repo, więc pewnie co najmniej raz na godzinę.

Grzegorz, nie ma co się tutaj spinać: jeśli dla Ciebie (lub kogoś z kim pracujesz) Windows “wystarcza” do pracy z Railsami, to używaj na zdrowie. Natomiast gwarantuję Ci, w miarę pracy z Railsami będziesz coraz częściej miał chwile, w których nabierzesz ochoty na przesiadkę. Dlatego Cię nie namawiam na zmianę systemu – ja po prostu jestem pewien że to zrobisz :smiley:

Cały suite nie tak często, najczęściej przy wrzucaniu czegoś do gałęzi produkcyjnej. Ale jakąś ich część właściwie co chwilę… scenariusze i rspeca dotyczące aktualnie rozwijanej funkcjonalności dość często. Ale to też zależy od stylu pracy, nie wiem jak inni to robią.

Dlatego napisałem, że jak Ci to nie robi różnicy, to nie będę napierał w tym temacie :slight_smile:

UPDATE:
Tomash: No tak, przy commitach też większość testów uruchamiam. Ale nie wszystko, niektóre scenariusze w cucumberze oznaczam @unimportant.

Czyli jakies 8 razy na dzien, co nam daje 16 minut dluzej.
W sam raz na maly odpoczynek dla oczu, kawe, doczytanie specyfikacji etc.
A teraz pomyslmy ile czasu dziennie marnujemy na inne czynnosci.
Przy tym wszystkim 16 minut to naprawde niewiele.
A 8 odpalen / dziennie to chyba ponad przecietna.

Cały suite raczej rzadko, najczęściej przy wrzucaniu czegoś do gałęzi produkcyjnej. Ale jakąś ich część właściwie co chwilę… scenariusze i rspeca dotyczące aktualnie rozwijanej funkcjonalności dość często. Ale to też zależy od stylu pracy, nie wiem jak inni to robią.

Dlatego napisałem, że jak Ci to nie robi różnicy, to nie będę napierał w tym temacie :)[/quote]
Pewnie nie ma co sie upierac, trzeba byc elastycznym - zwlaszcza w web developmencie.
Sam uzywam naprzemiennie Windowsa i Linuxa wiec nie ma co sie spierac, wszystko zalezy od potrzeb i gustow.

Czyli jakies 8 razy na dzien, co nam daje 16 minut dluzej.[/quote]
Wolę odpoczynek i czytanie basha wtedy, kiedy ja mam na to ochotę, a nie kiedy wymusza to na mnie ociężałość środowiska.
Poza tym jeśli jakiś test zalicza faila, to trzeba go odpalić przynajmniej jeszcze raz. Albo i kilka razy, jeśli się okaże że bardzo rozwaliliśmy kompatybilność.

W ogóle gratuluję argumentu, w stylu “to dobrze że ten samochód jest taki awaryjny: pojeździsz rowerem i pochodzisz na piechotę, będziesz zdrowszy”. No bez jaj.

Mowimy tutaj o szybkosci a nie awaryjnosci. Tzn. ze dojedziesz chwile pozniej lub wczesniej.
Nie myl pojec kolego i nie interpretuj mylnie.

A jak ktos skopal projekt i musi odpalac testy co kilka minut to jego problem, kiepski koder zawsze marnuje czas.

I nie robmy paranoi z tymi czasami, to nie pepek swiata - sa ciekawsze rzeczy do robienia.

Pozdr.

Rowerem albo na piechotę też w końcu dotrę. I o ile zdrowiej, czyściej, taniej i bardziej ekologicznie!

Niniejszym proszę adminów forum o rangę “kiepski koder” :smiley:

Tzn. jeśli dla Ciebie spaprane odpalanie testów jest niczym, to faktycznie nie ma o czym rozmawiać – “pozdro, poćwicz”, jak to mawiają na niektórych forach. Wrócimy do tej rozmowy za pół roku :slight_smile: