Perché la popolarità di Python è stata così improvvisa? [chiuso]


84

Python è apparso per la prima volta nel 1991, ma è stato in qualche modo sconosciuto fino al 2004, se le classifiche TIOBE quantificano qualcosa di significativo.

Quello che è successo? Cosa ha spinto l'interesse per questa lingua di 13 anni a superare il tetto? C'è una ragione per cui Python non è stato considerato un vero concorrente di Perl nel suo primo decennio di esistenza? C'è una ragione per cui Python non ha continuato nell'oscurità relativa per altri dieci anni?

Personalmente penso che Python sia un linguaggio molto carino e sono contento di non essere l'unico. Ma non ha il supporto aziendale o una funzione killer che spiegherebbe un improvviso aumento di rilevanza.

Qualcuno conosce la storia?


6
Storicamente, è un aumento piuttosto rapido!
Macneil,

3
Questa domanda era piuttosto interessante. +1
Tim Post

1
Il saggio The Python Paradox è del 2004.
Stesch

2
Le persone potrebbero essere venute a Python via Django, come alcuni sono venuti a Ruby via Rails?
Andrew Grimm,

1
Django. Questo è il primo contesto in cui ho sentito le persone parlare di usarlo seriamente per lo sviluppo. Prima di questo, la maggior parte dei discorsi che avevo visto erano "perché nessuno vuole usare questa lingua?" Oppure ... "Rails è il motivo per cui Ruby è decollato e perché Python non sta andando da nessuna parte." (Nota che l'ultimo era nei giorni pre-Django).
scriptocalypse,

Risposte:


74

Google

Google ha iniziato a utilizzare Python pesantemente e ha reinvestito nello sviluppo del linguaggio.

Ma non ha il supporto aziendale o una funzione killer che spiegherebbe un improvviso aumento di rilevanza.

Google è il supporto aziendale. Per quanto riguarda le funzionalità, Python è un linguaggio veloce 1 interpretato da OOP su più piattaforme . Cosa non va? È un altro strumento eccellente nella casella degli strumenti.


1. Veloce da sviluppare , non veloce da eseguire. Scrivere uno script per scopi generici in Python è molto più veloce quindi dire Java o C, ignorando il fatto che quel linguaggio sarebbe eseguito più velocemente.


25
Guido van Rossum, creatore di Python è stato assunto da Google intorno al 2005, nello stesso periodo in cui ha iniziato a utilizzare pesantemente Python. Anche questo ha dato una spinta.
nayan,

6
Cosa intendi per linguaggio veloce ?
Peaker,

Ricordo le persone che dicevano che, come linguaggio interpretato, era troppo lento rispetto al Perl, ma ora i computer sono molto più veloci.
user2442

5
Il balzo in uso nel 2004 è stato perché Google ha iniziato a usarlo pesantemente nel 2005?
Tom Hawtin - tackline il

1
Ho letto nel libro "Googleplex" di Steven Levy che il primo crawler web di Google è stato implementato (male) in Python da Page e Brin intorno al 1996. È stato riscritto in C da uno dei loro primi dipendenti, che aveva più esperienza nel web sviluppo. Quindi l'associazione di Python con Google risale ai loro inizi.
dodgy_coder,

24

Ho iniziato a usare Python intorno al 2001, e più seriamente dal 04/05, e più seriamente un po 'più tardi. Ricordo che sono successe alcune cose che hanno spostato l'atteggiamento verso Python e reso più praticabile come linguaggio di sviluppo web.

  • Succede FCGI e poi WSGI. Prima di allora dovevi eseguire gli script Python come CGI ordinario, che non era abbastanza veloce. mod_python non era neanche lontanamente valido come mod_php, .NET CLR o la piattaforma Java JIT VM.

  • Università di spicco iniziarono a insegnare algoritmo e altre classi usando Python, e libri come "Impara a pensare come uno scienziato informatico" furono pubblicati e divennero popolari.

  • È diventato un linguaggio di implementazione di alto livello per Google all'inizio del decennio e questo ha avuto un impatto su quanto seriamente è stato preso.

  • Gli sviluppatori visibili e gli sviluppatori di standard, come Joe Gregorio e Mark Pilgrim, utilizzavano entrambi Python per implementare i prototipi del protocollo Atom. Pilgrim ha quindi scritto DiveIntoPython che ha aiutato molte persone a imparare e imparare la lingua.

  • Il ramo 2.x è diventato stabile e ha implementato funzionalità come il supporto Unicode, una buona analisi XML, un nuovo Garbage Collector, generatori e metodi funzionali, ecc.

  • Il più grande punto di svolta è stato Django - che è diventato molto famoso insieme a RubyOnRails intorno al 2005. La filosofia di Django differiva da quella di Rails, e molti sviluppatori lo trovarono più adatto ai progetti.

Per un linguaggio non supportato da una grande azienda (come C # e Java), la curva di adozione e sviluppo è piuttosto tipica e vicina ad altri linguaggi open source come Ruby.

Django non ebbe lo stesso impatto su Python come Rails su Ruby, poiché era già molto usato da scienziati, matematici, quants, università ecc.


10

Il rimpasto nell'indice TIOBE nel 2004 spetta a Google cambiare la loro ricerca. Non c'è davvero molto da imparare da TIOBE: è una totale assurdità. Non credo che ci sia stato un improvviso salto nella popolarità di Python. Certamente non perché un'azienda lo usa internamente per alcune delle loro cose.


5
Se non ti fidi di TIOBE, puoi davvero provare.com. Mostrano una crescita costante delle offerte di lavoro per Python dal 2005
Robert Harvey il

3
Assurdità o no, ci sono molti programmatori che non avevano mai sentito parlare di Python nel 2003, e che avevano entro la fine del 2005. Il che è insolito per una lingua nel suo secondo decennio.
Eric Wilson,

@RobertHarvey: sembra che la tendenza sia davvero generica per i linguaggi di sviluppo web. Per esempio. indeed.com/jobtrends?q=python%2C+php%2C+ruby .
Vartec,

@vartec In effetti sembra una crescita costante (presumibilmente a scapito della crescita del Perl) invece di un salto improvviso. / Interessante vedere come relativamente poco Obejctive-C - presumibilmente Apple ha centinaia di migliaia di programmatori che lavorano al di sotto del salario minimo.
Tom Hawtin - tackline il

6

Google era il motivo. Google utilizza solo poche lingue: C ++, Java, Python, Javascript, PHP?

Il supporto aziendale è molto importante per il successo di una lingua. Esempi:

  • C ++: AT&T Bell Labs
  • Java: Sun
  • C #: Microsoft
  • Python: Google

2
Non dovresti davvero pubblicare una risposta così simile a una esistente. Modifica in tutto ciò che ritieni manchi.
Josh K,

1
@Josh, ti ho votato, ma sentivo che non diceva tutto quello che volevo dire, tuttavia non ero sicuro che alla gente sarebbe piaciuto se avessi modificato le loro risposte.
grokus,

6
Se migliora la qualità della risposta, suppongo che dovrebbe andare bene. La funzione è lì per un motivo.
nayan,

2
Questa è l'idea del sito. ;)
Josh K il

Desidero che Perl ottenga il backup aziendale.
Chankey Pathak,

1

La comunità intorno ha raggiunto la massa critica. È molto difficile superare la barriera della popolarità e non è inaspettato che accada molto all'improvviso.


-1

Ci sono alcuni aspetti del pitone che lo hanno fatto sembrare, francamente, arcaico. Cose che ti hanno fatto sentire come se stessi programmando su schede perforate su un mainframe. Come avere la spaziatura del rientro in blocchi di codice. Piccole cose del genere hanno indotto molte persone a chiudere la lingua dopo una breve occhiata. Ho il sospetto che abbia fatto abbastanza male all'inizio. Soprattutto tra la folla che aveva vissuto in questi tipi di ambienti per anni e non desiderava altro che allontanarsi dal mainframe e uscire sul web.


4
La definizione del rientro è un dibattito religioso. Alcune persone lo adorano, altri lo detestano, ma è impossibile dare una serie conclusiva di argomenti a favore o contro.
dbkk,

1
esattamente il mio punto. Coloro che lo detestano si sono allontanati dalla lingua non appena se ne sono resi conto e molti hanno parlato male della lingua ai loro coetanei. Penso che abbia danneggiato l'adozione per molto tempo. (TBH: è uno dei motivi per cui ancora oggi temo di dover lavorare su * .py)
cabbey,

4
In qualsiasi linguaggio moderno, rientri per rendere chiara la struttura, comunque. Quindi far cadere le parentesi graffe è un ovvio passo avanti. Non ha nulla a che fare con le schede perforate e non credo che il numero di programmatori che hanno un'esperienza con loro sia significativo o lo fosse 13 anni fa. Inoltre, spero che molti di loro non abbiano avuto un'associazione così inverosimile come te.
maaartinus,

@maaartinus: è un ovvio passo avanti, fino a quando non si incontra un'espressione troppo lunga per adattarsi a una riga senza scorrimento orizzontale. Quindi le cose si fanno imbarazzanti in fretta.
Mason Wheeler,

1
@Mason Wheeler: Una migliore approccio line-wrapping nel vostro editor aiuta anche: stackoverflow.com/questions/759577/...
retracile
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.