Nauka konkretnej platformy to duża inwestycja czasu, chciałbym by była przemyślna. Żadne porównania, ani marketingowe teksty z domowych stron projektów nie są tak pomocne, jak doświadczenia użytkowników, dlatego pytam was o zdanie. Jaki framwork? Czynniki istotne dla mnie (od najważniejszego):
- Flexible. Dowolność, nieograniczoność. Wszak w swoich projektach nie chcę tylko powielać powszechnych koncepcji, nie chcę, żeby f. mnie do tego zmuszał.
- Blisko kodu. Łączy się z powyższym. Mimo wszystko najbardziej komfortowo czuję się w czystym php, wiem, że będę mógł zrobić prawie wszystko. Chce, żeby można było łatwo dodawać własne funkcje, żeby zmiana tych bibliotecznych była możliwie prosta, nie wymagała mozolnego prześledzenia setek linii kodu (żeby moduły były dość niezależne), bo mam wrażenie, że to może się często zdarzać.
- Dokumentacja. Nie same tutoriale, ale (e-)książka, która w podręcznikowy sposób opisuje całą sprawę. Nie chce szukać helperów do zrobienia każdej rzeczy, z których będę kopiował kod nawet go nie rozumiejąc. Screencast jak zrobić silnik blogowy w 3 sekundy to nie jest podręcznik.
- Stroma krzywa uczenia się. Jestem niecierpliwy, chce szybko widzieć jak umiem raptownie developować.
- Automatyzacja. Zwłaszcza formularzy. Choć pewnie większość f. umie o wiele więcej.
Moimi kandydatami są w tej chwili Cake i Code Igniter. Ciacho, ze względu na support, community i mam przeczucie, że skrypt bakery dużo potrafi. Podpalacz, ze względu na prostotę, lekkość, szybkość, łatwość modyfikacji, niezależność modułów. Drugie pytanie, czy warto uczyć się jakiegoś CMS ? Czy przyspieszy to produkcję aplikacji zakładając znajomość frameworka? Pamiętając, że tu również chodzi o trochę niestandardowe rozwiązania (powiedzmy, że chodzi mi po głowie sieć społeczna, oczywiście z kilkoma ficzersami, których nie ma na gronie ani spinaczu ;o) ). Utrzymując warunki z powyższej listy, waham się między Joomlą i Drupalem. Joomla wydaje mi się silnikiem do portali, Drupal zdradza ogromne możliwości, ale też duże skomplikowanie i konieczność inwestycji sporej ilości czasu zanim stworzę przy jego pomocy stronę, które będzie wyglądała i działała dokładnie tak jak tego chcę, to prawie jak nauka nowego języka.