Frage von iTzFritz, 119

Warum ist Python so beliebt?

Ich habe eben einen Blick auf den Tiobe Index geworfen und gesehen, dass Python nun sogar schon mehr benutzt wird als Javascript. Da Javascript aber in jeder guten Seite enthalten ist stellt sich mir die Frage, wie diese Zahlen zustande kommen. Ich persöhnlich finde die "Syntax" von Python nicht besonders gut, wenn man das überhaupt noch so nennen kann... Mir fehlt die Struktur und die Übersicht.

http://www.tiobe.com/tiobe-index/

Expertenantwort
von TeeTier, Community-Experte für programmieren, 44

Ich halte den TIOBE-Index als Quelle für die statistische Verteilung von Programmiersprachen ehrlich gesagt für gefährlich, da er ein völlig verzerrtes Bild der Realität erzeugt.

Denn die meisten Leute (du sicher auch), wissen leider gar nicht, wie die Ergebnisse dieser "Studie" zustande kommen. (Das ist eine nette Aufgabe für alle Mitleser, die es noch nicht wissen: recherchiert ruhig mal, "wie" der TIOBE-Index zu seinen Ergebnissen kommt!)

Kleines Beispiel: Als Apple die neue Programmiersprache Swift angekündigt hatte, erreichte diese beim kurz darauf folgenden TIOBE Index eine höhere (!) Punktzahl als C# und C++ zusammen! Das war mehr als 2 Monate BEVOR die erste Testversion auf die Community losgelassen wurde.

Versteh mich nicht falsch: Swift hat interessante Konzepte und gefällt mir Sprachtechnisch ehrlich gesagt ziemlich gut. Aber Monate VOR der Erstveröffentlichung einen besseren Platz als C# und C++ zusammen zu belegen, zeigt ganz eindeutig, wie zuverlässig TIOBE ist.

Im Übrigen halte ich auch den Redmonk für nicht aussagekräftig, da die Verteilung von Programmiersprachen in OS- und CS-Software schon sehr starke Unterschiede aufweist (allerdings immer noch besser als TIOBE, aber das ist wieder ein anderes Thema).

Alles in allem haben aber sowohl Python, als auch JS, ihre Daseinsberechtigungen. Auf den TIOBE würde ich aber gar nichts geben ... im Gegenteil, man sollte sich angewöhnen, den TIOBE-Index bewusst zu ignorieren, weil er IMMER ein falsches Bild vermitteln wird.

Ich kann beim besten Willen nicht nachvollziehen, warum der TIOBE-Index überhaupt noch weitergeführt wird, geschweige denn in Computer-Fachzeitschriften so ein hohes Ansehen genießt. Die Messmethoden sind unter aller Kanone. Ich würde fast schon behaupten, dass Kaffeesatzlesen ähnlich zuverlässig funktioniert.

Als Software-Entwickler, Sys-Admin oder allgemein als ITler sollte man sich nicht vom TIOBE-Index irritieren lassen.

Der TIOBE-Index ist Esoterik ... mehr nicht!

Schönen Abend noch! :)

PS: Es spielt keine Rolle, wie die Verteilung der Beliebtheit einer Programmiersprache ist, wenn diese für DEIN Projekt das optimale Werkzeug darstellt. Sogar wenn es sich dabei um PHP handelt und den Nickname mit "flu" anfängt und mit "ffi" aufhört! Selbst dann! ;)

Kommentar von iTzFritz ,

Erst einmal vielen Dank für ihre Antwort. Ich gehe noch zur Schule und lerne nebenbei C++. Meine Angst ist nur, dass ich, wenn ich dann irgendwann als Programmierer arbeite, eine Sprache wie Javascript oder Python benutzen muss ...

Kommentar von TeeTier ,

Naja, jeder hat so seine Lieblingssprache(n), aber eigentlich kann man sich immer überwinden, und das lernen, was gefordert wird. Und vielleicht entdeckt man dabei dann ja sogar eine neue Liebe zu einer Sprache, die man vorher (evtl. aus Unkenntnis) verachtet hat. :)

Bleib einfach offen für Neues! Damit machst du nichts falsch. :)

Kommentar von ceevee ,

Meine Angst ist nur, dass ich, wenn ich dann irgendwann als Programmierer arbeite, eine Sprache wie Javascript oder Python benutzen muss ...

Das kann dir tatsächlich auch passieren, da ist aber auch gar nix schlimmes bei. Ein guter Programmierer ist mMn. in der Lage, sich schnell in neue Umgebungen und Programmiersprachen einzuarbeiten, ein guter Programmierer sagt nicht: "Ich kann C++ und sonst gar nix, was anderes will ich auch gar nicht lernen!". Die erste Programmiersprache ist immer die schwerste, der Umstieg auf andere fällt einem danach in der Regel leichter. Ich habe auch anfangs mal völlig andere Sprachen gelernt, setze mich momentan aber beruflich viel mit JavaScript und TypeScript auseinander.

Und mal wieder eine tolle Antwort vom TeeTier, bei der man selbst auch noch so einiges lernen kann. DH.

Kommentar von regex9 ,

Das hängt auch davon ab, in welchem Bereich du später Fuß fassen möchtest. In der Webentwicklung ist JavaScript bspw. nahezu unumgänglich. Im Bereich der Spieleprogrammierung kann es dir noch begegnen. In reiner Softwareentwicklung für Bankensysteme hingegen wohl eher nicht.

Zudem solltest du weder aus Python, noch aus JavaScript Dämonen machen, die zu fürchten wären. Jede Programmiersprache hat Eigenheiten, doch an die kann man sich gewöhnen. 

Kommentar von wotan38 ,

Besonders dem letzen PS möchte ich zustimmen. Die Beliebtheit einer Programmiersprache ist kein Kriterium für die Eignung für eine bestimmte Anwendung. Im Informatikunterricht werden klassische Sprachen wegen ihrer besseren Eignung für Lehrzwecke bevorzugt, besonders wenn kostenlose Versionen verfügbar sind. Damit verbunden sind auch Lehraussagen, die an der Wirklichkeit vorbeigehen. So wird COBOL als völlig veraltete längst überholte Sprache hingestellt, obwohl sie ständig weiterentwickelt wird. Erst vor Kurzem ist als VISUAL-COBOL eine neue Version von MicroFocus auf den Markt gebracht worden. Als einer der ältesten Programmiersprachen überhaupt ist sie inzwischen vor allem wegen ihrer intergrierten Datenbankanbindung für die kommerzielle Datenbankanwendung hervorragend geeignet. Laut einschlägigen Veröffentlichungen werden weltweit immer noch 70% der Großprojekte in COBOL geschrieben und COBOL-Programmierer werden gesucht. Der Nachteil von COBOL ist die restriktive Preispolitik und die Notwendigkeit zum Einbinden von in anderen Sprachen erstellten Modulen, wenn Einzelheiten in der eigenen Sprache nicht gelöst werden konnen. Das Einbinden geht zwar einfach, nicht jeder ist in der Lage sich selbst solche Module zu erstellen. Ich selbst habe eine 15 jahre alte COBOL-Entwicklungsumgebung. 

 

Antwort
von kingbongo, 54

Tiobe Index ist auch keine ernstzunehmende Statistik, besser ist die Statistik von redmonk die ein Programmiersprachenranking auf Grundlage von Github und Stackoverflow Messungen erstellt (sind die grössten Programmiererplattformen) . Ist also auf reinen Fakten gebaut und nicht auf seltsamer Suchmaschinenauswertung wie es Tiobe macht. Hier das aktuelle redmonk Programmiersprachen Ranking, an Javascript kommt man heute nicht mehr vorbei (man hat die Sprache zum Universalwerkzeug erklärt), Python ist allerdings auch sehr beliebt:

 1 JavaScript
2 Java
3 PHP
4 Python
5 C#
5 C++
5 Ruby
8 CSS
9 C
10 Objective-C
11 Shell
12 R
13 Perl
14 Scala
15 Go
16 Haskell
17 Swift
18 Matlab
19 Visual Basic
20 Clojure
20 Groovy

http://redmonk.com/sogrady/2016/07/20/language-rankings-6-16/

Kommentar von kingbongo ,

@androhecker, danke für die negativen du witzfigur, lass dich mal untersuchen. 

Antwort
von MonkeyKing, 30

Das kannst du nicht direkt vergleichen. Javascript ist die einzige Sprache, die wirklich auf allen Browsern läuft. Sie läuft also direkt im Browser - während Sprachen Wie Python, Ruby, Go oder PHP auf dem Server ausgeführt werden.

Mit Phyton kann man also ganz andere Sachen machen als mit dem Javascript das im Browser ausgeführt (wobei es inzwischen auch Server-Seitiges Javascript gibt, z.B. Node.js). 

Kommentar von regex9 ,

Man kann übrigens auch Python in der clientseitigen Webprogrammierung nutzen (http://www.skulpt.org/). Klar - letzten Endes wird es für den Browser dennoch zu JavaScript übersetzt.

Antwort
von ceevee, 77

The TIOBE Programming Community index is an indicator of the popularity of programming languages. The index is updated once a month. The ratings are based on the number of skilled engineers world-wide, courses and third party vendors. Popular search engines such as Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube and Baidu are used to calculate the ratings.

Aus deinem Link...

Aussagekräftiger als TIOBE find ich persönlich den Redmonk-Index, der aus Fragen bei Stackoverflow und Projekten bei Github in der jeweiligen Sprache errechnet wird

http://redmonk.com/sogrady/2016/07/20/language-rankings-6-16/

Und dort ist JavaScript auch wiederum vor Python. JavaScript wiederum ist auch keine sonderbar schöne Programmiersprache, bei der man einiges falsch oder unschön lösen kann. Python hingegen find ich recht elegant. Eine Programmiersprache ist weit mehr als nur Syntax. Wenn dir Python nicht gefällt, dann programmier doch einfach nicht darin. Eigentlich kann es dir egal sein, was die anderen machen.

Kommentar von fluffiknuffi2 ,

Ich finde auch, dass der TIOBE-Index ein Anhaltspunkt sein kann aber nicht der Quell der absoluten Wahrheit ist.

Kommentar von grtgrt ,

Der TIOBE-Index, das sollte man wissen, sagt nichts darüber aus, wie viel Code - vergleichsweise - in welcher Programmiersprache geschrieben ist: Er sagt uns stattdessen, für welche Programmiersprache man sich in naher Vergangenheit am ehesten interessiert hat.

Ganz anders der Redmonk-Index: Er sagt uns, wie viel Open Source Code über die mittelfristige Vergangenheit hinweg in welcher Programmiersprache geschrieben wurde.

Keiner der beiden Indizes sagt uns, wie die entsprechende Verteilung im Bereich kommerzieller Software-Entwicklung war. Genau die würde aber eigentlich am ehesten interessieren.

Ich kann mir gut vorstellen, dass TIOBE's Zahlen ihr näher kommen als die von Redmonk, wenn man sie übers Jahresmittel hinweg betrachtet.

Antwort
von Steffile, 65

Pyhton kannst du mit Java vergleichen, nicht mit Javascript, wobei Python schon sehr viel produktiver sein kann als Java.

Keine passende Antwort gefunden?

Fragen Sie die Community