Ist es geläufig, dass man als Programmierer mehrere Programmiersprachen beherrscht?

Das Ergebnis basiert auf 26 Abstimmungen

Es ist normal 2, 3 Programmiersprachen zu beherrschen 58%
Mehr als 5 Programmiersprachen ist nicht ungewöhnlich 38%
In der Regel spezialisiert man sich auf eine Programmiersprache 4%

8 Antworten

Es ist normal 2, 3 Programmiersprachen zu beherrschen

Nun das hängt ein wenig vom Bereich ab. Wer im Webbereich arbeitet, der hat meist automatisch mit mehren Sprachen zutun. Generell gibt es überall einen Stack, manchmal ist Frontend und Backend gleich, manchmal gibt es dafür verschiedene Leute, manchmal nicht.

Auch ist die Frage was man unter beherrschen versteht. Bei mir war es z.B. in den letzten 7 Jahren zu 60% PL/SQL, zu 30% die Websprachen, bei uns PHP, JavaScript und natürlich HTML/CSS und zu 10% Java, C und C#. Das bedeutet in letzteren habe ich ggf. mal 1-2 Monate am Stück was gemacht und es danach Jahre lang nicht gesehen.

Arbeiten kann ich in vielen Sprachen und finde mich da sicher auch fix rein und habe neben den Sprachen auch in der Ausbildung noch ein wenig was anderes gemacht wie Assembler und C++. Man hat aber natürlich ein anderes Verständnis für etwas, wenn man es Jahre macht. Schon alleine weil man viele Probleme schon häufiger gesehen hat, die Standardlibraries besser kennt usw.

Ich denke schon das viele Leute in 2-3 Sprachen fit sind, wobei es hier wohl auch unterschiedliche Stärken gibt. Ich denke auch, dass viele Leute durchaus in 5-10 Sprachen etwas Kleines umsetzen können und sich auch in jede andere Sprache einarbeiten können. In den Sprachen sind sie aber deutlich schwächer als jemand, der Jahre darin verbracht hat.

Auch sind die Aussagen bei einigen Sprachen schwer, vor allem sowas wie JavaScript wo das Tooling und der Frameworkbereich riesig ist und sich der Bereich verdammt schnell entwickelt. Was bedeutet da beherrschen? Vanilla? Ein Framework? Welches? Das Gefragteste? Was an Tooling? Clientseitig oder auch Serverseitig?

Woher ich das weiß:Berufserfahrung – Softwareentwickler/Projektleiter seit 2012

Programmiersprachen beherrscht eigtenrlich jeder Entwickler fast alle.

Viel wichtiger ist welche Frameworks man beherrscht (derart, dass man sowohl das Konzept hinter dem Framework als auch die Implementierung selbstständig durchführen kann (ohne google)).

Woher ich das weiß:Studium / Ausbildung – Promoviert
In der Regel spezialisiert man sich auf eine Programmiersprache

Man muß unterscheiden zwischen dem Programm-Designer (das ist das Kunsthandwerk) und dem Programmierer (das ist das Handwerk).

Fällt Beides in derselben Person zusammen, ist es vermutlich ein Einzelkämpfer - und die sind oft besser als die Kombination von willkürlichen Leuten.

Der Rest wurde schon gesagt.

Woher ich das weiß:eigene Erfahrung

Vermutlich hänge ich die Bedeutung des Wortes "beherrschen" viel höher als die bisherigen Antwortgeber.

Es ist schon ungewöhnlich, wenn jemand in die Lage kommt, in der er tatsächlich zwei Sprachen beherrscht, die Regel ist (Sarkasmus) eher, dass ein Programmierer gar keine Programmiersprache beherrscht.

Ich habe während meines Berufslebens in etlichen Sprachen programmiert und diese jeweils auch weitgehend "beherrscht" (Cobol, Assembler, PL1, C++, …). Trotzdem kann ich heute keineswegs behaupten, dass ich Delphi "beherrschen" würde, obwohl ich vor nicht so langer Zeit ziemlich gut darin war.

Programmiersprachen entwickeln sich weiter und wer sich nicht kontinuierlich mit den Weiterentwicklungen beschäftigt, ist sehr schnell weg vom Fenster.


QMillion 
Fragesteller
 09.06.2019, 17:09

Wie passt man sich an die Entwicklung an? Besucht man dazu Fortbildungen, oder woher kommt der Input?

0
grtgrt  09.06.2019, 18:25
@QMillion

Fortbildungskurse zu besuchen wird natürlich (ein klein wenig) helfen. Letztlich aber benötigt man jahrelange Übung: Erst sie — gepaart mit der Fähigkeit und dem festen Willen, ganz gezielt gut wartbare Software zu produzieren — macht aus jemand, der Programme schreiben kann, einen wertvollen Programmierer.

0
Mikkey  09.06.2019, 19:42
@QMillion

In erster Linie geht das dadurch, dass man sich für diese Entwicklung interessiert. Im Job ist es nur selten möglich, dass man mit neuen Dingen experimentiert. Das sollte man dann auch mal zuhause in der Freizeit machen. Weiterhin erweitert sich die Erfahrung durch Austausch mit den Kollegen, die Arbeit an Redesigns, bei denen Neuerungen auch durchaus gern gesehen sind.

Meine Entwicklung ging von "irgendwann früher mit C++ etliches Anderes, C#, Delphi wieder zu C++. Wenn man sich nicht bemüht, die zwischenzeitlichen Entwicklungen nachzuvollziehen, fängt man dann an, C#-Software in C++ zu coden. Trotz der zweifellos vorhandenen Verwandtschaft kann da nur Stuss herauskommen.

Das soll aber nicht heißen, dass die in anderen Sprachen erworbenen Erwahrungen nicht in die Arbeit einfließen sollten.

0
grtgrt  09.06.2019, 18:13

Eine sehr treffende Antwort.

Auch meine Erfahrung ist, dass die meisten Programmierer gar keine Sprache wirklich gut beherrschen.

Zudem sind die meisten Programmierer noch lange nicht das, was man einen kompetenten Software-Entwickler nennt.

0
Mehr als 5 Programmiersprachen ist nicht ungewöhnlich

Definitiv. Du wirst als Programmierer nie nur eine Sprache können müssen/sollen. Kenne keinen langjährigen Schreiber, der seine ganze Karriere nur bei einer geblieben ist. Ausnahmen gibt es natürlich immer...

Ohne Java geht's heute eigentlich kaum noch. Bist du im WEB unterwegs bist du sofort mit JavaScript (HTML ist ja jetzt rein technisch keine Programmiersprache, aber dennoch) und meist PHP unterwegs. Python oder Ruby sind nette Sprachen für zwischendurch und auf Linux kommst du ohne C und BASH (was jetzt auch nicht unbedingt eine Sprache ist) nicht weit.

Von da an braucht man hin und wieder dann entweder C/C++ oder C# auf Windows, weil es immer wieder Projekte gibt, die in den Sprachen auftauchen.

Dazu kommen dann auch schnell mal Sachen wie SQL oder im Bereich Data Science zu R. Im Augenblick schreibe ich gerne mit Go und RUST von Mozilla...

Du siehst, dass da eniges zusammen kommt.

3 Sprachen solltest du dahingehend mehr oder weniger als Muttersprache können (Senior-Developer) während es bei den anderen dann darauf ankommt, dass du zumindest damit arbeiten kannst, selbst wenn du nicht überall top fit bist.

Je mehr du kannst ,desto gefragter bist du.


QMillion 
Fragesteller
 09.06.2019, 17:06

DANKE! Welche 3 Programmiersprachen eigenen sich am besten als "Basis" bzw. "Muttersprache" für web Programmierung und Desktop/ Mobile Anwendungen?

0
regex9  09.06.2019, 17:30
@QMillion

Für die Webentwicklung kommst du an JavaScript nicht vorbei, höchstens über abstrakte Ableger (TypeScript, Dart, CoffeeScript, ...), welche später zu JavaScript konvertiert werden. Praktisch betrachtet reicht das aus, da JavaScript sowohl auf einem Webserver, als auch im Browser laufen kann. Ansonsten finden Java, C# (mit dem ASP.NET-Framework) und PHP weite Verbreitung in der Entwicklung serverseitiger Webanwendungen. Natürlich gibt es noch zahlreiche andere Alternativen (Ruby, Python, ...).

Für Desktop / Mobile ist es schon noch etwas abhängig, für welches OS explizit entwickelt werden soll, auch wenn Sprachen wie Java oder Python Portabilität erlauben. Auf Windows OS eignet sich die Entwicklung mit .NET-Sprachen (C#, VB.NET) sehr, für Mac OS eher Swift (oder das alte Objective-C). Mittendrin liegt noch C++.

Auch bei der Entwicklung mobiler Apps gibt es wieder eine riesige Auswahl - z.B. Dart, Kotlin und Java für Android oder Swift / Kotlin für iOS. Zudem gibt es zahlreiche Tools, um bspw. mit JavaScript Apps zu produzieren, usw. - alle Optionen kann man hier kaum erwähnen.

Alles in allem wärst du mit JavaScript, Java und Kotlin z.B. nicht schlecht aufgestellt.

0