Почему популярность Python была такой внезапной? [закрыто]


84

Впервые Python появился в 1991 году, но до 2004 года он был несколько неизвестен, если в рейтинге TIOBE есть что-то значимое.

Что случилось? Что вызвало интерес к этому 13-летнему языку? Есть ли причина, по которой Python не считался реальным конкурентом Perl в течение первого десятилетия его существования? Есть ли причина, по которой Python не продолжал оставаться в относительной безвестности еще десять лет?

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

Кто-нибудь знает историю?


6
Исторически это довольно быстрый рост!
Макнейл

3
Этот вопрос был довольно интересным. +1
Тим Пост


2
Могли ли люди прийти на Python через Django, как некоторые приходили на Ruby через Rails?
Эндрю Гримм

1
Джанго. Это первый контекст, в котором я слышал, как люди говорили о том, чтобы на самом деле серьезно использовать его для разработки. До этого большая часть разговоров, которые я видел по этому поводу, была «почему никто не хочет использовать этот язык?» Или ... "Rails - это то, почему Ruby взлетел и почему Python никуда не денется". (Обратите внимание, что последний был в дни до Джанго).
scriptocalypse

Ответы:


74

Google

Google начал активно использовать Python и реинвестировать в развитие языка.

Но у него нет корпоративной поддержки или функции убийцы, которая могла бы объяснить внезапный рост актуальности.

Google является корпоративной поддержкой. Что касается возможностей, то Python - это кроссплатформенный быстрый ООП- язык 1 . Что не нравится? Это еще один отличный инструмент в наборе инструментов.


1. Быстро развиваться , не быстро исполнять. Написание скрипта общего назначения на Python намного быстрее, чем, скажем, на Java или C, несмотря на тот факт, что этот язык будет выполняться быстрее.


25
Гвидо ван Россум (Guido van Rossum), создатель Python, был нанят Google примерно в 2005 году, тогда же, когда они начали активно использовать Python. Это также обеспечило повышение.
Наян

6
Что вы подразумеваете под быстрым языком?
Пикер

Я помню, как люди говорили, что в качестве интерпретируемого языка он был слишком медленным по сравнению с Perl, но теперь компьютеры работают намного быстрее.
user2442

5
Скачок в использовании в 2004 году был, потому что Google начал активно использовать его в 2005 году?
Том Хотин - tackline

1
Я прочитал в книге «Googleplex» Стивена Леви, что первый поисковый робот Google был реализован (плохо) на Python Пейджем и Брином примерно в 1996 году. Он был переписан на C одним из их первых сотрудников, у которого было больше опыта работы в Интернете. развитие. Так что связь Python с Google восходит к их истокам.
dodgy_coder

24

Я начал использовать Python примерно в 2001 году, и более серьезно в 04/05, а более серьезно чуть позже. Я помню некоторые события, которые изменили отношение к Python и сделали его более жизнеспособным в качестве языка веб-разработки.

  • FCGI бывает, а потом WSGI. До этого вам приходилось запускать скрипты Python как обычный CGI, что было недостаточно быстро. mod_python далеко не так хорош, как mod_php, .NET CLR или Java-платформа JIT VM.

  • Известные университеты начали преподавать алгоритмы и другие классы, используя Python, и была опубликована и стала популярной книга типа «Учись мыслить как компьютерный ученый».

  • В начале десятилетия он стал основным языком реализации в Google, и это оказало влияние на то, насколько серьезно он был воспринят.

  • Видимые разработчики и разработчики стандартов, такие как Джо Грегорио и Марк Пилигрим, оба использовали Python для реализации прототипов протокола Atom. Затем Пилигрим написал DiveIntoPython, который помог многим людям выучить и освоить язык.

  • Ветвь 2.x стала стабильной и реализовала такие функции, как поддержка Unicode, хороший синтаксический анализ XML, новый сборщик мусора, генераторы и функциональные методы и т. Д.

  • Самым большим переломным моментом стал Django, который стал очень известным вместе с RubyOnRails в 2005 году. Философия Django отличалась от философии Rails, и многие разработчики сочли ее более подходящей для проектов.

Для языка, который не был поддержан крупной корпорацией (например, C # и Java), кривая принятия и разработки довольно типична и близка к другим языкам с открытым исходным кодом, таким как Ruby.

Django не оказал такого большого влияния на Python, как Rails на Ruby, так как он уже широко использовался учеными, математиками, квантами, учеными и т. Д.


10

Перестановки в индексе TIOBE в 2004 году сводятся к тому, что Google изменил свой поиск. У TIOBE мало что можно узнать - это полная чушь. Я не верю, что произошел внезапный скачок популярности Python. Конечно, не потому, что одна компания использует его для своих целей.


5
Если вы не доверяете TIOBE, вы можете попробовать действительно.com. Они демонстрируют устойчивый рост числа вакансий для Python с 2005 года
Роберт Харви

3
Ерунда или нет, есть много программистов, которые никогда не слышали о Python в 2003 году и слышали к концу 2005 года. Что необычно для языка во втором десятилетии.
Эрик Уилсон

@RobertHarvey: кажется, что тенденция в действительно общая для языков веб-разработки. Например. Действительно.com/jobtrends?q=python%2C+php%2C+ruby .
vartec

@vartec В действительности это выглядит как устойчивый рост (предположительно за счет роста Perl), а не внезапный скачок. / Интересно посмотреть, как сравнительно плохо Obejctive-C - предположительно, Apple имеет сотни тысяч программистов, работающих ниже минимальной заработной платы.
Том Хотин - tackline

6

Google был причиной. В Google есть только несколько языков: C ++, Java, Python, Javascript, PHP?

Корпоративная поддержка очень важна для успеха языка. Примеры:

  • C ++: AT & T Bell Labs
  • Ява: Солнце
  • C #: Microsoft
  • Python: Google

2
Вы действительно не должны публиковать ответ, похожий на уже существующий. Отредактируйте все, что, по вашему мнению, отсутствует.
Джош К

1
@ Джош, я голосовал за тебя, но чувствовал, что это не говорит всего, что я хотел сказать, однако я не был уверен, что людям понравится, если я изменю их ответы.
Грокус

6
Если это улучшает качество ответа, я думаю, должно быть в порядке. Функция там по причине.
Наян

2
Это идея сайта. ;)
Джош К

Я желаю Perl получить корпоративную резервную копию.
Чанки Патхак

1

Сообщество вокруг него достигло критической массы. Очень трудно преодолеть барьер популярности, и не удивительно, что это происходит очень внезапно.


-1

Есть некоторые аспекты Python, которые делают его, честно говоря, архаичным. Вещи, которые заставляли вас чувствовать, что вы кодировали на перфокартах на мэйнфрейме. Как наличие отступа для блоков кода. Такие мелочи привели к тому, что многие люди после очень краткого взгляда отвергли язык. Я подозреваю, что больно это очень плохо в первые дни. Особенно в толпе, которая годами жила в подобных средах и не хотела ничего, кроме как уйти от мэйнфрейма и выйти в Интернет.


4
Определение отступа - это религиозная дискуссия. Некоторые люди любят это, другие ненавидят, но невозможно привести убедительные аргументы за или против.
ДБКК

1
именно моя точка зрения. Те, кто ненавидел это, уходили от языка, как только они это осознавали, и многие из них говорили языку своим сверстникам. Я думаю, что усыновление обидно надолго. (TBH: это одна из причин, по которой я до сих пор
боюсь

4
На любом современном языке вы делаете отступ, чтобы в любом случае прояснить структуру. Таким образом, сброс скобок - очевидный шаг вперед. Это не имеет ничего общего с перфокартами, и я не думаю, что число программистов, имеющих опыт работы с ними, является значительным или было 13 лет назад. Более того, я надеюсь, что у большинства из них не было такой надуманной ассоциации, как у вас.
Maaartinus

@maaartinus: Это очевидный шаг вперед, вплоть до тех пор, пока вы не встретите выражение, слишком длинное, чтобы поместиться в одну строку без горизонтальной прокрутки. Тогда все быстро становится неловко.
Мейсон Уилер

1
@ Мейсон Уилер: лучший подход к переносу строк в вашем редакторе также помогает: stackoverflow.com/questions/759577/…
пересмотр
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.