Для меня основная масса php программистов это:
1) отсуствие scm
2) всякое говно на уровне базы данных (отсуствие индексов, идиотские названия всего и вся)
3) херовый код, который мы просто выкинули, потому что люди кроме книг по php ничего никогда в своей жизни не читали и не видели (я говорю о тонне книг на тему разработки ПО)
Причем тут свобода? Вы вообще работали в команде? Руководили группой людей?
Есть конаны, которые позволяют делать хорошо, унифицированно в тех местах, где это нужно. Простой пример — нейминг колонок в бд, когда существуют некие правила — такой код можно отдать другому человеку и он с легкостью разберется в нем. В противном случае получается, что каждый городит свой велосипед в задачах, где это соверешенно ненужно. Кто-то называет колонку id как nid, vid или primary_id, а почему нельзя идентификатор объекта называть просто и понятно — id?
У рельс один простой паттерн — ActiveRecord, сами понимаете, он отличается от UnitOfWork.
dm -> datamapper.org/ (http://rubydoc.info/gems/datamapper2/0.0.1/DataMapper/UnitOfWork)
Ниша one-click-cms'очек давно забита php и это нормально, другой вопрос, что при реквест кастомной фичи от заказчика начинается ад в глаза php программистов. Я собственно говоря имел опыт, когда рельсовиков пригласили взамен php, потому что поддерживать drupal ни у кого уже не было сил :)
Да и слава богу, пусть дешевые php программисты, не понимающие вообще ничего, не использующие ar или шаблонизатор дальше клепают сайты визитки. По сути все идет как надо :)
И дальше то что? Ок, php заняло нишу кмс-ок, которые расширяются через жопу и половина кода держат бек-ворд-компобилити до php4, дальше то что? Теперь и мне писать под друпал, от которого сами кор-девелоперы ноют и плачут?
spreecommerce.com/
В нее недавно влили достаточно денег, чтобы она стала очень крутой :) Я уже молчу о том, что система расширений рвет в жопу магенту.
А теперь представте — все стараются писать хорошо с самого начала, а не только в биг-тимах.
1) отсуствие scm
2) всякое говно на уровне базы данных (отсуствие индексов, идиотские названия всего и вся)
3) херовый код, который мы просто выкинули, потому что люди кроме книг по php ничего никогда в своей жизни не читали и не видели (я говорю о тонне книг на тему разработки ПО)
Есть конаны, которые позволяют делать хорошо, унифицированно в тех местах, где это нужно. Простой пример — нейминг колонок в бд, когда существуют некие правила — такой код можно отдать другому человеку и он с легкостью разберется в нем. В противном случае получается, что каждый городит свой велосипед в задачах, где это соверешенно ненужно. Кто-то называет колонку id как nid, vid или primary_id, а почему нельзя идентификатор объекта называть просто и понятно — id?
dm -> datamapper.org/ (http://rubydoc.info/gems/datamapper2/0.0.1/DataMapper/UnitOfWork)
В нее недавно влили достаточно денег, чтобы она стала очень крутой :) Я уже молчу о том, что система расширений рвет в жопу магенту.
Низкая цена — да. Вы представитель бизнеса?