Nauka Symfony vs nauka Ruby on Rails

0

Czy frameworki pokroju Symfony2, Zend, Laravel są dużo łatwiejsze w nauce niż Ruby on Rails?
Czy Ruby on Rails jest taki trudny? Siedzę w tym z 2 miechy i dalej mało co umiem. Nie wiem, może zła metoda nauki czy co...

Pomijam kwestię języka samego, bo Ruby jakiś dużo trudniejszy nie jest od PHP, ale chodzi o sam ekosystem Ruby on Rails. W np. CodeIgniter i Symfony coś tam klepałem i dużo łatwiej było niż w RoR.

Postanowiłem się przerzucić, bo zacząłem dostrzegać wady PHP przede wszystkim...

0

ale co w tym RoR jest trudne ?

0

No właśnie wiem. Może to ma inną filozofię pisania...
Klepałem trochę w PHP, głównie CodeIgniter i troszkę w Symfony. W CodeIgniter robiłem kilka miechów jako freelancer i dość prosto tam wszystko szło jak się posiedziało w dokumentacji.

A w RoR po pierwsze często jest jakoś dziwnie mało kodu. Np. coś się dzieje ale nie ma do tego kodu albo jest jakiś dziwny, niejasny jednolinijkowiec, albo doda się jednego hasha i nagle wszystko inaczej działa. Wszystko jakieś takie trochę dziwne/niejasne.

Nie wiem, może się źle za to biorę i może trzeba porzucić nawyki z PHP/CodeIgnitera.
Chociaż niby to i to jest framework MVC, więc jakaś analogia tam powinna być.

0

To że w RoR robi się w jednej linijce to wina tego że RoR ma duży nacisk na konwencje - i to jest super !

0

A tylko konwencje różnią pisanie w RoR od pisania w innym frameworku webowym MVC?

W sumie poza konwencjami nazewnictwa modeli/kontrolerow to nie znam żadnych konwencji, może w tym rzecz. Spróbuję coś pogoglować.

0

To jak możesz nie znać konwencji które wprowadza RoR jeżeli to jest poruszane na samym początku książek/tutoriali ? Słuchaj tak jak nie pije i nie siadam za kółko tak nie pisze w framwerowku którego nie znam :)

0

Myślałem, że pisałeś o jakichś bardziej skomplikowanych konwencjach, bo te podstawowe to znam.

railstutorial.com przerobiłem, agile development in rails przerobiłem, i pick axe tez, a na bieżąco kukam na guides Rails.
Także jakoś tam poznałem język + framework'a, ale wciąż na każdym kroku coś mnie dziwi/zaskakuje. Przesiałem się na ubuntu, żeby być bardziej kompatybilny z Ruby i Railsami, ale wciąż jakieś dziwne błędy mi wywala w konsoli, to nie znajduje odpowiedniej wersji json, to baza się wyłożyła, to nie można się połączyć z postgresql itd. 2 miesiące w tym grzebię i dalej nic z tego nie kumam :D

Nie mówię, że Rails jest trudny wyjątkowo ani nie narzekam. Może po prostu nie jest dla mnie, nie czuję go itp.

Uczyłem się programować na C i potem trochę klepałem w strukturalnym C, potem PHP, więc może ciężko mi się przestawić.

Aha, żeby nie było. Wątek nie służy do narzekania/porównywania frameworków, tylko do uzyskania porad jak sie uczyć RoR'a, co w nim jest trudnego i czy nie lepiej poszukać czegoś bardziej pod siebie, skoro po 2 miechach nauki ewidentnie mi nie leży. A może to kwestia przyzwyczajenia/spojrzenia na daną technologię?

@niezdecydowany piszesz w RoR na co dzień? Długo się uczyłeś? Łatwo ci na początku było pojąć jak to działa?

0

Ja np. piszę od czerwca, i generalnie ostatnie szlify idą w projekcie, z tym, że nikt w teamie nie miał styczności ani z Rubym ani z RoRem. Jestem pozytywnie zaskoczony i jeśli miałbym pisać jeszcze raz lub następny projekt to raczej tez byłbym za RoRem

0

Tak piszę w RoR na codzień - a w sumie ostatnio bardziej w css/html :D - i powiem szczerze bardzo łatwo udało mi się przesiąść, byłem zdziwiony, przechodząc z javy do rubiego dostałem tak jakby trzecią rękę. Napisz czego nie jarzysz to Ci wytłumaczymy.

0

jeśli mogę się podpiąć i chce wam się sprecyzować to: czemu ror jest taki fajny? to nie pytanie retorycznie, poważnie pytam :)
@niezdecydowany dlaczego trzecią rękę?

0

Jeśli chodzi o mnie to niby siedząc na tutorialu/z przykładowym kodem to coś tam umiem naklepać, ale bez tutoriala (np. z samą dokumentacją) nie umiem naklepać w Railsach czegoś sensownego, nie rozumiem co do czego. Tzn. wiem jak działa MVC, że są widoki, modele i kontrolery, ale nie wiem jak to do kupy złożyć

No i NIGDY nie miałem tylu problemów różnego typu co z RoR. To nie działa baza danych, to migracje się nie odpalają, to jakiś gem się wysypał, to po update RSpec przestał działać i wywala w terminalu 100 linijek błędu, no nagle server się nie odpala nie wiedzieć czemu, to po update railsów część gemów nie działa. I z każdym takim problemem trzeba się męczyć godzinami wertując stacoverflow.
Pisząc niskopoziomowe rzeczy w C było łatwiej :D
W PHP wszystko po prostu działa - CodeIgniter/Symfony. Można narzekać na jakość/wydajność/ułomność samego Pehapa, ale wszystko działa jakoś tam, nic się co chwile nie wysypuje itd.

Nie wiem, może to kwestia, że ja jestem początkujący mocno w webdevie, a dla początkujących ekosystem np. Symfony i PHP jest bardziej przystępne.

I znowu, nie narzekam, tylko dzielę się spostrzeżeniami i pytam bardziej doświadczonych kolegów :)

@niezdecydowany przerzuciłeś się z Javy dla wygody?

1

Piszesz bardzo ogólnikowo - konkrety, jak coś się nie odpala znaczy że robisz coś źle.
Jeżeli masz gemy to ich wersja powinna zostać ustalona, omijasz problem z wywalaniem się ich po updatach(np: '~>1.1').

Nie, nie przerzuciłem się z javy dla wygody tylko dlatego że akurat pojawiła się oferta w Railsach(a w javie takowej nie było :D ).

P.S @azalut Railsy są wygodne bo mają właśnie bardzo duży nacisk na konwencję, i jest w nich mnóstwo fajnych narzędzi (testowanie takich aplikacji jest przyjemnością), mają migrację(co dla mnie jako osoby upośledzonej bazodanowo było fajne :D ) i system zarządzania gemami jest mistrzowski. Zresztą, sam fakt że to Ruby to już duży +, bo to naprawdę fajny język, niektóre rzeczy mogą szokować ludzi którzy przychodzą z javy np: standard nazw, jakas_metoda a nie JakasMetoda, widziałem gdzieś na gitcie metodę nazwaną znakiem "serduszka" - muszę poszukać.
W Rubym to jest legalne(nic super, legalne także dla Scali i innych, jednak dla mnie to był "szok"):

Δ = 1
Δ += 1
puts Δ
0

nieźle @niezdecydowany :D
kiedyś jak chciałem sobie robić przerwę od javy to planowałem popisac w rubym lub pythonie i padło na pythona. myślę, że zadecydowała większa przestronność **wszechstronność **pythona w stosunku do rubyego, chociaz dylemat był bardzo spory. troche poskrobałem, a potem troche brakło czasu i już nie wróciłem do django.

teraz zastanawiam się czy nie lepszym wyborem byłby ruby, pomimo, że jedyna droga rozwoju tak na prawdę jest RoR..
albo jak pisze w javie to poznac scale i skrobać w play-u, pewnie podobny poziom merytoryczny, a jaka sława i duma, że używam scali :D
edit
no tylko scala z 5x cięższa w nauce niż python czy (zakładam, że też) ruby

0

no tylko scala z 5x cięższa w nauce niż python czy (zakładam, że też) ruby

Na poczatku bycmoze. Dalej, dopoki nie probujesz sobie pisac jakiegos shapeless czy scalaz to taki sam webdev jak we wszystkim innym.

0

@n0name_l nie znam sie, shapeless to jakaś biblioteka dla scali genericsów? nawet nie wiem co oferuje biblioteka standardowa scali bo nie patrzyłem nigdy :)
@niezdecydowany poziom wyżej hmm.. coś w tym może być

ostatnio ciągle widuje taki hype wokół scali, coraz częściej czytam do słowo + tak jakby programowanie funkcyjne stawało się nową modą? może warto, żebym usiadł do scali?

troche zeszlismy z tematu HIHIHIH

0
peters7 napisał(a):

Czy frameworki pokroju Symfony2, Zend, Laravel są dużo łatwiejsze w nauce niż Ruby on Rails?
Czy Ruby on Rails jest taki trudny? Siedzę w tym z 2 miechy i dalej mało co umiem. Nie wiem, może zła metoda nauki czy co...

Pomijam kwestię języka samego, bo Ruby jakiś dużo trudniejszy nie jest od PHP, ale chodzi o sam ekosystem Ruby on Rails. W np. CodeIgniter i Symfony coś tam klepałem i dużo łatwiej było niż w RoR.

Postanowiłem się przerzucić, bo zacząłem dostrzegać wady PHP przede wszystkim...

Pytanie jest takie: jakie Ty wady widzisz w PHP? Bo tak jak czytam te wszystkie argumenty za i przeciw, że to ruby jest lepszy a php jest do niczego to nie wiem czy się śmiać czy płakać. Piszesz tutaj że ciężko jest Ci ogarnać railsy? To na pocieszenie ja Ci powiem, że mam podobne doświadczenia. :-)

W PHP piszę teraz taką aplikację, coś w rodzaju menedżera finansów ale dla wielu użytkowników, z rejestracją i aktywacją konta przez e-mail, później logowaniem, także funkcjonalność administracji i możliwością banowania użytkowników więc za cel stawiam sobie napisanie trochę bardziej złożonej aplikacji, tylko po to żeby to poznać i mieć jakieś portfolio :) Bazuję jednak nie na Symfony ale na Kohana 3.2, PostgreSQL 8.4, modułach Kohana Auth, ORM i SwiftMailer. I powiem tylko jedno: to sama przyjemność. :-) I też się to pisze w miarę szybko :-)

Alternatywnie próbuję stworzyć to samo w

  1. DJANGO (python 2.6, sqlite3)
  2. Rails 4, ruby 2, sqlite3 (w domyślnej konfiguracji)

Oczywiście i w PHP mógłbym bazować na SQLite3 ale ja wybrałem PostgreSQL.

I tak. Zarówno w DJANGO ja i w Railsach to prawdziwa męka (ale dopiero z tym zaczynam). Tzn. próbowałem robić testy na dostępnych na Githubie przykładach i faktycznie, problem jest taki że coś nie działa i faktycznie w PHP jest pod tym względem jak dla mnie znacznie łatwiej.

Dlaczego tak? Wydaje mi się że odpowiedź jest prosta. Po prostu składnia PHP przypomina trochę JAVA (a ja dobrze czuję się w językach statycznie typowanych) i z tego powodu jest prostsze do nauczenia. Składnia Pythona czy Rubiego jak na to popatrzeć znacząco się różni jeśli zestawić to ze składnią JAVY.

Dodatkowo w Kohanej konfiguracja jest prosta jak diabli i łatwo zrozumieć przyjęte tam konwencje, w railsach pewnie masz problem ze względu na składnię i konwencje tam przyjęte. Gdzieś na jakimś blogu przeczytałem, że ruby jest po prostu trudniejszy do nauki a PHP jest łatwy.

Jakie widzisz wady w PHP?

1

@drorat1

jakie Ty wady widzisz w PHP?

O tym juz bylo... http://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/

że to ruby jest lepszy a php jest do niczego to nie wiem czy się śmiać czy płakać.

W sensie, z czego konkretnie i dlaczego?

Zarówno w DJANGO ja i w Railsach to prawdziwa męka [...] ale dopiero z tym zaczynam

Czyli kolejne porownanie, ktore kompletnie nic nie wnosi? ;-)

Po prostu składnia PHP przypomina trochę JAVA (a ja dobrze czuję się w językach statycznie typowanych)

:-D :-D :-D

@peters7
Zacznij cos klepac i wrzucaj do oceny na fora/irce/whatever to cie ludzie naprowadza. Innego sposobu zbytnio nie ma. :)

0

http://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/

Ja tego podczas tworzenia aplikacji przy użyciu Kohana nie widzę. Poza tym bazując na tym frameworku wszystko idzie dość łatwo a programowanie to sama przyjemność. OK, rozumiem że pewne konwencje i składnia może wkurzać ale bez przesady. Czy nie sądzisz że po prostu takie artykuły na blogach były pisane po prostu ze względu na to, że ktoś nie lubi samej składni języka? Co do rubiego/pythona vs. php, jeśli już to fajniejsza jest składnia pythona.

Tu też była dość ciekawa dyskusja na temat w czym lepiej pisać aplikacje:
http://www.wykop.pl/link/1174749/php-vs-ruby-vs-python-infografika/

0

Ja tego podczas tworzenia aplikacji przy użyciu Kohana nie widzę.

No okej, mozna zamknac oczy i nie widziec, ale czy to ma jakis sens?

Czy nie sądzisz że po prostu takie artykuły na blogach były pisane po prostu ze względu na to, że ktoś nie lubi samej składni języka?

Nie, sadze, ze malo kogo obchodzi jakie jest slowo kluczowe do definiowania funkcji.

0

RoR chyba nie jest dla każdego a jeżeli nauka sprawia problemy to się zastanawiam nad tym jaki jest sens porywać się na coś co może przerastać możliwości w programowaniu? Dla samej idei? Żeby sobie udowodnić, że jest się lepszym programistą? Nie przemawiają do mnie argumenty o beznadziejnej składni PHP i beznadziejnym nazewnictwie, bo wydaje mi się że łatwość w tworzeniu aplikacji powinna przynajmniej częściowo to zrekompensować. Nigdy również nie zabrałbym się za napisanie appki w ramach zlecenia, w przypadku najmniejszych nawet podejrzeń, że nie dałbym rady podołać zadaniu, bo w innym przypadku można się nieźle sparzyć na freelancingu.

Nie wiem czy też taka nauka RoR, nawet z powodzeniem może zaprocentować w postaci większej ilości zleceń, bo jakby nie było ogromna ilość roboty jest właśnie w PHP, wiem że często za beznadziejnie niskie stawki ale to by dotyczyło raczej pracy jako podwykonawca dla jakichś agencji przy klepaniu stronek dla lokalnych firm za niewielkie pieniądze a wymagania są ogromne. Czy jak się nauczę RoR, to zaprocentuje to jakoś w postaci nowych zleceń?

0

Ja to widzę tak, że jeśli kogoś nie razi źle zaprojektowany i niespójny język, to sam prawdopodobnie również pisze źle zaprojektowany i niespójny kod. Co kto lubi.

0

To może napiszcie lepiej że ten szajs wg. Waszej opinii nie jest do wszystkiego. Mimo wszystko ogromna ilość stronek opartych o systemy zarządzania treścią na tym właśnie bazuje, ten szajs jest w PL mimo wszystko bardzo popularny, łatwy do nauki, co raczej nie jest wadą a tylko zaletą :-) Jak komuś nie pasuje że pokemony się tego uczą to ja już nic na to nie poradzę, zresztą w Polsce nie potrzeba przecież jakichś zezwoleń żeby wykonywać zawód programisty.

Ale jak czytam ogromną ilość wypowiedzi w temacie web, sprawa wcale nie jest taka prosta jakby się wydawało, być może FB w początkowym okresie działał znakomicie ale wraz ze wzrostem popularności (i co za tym idzie coraz większej liczby użytkowników) zorientowali się że serwis nie wyrabia. Dlaczego nie użyli JAVA EE albo ASP.NET? GL też czasem nie wyrabia, wyświetlając komunikat, że serwery się rzekomo obraziły, nie wiem jednak na czym on bazuje.

1 użytkowników online, w tym zalogowanych: 0, gości: 1