По мере развития личности человечьей возникает некий набор сводов и правил, которые она (личность) формирует в процессе этого самого развития на основе своего и чужого опыта, соцфакторов, воспитания и пр. Так и у меня, есть некие убеждения, про одно из которых я хочу вам рассказать.

Начиная с какого-то момента повышение количества не дает ожидаемого результата, и тогда нужно повышать качество. Переходить на другой уровень. Давать такой-же результат при меньших затратах. Примеры? мм.. ну, там, грузчик, пашет по 8часов в день. Ему денег мало, он решает работать по 12 часов. Денег стало больше. Он решает работать по 16 часов, денег стало еще больше. Но при этом вся личная жизнь фтопку, здоровье тудаже. Перешел обратно к 12-часовому раб.дню. Становится понятно, чтобы зарабатывать больше, и при этом жопу не рвать, нужно менять работу (или просить повышения — начальник грузчиков). Это и есть переход на другой уровень.

Этот принцип применим вообщем-то ко всему. Обычно проблему составляет сложность поиска перехода в другое качество…

Так, о чем я? а, да! Тем не менее, я до недавнего времени считал, что переход в другое качество в рамках веб-кодинга возможен только одним путем — наймом соответствующих спецов и делегирования на них части работы. А это единственное, что на данном этапе я не могу делегировать. Это связано как с большими фин.затратами, так и с трудностью объяснения чего мне надо от конкретного скрипта/куска кода. В результате получается, что кодинг — самое слабое звено цепи, которое просто не успевает за остальными составляющими проектов. И поэтому тормозится их количество, и, что более важно, ставятся на холд серьезные проекты.

Совсем недавно я разговаривал со своим знакомым, и он мне поведал, что начал кодить сайты посредством фреймворка cakePHP. Мне всегда казалось, что пользование фреймворком, как и любой CMS-подобной системой ограничивает фантазию веб-прогера, загоняя его в ограниченное количество функций и классов, существующих в рамках данного фреймворка (cms-ки). Но знакомый меня уверил, что гибкость не теряется, и при этом уходит большая часть рутины, оставляя место разработки логики движка. А так как я этого человека знал как хорошо разбирающегося в программерстве, я решил проверить его слова. К тому же он, сам того не подозревая, указал мне на возможный выход из тупика, который я описал выше.

Итак, что же такое framework cakePHP ? Грубо говоря, это материал, из которого можно построить любой сайт. Даже не так, это не материал, а инструмент. Вот цмс-ка — это материал. CMS — как конструктор ЛЕГО, деталек много, все разные и полезные, и собрать из них можно почти всё, почти так как надо. И получится почти то, что хочется. Хочешь Кармин, а тебе дают красный. Вроде бы — похоже. А уже не то…
Вообщем, после — идет серьезная доработка этого «почти» напильником, вылезают проблемы обновления двигов, различные дырки и прочая хрень.

Фреймворк — совсем другой подход. Это — как будто работая плотником, работал топором и пилой, а теперь — дали станок по обработке дерева. По-прежнему можно делать всё, что хочется, но при этом — намного быстрее. Конечно, есть издержки — более серьезная нагрузка на сервер, сложность перехода на новый вид программирования, некоторая зависимость от разработчиков cakePHP, а также малое количество материалов на русском языке. Но плюсы палюбому сильно перевешивают.

Теперь конкретно про печеньку (как любовно переделали на свой лад наши прогреры название этого фреймворка). В данный момент стабильна версия 1.1, и по ней уже есть перевод краткой документации на русский язык на сайте cake-php.ru, а также step-by-step руководства на сайте IBM. Это всё хорошо, но уже почти как год существует версия 1.2, пока еще в виде «Release Candidates», т.е. не окончательного финал-релиза, но он должен вот-вот появится. Проблема с 1.2 в том, что к ней очень мало материалов на русском языке. И я бы не рекомендовал начинать изучение cakePHP сразу с 1.2, если бы не значительные различия между этими версиями. И переход с 1.1 на 1.2 будет сильно болезненным. Посему — я скрепя зубами сел курить мануалы 1.2 на инглише с родного сайта.

По ходу разбирательства появилась идея создать блог/сайт с обсуждением данного фреймворка, т.к. сайт на русском только cake-php.ru, на котором админ уже как полгода ничего не делает, живет только форум. Как начну разбираться, продумаю эту возможность, будет ли время.

PS: я теперь житель Гондураса %)