Django vs. RubyOnRails

ruby on rails logoPół roku temu, kiedy pierwszy raz usłyszałem o tych framework’ach postanowiłem zagłębić się w tajniki tego drugiego rozwiązania (prawdę powiedziawszy na temat pierwszego w ogóle nie szukałem informacji).
Do RoR przekonały mnie screencast jakie są dostępne na stronie głównej frameworka, to, że Helion ma książki do niego, a także to, że są w Polsce hostingi, które wspierają tą technologie. Nie mogę tego powiedzieć o Django – brak jakiś fajnych przykładów (screencast), brak książek w Helion, żaden hosting nie chwali się tym, że „ma wsparcie dla Django”. Już nie chodzi mi o to, że muszę mieć książkę po polsku, aby się nauczyć – angielski nie sprawia mi żadnego problemu i przerobiłem wiele książek informatycznych w obcym języku. Chodzi o to, że jeśli dany „język programowania” nie ma przekładu na j.polski, to żadna firma nie będzie zainteresowana programistą, który go zna. To byłaby nauka tylko dla idei nauki i mogła by mi się nie przydać w życiu (oprócz dla własnej satysfakcji). Co innego z RoR – jest sporo ofert pracy dla takich programistów, jest już dość spora biblioteka książek Helion w tej tematyce.

Dlatego ponad pół roku temu wybór padł na RubyOnRails (Ruby), a nie na Django (Python). Na dzień dzisiejszy w/w wady jakimi sie kierowałem wybierając framework wcale nie uległy zmianie i sytuacja jest taka sama.
Ale tworząc/ucząc się RoR wiem już jakie ma wady i trochę inaczej patrzę na ten framework. Główną, bardzo poważna wadą jest jego wydajność, a raczej jej brak !! M.in. dlatego też www.wykop.pl zrezygnowało z RoR na rzecz PHP (drugim powodem był brak profesjonalnych programistów w RoR). Dyskutując także na forum WebHostingTalk.pl z administratorami serwerów oni także potwierdzają, że RoR jest nadzwyczajnie wymagający i zużywa więcej % serwera wzorcowego, niż średnio zoptymalizowane oskryptowanie PHP.
To jest dość poważna wada RoR, która wg. mnie może zaważyć nad jego przyszłością. Zdaję sobie sprawę, że na dzień dzisiejszy komputery są na tyle mocne, a sprzęt na tyle tani, że nie jest to granica nie do przejścia, ale bez przesady, aby wydawać majątek na serwery, kiedy można ta samą stronę mieć nie w Railsach na jednym serwerze.
Django całkowicie inne jest. Wręcz nie ma co porównywać Django do RoR. Czytałem nawet opinie, że bytecode Django działa szybciej, niż PHP, ponieważ PHP jest optymalizowane do „szybkiego wykonywania prostych skryptów”. Tym bardziej, że nawet programiści RoR, którzy ze swoją „konkurencją”, tj. Django nie lubią się przytakują, że RoR jest bardzo zasobożerne, a Django nie.

Robi mi się od tego wszystkiego mętlik w głowie.
Korzystając wcześniej z PHP jak zobaczyłem jak łatwo i przyjemnie pisze się strony w RoR to można powiedzieć zakochałem się od pierwszego wejrzenia.
Ale teraz jak pomyślę, że porzucę zdobytą wiedzę na poziomie podstawowym i przejdę na Django trochę słabo mi się robi, bo kurcze – ile można przeskakiwać z technologii do technologii i nie znaleźć swojego miejsca (tym bardziej, że jest wiele framework do PHP: CodeIgniter, Zend, itd)

Czas pokaże co dalej z tym zrobię. Jedno jest pewne – nadmiaru czasu nie mam, więc prędko tego nie ruszę jeśli nie będę mieć silnego bodźca z zewnątrz. Tym bardziej, że muszę ogarnąć jeszcze ASP.NET… ale o tym będzie osobny wpis na blogu ;)