3 заповеди перфекциониста
1. Перфекционист это от слова Perfect - "совершенО" а не от слова "совершенно".
2. Не переноси на завтра то что было нужно сделать вчера.
3. Не делай хрени, всегда старайся сделать хорошо, если стараешься сделать хорошо - все равно получится хрень, но она всё же будет немножечко лучше чем, если делать херню с самого начала, надеясь потом, когда нибудь, исправить...
Следующий этап Дома 2
Пока народ спорит будет ли шоу Mars One пользоваться популярностью и получится ли из этого полноценное реалити шоу, мне тут подумалось, а что если отправить на Марс всех участников этого нашего Дома 2. А что, свою профпригодность они уже доказали, те кто любят шоу - с удовольствием будут его смотреть, те кто не любят - тоже будут смотреть - ждать когда же космическая радиация и чужая среда обитания прикончит колонистов, к тому же, возвращение людей с Марса в планы не входит.
Только шоу придется переименовать... Будет называться не "Mars One" а "Марс - 2".
Затишье
Давненько я не писал ничего в блог. И дело даже не в том что в жизни не происходит ничего интересного. Наоборот, происходит и даже много. Просто, я пишу в блог именно когда пытаюсь найти смысл в том что делаю. Жизнь каждый день ставит новые интересные задачи то под вечер уже просто нет ни желания ни энергии писать в блог. К тому же, при отладке очередной программки случайно похерил содержимое флешь карточки на телефоне куда сохранял свои заметки, которые позже надеялся запостить на сайт.
Зачем нужны PHP фреймворки?
PHP фреймфорки сейчас в большом почёте. Если PHP программист освоил один из популярных фреймворков он уже не просто PHP программист а, например, Zend Developer или Yii Guru или CodeIgnitor Ninga.
По роду деятельности я часто сталкиваюсь с разного рода фреймворками, но до сих пор не нашел ни одного который захотелось бы использовать. CodeIgnitor - вырубает напрочь возможность использования GET переменных, Zend Framework - красивый, масштабируемый, но все-же это монстр, Yii - быстрый, но я не до конца понял его соглашения об именах и не люблю PDO - идея хороша, но реализация - кака. Наверно поэтому, создавая проекты с нуля я обычно использую свои старые наработки, в котрых использую подходы подсмотренные мной в других фреймворках, и которые постепенно выросли тоже в некое подобие фреймфорка, который отражает мой подход к тому как я вижу идеальный каркас приложения.
Да, фреймворки сильно упрощают работу в команде, ускоряют создание готового продукта, но есть и обратная сторона - продукт становится более тяжеловесным - большинство возможностей фреймворка никогда не будут использованы, работа программиста от созидания новых вещей сводится к тупому применению готовых паттернов для достижения результата. Формат url запросов сильно ограничивается выбранным фреймворком.
Необходимость создания PHP Фреймворков возникла потому, что сам PHP не накладывает каких-либо ограничений на структуру программы, а полная свобода никогда не была нужна основной массе людей, они хотят жестких рамок, четких правил, готовых инструкций. Чтобы прийдя на работу ничего не нужно было творить - тупо сиди и кодируй.
Именно из-за таких людей мне не нравятся многие фреймворки - фреймворк может быть идеален, но посмотрев на код, который на нем можно написать и который при этом оказывается работоспособным становится страшно, ведь если бы этот человек не освоил данный фреймворк, может быть его бы быстрее уволили и мир стал бы чуточку лучше... Столько говна создается используя хорошие фреймворки, что иногода думаешь, что лучше бы таких фреймворков не было. Фреймворк нужен для того чтобы можно было использовать программистов начального уровня для выполнения сложных проектов.
Это как боевые искусства - карате, ушу, айкидо - все это тоже фреймворки - наборы двигательных паттернов для людей желающих добиться какой-либо цели. Эти паттерны отшлифовывались веками и их легко можно передать от ученика мастеру не используя сложной литературы.
Правда вот беда, чтобы создать свой фреймворк ты должен сам стать таким мастером, чтобы доказать эффективность своего подхода, доказать способность передавать эту эффективность другим людям. Поэтому я сейчас на распутье - или развивать свой фреймворк или убить его об стену и перейти на какой нибудь другой. Но закапывать свой фреймворк как то не хочется - он прекрасно работает для меня и моей команды уже много лет. Всё что нужно это хорошая документация - а её создать бывает порой сложнее чем сам фреймворк.
Впрочем, поживём - увидим...