Nienawidzę drupala. Inni też. Ty też powinieneś. Drupal ssie.

24

Muszę się uczyć na sesję, ale lepiej wylać z siebie nienawiść.

Drupal hate

Drupal… taki CMS… ogólnie to potężne strony na nim stoją w internecie, ale co z tego skoro:

  • Jest do dupy
  • Jest do dupy
  • Do dupy jest
  • Jest wolny jak cholera
  • Jest kiepsko napisany
  • Jest kiepsko przemyślany
  • Jest do dupy
  • Jego modyfikacja to katorga jeśli sam go nie stworzyłeś
  • Jego konfiguracja jest jak przykręcanie śrubki patykiem
  • Jest zaśmieconą tratwą napędzaną garnkiem z bigosem
  • Jest wolny jak mój stary komputer
  • Jest zachłanny
  • No i oczywiście to, czego nie można pominąć: jest do dupy

Polecę teraz jak pod kiecę z jakością na tym blogu, ale dawno się przecież nie żaliłem. Linusa jakoś szanują ludzie mimo ciętego języka, mnie też powinni.

W skrócie, dlaczego nienawidzę drupala:

Może i ładnie wygląda, kiedy następuje first-run… paski postępu rzucają bajerę w oczy, gdy coś tam konfiguruje się na serwerze przy jego instalacji… i jeszcze tak przyjazna nazwa, którą każdy informatyk zna.

Drupal jest ładny

I to jest koniec zalet. Serio!

Zrobiłem kilka stron na drupalu, do dzisiaj nie jestem w stanie dobrze ogarnąć systemu szablonowania na tym gównie, wychodzenie po za podstawowy pakiet wtyczek jest jakimś nieporozumieniem, bo nie dość, że burdel tworzy nam się w każdym menu, to jeszcze przy każdym włączeniu wtyczki łatwo zobaczyć server response 500, bo kliknięcie czegokolwiek w panelu administratora nie dość, że wpierdziela niespotykane ilości zasobów to jeszcze trwa to wszystko grube sekundy albo i minuty.

>> Bez cache możesz umierać

Drupal konfiguracja

Owszem… jest konfigurowalny… ale co z tego, jeżeli do utworzenia strony o własnym szablonie potrzebuję 3 wtyczek (które potrzebują następnych 15), każdą muszę zwiedzić 5 razy (a jeszcze wcześniej ręcznie pobrać!), by znaleźć w której co mam klikać, by osiągnąć zamierzony efekt.

Drupal i miliony zależności

Tak, postawiłem na nim swoją platformęmyślałem, że w końcu ujarzmię potwora, że w końcu będzie fajnie i dojdziemy kiedyś po porozumienia… ale nie. Minął ponad rok, a ja do dzisiaj wyświetlam tam informację „Wybacz, wersja beta strony, wciąż trwają prace”.

Drupal życiowy problem

Ile to nocy zarwałem, aby skonfigurować pieprzone ocenianie treści, które i tak obecnie mi nie działa z NIEWIADOMYCH PRZYCZYN. Dwa rodzaje treści, dwa te same ustawienia pól,… i c*uj, na jednym działa, na drugim nie. Magia!

Drupal... czasem nie działa

Tłumaczenie systemu to też jest ewenement… 5 różnych miejsc do tłumaczenia poszczególnych tekstów samego systemu, artykułów, jakichś swoich pól… a i tak nadal mimo tłumaczeń niektóre się nie pojawiają. Fajnie! Nawet w internecie tego inni nie rozkminili.

Drupal i lokalizacja

Ah… i jeszcze generowanie OGROMNEJ ILOŚCI ZBĘDNEGO KODU. Fajnie, że mogę sobie stylować listę, która jest upchana w 10 kontenerach (z czego 9 jest niepotrzebnych)… i jeszcze to nazewnictwo identyfikatorów i klas… rusz cokolwiek i cały Twój styl się traci, bo wszystko się zmieniło.

Drupal i ogrom kodu

Mógłbym tak wiązać w nieskończoność, na osobną pochwałę zasługuje system aktualizacji Core, które dopiero dzisiaj po dwóch miesiącach zachciało mi się aktualizować… wiesz… ściągnąć całą paczkę, przerwa techniczna, usunięcie wszystkiego z serwera, wrzucenie wszystkiego na nowo… potem jeszcze sprawdzać osobno pliki, czy muszę jakieś modyfikacje robić, do tego po drodze zgubi się jakiś istotny plik, w międzyczasie serwer error 500 rzuca, bo przecież bez całego core nie można wyświetlić strony o informacji technicznej…

(„pochwałę”, tzn. ironizuję)

A jak już całość zrobisz i jesteś szczęśliwy, to za 2 dni jest krytyczna poprawka i wszystko na nowo. 15 minut roboty przy wiatrach pod narty na drobnej stronce, zamiast po prostu serwować automatycznie patche.

Drupal... nie, wordpress!

Owszem… system „wszystko wypierdolić i wstawić na nowo” ma swoje zalety, szczególnie przy hacknięciu plików core… no ale jak często to się kurna zdarza?! Hijacker i tak na część plików, które pozostają na serwerze się przerzuci więc dlaczego do cholery do dzisiaj nie ma aktualizatora w tym cms’ie?!

Wiem… hehe… bo jest do dupy.

A co internet na to?

Teraz cytaty polecą, które mnie rozbawiły [po tłumaczeniu]:

Jest wolny, bez porządnej dokumentacji. To jak czytanie papieru toaletowego, nie ma na nim nic, wyłącznie gówno.

A nie mówiłem, że jest do dupy? Albo sam w sobie jest dupą.

Zajmuje godziny albo i dni ogarnięcie czegoś, co powinno być proste, jedno, dwa zadania do celu. Drupal skłania mnie do strzelenia sobie w głowę.

 

Usiłowałem zaktualizować Drupala 7 do 7.20. Zajęło mi to 2 godziny. Po skończeniu w różnych miejscach poznikała treść, bloki poprzemieszczały się, totalne gówno! A była to tylko aktualizacja zabezpieczeń, nie migracja do nowszej wersji!

 

[streszczając] Napisany jest w kodzie w stylu roku 2001: PHP4, nie ma mowy o OOP. Większość modułów nie jest aktualizowana przez miesiące albo lata, łatwiej i celniej napisać własny. W części opracowany przez idiotów, którzy nazywają siebie developerami i do dzisiaj nie rozumieją OOP, SQL… Drupala lubią i polecają tylko fanatycy.

 

By dostać funkcjonalność X potrzebujesz modułu, który posiada XX zależności, które posiadają XXX zależności… Teraz masz 251 modułów i nadal nie masz tego, czego ci potrzeba.

A przy tym parsowanie PHP zjada o 200MB więcej RAMu… i wiesz co? Error 500!

Aha, jeszcze poczytałem o tym, że developerzy drupala to dość zamknięte, egoistyczne grono… cóż.

Drupal developers

Więc mam rację?

Proszę… weźmy zróbmy rewolucję, wypierdzielmy z naszych serwerów to cholerstwo ciągnące swoje początkowe klęski projektowe za sobą raz na zawsze. Niech umrze albo niech wystartuje od zera… chociaż lepiej nie.

Jakbym mógł się sklonować, to napisałbym CMS tak prosty, tak logicznie przyjemny i tak mocno konfigurowalny przy tym zachowując przyjaźń z końcowym użytkownikiem, że mógłby popularnościowo pobić drupala, joomle a nawet wordpress’a razem wzięte… przy tym dając od razu możliwości stawiania statycznie banalnych pojedynczych stron czy niewielkim wkładem potężne portale. Mam wizję, nie mam życia na to… taki linux w świecie www.

Aktualizacja 2013-06-26 20:00

Wstawiłem ten artykuł na strims.pl, ale w 30 minut zebrał UV:DV 0:4 i kilka hejtów, więc postanowiłem go usunąć, bo i przy okazji zostałem wrzucony do worka nieogarniaczy świata, trudno. Wywiązała się jeszcze dyskusja tutaj, gdzie tłumaczę kilka rzeczy tego całego stanu.

Zostawiłbym zadanie czytającym (bo pewnie niewielu z nich miało do czynienia z D.) ze stoperem, założę się, że kilka moich „bólów dupy” by jednak się sprawdziło. A, „pióro autora” pewnie też tutaj ukierunkowało opinię ;-).

Aktualizacja 2013-07-04 17:30

Heee… wytropili mnie zwolennicy Drupala z 3drupal.pl [mirror: archive.org]. Czekam na hejty :-).

Aktualizacja 2016-10-27

Tak się składa, że na początku roku moja firma wzięła projekt stworzenia nowego portalu dla pewnej instytucji. Rozpoznano temat i zdecydowano się w końcu na Drupala (chociaż już wtedy kolegów ostrzegałem powołując się na doświadczenia z tego postu). Niestety w starciu wersji 8 vs 7 ta nowsza, obiecująca, przegrała ze względu na młodość.

Po miesiącu-dwóch developmentu zaczęło okazywać się, że Dupal jednak nie jest tak prosty, „by wrzucić pluginy i dostosować”, chociaż najwięcej oferował out-of-box dla projektu, a na tym etapie developmentu każdy już twierdzi, że lepiej byłoby wziąć dowolny framework i napisać aplikację od zera nie użerając się ze wszystkimi bolączkami systemu. Szczerze powiedziawszy myślę, że przy tej ilości wkładanych zasobów z opcją „od zera”, już by dawno kończyli.

Nie mam pełnego obrazu z jakimi problemami się mierzono, z tego co pamiętam:

  • Problem z tłumaczeniami – chyba nawet ten sam ;-)
  • Bodajże dla jakiejś prostej kontrolki dropdown/select słownikowanej Dupal wykonywał setki/tysiąc zapytań do bazy odpytując o zupełnie zbędne rzeczy
  • Notorycznie wyłapywane są drobne problemy systemu, których nijak nie da się ruszyć / ciężko (nie wiem czy hackują core)
  • Wydajność wydajność wydajność…
  • Zasłyszałem nieraz nielogiczność/nieintuicyjność Drupala/pluginów
  • … tbc jak mi się przypomni / dopytam o konkrety

Może kogoś przekonam do napisania artykułu – są chętni na kontynuację? Porzucamy się gównem jak za dawnych czasów?

Pozdro600 fanatycy, nauczcie się programować.

Łups, 3drupal już nie istnieje… i na co były te metafory o klifach w starciu z dżunglą…

Tagi: , , , , , , , , , ,

Komentarze 24 komentarze

Strona białego domu jest na drupalu. To dobry system do odpowiednich zastosować i zarządzany i obsługiwany przez odpowiedniego developera który jest zaznajomiony z tym systemem nie powinien byc problemem. Takie systemy CMS na uczelni u nas są traktowane jak systemy dla dzieci.

Każdy może mieć inne zdanie.
Pozdrawiam
ps. wykładam języki hipertekstowe i znam się na CMS’ach wiem co mówie.

Dexterxx® nie chce mi się nawet pisać, komentować a tym bardziej wyciągać z błędnego myślenia. Sam piszesz, że postawiłeś kilka stron i nie możesz ogarnąć systemu szablonowania , to tylko phpTemplates , co z Ciebie za programista. Pietruch czy to systemy dla dzieci ? Jak widzisz nawet nie wszystkie osoby uważające się za programistów, developerów radzą sobie z tym systemem (nikt nigdy nie pisał że to prosty system dla początkujących). A kto sobie radzi?, profesjonaliści. W polsce jest kilka osób, które się na tym znają między innymi Droptica , osoby z 3drupal.pl i parę innych których można łatwo znaleźć na drupal.pl.

Widocznie na mój sposób postrzegania świata, swój sposób logicznego myślenia i wiedzy dotychczas zdobytej w dziedzinie… stwierdzam (subiektywnie!) że system szablonowania w drupalu jest po prostu zły.

Mógłbym trochę komicznie za język pociągnąć, ale skoro w polsce jest kilka osób (tylko!) to chyba wniosek może być prosty, że albo system jest zły albo zbyt skomplikowany dla niektórych.

Nie chcę się kłócić tutaj, jednym jedno odpowiada, drugim coś innego. IMHO drupal jest fe.

Niestety zgadzam się z autorem tekstu. Nietety, bo jestem zmuszony pracować na tym szicie i rzeźbić bardzo duży system razem z kilkoma innymi dewelami. Wcześniej nigdy tyle nie przeklinaliśmy… Będziemi siwi do końca roku…

Gorąco odradzam.

A może panowie, trzeba obejrzeć kilka screencastów i popatrzeć w kod? A nie, czekaj, co ty w kod będziesz zaglądał i analizował… przecież to CMS – samo powinno działać.

Spoko, polecam kupić farbę do włosów, żeby nie być siwym, jeżeli ma się problem z ogarnięciem jakiegoś systemu.

Drupal owszem ma swoje złe strony, ale zdecydowanie dąży w coraz to lepszym kierunku, a jego obecna architektura jest ELASTYCZNA i wyróżnia go na tle innych cmsów.

Panowie podejdę do tematu na poważnie i naukowo. Zachęcam do zapoznania się z tym materiałem http://www.youtube.com/watch?v=fnRwfjMqKM8

Później możemy rozmawiać na temat tego co jest złożone, a co nie. Po za tym wydaje się, że kolega Dexterxx nie próbował kontaktować się ze społecznością celem rozwiązania swoich problemów, a to właśnie społeczność stanowi ogromną siłę tego projektu.

Owszem, nie kontaktowałem się… jestem wyznawcą samodzielnego rozwiązywania problemów, niż pytać ludzi o rzeczy, które mogą być zbyt dużym banałem.

Widocznie na papierze toaletowym nie znalazłem rozwiązań moich problemów :-)

Włączam prezentację, zawsze jest czas się nawrócić (który to już raz).

Cytuję „Jakbym mógł się sklonować, to napisałbym CMS tak prosty, tak logicznie przyjemny i tak mocno konfigurowalny przy tym zachowując przyjaźń z końcowym użytkownikiem, że mógłby popularnościowo pobić drupala, joomle a nawet wordpress’a razem wzięte”, allright, chyba chodzi o kasę i to że trzeba pracować żeby utrzymać się i nie ma czasu napisać Drupal killer.

Wtedy polecam http://www.kickstarter.com/, zrób pitch, określ budżet i jeśli ludzie to polubią, dadzą ci kasę na stworzenie DrupaloWordpressJoomla killera. Ja też dam :)

Na strims wstępnie ideę pomysłu tłumaczyłem, ale już przy pisaniu tamtych wypoci stwierdziłem, że wizja bez świadomych ograniczeń jest nierealna do zrealizowania ;-).

Z resztą co ja sam… drużynę developerów potrzebuję aby się wspólnie motywować, rozwijać wzajemnie, dostrzegać to, czego samemu się nie potrafi… wtedy można tworzyć!

Kickstarter fajna opcja, ale za słabe zapędy i umiejętności biznesowe mam by wyceniać projekt i go organizować :-(.

A ja mogę się wypowiedzieć chyba z dwóch stron. Owszem – Drupal jest hardkorowy, szczególnie kiedy nie ma porządnego mentora, który ma doświadczenie i wiedzę. Wtedy przygody z Drupalem wyglądają tak jak to jest opisane w tym artykule. Np. ręczne ściąganie wtyczek – teraz do tego wykorzystujemy w firmie drush’a, ale wcześniej też robiliśmy na pałę. Prędkość Drupala też idzie podkręcić tylko i wyłącznie poprzez keszowanie wszystko co tylko możliwe. No i jeszcze to, że wszystko przechowuje w bazie – łącznie z configami i … error logiem bazy danych T_T. Ale na takie rzeczy też są rozwiązania. Moim zdaniem do prostych i średnio zaawansowanych projektów Drupal jest całkiem ok. Natomiast przy dużych projektach, gdzie w grę wchodzi tona logiki biznesowej, relacji i dynamic contentu … raczej zdecydowałbym się na Yii, Zenda czy Symphony. Można wtedy ogarnąć całą logikę i działanie aplikacji z poziomu kodu. Inaczej mówiąc – pomimo, że sam nie zaliczam się do zwolenników tego systemu, to jednak trzeba przyznać że ma on swoje zalety i wady.

A ja odpowiem w taki sposób:

1) Na początku Drupal nie zrobił na mnie super wrażenia, bo ta mnogość opcji, mnogość modułów, które w sumie częściowo robią to samo, trzeba się naklikać, a rozwiązanie problemu można znaleźć, albo nie.

2) Bez sensownego mentora i PHP nie jest się człowiek w stanie sensownie nauczyć. Widziałam przykłady kodów osób zapraszanych na spotkania rekrutacyjne. Własny CMS w jednym pliku php? Aplikacje „OOP”, gdzie w widokach wywoływane są zapytania do bazy? Ten sam blok kodu w 15 miejscach? Uwierzcie że jest to możliwe i to wśród osób, które kilka lat podobno w branży robiły! :)

3) Po kilku latach pracy z Drupalem nie zamieniłabym go na nic innego. WordPress i jego system tworzenia skórek odrzucił mnie mimo kilku dobrych podejść. Do Joomli serca nigdy nie miałam. A postawienie portalu przetwarzającego pi razy oko 100 mln rekordów zajęło mojej ekpie… 1 miesiąc (jeśli chodzi o logikę biznesową + wdrożenie pierwotnego wyglądu).

4) Są dalej sytuacje, gdzie mam ochotę rwać włosy z głowy (przeważnie dotyczą dynamicznej modyfikacji widoków). Natomiast są to zazwyczaj wodotryski i dopieszczanie. Tak, czasem jestem perfekcjonistką :)

5) System hooków to cud, miód. Serio.

6) Do tej pory wkurza mnie mieszanie obiektów z tablicami. Na szczęście od czego jest dpm().

7) Theme developer i możliwość dowolnej modyfikacji każdego elementu przez funkcje theme’ujące daje powera nad powery. Fakt, chwilę trzeba poświęcić, coby się ogarnąć, ale efekt przechodzi wszelkie oczekiwania.
I nie zabijamy kotów :)

8) Społeczność, zwłaszcza jak się już ją pozna, jest świetna. Tu coś podrzuci, tam coś podrzuci, tu odpowie nawet na pozornie głupie pytanie (zwłaszcza jeśli widać, że ktoś się chce nauczyć ;)), tam spotka się od czasu do czasu przy piwie :)

9) Pieniądze… jeśli robi się strony dla kogoś ceny za developing Drupala zaczynają się tam, gdzie kończą się wordpressowe ;) A mając nieco doświadczenia i klientów MŚP czas developingu wcale nie musi być dłuższy.

10) Zakończmy kobiecym akcentem – Drupal jest fajny. Bo tak :)

AAarrrrrhhhhh…. byle ta ósemka dobra wyszła, może jeszcze w życiu sam shejtuję ten artykuł… ;)

Świetny komentarz, dzięki.

Milena, Wielkie brawa za komentarz. Ja już nie miałem sił redagowanie wyczerpującej odpowiedzi

@cleancode
Powiem szczerze, że też nie chodziło mi o to, żeby przekonywać kogoś do mojej racji. Czasem jest tak, że nie ma wielkiego uczucia ani od pierwszego wejrzenia, ani później z przyzwyczajenia ;) Bywa, nie każdy może być drupalowcem, tak jak nie każdy stworzy udany związek z wordpressem.

O ile naprawdę jestem teraz zadowolona z Drupala, o tyle jestem w stanie zrozumieć Dextera – czasem rąbanie się z niespójnymi strukturami danych czy ograniczeniami niektórych modułów jest frustrujące. Dopiero przy Drupciu nauczyłam się kląć! I mimo tego nadal nie wyobrażam sobie developowania w czymś innym :)

Prawdą jest, że wymaga cierpliwości i nauki. Prawdą jest, że jego ergonomia i użyteczność kuleje nadal, mimo że skok z 6 na 7 jest spory. Truizm, ale to jak ze związkiem – trzeba się nauczyć, że czasem skarpetki są rzucone koło łóżka, a z drugiej strony że sklep z ciuchami jest bardziej interesujący niż oglądanie meczu piłki nożnej.
Jak się zaakceptuje pewne wady/przyzwyczai się do nich to dopiero wtedy można się cieszyć z zalet.

A że Dextera poniosło w hejterskim kierunku… No cóż, przynajmniej spotkaliśmy się i poza strefą Drupala! :D

No właśnie. Cieszy mnie ten post szczególnie bo chyba po raz pierwszy widać, że Nasz polska drupalowa scena stanowi swoistego rodzaju fenomen, który co raz lepiej funkcjonuje. Widać to chociażby po reakcji na tego typu zaczepki.

Nie jestem do końca przekonany o tym czy gdyby Dex pojechał tak z WordPressem reakcja jego społeczności byłaby podobna. W każdym razie Dex ma wyjątkową możliwość kolekcji cennych komentarzy :D Bo dawno po za Drupalowym podwórkiem nie udało nam się wymieniać zdania na temat Naszego Kropla.

Trochę racji w artykule jest :)
Niemniej, ja od jakiegoś czasu bawię się Drupalem. Po jakotakim poznaniu Joomla! czas przyszedł na D. Przeraziło mnie trochę robienie szablonu, ale w miarę szybko to ogarnąłem. Opcji multum, czasami za sużo. Fakt.
Ale nie zgodzę się, że nie jest to system do udzwignięcia, a tym bardziej nie chce mi się wierzyć, aby osoba stawiająca parę projektów w tym systemie nadal ma z nim problemy… o.O Bez jaj!
Ciekawostką jest też inna rzecz – jak wiele w necie można znaleźć przykłądów zastosowania HTML5 w Drupalu (7). Zerknijcie na nie. Nie mają nic wspólnego z HTMLem piątym. Skro tacy web_twórcy pracują na Drupalu, którzy nie widzą różnicy między HTML4 a 5, to nie dziwię się, że i z Drupalem sobie nie radzą.
A poza tym, wiele można poczytać, że siłą Drupala jest Views… Może i jest, ale w przeważającej liczbie przypadków wcale nie jest on potrzebny…

[…] roku temu popełniłem wpis o tym, jak bardzo nienawidzę Drupala. Doigrał się w końcu, bo właśnie pod wpływem kolejnego spamu, którego nie mogłem usuwać, […]

Jak dla mnie WordPress>Drupal>Joomla.
Drupal jest dobry tylko ze względu na multum opcji konfiguracyjnych „out of the box” ale niedoświadczonych userów może to przygniatać. Ogólnie pewne ustawienia są „pochowane” nielogicznie. Dlatego wszystkim polecam wordpressa, a dupala zostawiam tylko dla nielicznych zastosowań.

Ostatnio używam tylko WP głównie ze względu na prostotę. Dla kogoś kto traktuje tego typu CMS jako hobby szkoda czasu na walkę z ustawieniami.

Pozwoliłem sobie zaktualizować artykuł o doświadczenia z pracy.

Spoko, dzięki za aktualizację, pośmiałem się :)

Drupal 8.1.9 juz drugą strona instalacji pokazuje błąd. Zrezygnować? Wracam i ustawiam angielski. Wtedy rusza. Ale po kiego dają mozliwość wyboru jezyka, skoro to jeszcze nie działa?????
Edytuje pierwszą strone na szablonie Bartik. No dobrze – tytuł nowego artykułu pokazuje sie, ale treść – tekst i image – niestety nie. Po godzinie grzebania w rozsianych po całym edytorze ustawieniach rezygnuje. Jezeli juz takie oczywiste funkcje nie działają, po co inwestować wiecej czasu w to g…o???

Jak to w Polskim Internecie, dla niemyślących jest wszystko trudne – framework. Zanim zaczniesz korzystać z systemu, należy się go zrozumieć.

Zaczynam dopiero zabawę z Drupalem. Jak dla mnie sporym minusem jest dodawanie obrazków. W standardzie powinna być jakaś biblioteka mediów i opcja przeglądania, usuwania czy ładowania z niej zdjęć np. do artykułów. Dodatkowo powinno się dać przesyłać kilka plików jednocześnie (multiupload). Są niby wtyczki…ale wgrałem i się okazało, że jedna umożliwia atach file from serwer, a inna multiupload. Jednak nie mogę używać dwóch na raz. W WordPresie biorę Biblioteka > Media i mam wszystko. Biore artykuł > dodaj fote i wybieram albo z komputera albo z biblioteki mediaów. A w Drupalu nie ma tak.

Skomentuj