Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dlaczego programiści PHP to nie programiści?
Forum PHP.pl > Inne > Hydepark
Stron: 1, 2, 3
Theqos
A ja się spytam, ilu z was chce programować w PHP (wybrało go sobie świadomie) a nie dlatego, że "musi". A bo, że już mamy duży code base, doświadczonych pracowników w danych technologiach, tani hosting, tanie narzędzia itp. Nie chcielibyście zmigrować na pythona, ruby, asp.net, scalę? Ja bym chciał, ale jak bym przyszedł do firmy z takim tekstem to połowa by na mnie dziwnie popatrzyła ("i kiedy ja sie niby tego nauczę?"), połowa by powiedziała fajnie by było, ale terminy gonią. A trzecia połowa (szef) powie super fajnie, ale kto zapłaci za szkolenia, okres przestoju na czas migracji, gdzie to potem będziemy (tanio) hostować. A na koniec będę jeszcze musiał zatrudniać tych drogich programistów javowo-pythonowych.

Jako szef wybieram PHP, no chyba, że miałbym napisać coś więcej niż kolejny społecznościowy startup/CMS/sklep itp. No i PHP do tego wystarczy, jak coś osiągnie sukces i będzie kasa to się najwyżej przepisze na coś lepszego, czy kupi kosmiczny sprzęt, co taniej wyjdzie. Ale na coś większego i tak nie mam funduszy, tylko "programistów" PHP na pęczki winksmiley.jpg

PS. dobrych programistów piszących w PHP jest sporo, ale tych słabych jest znacznie więcej. Więc średnia wychodzi nieciekawie i to pewnie się przenosi na taką złą opinie. Jakość samego języka też prestiżu nam nie podwyższa. Ten cały okres PHP4 to musiała być jakaś katorga, dobrze że wtedy robiłem co innego. Zresztą jak przypadkiem trafiłem do tej branży, to też sobie myślałem, że "robienie stronek to nie programowanie". Jak bardzo, żem się mylił. Ileż się tutaj nauczyłem i za to PHP dziękuje (chociaż pewnie to raczej zasługa pracy niż konkretnego języka).

Cytat(thek @ 12.01.2010, 10:33:45 ) *
*ciach* wychwalanie javy winksmiley.jpg

Ja nie mówiłem, że Javy się nie używa, że Java ssie jako język (chociaż winksmiley.jpg ), czy JVM to gówno. Mówiłem o GUI (w szczególności to niby wieloplatformowe GUI w swingu), z którym to kojarzą mi się aplikację desktopowe. Jedyne co mam w swingu to Netbeans, którego i tak rzadko używam (głównie dlatego, że jest w swingu tongue.gif ).
thek
Dla mnie php zaczął się na studiach, gdzie wybrałem go jako język jednego z projektów. Świadomie. Przydało mi się to póxniej gdy szukałem pracy. Akurat był potrzebny ktoś kto siedzi w technologiach webowych. Dla mnie ten język to takie uproszczone C++ smile.gif A że znałem ten język to z nauką php nie miałem problemów. Zgodzę się z tym o przekwalifikowywaniu i nauce nowego. Ale to chyba jet podstawa zawodu programisty. Idąc na polibudę miałem pełną świadomość, że to będzie zawód, gdzie cały czas będę musiał się kształcić, bo inaczej polegnę.

Ja w przypadku php nie nauczyłem się wiele jeśli chodzi o techniki czy metodologię. Te już znałem z C++. Poznałem jedynie biblioteki, funkcje i ewentualnie nieco inny format instrukcji. Wiele rzeczy mogłem pominąć, pewne problemy przestały być nimi bo przejął to na siebie sam język. Mogłem więc skupić na algorytmie samym, nie zaś problemach z jego implementacją. Owszem, nie zawsze jest super i php ma swoje wady i ograniczenia, ale mogłem niemal zapomnieć o czymś takim jak wskaźniki czy kontrola poprawności typów lub alokacji pamięci. To duże udogodnienie. Wiem co się dzieje "pod spodem" w przeciwieństwie do "programistów php" i to mój duży plus, bo rozumiem błędy. W C++ obsługa wyjątków daleko przekroczyła swoje bazowe założenie i jest wykorzystywana jako forma instrukcji warunkowej w stylu if smile.gif Puryści się burzą, że nie powinno się tak robić, ale jednak jest to częste. Świadome korzystanie z tego mechanizmu jest także w php możliwe i zapewne część piszących to wykorzystuje. "Programiści" raczej tego nie używają inaczej niż "kopiuj-wklej", bo znaczy że jestem pr0 winksmiley.jpg A robienie stronek i programowanie spotkały się gdy do HTML wkroczyły języki skryptowe w stylu JS, skrypty CGI czy php właśnie. Tyle że ówcześni webmasterzy mieli stare nawyki i często złe, co ciągnie się do teraz.
dr4ko
W php można napisać dużo więcej niż kolejny cms. Napisałem kiedyś w php aplikację komunikującą się bezpośrednio ze sterownikami programowalnymi. I nie był to żaden problem. PHP wybrałem świadomie i np na Ruby nigdy bym się nie przesiadł z własnej woli. Pythona bym się chciał nauczyć z czysto programistycznej ciekawości - ma on kilka ciekawych możliwości. Ale w firmie raczej nikt by się nie porwał na to żeby się na niego przesiadać bo i po co skoro PHP wystarcza.
blooregard
Cytat
To wywal JRE z dysku i próbuj popracować normalnie

Ja się nie obrażam na cały świat, bo Java mi nie nie podoba jako język programowania, to wywalę JRE i już... Tak samo, jak nie wykląłem Windows, bo wolę Linuksa. Używam WinXP też (w pracy i w domu, na drugim komputerze okazyjnie), i aplikacji napisanych w Javie też (wspomniany NB). Ale jako język programowania mi po prostu nie podchodzi i już.

Cytat
Nie chcielibyście zmigrować na pythona, ruby, asp.net, scalę? Ja bym chciał, ale jak bym przyszedł do firmy z takim tekstem to połowa by na mnie dziwnie popatrzyła ("i kiedy ja sie niby tego nauczę?"), połowa by powiedziała fajnie by było, ale terminy gonią. A trzecia połowa (szef) powie super fajnie, ale kto zapłaci za szkolenia, okres przestoju na czas migracji, gdzie to potem będziemy (tanio) hostować.

Święte słowa. Na szczęscie (dla mnie) jest sporo firm tworzących serwisy internetowe w ASP.NET i nie mają potrzeby "migrować" na .NET smile.gif To taka dygresja do mojej wczesniejszej wypowiedzi odnośnie rozwoju zawodowego. A z ASP.NET juz tylko mały kroczek do WindowsForms i aplikacji desktopowych czy innych.

Cytat
Jeśli nie ma gotowca w necie lub gotowego komponentu za to odpowiedzialnego to leżą i kwiczą. To samo dotyka coraz większej liczby języków programowania. Niedługo dojdzie do etapu "pisania www" przy użyciu php metodą drag&drop Ktoś pewnie zacznie pisać jakieś IDE w stylu Buildera czy Delphi gdzie tylko komponenty będziesz wrzucał

http://www.embarcadero.com/products/delphi-for-php

Cytat
Ileż się tutaj nauczyłem i za to PHP dziękuje (chociaż pewnie to raczej zasługa pracy niż konkretnego języka).

Mam takie same odczucia. Ale może miałem łatwiej, bo w miarę sobie radzę z C++.
thek
@Theqos: A czy ja jestem zwolennikiem JAVA? Popatrz do mojego postu, który cytujesz (z 10:33). Mam tam wyraźnie, że mi JAVA też nie pasuje. Próbowałem do niej wielokrotnie przekonać, ale to nie dla mnie. Po prostu uważam to za język dla określonej grupy ludzi i pewnego kręgu zastosowań. Fajne to, daje swobodę, ale niesie także wiele problemów z sobą a nie mam zamiaru się z tym użerać tongue.gif Kto chce niech pisze i używa. Ja wolę inne narzędzia. Zwyczajnie wziąłem w obronę piszących w JAVA, choć sam za tym językiem nie jestem. To pewnego rodzaju solidarność. Tak więc trudno trochę mi zrozumieć, czemu miałbym się obrażać, że ktoś krytykuje ten język winksmiley.jpg
Cysiaczek
Ok, ale zboczyliśmy z tematu.
Więc nadal nie ma zgody, czy ludzie piszący w php to programiści czy nie? Wg. mnie są programistami, choć trafniej można większość z nich nazwać developerami (o tym już była dyskusja parę lat temu)

Pozdrawiam
mrok
wracając do tematu znalazłem krotki raport na temat php http://blogs.gartner.com/mark_driver/2009/...ent-and-future/

Niektóre opinie w komentarzach są ciekawe. Ale wnioski pewnie każdy sam wyciągnie.
nasty
Cytat(Zyx @ 11.01.2010, 09:53:50 ) *

Te struktury nie są zaimplementowane w PHP a tylko dostępne do użytku przez PHP. Jeśli byś chciał zaimplementować w PHP zmodyfikowaną wersję stosu SPL-owego to nie zaimplementujesz poprawnego stosu. Dla porównania: Java collections framework jest zaimplementowane w Javie. System.Collections.* jest w C# zaimplementowane. STL jest zaimplementowane w C++. Czemu tutaj nie stosuję się podobnych praktyk?

Cytat
to tablica PHP jak najbardziej jest odpowiednią strukturą danych akurat dla stosu, gdyż jej implementacja w C stosowana w Zend Engine wyposażona jest nie tylko w haszowanie
No i po co mi hashowanie w stosie? (tzn w jego wewnętrznej implementacji).

Ja ze swojej strony już kończę w tym topiku póki co. Zaczynamy się po prostu droczyć ;-)


thek
Jakie droczymy? smile.gif Ot... Kulturalna wymiana zdań między ludźmi na poziomie. Mamy inne podejście, inne spojrzenie, ale nie lecimy z tekstami na poziomie rynsztoku czy też nie mieszamy rozmówcy z błotem. A co istotniejsze, używamy sensownych argumentów, nie zaś "argumentacji kobiecej", z całym szacunkiem dla pań. Miałem na myśli oczywiście stwierdzenie "bo tak!" biggrin.gif
erix
Cytat
nie zaś "argumentacji kobiecej", z całym szacunkiem dla pań. Miałem na myśli oczywiście stwierdzenie "bo tak!

Ale przecież nikogo tym nie urażasz, tylko stwierdzasz fakty. winksmiley.jpg

Cytat
Jeśli byś chciał zaimplementować w PHP zmodyfikowaną wersję stosu SPL-owego to nie zaimplementujesz poprawnego stosu.

Ok, a teraz inna para kaloszy - jak często miałbyś potrzebę implementowania zmodyfikowanej wersji? W 99.999999% zastosowań zwykłe przeciążenie tego stosu całkowicie spełniłoby swoje zadanie.
nasty
Cytat(erix @ 13.01.2010, 22:07:55 ) *
Ale przecież nikogo tym nie urażasz, tylko stwierdzasz fakty. winksmiley.jpg
Ok, a teraz inna para kaloszy - jak często miałbyś potrzebę implementowania zmodyfikowanej wersji? W 99.999999% zastosowań zwykłe przeciążenie tego stosu całkowicie spełniłoby swoje zadanie.

Kiedyś napisałem taki system regułek (którego czasem używam do dziś) oparty na kolejce cyklicznej w C#. Standardowa kolejka w .NETcie nie jest cykliczna.
Innym przykładem był projekt który kiedyś pisałem - sterownik do glukometrów (to nie był akademicki projekt tylko komercyjny - żeby nie było), i w nim części operacji translacji trzeba było stworzyć na stosie który był lekko zmodyfikowany.
Kolejny przykład to aktualny projekt gdzie mam system do którego dziennie dochodzi po 2-4 GB danych i potrzebna jest możliwość szybkiego przeszukiwania tych danych i porównywania ich z innym zestawem. Nie są one wszystkie w bazie dlatego musiałem zrobić to na drzewie.
W pracy inżynierskiej musiałem użyć drzewa składniowego.
Jeszcze?


----------------------------------------------------------
Cytat
Algorytmy ZAZWYCZAJ wymagają złożonych struktur danych, ale nie ZAWSZE.

Daj mi chociaż jeden przykład gdzie algorytm nie korzysta ze struktur danych! Podpowiedź: http://en.wikipedia.org/wiki/List_of_data_structures


... a miałem kończyć.
erix
Cytat
Innym przykładem był projekt który kiedyś pisałem - sterownik do glukometrów (to nie był akademicki projekt tylko komercyjny - żeby nie było), i w nim części operacji translacji trzeba było stworzyć na stosie który był lekko zmodyfikowany.
Kolejny przykład to aktualny projekt gdzie mam system do którego dziennie dochodzi po 2-4 GB danych i potrzebna jest możliwość szybkiego przeszukiwania tych danych i porównywania ich z innym zestawem. Nie są one wszystkie w bazie dlatego musiałem zrobić to na drzewie.

Ale przecież oczywiste, że przy takich zastosowaniach nie będzie używany język skryptowy... Przynajmniej wg mnie.

Nie ma co kryć, PHP jest bardziej wykorzystywany do aplikacji webowych, a nie sterowników, czy innych tego typu zastosowań. Skoro np. w średnim przedsiębiorstwie wystarcza jeden serwer, to po co cały klaster? Firma nie wykorzysta jego mocy przerobowych. winksmiley.jpg

Tak samo i tu - jak coś jest do wszystkiego = do niczego.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.