Euer Einstieg in die Programmierung: Wie habt ihr euch das Programmieren beigebracht?

12 Antworten

Als ich angefangen habe, zu programmieren, gab es noch Programmiersprachen, die noch nicht einmal Unterprogramme boten, von Objektorientierung ganz zu schweigen. Ich habe angefangen, das als Kind "spielerisch" zu lernen. Meine ersten "Programmiererfahrungen" habe ich gemacht, bevor ich eingeschult wurde. Wirklich "systematisch" wurde es erst später und im Laufe der Zeit kamen viele weitere Sprachen dazu, die ich aber nicht mehr unbedingt alle verwende. Später habe ich Informatik und Physik studiert. So ist mein Hobby letztlich zum Beruf geworden.

Diesen Weg würde ich allerdings heutzutage nicht mehr wählen. Ich würde natürlich gleich mit einer modernen Sprache anfangen. Java eignet sich hier ziemlich gut, schließlich ist dies auch die Sprache, die an den meisten Hochschulen zunächst gelehrt wird. Eine andere, relativ "einsteigerfreundliche" Sprache ist Python, allerdings finde ich es besser, zunächst mit einer statisch typisierten Sprach wie Java anzufangen, weil man da gezwungen ist, gewisse Dinge systematischer zu lernen. Dieses Wissen ist auch dann von Nutzen, wenn man später auf etwas "laxere" (dynamisch typsierte) Sprachen, wie Python, umsteigt.

Extrem fasziniert bin ich derzeit von der Programmiersprache Go. Sie verfügt über eine extrem "leichtgewichtige" Syntax und (insbesondere im Vergleich zu Java) eine sehr kompakte Standardbibliothek, ist primär prozedural (nicht objektorientiert), statisch typisiert, benutzt aber Typinferenz, sodass sie sich an vielen Stellen wie eine dynamisch typisierte Sprache "anfühlt". Wie bei Java und Python kommt eine automatische Speicherverwaltung ("garbage collection") zum Einsatz. Allerdings wird Go direkt von einem Compiler in statisch gelinkte Binaries übersetzt, die Maschinencode enthalten, während Java zunächst von einem Compiler in so genannten "Bytecode" übersetzt wird, der anschließend von der Java Virtual Machine interpretiert (teilweise "just-in-time-compiliert") wird und bei Python mehr oder weniger direkt der Quellcode (bzw. ein abstrakter Syntaxbaum, der durch den Interpreter aus dem Quellcode generiert wurde) interpretiert wird. Obwohl Go so eine "schlanke" Sprache ist, würde ich sie allerdings nicht zum Lernen empfehlen, da viele Konzepte doch eher "advanced" sind und ein grundlegendes Verständnis voraussetzen, das man wohl besser mit anderen Sprachen erwirbt.

Ich z. B. wollte es einfach können. Der Rest ergab sich von alleine. In Singapore (da hatte ich keinen Computer), hab ich mir dann 1987 das Buch "The C Programming Language" gekauft und komplett durchgelesen (ohne Computer). Das hat gereicht.


NoHumanBeing  08.09.2017, 22:25

Das ist definitiv ein ... unkonventioneller Weg, aber freut mich, dass es geklappt hat. :-)

0

Ich hab damals mit PHP angefangen, mir irgendein PHP-Skript geschnappt, das dann "zerlegt" und modifiziert. Etwas plan- und ziellos damit herumgespielt.

Irgendwann war das Verständnis und das Interesse groß genug, dass ich mich über die Dokumentation hergemacht habe. Das war mein Anfang, irgendwann kam dann Java - da war der Grundstein die Schule und den Rest ähnlich planlos. 

Auch wenn es doof klingt: Du lernst es nur, indem du wirklich programmierst. Lern die Grundlagen mit 'nem Tutorial und dann wage dich an ein Projekt ran. Scheitere, und zieh daraus die Schlüsse.

-- 

Einen Tipp hab ich: Es lohnt sich, sich relativ früh mit dem Werkzeug - also der IDE - zu beschäftigen. Beherrscht man beispielsweise den Debugger, dann ist die Fehlersuche deutlich angenehmer. 


NoHumanBeing  07.09.2017, 12:04

Beherrscht man beispielsweise den Debugger, dann ist die Fehlersuche deutlich angenehmer.

Da ist sicher was dran.

Interessanterweise muss ich allerdings feststellen, dass ich im Laufe der Zeit immer seltener einen Debugger benutze. Gerade bei modernen Sprachen mit starker Nebenläufigkeit, bei Echtzeitanwendungen, etc. ist der oft nur noch von sehr beschränktem Nutzen. (Eine Echtzeitanwendung kannst Du beispielsweise nicht "anhalten".) Leider, muss man manchmal sagen, aber oft bin ich dann doch erstaunt, wie weit man auch ohne kommt.

1

Ich habe im Jahr 1970 mit der Programmierung angefangen, damals programmierten wir mit Makro Assembler, da hatten die meisten Hardwarehersteller eine eigene Programmierumgebung. Dann hab ich im Jahr 1973 die COBOL-Porgrammiersprache in einer nebenberuflicher Weiterbildung erlernt, damals gab es kaum fähige Lehrer, also haben wir zu dritt (Mitschüler) damals uns das meiste selbst beigebracht und die Prüfung als einzige erfolgreich abgelegt.  Im Jahre 1980 habe ich  C-Programmierung selbst erlernt, und  ungefähr im Jahre  1985 habe ich mich mit C++ befasst. Ich habe damals PPS-Software programmiert und mich irgendwann selbständig gemacht, ich war dann als ERP-Projektierer für einen ERP-Softwarehersteller freiberuflich tätig und habe dazu  noch  Kunden-Sonderwünsche die das ERP-Softwarepaket nicht bedient hat, programmiert.

Ich habe mir das meiste im Selbststudium selbst beigebracht und natürlich in der Praxis angewendet. Ich hatte Zugang zur Software-Entwicklungsabteilung eines ERP-Software Herstellers und wenn ich Fragen hatte, kannte ich immer jemand der mir weiter geholfen hat, das war damals so üblich ich fand das äusserst kollegial. Wir programmierten fast alles auf der Basis von C. Ich bin jetzt im Ruhestand, habe mich hobbymäßig noch mit Python und Java befasst.

Man kaufte sich eben die entsprechende Fachliteratur und dann hängt man sich rein, wenn man mit einer Programmiersprache Praxis angeeignet hat, geht die Erlernung einer neuen Programmiersprache ziemlich leicht. Früher musste man bei der Programmierung mehr Gedanken machen als heute, das Problem waren die kleinen verfügbaren Arbeitsspeicher man musste mit Overlay's  arbeiten, also  nachladbare Programmsegmente programmieren, die gerade noch in den Speicher passten.