Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

A to jak się dany język nazywa nie powinno grać większej roli - ważne, że teraz się sprawdza.
To tak jakbym napisał, że marka auta jest nieważna - ważne, że jeździ teraz. Wydaje mi się, że moi klienci mają inne podejście ;)
To, co napisał Artur, można by raczej odnieść do tego, że nie na każdą trasę potrzebny jest Mercedes. Czasem lepiej - i ekonomiczniej - wybrać Cinquecento :)

konto usunięte

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Nie. Po prostu niektórych nie stać na merca.

A przekładając to na język ludzki. O php krótko, to jest język templejtowy zmutowany do nie wiem czego. Równie dobrze można by rozbudować jinja2 do poziomu 'OMFG bloatware' i mówić że się programuje.

Odnośnie ruby. Gdyby w tym języku były jeszcze 3-4 dodatkowe elementy składni to można by pisać progamy które robią to samo, wyglądają inaczej, a paradygmatycznie są tożsame. Innymi słowy, to dziwny język.

Odnośnie pythona. Lubie go. Jest językiem nie-nonsensowym. Przypomina mi C i objective-C, i w zasadzie są to moje 3 ulubione języki.Michał Domański edytował(a) ten post dnia 17.03.10 o godzinie 14:23

konto usunięte

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Michał Domański:
Nie. Po prostu niektórych nie stać na merca.
Chodzi ci o hosting? O koszty pracy? Możesz rozwinąć?
Michał Domański:
Odnośnie pythona. Lubie go. Jest językiem nie-nonsensowym.

Ja próbowałem Ruby via RoR i.. odpuściłem. W mojej ocenie Python ma lepszy "feeling" :) Nie wiem nawet jak to dokładniej opisać. Wszystko w nim wydaje się takie właściwe i na swoim miejscu :) No i istnieje niezastąpiony PEP oraz ogromna społeczność specjalistów. W ramach tego języka rzadziej spotyka się script-kiddies. Programiści faktycznie używają unit-testów, oraz TDD i to poprostu działa. Teraz zabaw się w TDD z PHP - dziękuję postoje. W skrócie - I was bitten by the snake :) (mimo, że python to dusiciel :P)Bartosz Burclaf edytował(a) ten post dnia 17.03.10 o godzinie 18:27

konto usunięte

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Paweł Piątkowski:
To, co napisał Artur, można by raczej odnieść do tego, że nie na każdą trasę potrzebny jest Mercedes. Czasem lepiej - i ekonomiczniej - wybrać Cinquecento :)

Mimo wszystko wolę jechać samochodem niż php-busem :P

konto usunięte

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Bartosz Burclaf:
Michał Domański:
Nie. Po prostu niektórych nie stać na merca.
Chodzi ci o hosting? O koszty pracy? Możesz rozwinąć?

Moge. Tak jak nie każdego stać na merca, tak nie każdego stać na przyznanie, że jego mega język do robienia portali www (php) to nie jest język programowania. To taka przenośnia była :)

konto usunięte

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Tomasz Elendt:

Powinieneś raczej zadać inne pytanie – czemu ludzie w ogóle migrują z PHP na Pythona czy Rubiego? I czemu zjawisko odwrotne (przejście/powrót z Rubiego/Pythona na PHP) praktycznie nie występuje.

i tym zakończył bym ten wątek.
Tak na marginesie, po ciężki członek LUDZIE rozpoczynacie takie
dyskusje.
Artur Świerc

Artur Świerc Programista PHP/Java

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Bartosz Burclaf:
Utrzymaj do tego team programistów, aby ten system modernizować - nierealne. Poza tym po co łączyć PHP, Ryby, Pythona skoro można wszystko zrobić w Ruby lub wszystko zrobić w Pythonie, lub w ostateczności PHP (jeśli ktoś lubi).

To zależy od firmy, u mnie są ludzie którzy zaczynali pisać od php3 - mamy wiele aplikacji phpowych czy też perlowych. Stare aplikacje trzeba utrzymywać, często dodaje się jakiś backend, a teraz python jest fajnym językiem. W firmach które robią np serwisy dla zewnętrznych klientów jest nieco inna sytuacja - tam tworzone są nowe produkty i często nie ma potrzeby dodawania nowych ficzerów w innych językach - wszystko z góry zaplanowane. Onet czy allegro, wykorzystują backendowe toolsy pisane w innych językach - php się do tego nie nadaje, chociażby ze względu na trochę kulawą obsługę wyjątków.

To tak jakbym napisał, że marka auta jest nieważna - ważne, że jeździ teraz. Wydaje mi się, że moi klienci mają inne podejście ;)

Nie chodzi o markę auta, po prostu chodzi o zwykła nazwę - nie lubię języka bo ma w nazwie "personal", chociaż jest używany do szerszych aplikacji ? Zwykłe czepianie się.

Swoją drogą, rynek pracy nadal szuka w większości programistów php. A ja idę tam gdzie mnie potrzebują i gdzie mogę zarobić. Mogę skupiać się tylko na pythonie, ale czy wtedy łatwo znajdę pracę w mojej okolicy?Artur Świerc edytował(a) ten post dnia 18.03.10 o godzinie 10:22
Adam Mańczuk

Adam Mańczuk programista, artysta
informatyk

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Nie chodzi o to czy język ma w nazwie personal czy też nie, to nie ma absolutnie znaczenia. Odniosłem się pierwotnej nazwy języka aby podkreślić że powstał on jako framework do tworzenia formularzy i szablonów stron. I jako taki, się świetnie sprawdza.

Co do kwestii kosztów, nie chodzi tu nawet o hosting. Największym kosztem jesteśmy my, programiści. Proszę przejrzeć oferty pracy, płacy i policzyć sobie ile kosztuje godzina pracy programisty w PHP, a ile w Python, Java czy Ruby. Popularność języka przekłada się na koszty programowania w nim. Do tego popularność ta gwarantuje gotowe rozwiązania dostępne w internecie i na dynamiczny rozwój projektów open-source. Nawet największe firmy mogą dojść do wniosku że taniej i wygodniej jest zatrudnić 100 programistów PHP do roboty, którą może wykonać 10 artystów klawiatury.
Piotr Maliński

Piotr Maliński Programista
Python/Django

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Kwestia kosztów. Startup startuje np. w PHP i w miarę jego wzrostu pojawiają się problemy z wydajnością - nie każdy chce, lub może przepisać swój serwis od podstaw w innej technologii (czas, konkurencyjność, kasa, dostęp do programistów), więc zaczyna się walka z utrzymaniem i metodycznym rozwojem kodu dobierając developerów, którzy np. będą przenosić funkcjonalności z kodu PHP do rozszerzeń PHP: http://www.tuenti.com/jobs/position/?requisition_id=59 :) Czy to tańsze rozwiązanie określić się nie da. W Pythonie, czy Railsa byłoby pełnie łatwiej/szybciej pisać binarne rozszerzenia, ale najpierw udany startup musiałby się zatrzymać żeby zmienić technologię.
Adam Mańczuk

Adam Mańczuk programista, artysta
informatyk

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Oczywiście że tańsze jest napisanie wszystkiego solidnie od początku, tak jak taniej jest kupować wiertarkę Bosh zamiast jakiegoś (be)Careful. Tylko jeżeli wiertarka nie jest moim narzędziem pracy, nie posługuje się nią codziennie, nie wydam pieniędzy na Bosha tylko po to aby mogły wiercić nim moje wnuki.

Przystawiając powyższą parabolę do rzeczywistości sieciowej, jeżeli ktoś robi sobie stronkę z galerią kolczyków, bierze gotowe skrypty w PHP, przerabia 3-4 linijki i wrzuca na darmowy serwis hostingowy. Voila, jest i działa, 30 minut roboty, wliczając w to naukę języka.

Natomiast inaczej przedstawia się sytuacja w korporacjach. Tutaj dochodzi czynniki ludzki w postaci kadry zarządzającej. Rzeczywistość korporacyjna wyklucza wyrafinowane predykaty i zaawansowane algorytmicznie rozwiązania. Kierownicy średniego szczebla są rozliczani z uruchomionych funkcjonalności. Jeżeli kierownik będzie się roztkliwiał nad generycznością, wydajnością i przejrzystością kodu, szybko zmienią go na kogoś bardziej "efektywnego". Jeżeli taki kierownik po "udanym" startupie awansuje, jego projektem zajmie się nowy kierownik. Proszę, pokażcie mi kamikadze który podważyłby "sukcesy" swojego obecnego przełożonego? Lepiej jest dłubać w C++ biblioteki do PHP umożliwiające dalszy "rozwój" portalu i zapędzać kolejne zespoły świeżo-po-studiach programistów do odmóżdżającego przeklepywania linijek.
Artur Świerc

Artur Świerc Programista PHP/Java

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Adam Mańczuk:
Lepiej jest dłubać w C++ biblioteki do PHP umożliwiające dalszy "rozwój" portalu i zapędzać kolejne zespoły świeżo-po-studiach programistów do odmóżdżającego przeklepywania linijek.

Adamie, niestety smutna prawda, szczególnie z tym zatrudnianiem nowych programistów - firmy wolą zatrudnić niedoświadczonego klepacza kodu, który będzie dalej "refaktoryzował" serwis, niż inwestować w starego wyjadacza.

Niestety często nasze ambicje nie są zaspokajane, szczególnie w korporacjach gdzie nie tworzy się nowych produktów, a jedynie usprawnia istniejące - w sposób szybki, który nie procentuje dobrze na przyszłość.

Z drugiej strony, pozwolę sobie zacytować:
System jako całość nie może być dobrze przemyślany i zaprojektowany. KROPKA.
Nigdy nie będzie dostatecznie dużo: czasu, pieniędzy, wiedzy biznesowej, ludzi z odpowiednimi kwalifikacjami, czasu, pieniędzy, czasu, pieniędzy, czasu, pieniędzy,...

http://art-of-software.blogspot.com/2009/09/ktos-sprza...Artur Świerc edytował(a) ten post dnia 19.03.10 o godzinie 14:43
Adam Mańczuk

Adam Mańczuk programista, artysta
informatyk

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Z drugiej strony, pozwolę sobie zacytować:
System jako całość nie może być dobrze przemyślany i zaprojektowany. KROPKA.
Nigdy nie będzie dostatecznie dużo: czasu, pieniędzy, wiedzy biznesowej, ludzi z odpowiednimi kwalifikacjami, czasu, pieniędzy, czasu, pieniędzy, czasu, pieniędzy,...
To też smutna, pisanie programów, w stylu neoplatońskim, jest niekończącym się poszukiwaniem świętego Graala "Systemu Idealnego". Powstaje projekt-matka-wszystkich-projektów wchłaniający całe wszechświaty funkcjonalności i rozbijający je w analizę każdego atomu informacji. Wiążący każdy stan procesora, pamięci, dysku w wszestrukturę, spajającą wszystko w metamonolit logiki.
Bez "bata ekonomicznego" kończy się to prozaicznym rozbuchaniem projektu do stopnia fizycznie uniemożliwiającego jego realizację.
Ale jest w takich projektach piękno kosmosu...
Bartłomiej Ogryczak

Bartłomiej Ogryczak Backend Developer @
Layar

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Bartosz Burclaf:
Artur Świerc:
obecnie chyba trudno opierać się tylko i wyłącznie na jednym języku - można napisac w phpie interfejs użytkownika, w pythonie backend, do tego jakiś soft dla konkretnego klienta w jee i to wszystko będzie ze sobą wspaniale współgrało.

Utrzymaj do tego team programistów, aby ten system modernizować - nierealne.

Z własnego doświadczenia mogę powiedzieć, że jak najbardziej realne. Webserwisy z RESTowym interfejsem. Dla programisty który z nich korzysta nie ma znaczenia w jakim języku są zaimplementowane. Np. fronendowcy bez problemu korzystają z serwisów stojących na Twisted, nie mając bladego pojęcia o Pythonie.
Poza tym po co łączyć PHP, Ryby, Pythona skoro można wszystko zrobić w Ruby lub wszystko zrobić w Pythonie, lub w ostateczności PHP (jeśli ktoś lubi).

Po pierwsze, okropne słowo pt. legacy. Sorry, w dużych projektach na ogół nie ma możliwości wywalenia dotychczasowego kodu i napisania od nowa.
Po drugie dostępność deweloperów. Np. o dwa rzędy wielkości łatwiej znaleźć frontendowców znających PHP, niż znających Pythona.
Bartłomiej Ogryczak

Bartłomiej Ogryczak Backend Developer @
Layar

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Piotr Maliński:
Kwestia kosztów. Startup startuje np. w PHP i w miarę jego wzrostu pojawiają się problemy z wydajnością - nie każdy chce, lub może przepisać swój serwis od podstaw w innej technologii (czas, konkurencyjność, kasa, dostęp do programistów), więc zaczyna się walka z utrzymaniem i metodycznym rozwojem kodu dobierając developerów, którzy np. będą przenosić funkcjonalności z kodu PHP do rozszerzeń PHP: http://www.tuenti.com/jobs/position/?requisition_id=59 :)

To jest jedno z rozwiązań. MSZ, słabe.

Inne to np. zrobić wyskowydajny backend w Pythonie i używać jako RESTful.
Czy to tańsze rozwiązanie określić się nie da. W Pythonie, czy Railsa byłoby pełnie łatwiej/szybciej pisać binarne rozszerzenia, ale najpierw udany startup musiałby się zatrzymać żeby zmienić technologię.

Tyle, że warto się zastanowić czy w ogóle warto pisać binarne rozszerzenia. Skalowalność pionowa nie jest w stanie zastąpić poziomej.Bartłomiej Ogryczak edytował(a) ten post dnia 29.03.10 o godzinie 11:53
Artur Goldman

Artur Goldman Programmers

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

A propos wypowiedzi Adama, że Ruby to Python bez poczucia humoru riposta jest taka: Ten się śmieje, kto się śmieje ostatni. Osoby, które nauczyły się Pythona i jakoś nie chce im się przesiadać na Ruby'ego nie bardzo mają podstawy do krytykowania tego, czego właściwie nie znają, prawda?

Pisanie w Ruby'm jest całkowicie intuicyjne. Gdy patrzę na konstrukcje gramatyczne w Pythonie, odnoszę wrażenie, że ktoś chwilami próbował na siłę dogonić Ruby'ego, albo jakiś człowiek z Microsoftu zajmuje się gramatyką Pythona.

Np. to:


a = []
for x in range(3):
for y in range(3):
if x != y:
a += [(x,y)]


jak to czytam/piszę zastanawiam się co w tym języku jest fajnego i dlaczego jest taki... sztywny?

Dla porównania to samo w Ruby'm:


a = []
3.times{|x| 3.times{|y| a << [x,y] if x != y }}


Nawet próbując czytać kod Pythona w myślach czuć brak "feelingu" tego języka.

Dla powyższego: A to tablica. Dla x w zakresie 3 (?po co mi zakres): Dla y w zakresie (?znowu jakiś zakres): jeśli x nie jest równe y: dodaj do a parę x i y.

A teraz czytam kod w Ruby'm: A to tablica. Trzy razy rób: trzy razy rób: wrzuć parę x i y do tablicy a, jeśli x jest różne od y.

Pytanie też dlaczego ROR powstał w Ruby'm, a nie w Pythonie...? Moim zdaniem to nie jest kwestia przypadku. Tylko Python jest jak język francuski, a Ruby jak język Angielski (brytyjski albo amerykański - jak kto lubi).Artur Goldman edytował(a) ten post dnia 21.06.10 o godzinie 14:11

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...


>>> [(x,y) for x in range(3) for y in range(3) if x != y]
[(0, 1), (0, 2), (1, 0), (1, 2), (2, 0), (2, 1)]


↑ Python.

"Stwórz listę par liczb z zakresu 0-3, przy czym liczby w każdej parze są różne"

Wg mnie brzmi dobrze i jest czytelniejsze niż w rubym.

PS.
Oczywiście można to przypisać do zmiennej A:


A = [(x,y) for x in range(3) for y in range(3) if x != y]
Artur Czepiel edytował(a) ten post dnia 21.06.10 o godzinie 14:25
L P

L P podskala.net

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Artur Goldman:
A propos wypowiedzi Adama, że Ruby to Python bez poczucia humoru riposta jest taka: Ten się śmieje, kto się śmieje ostatni. Osoby, które nauczyły się Pythona i jakoś nie chce im się przesiadać na Ruby'ego nie bardzo mają podstawy do krytykowania tego, czego właściwie nie znają, prawda?

Podobnie osoby, które nauczyły się składni Ruby'iego nie mają podstaw by krytykować, tego czego nie znają - czyli Pythona. Przypominam, że to Python był i jest wzorem dla Ruby'iego a nie na odwrót. Autor Ruby'iego, podążając za czyjąś technologią nigdy nie osiągnie sukcesu (to również tyczy się fikuśnej, często zmienianej/zastępowanej - np. lambda oraz wstecz-niekompatibilnej składni).

Ł
L P

L P podskala.net

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Artur Goldman:
Pytanie też dlaczego ROR powstał w Ruby'm, a nie w Pythonie...? Moim zdaniem to nie jest kwestia przypadku. Tylko Python jest jak język francuski, a Ruby jak język Angielski (brytyjski albo amerykański - jak kto lubi).Artur Goldman edytował(a) ten post dnia 21.06.10 o godzinie 14:11

A pod czyją egidą jest Ruby ? :) Na pewno nie Google (Python)
Nie wszyscy mają wyobraźnie do porównywania jezyka formalnego z naturalnym w kontekscie semiotyki :)) Niech będzie francuski albo polski nawet :)
Artur Goldman

Artur Goldman Programmers

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Łukasz Podkalicki:

Podobnie osoby, które nauczyły się składni Ruby'iego nie mają podstaw by krytykować, tego czego nie znają - czyli Pythona. Przypominam, że to Python był i jest wzorem dla Ruby'iego a nie na odwrót. Autor Ruby'iego, podążając za czyjąś technologią nigdy nie osiągnie sukcesu (to również tyczy się fikuśnej, często zmienianej/zastępowanej - np. lambda oraz wstecz-niekompatibilnej składni).

Ł

1) W którym miejscu Python jest wzorem dla Ruby'ego ? LOL
2) W którym miejscu autor Ruby'ego podąża za czyjąś technologią? LOL
3) Napisz przykład kodu w Ruby'm 1.9, którego nie dałoby się z automatu przetransponować na Ruby <1.9 to będziesz mógł powiedzieć, że to jest jakiś problem. Rozwój i poprawa wydajności to nie jest problem, ale postęp. Tkwienie przy starych patentach oznacza niepotrzebny effort w miejscach, które nie są tego warte. Pełna zgodność z pierwotną gramatyką nie koniecznie świadczy o wysokiej jakości języka. Poza tym, niech już będzie ten ROR: jakoś nikt nie miał problemu z dopasowaniem do 1.9.
4) Na czym polega "fikuśność" Ruby'ego? :-)

konto usunięte

Temat: PHP VS Ruby VS Python - prosze o wypowiedź zaawansowanych...

Piotr Maliński:
Kwestia kosztów. Startup startuje np. w PHP i w miarę jego wzrostu pojawiają się problemy z wydajnością - nie każdy chce, lub może przepisać swój serwis od podstaw w innej technologii (czas, konkurencyjność, kasa, dostęp do programistów), więc zaczyna się walka z utrzymaniem i metodycznym rozwojem kodu dobierając developerów, którzy np. będą przenosić funkcjonalności z kodu PHP do rozszerzeń PHP: http://www.tuenti.com/jobs/position/?requisition_id=59 :) Czy to tańsze rozwiązanie określić się nie da. W Pythonie, czy Railsa byłoby pełnie łatwiej/szybciej pisać binarne rozszerzenia, ale najpierw udany startup musiałby się zatrzymać żeby zmienić technologię.

Wiem, że stary ten post, ale coś od siebie napiszę:

Z tym serwisem w PHP i przenoszeniem do modułów to nie rozumiem, zawsze można od początku robić całość modułowo, co komu przeszkadza wtedy język?

Problemy z wydajnością są zawsze, niezależnie od języka, a samo skalowanie to problem architektury a nie języka, bo język się nie skaluje, tylko architektura.

Zobacz na czym chodzą strony z największym ruchem, to jest całe spektrum języków, bibliotek, silników baz danych i serwerów. Sam język to najmniejsze zmartwienie.



Wyślij zaproszenie do