История популярности Django [закрыто]

какая последовательность событий сделала Django самой популярной веб-платформой Python .. и все же? Несмотря на то, что существует несколько других рамок.

Примечание: вопрос ни спорить, ни конфронтационный. Я просто попросил (объективную) "последовательность событий", которые приводят к его реальной популярности. Осознавая динамика принятия программного обеспечения, Я не собираюсь никого втягивать в споры по техническим вопросам превосходство.

9 ответов


Я думаю, что было несколько факторов, комбинация которых была больше, чем сумма их индивидуальных Весов.

один просто время: Django появился прямо, как первая большая волна рельсов шумиха нарастала, и поэтому он сразу был изображен как своего рода"ответ Python на рельсы". Это привело к немалому количеству глазных яблок на проекте почти с самого начала. Тот факт, что Адриан был на встрече "змей и рубинов" в Чикаго и получил часть в бок о бок говорит о Rails и Django сделал много для этого.

другой фактор заключается в том, что Django является и всегда был однопакетной установкой (ну, не совсем: вам все еще нужен адаптер базы данных, если вы не на Python 2.5+ и не используете SQLite, но достаточно близко). Альтернативы non-Zope, которые все сосредоточены на том, чтобы оставить выбор компонентов в руках разработчика, потребовали немного больше работы, чтобы добраться до точки, где вы могли бы сделать базовый учебник: вам нужно будет пойти охота на ORM, язык шаблонов и т. д., п. и установите и настройте их все. Хотя с годами это стало намного лучше, я думаю, что затянувшееся воспоминание об этом все еще имеет эффект.

и Джанго вышел из ворот с документацией, которая (если можно так выразиться) была намного выше обычного стандарта для проектов с открытым исходным кодом и со временем только улучшилась. Учебник, при всех его многочисленных недостатках, попадает на ряд высоких точек, которые делают Django полезным, и остальная часть документации всегда была хорошего качества, смешивая ссылки на API и важные "как" биты по мере необходимости. Это дает хороший опыт из коробки и помогает с кривой обучения после учебника (что-то, что всегда преследовало Zope).

Я также думаю, что есть мнение-правильно или неправильно-что, скажем, пилоны или Werkzeug действительно лучше для опытных разработчиков, которые уже знают свой путь вокруг WSGI и веб-экосистемы Python; тот факт, что они, как правило, являются сильным выбором для принятия ваших существующих любимых библиотек и подключения их друг к другу, является источником этого, я думаю, и, возможно, подталкивает некоторых новых людей к интегрированному подходу Django. Обратная сторона, конечно, заключается в том, что многие люди, которым было бы лучше узнать больше, прежде чем пытаться Django, не делают этого ;)

наконец, я думаю, что есть что-то сказать о том, как Django был продан, то есть сказать, что это действительно не продавался долгое время, или, по крайней мере, не в том смысле, что, скажем, рельсы продавались. До тех пор, пока Django 1.0 не приземлился, "маркетинговые" усилия в основном состояли из людей, которые вели блоги (и были некоторые заметные инциденты, когда людей просили немного смягчить его), переговоры в PyCon, а затем в основном просто улучшали структуру, создавая классные вещи с ней и позволяя результатам говорить за себя. Теперь, конечно, в мире после 1.0 у нас есть DSF и DjangoCon и бизнес-ориентированные консультанты проводят тренинги, много книг и все остальное, но это все еще довольно ново.

Я ожидаю, что будет отрицательная реакция, как и с Rails, и на самом деле я думаю, что это назревало некоторое время и уже началось. Но до сих пор я думаю, что факторы, которые я перечислил здесь, по крайней мере, являются основными за последовательным, устойчивым ростом популярности Django с момента его первоначального выпуска.


многие веб-фреймворки Python уже существовали, когда Django появился в 2005 году-действительно, шутка уже ходила, к тому времени, что Python-это "язык с большим количеством веб-фреймворков, чем ключевых слов" (и Гвидо отклонил мое предложение исправить это в Py3k, добавив много, много ключевых слов). Теперь "django" как таковой немного неоднозначен как поисковый термин (это также имя популярного гитариста, чья жизнь вдохновила фильм Вуди Аллена и т. д.), Тем не менее добавив "python" к поиску удалите эти другие значения, которые вы можете увидеть, например, в этот график как его относительная популярность изменилась по сравнению с другой классической веб-платформой Python, Zope. В основном устойчивый рост квартал за кварталом, с огромным удивительным скачком вверх в начале Q2 2008... который как раз совпадает с датой, в которую Google анонсировал App Engine (в таком случае невозможно доказать причинно-следственную связь, но совпадение, по крайней мере, интересно; -).

App Engine по существу правила из любой веб-платформы Python, которая глубоко зависит от пользовательских c-кодированных компонентов или внутренне требует "сильно реляционной" функциональности; из тех, которые хорошо работают с чистым кодом Python, Django, вероятно, является тем, что App Engine наиболее непосредственно и заметно поддерживает. Тем не менее, это был просто толчок, добавив к основной тенденции здорового роста Django. Объяснение этой тенденции (и действительно для команды App Engine и решения пользователей так хорошо поддерживать Django) должно заключаться в характеристиках это присуще самому Джанго.

Django иногда критикуют (в том числе... Искренне Ваш; -) за то, что он "слишком волшебный" или "слишком монолитный", по сравнению с альтернативами, такими как пилоны, Турбогерцы, Werkzeug и c, которые легче (esp. последнее, мое любимое; -), более прозрачное и позволяет легче заменять определенные компоненты (ORM, templating и c). Однако популярность Django говорит нам, что для большинства людей, заинтересованных в разработке серверных веб-сайтов и приложения, эти варианты дизайна Django воспринимаются положительно: Django рассматривается как очень богатая и хорошо интегрированная платформа (и у нее есть много дополнений и внесенных "плагинов", но это больше следствие, чем причина ее господства).

простота начала работы, автоматические "страницы администратора" и тому подобное-а также тот факт, что Django can будьте согнуты, чтобы сделать действительно богатые и сложные сайты / приложения и приспособить особые или уникальные требования, с большим умение и некоторая работа-это, вероятно, "особенности убийцы". Чтобы использовать Werkzeug в лучшем случае, вам нужно понять HTTP и WSGI, а также выбрать и интегрировать ваши любимые хранилища и шаблоны-разработчики веб-сайтов и приложений на основе Python (например, в некотором смысле пользователи Rails или пользователи еще более популярного PHP!- ) "голосуют со своим mindshare" за среду, в которой им не обязательно делать что-либо из этого, но могут в основном сосредоточиться на своей области применения. Я должен признать, что они вероятно, есть смысл; -).


Я могу придумать три причины популярности Джанго, только одна из которых была рассмотрена в других ответах, насколько я вижу:

  1. документация. Это хорошо структурированный, всеобъемлющий и доступный из ряда уровней.

  2. дизайн. Визуальный дизайн администратора, страниц ошибок и сайта проекта намного выше уровня дизайна большинства проектов с открытым исходным кодом.

  3. поддержка сообщества. Начиная с команды World Online, Django рано подобрал некоторых влиятельных евангелистов. Я не уверен, что вы можете заявить о важности сообщений в блогах, таких как Django Джеффа Крофта для не-разработчиков (я думаю, что это было название).


"мой личный фаворит, и я ожидаю, что он останется личным фаворитом в течение длительного времени, - это что-то под названием Django" - Guido Van Rossum на Floss weekly episode 11, в эфире 4 августа 2006 года

[Нажать Здесь] (слушайте последнюю треть интервью)

думаю, что это, возможно, помогло? или, по крайней мере, почему Google выбрал его для AppEngine?

конечно, сообщество django (включая разработчиков) делает много вещей правильно. Для пример (некоторый анализ по ссылкам):

улучшение модульности: [Нажать Здесь]

kick ass документация Нажмите Здесь

есть также что-то о сообществе, которое заставляет людей хотеть внести свой вклад, который я еще не положил палец на: Нажмите Здесь

конечно, все это приводит к тому, что Джанго является выбросом: Нажмите Здесь

нет никаких вопросов о Django популярность.


Я заметил, что он часто продвигался как эквивалент Ruby on Rails в Python. Он также имеет подключение к Google (Google хостов Django событий, и поддерживает его в своем движке приложений). Веб-фреймворк, одобренный Google, должен что-то стоить. :)


по крайней мере, для меня важным фактором было то, что Саймон Уиллисон и Адриан Головатый уже были известными игроками в сцене "веб-стандартов", а также Джефф Крофт позже.

Это была не только качественная печать, но и сделало Django очень веб-дружественным, с его уважением к HTTP, разметке и даже быстрому и грязному способу работы "отладка печати", к которому привыкли люди из PHP.

Я мог бы сильно ошибаться здесь, нет данных, чтобы подтвердить это, но я чувствую этот Django получил гораздо больше тяги от людей, пришедших из PHP, в отличие от Rails, которые получили много конверсий от Java/.Сеть.

Как уже отмечали другие, документация намного выше среднего. Лучшее, что я видел, насколько помню.


тот факт, что уже было несколько сайтов с большим объемом, использующих Django (т. е. lawrence.com etc...)- даже к 0.96 дням-помог мне убедить руководство, что это безопасно использовать. Такие вещи, как пилоны и Turbogears действительно не было.


Что касается популярности Django с течением времени (буквальное значение вашего названия вопроса, если не совсем ваш фактический вопрос), посмотрите на Google Тренд.