Раз уж никто ничего не пишет… :) На самом деле, хоть 1.4 вышла только сейчас, мы используем её в своих новых проектах ещё с ранней альфы. Надо отдать должное разработчикам и мейнтейнерам — даже альфа была стабильна, без претензий. И теперь, когда вышел релиз, можно смело просто обновиться, ведь всё давно адаптировано и написано с применением новых фишек (ну типа метода prefetch_related в ORM).
Да, я тоже с первых альфа версий сижу на 1.4, и то что некоторые уже давно сидят на 1.4 и знают что в ней нового тоже послужило причиной, по которой я тут не стал много расписывать.
Но коль Вы уже упомянули про django-piston, который можно считать «мертвым» (не считая несколько коммитов в последнее время, «ожили» наконец) — то согласитесь, неплохо, всего одна строка кода обратной несовместимости, и та относится к не задокументированному API, и по этому стабильность не гарантируется.
Насчет популярности Python — вчерашний опрос. ну а что такое Hacker News думаю все хабровчане знают. Да я понимаю что вы говорите о фреймворках а опрос о языках. Но все-же говорит о чем-то.
Общаюсь с американскими коллегами, так при словах Ruby on Rails они писаются кипятком.
При словах django у них мягко говоря непонимание на лице, и при открытии сайта — www.djangoproject.com/ их непонимание только усиливается.
Печально об этом читать, но приемущества фреймворка и возможности построения бесшовной инфраструктуры проекта на питоне это никак не меняет. В чем-то могу понять, Rails это четко прописанный workflow, Django со своей гибкостью и возможность интеграции с построенной на питоне инфраструктуре (fab, twisted и т.д.) более hackish что ли.
тогда прошу прощения, я не правильно понял тезис. вот только рельсы, в этом отношении, смотрятся ещё привлекательнее, за счёт более тесной интеграции с рубячей инфраструтурой (gems, rake и т.д.). :)
Мне тоже. Видимо рельсам в последнее время хорошую рекламу сделали ну и возник дефицит. Средний уровень окладов мало о чем говорит, ну наберут они junior-ов которые умеют по учебнику что-то там лабать под конкретный фреймворк и на здоровье.
У рынка труда есть более сложные процессы, вырос спрос — выросли предлагаемые оклады, народ стал переползать, потом предложение стабилизировалось, потом началась девальвация, платформа стала массовой, в нее вносится очень много нового, чтобы удовлетворить разношерстную аудиторию, она становится все более тяжелой, но по факту на ней уже осели аутсайдеры и реальные фанаты платформы/фреймворка/языка, а кто мог отправились на новые пашни.
Конечно же есть еще фактор поддержки и развития существующих решений, благодаря ему много говна до сих пор на плаву.
Ну да, уменьшится, но если подумать, интереснее всего перегретые рынки и новые технологии, не так ли? Ну хотя бы нам и по той причине, что мы сейчас обсуждаем новую версию джанго а не выход нового костыля к костылю у битрикса.
Ну я уже вижу порядочное количество качественно-новых решений в основном касающихся асинхронных фреймворков и из которых со временем скорее всего проклюнется что ни будь массовое.
Django реально выматывает своей политикой релизов. с одной стороны, они вроде бы тащат за собой кучу deprecated и legacy кода, с другой — всё равно ломают обратную совместимость в самых неожиданных местах.
Что за неожиданное место? На мой взгляд везде указано, где изменилось и может сломать. Ну кроме private API, который никогда и не документировался (тот же FilterSpec).
Поддерживаю. Тоже не понятно, чем Джанга не угодила в вопросах обратной совместимости. По моему, в Джанге этот вопрос решен лучше, чем нигде.
Во первых, — на протяжении нескольких релизов подряд вам будут сыпаться Deprecated Warnings с указанием где и что Вам нужно заменить. Так что «неожиданностью» это может стать только для ленивого.
Во вторых. Благодаря такой «скользящей» политики, код Джанги проектируется таким образом, чтобы обеспечить одновременную работу как старого, так и нового API. А это значит, что даже если вы «прошлепали» обновления, — и старое API было удалено, — то Вы всегда можете через monkey-patch подцепить к Джанге старое API, и не лопатить кучу кода, или, как минимум, получить неограниченное время для обновления.
Что и где они там «тащат», и чем это мешает «эволюции» проекта, мне более чем непонятно, и просто вызывает недоумение.
А то что в Джанго нет таких радикальных революций, — то это просто говорит о том, что его авторы имеют более острое «техническое чутье» и «дальновидность». Потому они не совершают радикальных ошибок, и не заставляют своих пользователей «страдать» обратно несовместимыми релизами. Ряд вещей, введенных в Рельсах3, использовалось уже годами в Джанге.
Согласен. Отмечу только, что такая политика в принципе тормозит развитие проекта, потому что каждое нововведение должно быть очень хорошо продумано и взвешено, поэтому не может пройти быстро.
Кое-какие недостатки в архитектуре починить, не ломая обратную совместимость, трудоёмко, либо нереально. Например, то что Django — монолитный фреймворк, не имеющий dependency.
Встречаем релиз Django 1.4