Warum war Pythons Popularität so plötzlich? [geschlossen]

84

Python erschien zuerst 1991, aber es war bis 2004 etwas unbekannt, ob das TIOBE-Ranking irgendetwas aussagekräftiges quantifiziert.

Was ist passiert? Was hat das Interesse an dieser 13-jährigen Sprache geweckt? Gibt es einen Grund, warum Python in den ersten zehn Jahren seines Bestehens nicht als echter Konkurrent von Perl galt? Gibt es einen Grund, warum Python noch zehn Jahre lang nicht relativ dunkel war?

Ich persönlich denke, dass Python eine sehr schöne Sprache ist und ich bin froh, dass ich nicht die einzige bin. Aber es gibt keine Unterstützung für Unternehmen oder ein Killer-Feature, das einen plötzlichen Anstieg der Relevanz erklären würde.

Kennt jemand die Geschichte?

Eric Wilson
quelle
6
Historisch gesehen ist das ein ziemlich schneller Aufstieg!
Macneil
3
Diese Frage war sehr interessant. +1
Tim Post
1
Der Aufsatz The Python Paradox ist aus dem Jahr 2004.
Stesch
2
Könnten Leute über Django nach Python gekommen sein, wie manche über Rails nach Ruby gekommen sind?
Andrew Grimm
1
Django. Dies ist der erste Kontext, in dem ich hörte, wie Leute davon sprachen, ihn tatsächlich ernsthaft für die Entwicklung zu nutzen. Vorher hatte ich meistens darüber gesprochen: "Warum will niemand diese Sprache benutzen?" Oder ... "Rails ist der Grund, warum Ruby abgehauen ist und warum Python nirgendwohin führt." (Beachten Sie, dass der letzte Tag vor Django war).
scriptocalypse

Antworten:

74

Google

Google begann, Python intensiv zu nutzen und investierte erneut in die Entwicklung der Sprache.

Aber es gibt keine Unterstützung für Unternehmen oder ein Killer-Feature, das einen plötzlichen Anstieg der Relevanz erklären würde.

Google ist die Unternehmensunterstützung. Was bietet Python eine OOP interpretiert ist Cross - Plattform schnell 1 Sprache. Was ist nicht zu mögen? Es ist ein weiteres hervorragendes Werkzeug in der Toolbox.


1. Schnell zu entwickeln , nicht schnell auszuführen. Das Schreiben eines Allzweck-Skripts in Python ist viel schneller als in Java oder C, wobei die Tatsache außer Acht gelassen wird, dass diese Sprachen schneller ausgeführt werden.

Josh K
quelle
25
Guido van Rossum, Erfinder von Python, wurde um 2005 von Google engagiert, als sie anfingen, Python intensiv zu verwenden. Dies sorgte auch für einen Schub.
Nayan
6
Was meinst du mit schneller Sprache?
Peaker
Ich erinnere mich, dass Leute sagten, dass es als interpretierte Sprache im Vergleich zu Perl zu langsam war, aber jetzt sind Computer viel schneller.
user2442
5
Der Anstieg der Nutzung im Jahr 2004 war darauf zurückzuführen, dass Google ihn seit 2005 intensiv nutzt.
Tom Hawtin - Tackline
1
Ich habe in dem Buch 'Googleplex' von Steven Levy gelesen, dass Googles erster Webcrawler um 1996 in Python von Page und Brin (schlecht) implementiert wurde. Er wurde von einem ihrer ersten Mitarbeiter, der mehr Erfahrung im Web hatte, in C umgeschrieben Entwicklung. Pythons Verbindung zu Google geht also auf ihre Anfänge zurück.
dodgy_coder
24

Ich habe um 2001 angefangen, Python zu verwenden, und zwar im 04/05 und etwas später. Ich kann mich an einige Ereignisse erinnern, die die Einstellung zu Python verändert und es als Webentwicklungssprache praktikabler gemacht haben.

  • FCGI passieren und dann WSGI. Zuvor mussten Sie Python-Skripte als gewöhnliches CGI ausführen, was nicht schnell genug war. mod_python war bei weitem nicht so gut wie mod_php, die .NET CLR oder die Java-Plattform JIT VM.

  • Prominente Universitäten fingen an, Algorithmus und andere Klassen mit Python zu unterrichten, und Bücher wie "Lerne, wie ein Informatiker zu denken" wurden veröffentlicht und wurden populär.

  • Es wurde zu Beginn des Jahrzehnts eine erstklassige Implementierungssprache bei Google, was sich auf die Ernsthaftigkeit auswirkte.

  • Sichtbare Entwickler und Standardentwickler wie Joe Gregorio und Mark Pilgrim verwendeten beide Python, um die Prototypen des Atom-Protokolls zu implementieren. Pilgrim schrieb dann DiveIntoPython, das vielen Menschen half, die Sprache zu lernen und zu erlernen.

  • Der 2.x-Zweig wurde stabil und implementierte Funktionen wie Unicode-Unterstützung, gutes XML-Parsing, einen neuen Garbage Collector, Generatoren und funktionale Methoden usw.

  • Der größte Wendepunkt war Django - das zusammen mit RubyOnRails um 2005 sehr berühmt wurde. Die Django-Philosophie unterschied sich von der von Rails, und viele Entwickler empfanden es als geeigneter für Projekte.

Für eine Sprache, die nicht von einem großen Unternehmen (wie C # und Java) unterstützt wurde, ist die Einführungs- und Entwicklungskurve ziemlich typisch und ähnelt anderen Open-Source-Sprachen wie Ruby.

Django hatte weniger Einfluss auf Python als Rails auf Ruby, da es bereits viel von Wissenschaftlern, Mathematikern, Quants, Akademikern usw. verwendet wurde.

nikcub
quelle
10

Die Umbildung im TIOBE-Index im Jahr 2004 ist darauf zurückzuführen, dass Google seine Suche geändert hat. Von TIOBE kann man wirklich nicht viel lernen - es ist völliger Unsinn. Ich glaube nicht, dass die Popularität von Python plötzlich angestiegen ist. Sicherlich nicht, weil eine Firma es für einige ihrer Sachen intern verwendet.

Tom Hawtin - Tackline
quelle
5
Wenn Sie TIOBE nicht vertrauen, können Sie indeed.com ausprobieren . Sie zeigen ein stetiges Wachstum der Stellenausschreibungen für Python seit 2005
Robert Harvey
3
Unsinn oder nicht, es gibt viele Programmierer, die 2003 noch nie von Python gehört haben und die es bis Ende 2005 hatten. Was für eine Sprache in ihrem zweiten Jahrzehnt ungewöhnlich ist.
Eric Wilson
@RobertHarvey: Scheint, dass der Trend in der Tat generisch für Web-Entwickler-Sprachen ist. Z.B. tatsächlich.com/jobtrends?q=python%2C+php%2C+ruby .
Vartec
@vartec In der Tat sieht es nach stetigem Wachstum aus (vermutlich auf Kosten von Perl), anstatt nach einem plötzlichen Sprung. / Interessant zu sehen, wie relativ schlecht Obejctive-C - vermutlich Apple hat Hunderttausende von Programmierern, die unter dem Mindestlohn arbeiten.
Tom Hawtin - Tackline
6

Google war der Grund. Nur eine Handvoll Sprachen sind bei Google vorgeschrieben: C ++, Java, Python, Javascript, PHP?

Unternehmensunterstützung ist sehr wichtig für den Erfolg einer Sprache. Beispiele:

  • C ++: AT & T Bell Labs
  • Java: Sonne
  • C #: Microsoft
  • Python: Google
grokus
quelle
2
Sie sollten wirklich keine Antwort posten, die einer vorhandenen so ähnlich ist. Bearbeiten Sie alles, was Ihnen fehlt.
Josh K
1
@Josh, ich habe dich gewählt, aber ich hatte das Gefühl, dass es nicht alles sagt, was ich sagen wollte, aber ich war mir nicht sicher, ob die Leute es möchten, wenn ich ihre Antworten ändere.
Grokus
6
Wenn es die Qualität der Antwort verbessert, sollte es in Ordnung sein. Die Funktion gibt es aus einem Grund.
Nayan
2
Das ist die Idee der Seite. ;)
Josh K
Ich wünsche Perl eine Unternehmenssicherung.
Chankey Pathak
1

Die Gemeinschaft um ihn herum erreichte eine kritische Masse. Es ist sehr schwer, die Barriere der Popularität zu überwinden, und es ist nicht wirklich unerwartet, dass es sehr plötzlich passiert.

Emilio M Bumachar
quelle
-1

Es gibt einige Aspekte von Python, die es offen gesagt archaisch aussehen ließen. Dinge, bei denen Sie das Gefühl hatten, auf Lochkarten eines Großrechners zu codieren. Als hätte man Abstandsmaterie zu Codeblöcken eingerückt. Kleinigkeiten wie diese haben dazu geführt, dass viele Leute die Sprache nach einem sehr kurzen Blick verworfen haben. Ich vermute, dass es in den frühen Tagen ziemlich schlimm geschadet hat. Besonders in der Menge, die jahrelang in solchen Umgebungen gelebt hatte und nichts anderes wollte, als sich vom Mainframe zu entfernen und ins Internet zu gehen.

Taxifahrer
quelle
4
Indent Scoping ist eine religiöse Debatte. Manche Leute lieben es, andere verabscheuen es, aber es ist unmöglich, schlüssige Argumente dafür oder dagegen zu liefern.
dbkk
1
genau mein Standpunkt. Diejenigen, die es verabscheuen, verließen die Sprache, sobald sie es bemerkten, und viele mundeten die Sprache ihren Altersgenossen. Ich denke, dass die Adoption lange Zeit wehgetan hat. (TBH: Es ist einer der Gründe, warum ich bis heute befürchte, an * .py arbeiten zu müssen)
cabbey
4
In jeder modernen Sprache wird eingerückt, um die Struktur zu verdeutlichen. Das Ablegen der Zahnspange ist also ein offensichtlicher Schritt nach vorne. Es hat nichts mit Lochkarten zu tun und ich denke nicht, dass die Anzahl der Programmierer, die mit ihnen Erfahrung haben, signifikant ist oder vor 13 Jahren war. Außerdem hoffe ich, dass die meisten von ihnen nicht so weit hergeholt wurden wie Sie.
Maaartinus
@maaartinus: Es ist ein offensichtlicher Schritt vorwärts, bis Sie auf einen Ausdruck stoßen, der zu lang ist, um in eine Zeile zu passen, ohne horizontal zu scrollen. Dann wird es schnell unangenehm.
Mason Wheeler
1
@ Mason Wheeler: Ein besserer Zeilenumbruch in Ihrem Editor hilft auch: stackoverflow.com/questions/759577/…
retracile