Ich (programmiere seit mittlerweile 6 Jahren, davon 2 Jahre beruflich) kann dir nur ans Herz legen:
1. Tutorials bringen weitesgehend nichts (außer wenns um Standardzeug geht wie Schleifen, Abfragen, usw.)
2. versuch sau viel selbst zu machen und google nur das aller nötigste (wenn ich z.B. anfangen will mit automatisierte Browsertechnik google ich maximal was ich dazu benötige - installiere es, und teste dann alleine ohne Hilfe)
3. lass dich von Rückschlägen nie unterkriegen (du wirst niemals zu 100% jeden Tag so gut programmieren können wie den einen Tag davor, gönn dir Pausen, ich merks bei mir.. ich programmiere mit Arbeitszeit eingerechnet teilweise bis zu 12h am Tag)
4. kein Meister ist vom Himmel gefallen (lernen ist eines der wichtigsten Dinge, genauso wie Optimierung des Codes und unnötige Dinge rauslassen)
5. jeder Mensch macht Fehler (speziell: lern aus deinen Fehlern, du musst sie dir nicht notieren aber definitiv merken)
6. Debugge deine Fehler und mach eine Problemanalyse, ich kenne sau viele Leute die des debuggings nicht mächtig sind, aber glaub mir - es ist ein mächtiges Werkzeug
7. asynchrone Programmierung, Threads sind was tolles - können aber die Hölle sein. Wenn du eine GUI haben willst, wird das definitiv ein muss.
Wie ich damals angefangen habe:
- Wie programmiere ich einen Webbrowser?
Was ich jetzt mache:
- Wie programme ich einen kompletten Messablauf der so effizient und schnell wie möglich ablaufen muss?
By the way wird es in der Programmierung Dinge geben die du IMMER hassen wirst und die du auf den Tod nicht ausstehen wirst (damals bei mir: Klassen), aber je mehr du dich damit beschäftigst umso erträglicher wird es. Ich hasse zwar immer noch Klassen, aber mittlerweile kann ich sie ausm f'f' schreiben. Viele Dinge (wie der eigene strukturierte Programmierstil) kommen einfach mit der Zeit, wobei.. als ich bei meiner jetzigen Firma angefangen habe, war der scheußlich.. also manchmal brauch man auch Hilfe wenns um ordentliche Strukturierung geht.
Bei mir gilt:
- private Variablen immer klein anfangen
- public Variablen immer groß anfangen
- alles darf so lange Bezeichner haben wie es will, hauptsache ich versteh den Sinn dahinter
- kurze, prägnante Kommentare
- nicht alles muss kommentiert werden