Agile. Programowanie w Rails. Wydanie II - W Helionie

No i nastał moment na który pewnie dużo początkujących RoR’owców czekało. Wreszcie mamy przetłumaczoną i wydaną u nas chyba najlepszą książkę o Railsach. Tylko cena troszkę duża :confused:

Nazwanie “Agile…” najlepszą książką o RoR jest sporym nadużyciem.
Znaczy, nie czytałem drugiego wydania, ale za pierwsze to się powinno autorom odebrać prawo do pisania książek na pięć lat, zsyłając do kamieniołomów na ten czas. Prawie miesiąc mnie potem w pracy “prostowali” z nawyków i przekonań spowodowanych tamtą książką, a swój pierwszy projekt (zrobiony właśnie podczas czytania “Agile…”) nawet dziś zdarza mi się refaktorować.

Niestety nie poznałem jeszcze książki, która by dobrze wprowadzała początkującego w RoR, kończąc się w miejscu, w którym ów początkujący mógłby (i powinien) sięgnąć po “The Rails Way” Fernandeza.

Rails Way to faktycznie porządna kniga, chociaż spędziłem kiedyś trochę czasu drapiąc się po głowie zanim odkryłem, że na stronie 81 o Route Globbing jest błąd i zamiast:

Hash[params[:specs]]

powinno być:

Hash[*params[:specs]]

Poza takimi drobnostkami to nie ma się do czego przyczepić i Fernandez się naprawdę postarał (Gdybym miał affiliate link do Amazona to wkleiłbym go tutaj teraz :wink: )

Również polecam The Rails Way.

Przy aktualnym kursie USD “The Rails Way” z Amazona razem z przesyłką do Polski wychodzi ok. 90zł. Generalnie same plusy:
a) taniej niż “Agile…” z Helionu
b) lepsza książka
c) nie trzeba się męczyć z pomysłami polskich tłumaczy

Właśnie do mnie frunie :stuck_out_tongue:

A czy warta jest polecenia dla początkującego w Railsach? Jakoś nie mam ochoty pisać kodu w RoR 1.2.6 a później głowić się gdzie go zmienić do wersji 2.1… Podobno The Rails Way opisuje już 2.x.

The Rails Way to książka dla już trochę obytych w RoR, więc dla początkującego się raczej nie nadaje.
A zmiany w 2.0 względem 1.2.6 można wyłożyć (ze zrozumieniem) w dwie godziny, więc bym się nie krępował – naprawdę nie było ich aż tyle i nie były aż tak rewolucyjne. Byle nie używać żadnych rzeczy oznaczonych jako “deprecated” i będzie dobrze :slight_smile:

@Czak: dobry pomysł, też tak zrobimy :slight_smile:

Tu głównie chodzi o to, że jeśli napiszę coś w 1.2.6 i później przepiszę na 2.1 to być może nawet nie będę wiedział od czego zacząć w szukaniu przyczyn błędów:/ Ale ok. Kupię “Agile…II” :slight_smile:

Nie żebym książkę jakoś specjalnie polecał, bo pierwsze wydanie jest najpaskudniejszą książką o RoR jaką spotkałem, wyrabiającą mnóstwo złych nawyków. Ale z tego co przeglądałem 2nd ed., naprawili te błędy i teraz jest to solidne wprowadzenie w Railsy.

Przy błędach dostaniesz przy starcie backtrace’y, nie bój nic.
Rób spokojnie według tej książki - jak coś będzie niekompatybilne, debugger Ci wypluje wystarczająco dużo informacji.

Z rails 2.x to najlepiej od razu stosuj tzw. sexy migrations (google, zią), oszczędzają palce i zwiększają przejrzystość kodu. Resztę możesz pisać według 1.2.6.
Tak naprawdę największą zmianą w 2.0 jest wsparcie dla REST, a to grubszy temat.

Dzięki bardzo za pomoc i zainteresowanie. Pozdrawiam.

Ostatnie pytanie: ściągnąłem dzisiaj e-book prezentujący zmiany w Rails 2.1 (http://www.nomedojogo.com/livro/carlosbrando-rubyonrails21_en.pdf) . Moje pytanie brzmi czy korzystając z “Agile…” czyli Rails 1.2.6 mogę potem bezpośrednio czytać powyższy e-book czy najpierw muszę poczytać o Rails 2.0 a później 2.1?

Ten ebook opisuje nowości w 2.1 w stosunku do 2.0 więc przydałoby się troszkę o 2.0 poczytać

Jeszcze odnośnie tego douczania się z “Agile …” do rails 2.1, to uważam że warto skorzystać z materiałów na Peepcode:

Jest tam e-book “Rails 2”, który opisuje nowości w 2.0 i teraz niedawno wyszedl screencast “REST for Rails 2”

Chłopie Ty nie pytaj się tyle tylko bierz ucz się railsów 1.2.x, potem doczytaj o 2.0, ten ebook o 2.1 i tyle. Jak będziesz tak się zastanawiać to wyjdzie rails 3.0 i będziesz w takiej samej sytuacji jak na początku. Rails zmienia się ciągle (dojrzewa), ale cały czas jego trzon jest taki sam i na prawdę nie ma co tak panikować czy uczysz się wersji 2.x czy 1.2.x.