Programmieren Lernen, Anfänger

G

Gamerfreak89

Gast
Hey ihr lieben ,

ich besuche ab den 16.November die Lutz und Grub Academy in Nürnberg um dort eine Umschulung zur Systemintegration oder Anwendungssoftware zu beginnen.
Ich würde sehr gerne vorher mich zuhause selbst damit beschäftigen und ein bisschen vor lernen.
Zur zeit Verfolge ich den YT-Kanal "Programmieren Lernen". Dieser Erklärt sehr gut die einzelnen Aspekte.
Nun wollte ich mich mal bisschen tiefer in die Materie einbinden und euch fragen, wie ihr angefangen habt.

Mir wurde geraten das ich kleine Erfahrungen in HTML sammeln soll. Weil man sich dort besser einlebt , sozusagen. Ich denke nicht das es Was bringt wenn ich mit Python oder CSS oder C# anfange. Oder was sagt ihr ?

Bin wirklich für jeden Rat offen und möchte viel lernen. Hab nur 2 Jahre zeit den Stoff in meine Birne zu bekommen


Nachtrag: Zumal ich vielleicht noch ein paar fragen habe !
 
Irgendwo muss jeder für sich einen Einstieg in die Materie finden... für mich wars damals HTML/CSS, PHP + MySQL. So hangelt man sich durch, mittlerweile häng ich im MEAN-Stack rum und kann damit von vorne bis hinten alles raushauen was mir so gefällt - am Ende hat das aber auch viel mit persönlichen Vorlieben zu tun und ist vom Bereich abhängig, in welchem man sich bewegen will. Ich würde mit dem MEAN-Kram z.B. keine Anwendungen für Windows schreiben (auch, wenn das mittlerweile möglich ist).

Ich kann dir https://udemy.com sehr empfehlen. Da hab ich etliche Kurse angeschaut, da ist für jeden was dabei! Einfach mal die Wunschkurse im Auge behalten, da gibts regelmäßig Rabatte bis auf 10€ runter und dann kannst du dir das quasi frei einteilen, wann du die Sachen schaust. Udemy hat mich persönlich was Programmieren angeht noch mal ordentlich weiter gebracht.

Versuch eigene kleine Projekte aufzusetzen, so hab ich immer am besten gelernt. Ob kleine Internetseite mit Front- und Backend oder eben wie bei mir im MEAN-Stack kleine Anwendungen. Auch wenn es am Anfang vielleicht idiotisch klingt sich eine eigene ToDo-App zu schreiben, nur so kommst du ins Doing. :-)

Ich wünsche dir viel Erfolg!
 
  • Gefällt mir
Reaktionen: Der Lord
Gamerfreak89 schrieb:
Mir wurde geraten das ich kleine Erfahrungen in HTML sammeln soll. Weil man sich dort besser einlebt , sozusagen. Ich denke nicht das es Was bringt wenn ich mit Python oder CSS oder C# anfange. Oder was sagt ihr ?
Spielt in meinen Augen keine Rolle. Bekannte von mir haben im Bachelor Informatik gleich mit C# angefangen zu programmieren bzw. es damit gelernt. Python wäre auch gut, da es auch viel im Datascience Bereich verwendet wird. Kommt halt drauf an, in welche Richtung du dich beruflich entwickeln willst.
 
Am besten auch gleich anfangen zu lernen wo was steht und dass es wenig gibt, was nicht schon mal jemand gefragt hat, also am Ende auch erkennen dass es z.B. viele Antworten und Code Snippets am Ende Tages online auf Plattformen wie StackOverflow etc. gibt.

Und da wir gleich dabei sind, du bist auch nicht der erste mit der Frage auf CB wie man anfaengt: https://www.computerbase.de/forum/search/2059256/?q=programmieren+fuer+anfaenger&o=relevance
die Antworten haben sich nicht geandert meiner Meinung nach. Spezielle Fragen kann man sicherlich immer noch nachfragen, aber die generische Frage "wie programmirem lernen", die hatten wir im Forum nun schon oft.

Viel Erfolg bei der Umschulung dann.
 
@RedGunPanda
ich habe mir die Internet Seite mal abgespeichert und werde mich dort mal genauer umschauen. Das Angebot , so wie du es sagst, hört sich doch wirklich gut an. Und für einen schmalen Taler , etwas dazu zu lernen finde ich immer sehr spannend.
Könnte ich neben den 2 Jahren ja noch zusätzlich machen.
Gibt es auch Grenzen die man sich setzen sollte ? Was sind so die Anfänger Tipps. Weil ich lese und sehe immer wieder das ein "Erfolgserlebnis" dem Kopf auch Signalisiert , das man das schafft. Wenn man nur Misserfolge hat , sagt das Gehirn dir , das man das niemals schafft.
Sieht für mich sehr nach einen Psychischen Aspekt aus, oder was meint ihr ?

@ferris19
nun ja ich fange sozusagen bei Null an. Hab mal als kleiner Junge ( damals 16 17 ) eine eigene Seite via HTML geschrieben. Nur das Wissen, habe ich heute nicht mehr . Da ich mich nicht mehr damit befasst habe.
Für den einstieg sollte doch HTML erstmal reichen oder ?

Wie ich selbst raus gefunden habe , muss man auf jeden fall am Ball bleiben und wirklich jede Freie Minute investieren um gute Ergebnisse zu liefern. Sehe ich das richtig ? oder Setze ich mich damit zu sehr unter Druck ?
 
Es ist eigentlich egal mit was man anfängt, die Logik ist eigentlich immer die gleiche, wird dann nur was anders aufgeschrieben. Bei uns an der Uni gab es lange Java und mittlerweile Python im Informatik Modul, Python gefiel mir persönlich besser.
 
Gamerfreak89 schrieb:
Für den einstieg sollte doch HTML erstmal reichen oder ?
Naja HTML und CSS ist hauptsächlich für Webdevelopment relevant. Wenn du in die Richtung gehen willst ist es nicht verkehrt, aber wenn nicht, dann würde ich eher mit Python oder C# anfangen. Idealerweise mal Nachfragen, womit in deiner Umschulung angefangen wird und dann damit anfangen.
Wie bereits gesagt, bei Bekannten war der Anfang im Studium mit C# und Webdevelopment, sprich HTML und CSS kam erst in späteren Semestern. Bei mir im Studium wurde mit Pascal/Java angefangen.
 
Und noch ein paar Grundfertigkeiten:
  • Lesen: Videos schauen ist unglaublich ineffizient, weil du in der Regel nicht weißt, was im Video kommen wird. Bei Texten kannst du querlesen und das lesen, was du benötigst. Außerdem sind Dokumentationen von Software und Hardware in Text und nicht in Video. Darüber hinaus erfordert Lesen Konzentration, sodass das Gelesene besser verarbeitet wird als das Angeschaute. Ich weiß, dass es modern ist, sich von Youtube berieseln zu lassen und danach zu glauben, dass man großartig was gelernt hat. Mit Texten ist man 10mal besser dran, weil man aktiv arbeitet anstatt zu konsumieren.
  • Englisch: Dokumentation und Kommunikation in der IT sind zu 99% in Englisch. Also gewöhn dir an, in Englisch zu lesen und zu schreiben. Und zwar ab heute.
  • Konzepte: In der IT geht es um Konzepte. Lern von Anfang an, dass du die Konzepte verstehen musst und dann erst die exakte Implementation. Deshalb spielt es auch keine Rolle, mit welcher Sprache du anfängst. Lern Code nicht auswendig oder so Mist. Lern, was der Code macht und versuch es logisch zu verstehen. Dann ist die folgende Syntax in der Regel auch verständlich. Anfängerkonzepte sind bspw. Datenstrukturen und Algorithmen.
  • Hilfe finden: Lerne, wie man auf Englisch richtig Suchmaschinen nutzt. Die Suchmaschine ist die Anlaufstelle, nachdem Fachbücher, die Dokumentation eines Projektes und die Git Issues eines Projektes die Sache nicht lösen.
 
  • Gefällt mir
Reaktionen: [ChAoZ], mental.dIseASe, Oelepoeto und 4 andere
Mich wundert, dass noch niemand darauf hingewiesen hat, dass HTML keine Programmiersprache ist. Außer du willst explizit in die Web-Entwicklung, bietet HTML (ohne PHP, Python oder was auch immer dahinter) keinen Einstieg ins Programmieren.
 
  • Gefällt mir
Reaktionen: DaysShadow, mental.dIseASe, Oelepoeto und eine weitere Person
Gamerfreak89 schrieb:
Ich denke nicht das es Was bringt wenn ich mit Python oder CSS oder C# anfange. Oder was sagt ihr ?
which-programming-language-should-i-learn-first-infographic.png
 
  • Gefällt mir
Reaktionen: S6_ und netzgestaltung
Hey @Gamerfreak89!

Ich bin Fachinformatiker für Anwendungsentwicklung (IHK) und bei uns war es so, dass das erste Jahr für die Systemintegrator:innen und Anwendungsentwickler:innen komplett gleich war. Informiere dich am besten, welche Programmiersprache bei euch verwendet wird. Bei mir war es Java, unseren jetzigen Azubis haben C (nur "C", nicht "C++" oder "C#").

Programmieren lernt man nur durch programmieren! 😀 Besonders am Anfang ist der Umgang mit der IDE sowie der Syntax die größte Hürde; hier würde ich an deiner Stelle viel Vorbereitung investieren.
Es ist für den Anfang egal, ob dein Code gruselig ausschaut. Mach dich mit der Syntax und dem Arbeitsflow vertraut: Nach dem ersten "Hello World" fängst du an, die Ausgabe zu modifizieren. "Alles in Großbuchstaben", "Leerzeichen durch Zeilenumbruch ersetzen", statt "Hello World" wird der Name des Users abgefragt und "Hallo <NAME>" ausgeben. Wenn kein Name angeben wird, soll aber trotzdem "Hello World" zurückgegeben werden. Nun soll eine Fehlermeldung ausgegeben werden, wenn der Name länger als 200 Zeichen ist. Und so weiter.

Deine Google-History sieht dann in etwa so aus:
  • "how to concat a string in python"
  • "how to parse json in java"
  • "how to to get string length in c#"
  • ...

Nur so kommst du ans programmieren! Egal in welcher Sprache du später arbeiten wirst, konzentriere dich auf diese Basics:
  • Conditions (if, switch, match, ...)
  • Loops (for-loop, while-loop, foreach, ...)
  • Datentypen (string, int, float, bool, array, list, tupel, hashmap, etc. - die Begriffe hängen tatsächlich stark von der jeweiligen Sprache ab und sind nicht einheitlich!)

So entwickelst du auch gleich den (mMn) wichtigsten Skill eines Entwicklers: Problem solving! Du stehst wie der Ochs vor dem Berg und hast keine Ahnung wie X in der Sprache Y funktionieren soll. Du fängst an, das Problem in Teilprobleme aufzuteilen und Schritt für Schritt zu lösen. Du arbeitest mit deinem Code (im wahrsten Sinne des Wortes).

Beispiel:
C++:
void main()
{
   // 1. user input bekommen
   string user;
   cout << "Name eingeben: ";
   cin >> user;
 
   // 2. input prüfen
   // JA, ABER WIE???

   // 3. input ausgeben
   cout << "Hello " << user;
}

Kleiner Zaubertrick: wenn du statt der Kommentare nun Methoden (OOP) oder Funktionen (FP [Funktional Programming]) verwendest, dann wird aus deinem Spagetti-Code auf einmal etwas besserer Code 😉

Beispiel:
C++:
string getUserInput() {
   string user;
   cout << "Name eingeben: ";
   cin >> user;
 
   return user;
}

// ...

void main()
{
   string user = getUserInput();
   validateUserInput(user);
   showUserOutput(user);
}

Wenn du mit den Basics klarkommst, kannst du dich z. B. mit git vertraut machen, einen Account bei Github erstellen und deinen Code da hinpushen. Zudem wird deine Sprache ganz bestimmt einen Paketmanager haben; installiere doch mal eine Library aus dem Internet und verwende diese in deinem Code. Nanu, die Doku dazu ist in Englisch? Na sowas!

Schon mal was von Regex gehört? Oder Datenbanken? Oder Docker? Einfach mal reinschnuppern und ein wenig mit rumspielen - ist ja alles kostenlos.

Viel Erfolg bei deiner Umschulung!
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: efcoyote, Gamerfreak89 und Oelepoeto
Gamerfreak89 schrieb:
Für den einstieg sollte doch HTML erstmal reichen oder ?
HTML ist schon sehr anders als übliche Programmiersprachen. Ich würde an deiner Stelle schauen, was du später lernen wirst und das dann einfach schonmal machen.
Gamerfreak89 schrieb:
wirklich jede Freie Minute investieren um gute Ergebnisse zu liefern. Sehe ich das richtig ? oder Setze ich mich damit zu sehr unter Druck ?
Ja, du setzt dich zu sehr unter Druck. Sich in der Freizeit weiter damit beschäftigen hilft sicherlich, aber ich würde dir nicht empfehlen gefühlt "jede frei Minute" damit zu verbringen, außer du willst es wirklich wirklich. Das was du lernen wirst brauchst zum Teil auch schlicht Zeit, mal eine Nach drüber schlafen oder eine Woche später nochmal anschauen. Das Gehirn muss sich auf vieles erstmal einstellen.
 
Also erstmal vielen vielen dank für diese vielen Netten Antworten. Ich war gestern nicht mehr in der Lage hier zu schreiben , da ich erneut an einer Grippe erkrankt bin, und mein Kopf brummt wie ein Traktor.

Nun ja was habe ich bisher gemacht. Habe gestern mich mit HTML wirklich auseinander gesetzt und so die Grundsätze mal durch genommen. Bedeutet einfach mal eine schnelle Seite erstellt um mir auch die Befehle wie <br> oder href und so weiter zu merken.
Grundsätzlich muss ich mein Gehirn erstmal vom "Arbeitsmodus", den ich Jahre lang hatte, wieder auf "Schulmodus" stellen. Dazu möchte ich sagen das ich leichtes ADS habe. Dezente Aufmerksamkeitsprobleme, aber damit komme ich ganz gut klar , wenn ich mich mehr und mehr damit befasse. Die Aufmerksamkeitsprobleme zeichnen sich meistens so aus , das ich mir nicht die Zeit nehme, um ordentliche Sätze zu schreiben, was hier auch im Forum schon öfters angeprangert wurde. Dies möchte ich gerne ablegen und werde mich versuchen besser auszudrücken.
Ich nenn es immer "Assi"-Deutsch, wenn man so schreibt wie man redet. Doch das bringt einen manchmal nicht weiter.
Zurück zum Thema.
ich hab noch genau 1 Monat und 7 Tage bevor es los geht.
Soweit ich das mit bekommen habe arbeiten sie mit C#. Werde mich aber nochmal genaustens informieren.
Zu C# habe ich mir jetzt dieses video hier mal abgespeichert und werde das mal durchgehen.
Ich weis das es in vieler Hinsicht auch nicht komplett alles sein wird was ich aus diesen Videos lerne. Zumal es auch auf Deutsch ist. Mein Englisch ist jetzt nicht das beste, aber verstehen tu ich es. bedeutet, wenn ich was lese oder wo zuhöre, verstehe ich es zum Teil , wenn nicht hol ich mir Hilfe, Danke hierfür an Onkel Google und den wundervollen übersetzter.

Des weiteren würde ich sehr sehr gerne mal auch etwas in Buch Form mir durch lesen, habt ihr da einen Tipp was ich mir durchlesen kann ?

@Nilson
Dein Bild sagt eigentlich genau das aus was ich wissen möchte, und ich habe mir frecher weiße das Bild mal abgespeichert wenn das Okey ist ?

@NPC
erstmal vielen dank für deine Antwort und netten Aussagen.
Eine Frage habe ich , wie nennt man deine Beispiele ? also sind das "Befehle" oder wie ist das Hauptwort dafür wenn ich in C++ oder C# was eintippe ?

Ich werde mir wohl Virtual Studio mal runter laden und einfach mal ein bisschen damit lernen.
Werde mir "Befehle" aufschreiben und nach dem Video was ich oben erwähnte einfach mal gehen.



Es ist schon seit langer langer zeit mein Wunsch in die IT einzusteigen, nur hatte ich zu viele Flausen im Kopf als "jugendlicher" oder "junger erwachsener". Daher auch die Späte Entscheidung. Bin jetzt 33. Aber man ist nie zu alt für irgendwas.
ich ärgere mich nur in einer Linie , was mich wohl auch ein bisschen Stresst, das ich nicht früher damit angefangen habe =(
 
Gamerfreak89 schrieb:
Eine Frage habe ich , wie nennt man deine Beispiele ? also sind das "Befehle" oder wie ist das Hauptwort dafür wenn ich in C++ oder C# was eintippe ?
Der Codeauszug an sich ist ein "Code-Snippet" (oder kurz "Snippet") die einzelnen "Befehle" sind "Anweisungen" oder "Statements (Englisch)". Weite Beispiele dazu gibt es z. B. auf Wiki https://de.wikipedia.org/wiki/Anweisung_(Programmierung) oder (ganz offiziell) von Microsoft für C# https://learn.microsoft.com/en-us/d...e/statements-expressions-operators/statements.

(Bei "Unterprogrammaufruf" muss ich schon ein wenig Schmunzeln, die deutschen Begriffe sind da schon ein bissen cringe.. 😅)


Gamerfreak89 schrieb:
Es ist schon seit langer langer zeit mein Wunsch in die IT einzusteigen, nur hatte ich zu viele Flausen im Kopf als "jugendlicher" oder "junger erwachsener". Daher auch die Späte Entscheidung. Bin jetzt 33. Aber man ist nie zu alt für irgendwas.
ich ärgere mich nur in einer Linie , was mich wohl auch ein bisschen Stresst, das ich nicht früher damit angefangen habe =(
Kein Stress! Bei den Anwendungsentwicklern ist ein abgebrochenes Informatikstudium quasi Standard (so auch bei mir); die sind alle idR. 22+ Jahre alt. Der Älteste in meiner Berufsschulklasse damals war 50+, der Zweitälteste war 35 😉.
 
Gamerfreak89 schrieb:
Des weiteren würde ich sehr sehr gerne mal auch etwas in Buch Form mir durch lesen, habt ihr da einen Tipp was ich mir durchlesen kann ?
Die "Von Kopf bis Fuß" Reihe ist herausrangend. Dementsprechend empfehle ich dir "C# von Kopf bis Fuß". Das hat auf Amazon eher zwiespältige Bewertungen allerdings und ich habe in dieses nie reingeschaut, ich kenne nur "Java von Kopf bis Fuß" und noch 1-2 andere.
 
Wenn du erste Erfahrungen sammeln sollst und erstmal die Grundlagen kennen willst, kann ich dir https://www.w3schools.com/ ans Herz legen. Für das erste kennen lernen und überhaupt mit einer Sprache anfangen zu können ist die Seite ein guter Start.

Ansonsten wurde bereits Udemy genannt. Die Seite ist auch gut (immer auf Angebote warten, die schmeißen ständig gefühlt alles für 10€ raus).

Da ich selbst seit 10 Jahren C# Entwickler bin, kann ich dir (falls du dich für C# entscheidest) das Buch "Head First C#" empfehlen. Mit diesem Buch brauchst du zwar etwas länger, aber lernst deutlich besser, was auch die Absicht in diesem Buch ist.

Bei Java habe ich in der Uni die Bücher "Java ist auch eine Insel" genutzt. Die fande ich damals auch nicht schlecht.

C/C++ sind sehr kompliziert. Damit würde ich persönlich nicht anfangen.

Python wird in Entwicklerkreisen oft als Einsteigerfreundliche Sprache genannt. Kenne ich mit Python aber leider nicht aus.

Zudem ist auch immer die Frage, was du später primär entwicklen möchtest. Falls du das schon weißt. Jede Programmiersprache hat ihre stärken und schwächen. Wenn du schon weißt in welche Richtung du gehen möchtest, kann diese Info helfen. Ansonsten sind C#, Java und (glaube) Python gute Alrounder.
 
Cant4ria schrieb:
Da ich selbst seit 10 Jahren C# Entwickler bin, kann ich dir (falls du dich für C# entscheidest) das Buch "Head First C#" empfehlen. Mit diesem Buch brauchst du zwar etwas länger, aber lernst deutlich besser, was auch die Absicht in diesem Buch ist.
Das ist übrigens das von mir weiter oben empfohlende Buch "C# von Kopf bis Fuß", nur eben auf Deutsch bzw. Englisch. Allerdings scheint es die 4. Edition noch nicht auf Deutsch zu geben. Ob das wichtig ist kann @Cant4ria aber sicherlich beurteilen. Also ob es wichtige Versionssprünge gab oder sich die (generell oder im Buch) verwendeten Tools wesentlich geändert haben. Die 3. Edition ist von 2014.
 
BeBur schrieb:
Das ist übrigens das von mir weiter oben empfohlende Buch "C# von Kopf bis Fuß", nur eben auf Deutsch bzw. Englisch. Allerdings scheint es die 4. Edition noch nicht auf Deutsch zu geben.
Hi @BeBur ,
erstmal danke für den Hinweis :) Die Deutsche Version des Buches kannte ich tatsächlich nicht. Liegt aber auch daran, dass ich alles auf Englisch lese.

Ob das wichtig ist kann @Cant4ria aber sicherlich beurteilen. Also ob es wichtige Versionssprünge gab oder sich die (generell oder im Buch) verwendeten Tools wesentlich geändert haben. Die 3. Edition ist von 2014.
Zu C#:
In den Jahren hat sich bei C# sehr viel getan. War es damals noch eine Windows-only Sprache, funktioniert C# heute auf Windows, Mac, Linux und man kann damit ziemlich viel anstellen. Ist ähnlich wie Java zu einem Alrounder geworden.
Einstiegspunkt: https://dot.net/

Von der Sprache selbst behält das alte Buch natürlich seine Gültigkeit. Die Mittel werden heute noch funktionieren und Visual Studio wird an der ein oder anderen Stelle etwas anders funktionieren.

Dennoch:
Nicht nur wegen des Umstiegs vom klassichen ".Net Framework" zum "Net Core" (heute nur noch .Net), sondern auch wegen der nicht wenigen Erweiterungen in der Syntax würde ich daher zu dem neueren Buch empfehlen. Auch weil das klassiche Framework nicht mehr aktiv weiter entwickelt wird und alle Neuerungen in das .Net Core fließen.

Auch ist es als Entwickler immer wichtig up-to-date zu bleiben. Das alte Framework zu kennen ist immer gut, da noch sehr viele klassische Anwendungen existieren die gepflegt oder irgendwann migriert werden müssen. Aber zum Beispiel beim Thema Datenbankzugriff mit Entitiy Framework (defacto Standard für Datenbank-Operationen) gab es leider viele breaking changes, die uns in der Arbeit auch an paar Stellen Kopfzerbrechen bereitet haben.
Nichts desto trotz, wird das alte irgendwann auslaufen: https://learn.microsoft.com/de-de/lifecycle/products/microsoft-net-framework


Lange Rede kurzer Sinn :)

Für die Grundlagen und überhaupt starten zu können, geht das alte Buch definitiv noch. Für die Überlebensfähigkeit, sollte aber immer auf das aktuelle gesetzt werden ;)
 
Zurück
Oben