SchoolOfProg - Eure Erlebnisse

Es gibt 13 Antworten in diesem Thema. Der letzte Beitrag () ist von exc-jdbi.

    SchoolOfProg - Eure Erlebnisse

    Hallo,

    ich beobachte mit großen Interesse Konversationen in denen es darum geht, wie euch die Lehrer in der Schule mit diversen Programmiersprachen quälen und wie andere User darüber denken.
    Ob nun WPF im Unterricht falsch verwendet wird - und kein Databinding beigebracht wird, oder jemand mit Assemblersprachen die eigenen Nerven lahm legt.

    Mich würde sehr interessieren, mit welcher Programmiersprache Ihr in Schule, Ausbildung, Beruf, Hobby - je nachdem wie viel Ihr preisgeben wollt - konfrontiert wurdet.
    Zudem wären eure Erfahrungen in Sachen Pro/Kontra für diese Sprache zum Lernen gefragt. Wie habt ihr es empfunden?


    Kurz zu mir:

    Gymnasium: 2 Jahre Programmierung in Delphi.

    Nachteil:
    - wird damit überhaupt noch was aufm Markt geschrieben außer paar Eierlegende Wollmilchsäue aus vergangener Zeit?

    Vorteil:
    - wir durften von Beginn an weg von Konsole und gleich mit Forms etc. experimentieren. Der Lehrer hat uns in diesem Zusammenhang mit Delphi einige Algorithmen erklärt.
    - Nachdem das Grundwissen da war, durfte man selbstständig Projekte erarbeiten (in Gruppen). -> finde ich sehr wichtig, auch mal den eigenen Kopf anstrengen und nicht nur tun was der Lehrer sagt


    Ausbildung: 1.5 Jahre Programmierung in VB.NET/C#

    Nachteil:
    - naja, alles was ich in VB.NET und Konsorten weiß, hab ich mir selbst beigebracht, aber das ist eine andere Geschichte ;)

    - komplex - für Plattform-übergreifende Software oder Web viel Einarbeitungszeit
    - Sorry, aber das Visual Studio als IDE finde ich sowas von Überladen :D
    - C# in Berufsschule nur Konsole -.-''

    Vorteil:
    - Gute Dokumentation und Weiterbildungsmöglichkeiten (vb-paradise.de)
    - OOP lässt sich damit nicht nur erlernen sondern auch gut erklären
    - recht schnell sind eigenen Projekte auf die Beine gestellt


    Ausbildung Teil 2: Programmierung im Web-Bereich (PHP, JavaScript, ...)

    Nachteil:
    - Von jetzt auf dann der Wechsel von WinForms und VisualStudio auf Websites. -> hat mir einige Nerven geraubt ;)

    Vorteil:
    - Plattform-übergreifend ohne Ausnahme (naja, sofern das Endgerät nen Browser hat :D)
    - vorherige Kenntnisse haben mir sehr geholfen
    - Durch Websites hab ich erstmals richtig gelernt, Backend und Frontend voneinander zu trennen. In .NET war das iwie größtenteils alles in einem bei meinen Projekten



    Meine Meinung:
    Ich finde, wenn man einmal eine Programmiersprache und deren Umgang richtig erlernt hat, kann man im Prinzip mit jeder anderen Programmiersprache umgehen. Klar hat jede Programmiersprache Besonderheiten, aber die Grundalgorithmen sind gleich, nur die Syntax ist etwas anders.
    Deshalb ist das Wissen, welches man in der Schule erlangt - weg von der Programmiersprache oder wie es der Lehrer visualisiert - wichtig, da man es auf jede andere Programmiersprache reflektieren kann.


    So, genug von mir. Wäre schön wenn sich einige dazu bereit erklären, wie eure Erfahrungen sind !

    LG Acr0most
    Wenn das Leben wirklich nur aus Nullen und Einsen besteht, dann laufen sicherlich genügen Nullen frei herum. :D
    Signature-Move 8o
    kein Problem mit privaten Konversationen zu Thema XY :thumbup:
    Ich war auf einem Berufskolleg und hab dort den Informationstechnischen Assistenten gemacht (Fachabitur).

    Der Unterricht dort war generell eine Katastrophe aber da es hier ums Programmieren geht erzähl ich mal wie es bei uns war.
    In dem Bildungsgang waren 3 Programmierlehrer vorgesehen, einen davon schätze ich aber wirklich so ein als würde ihn auch interessieren was er uns beibringt.
    Der Bildungsgang besteht aus 3 Jahren. Warum 3 und nicht 2? Ganz einfach, das dritte Jahr ist mehr ein praktisches Jahr. Es wird eine Art Partnerschaft mit einem Unternehmen in der Nähe gemacht und dann ein Projekt für das Unternehmen erstellt. Eingeteilt wurde die Klasse dann in 2er oder 3er Gruppen. Die Partnerunternehmen wurden durch Praktika an Land gezogen die in der Unter- und Mittelstufe absolviert wurden. Das dritte Jahr war mit das spannendste aber auch entspannendste Jahr!

    In der Unterstufe haben wir bei 'nem alten Sack (leider) mit Java angefangen. Da der Unterricht dort so schlecht ist, sind wir aber nie wirklich weit gekommen.
    Wir haben auch leider direkt mit Eclipse angefangen. Warum leider? Naja, Eclipse ist wirklich super, keine Frage, aber ich halte es doch für besser den Schülern erstmal beizubringen was so eine IDE im Hintergrund eigentlich alles für eine Arbeit abnimmt. Stattdessen lernen wir dort wie ein Projekt angelegt wird und diese bescheuerte GUI von Java programmieren. Java generell hat mich schon abgenervt aber das alles so langsam voran ging war einfach nur Krebs. Eigentlich waren auch maximal 5 Schüler wirklich an dem Unterricht interessiert, der Rest hat wahrscheinlich nur im Internet gesurft und GTA gezockt.

    Trotzdem kam mir das alles wie eine Ewigkeit vor. Irgendwann haben wir dann angefangen die Grundlagen von Android zu lernen und dann kam anstelle einer Klausur eine Projektphase wo sich 2-3 Leute jeweils zusammen tun sollten und einen Kompass programmieren sollten. Die meisten haben sich alles ausm Internet kopiert weil sie es nicht konnten. Am Ende hatten dann zig Leute ähnliche Projekte was natürlich aufgefallen ist, den Lehrer den wir hatten aber auch nicht wirklich gejuckt hat.

    Irgendwann sind wir dann von der Java Kacke weg und haben in der Mittelstufe nen anderen fähigeren Lehrer bekommen, aber leider auch eine Doppelbesatzung mit ner anderer Lehrerin die dann wiederum nix konnte. Die haben sich dann im unterrichten abgewechselt aber sich nie abgesprochen -> Kam also auch wieder nur Mist bei raus.

    Jedenfalls haben wir dann mit PHP angefangen und langsam an MySQL bzw. mysqli und PDO gewagt. Die beste Entscheidung die dort jemals getroffen wurde.
    Ab da wurde es dann für mich auch etwas interessanter, da konnte ich nämlich auch noch einiges lernen weil ich PHP vorher auch nie wirklich ausführlich benutzt hatte, wusste aber das es sehr von Vorteil ist das zu können.

    Naja jetzt erzähl ich schon so viel, was mich eigentlich dazu brachte hier zu kommentieren war die Abschlussklausur. Die wurde von dem ersten Lehrer in der Unterstufe zusammengestellt mit dem wir Java hatten. Die Klausur wird dann eingeschickt und von der IHK geprüft. Die Klausur wurde zugelassen und dann geschrieben. In der Klausur ist mir dann aufgefallen, das die letzte Aufgabe total fehlerhaft ist. Die Aufgabe wurde daraufhin dann einfach so gestrichen (obwohl sie ja von der IHK zugelassen wurde). Also das kam alles irgendwie so korrupt vor das ich echt kein Bock mehr hatte auf der Schule weiter unterrichtet zu werden.

    Habe dann trotzdem die Musterlösungsklausur abgegeben und dann hab ich mich da schnellstmöglich vom Acker gemacht.
    Schule ist bei mir über 15 Jahre her. Da gab's noch VB5/6 zum Frühstück. Wir haben natürlich nur grundlegende Sachen gemacht, Kontrollstrukturen eben. Ich kann mich nur an nen Taschenrechner erinnern, den wir gemeinsam gebastelt haben. Aber jeder, der konnte, durfte mehr, sodass einige ihre Heimprojekte noch einbringen durften. Ich hab damals privat v.a. mit QBasic gearbeitet.

    Vorteile
    - Alle haben gemeinsam den Urmatsch kennengelernt, sodass ein halbwegs gleichmäßiges Vorankommen möglich war.
    - Wer nicht weiterkam, durfte sich von anderen was abschauen und sich von ihnen helfen und erklären lassen.
    - Privatprojekte durften (in Maßen) vorgestellt und auch verteilt werden.

    Nachteile
    - Eigentlich keine. Diejenigen, die sich unterfordert gefühlt haben, durften selber weiterbasteln, erhielten aber auch notfalls Unterstützung vom Lehrer.


    Später hab ich mich selbst mit C++ ne ganze Weile rumgeschlagen, kurze Zeit kamen auch HTML und SVG dazu (wobei letzteres ja keine Programmiersprache ist). Nachdem meine C++-Projekte aber immer größer wurden, versandeten sie => Fazit: einiges gelernt, wieder viel verlernt.
    Durch die Berufsarbeit kam dann wieder VB ins Spiel, diesmal VB.Net. Die Projekte erleichterten/ersetzten in unserem Kleinbetrieb so manche Dokumentations- und Schreibarbeit

    Vorteil
    - wirklich praxisrelevante Arbeiten mit Kollegenfeedback
    - viel im Selbststudium, auch durch trial and error beigebracht

    Nachteile
    - niemand vor Ort, der es besser wusste/konnte
    - teilweise entstanden hanebüchende Konstrukte
    - auch hier versandeten manche Projekte, da tonnenweise code smells und Ineffizienz

    bisher letzter Schritt: vb-paradise und kurze Zeit später CCD.

    Vorteile
    - Verliehen mir beide ungeheuren Wissensschub, der noch lange nicht abgeschlossen ist.
    - Projekte langsam, aber sicher endlich "schön" und v.a. effizient, wiederverwertbar und wieder anfassbar.

    Nachteile
    - ich bin programmier- und fachbuchsüchtig geworden
    - es geht sehr viel Zeit für dieses Hobby drauf
    - da ich tonnenweise Altlasten in der Arbeit hab, wird es einige Zeit dauern, bis die alten Projekte endlich gut werden.

    btw: Bin beruflich im Gesundheitswesen unterwegs und hatte im Studium ausbildungstechnisch nix Relevantes mit IT zu tun.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „VaporiZed“ ()

    Auch kurz zu mir:
    Gymnasium 8. Klasse Word, Excel im Informatikunterricht -> zumindest ein Macro wurde gebaut, welches einem in Word einen ausgewählten Text Fett macht und in Excel ausgewählte Zellen ein-rahmt. Im zweiten Halbjahr ging es dann um Robot Carol (falls sich da jemand dran erinnert).

    Vorteil:
    - Grundlegende Kenntnisse in Office *lach*
    - Vereinfachung des Arbeitens mit Office *lach x2* -> war jedenfalls die Begründung, warum im ersten Halbjahr das gemacht
    wurde
    - Grundlegendes Verständnis was "Programmieren" eingelich heißt: Dem Computer in einer bestimmten Art und Weise in einer festgelegten Syntax sagen, was wie zu tun ist.

    Nachteile:
    - Nicht wirklich praxisorientierte Anwendung des Faches
    - Ziemlich dröges dahinschreiben/abschreiben von dem was der Lehrer vorne vorzeigt

    Weiter gings es dann in der 9. Klasse mit SQL. Damals gab es eine Sammlung kostenloser Freeware Tools (Portable), auf dem alles Mögliche (von XAMPP über LibreOffice bis hin zu einem Tool zum grafischen Aufbauen von Relationen Datenbanken) drauf war. Mit dem Grafischen Datenbankdesigner hat man sich damals die Relationen per Drag 'n' Drop zusammen geschustert, auf Export geklickt und das *.sql File in XAMPP PhpMyAdmin importiert. Damals der totale Mist - im Nachhinein gesehen eigentlich das Beste, was ich damals bekommen habe; aber schlauer ist man immer erst hinterher :(
    Entspechendes SQL wurde dann "gelehrt" - also SELECT, INSERT, halt die ganzen CRUD Operationen (inklusive JOINs zwischen zwei Tabellen: Klassischerweise Lehrer und Lehrplan/Klasse)

    Vorteile:
    - Praxisnahes unterweisen des Lernstoffes
    - SQL bringt einglich immer was
    - Der Designer war/ist schon was nettes, ich wünschte ich wüsste, wie das Zeug heißt :(

    Nachteile:
    - Von Office mit VBA zu SQL zu wechseln ohne dem Schüler überhaupt zu erklären, was das mit dem SQL genau auf sich hat (also dass SQL nicht wie oben, deklarativ zu verstehen ist, sondern nur dem reinen Abfrage

    Weiter geht es dann in der 10. Klasse mit EOS und der Aufgabenstellung eine Ampel zu zeichnen gefolgt von Java und dem Ziel zuest einmal die Syntax von Java zu lernen, die Datentypen zu kennen (also die primitiven) und zum schönen Abschluss noch ein bisschen Arrays. Dann ging es mit Mathe (Limes berechnen weiter, weil unsere Lehrer a Depp war). Das war's dann auch schon mit dem Gymi

    Nach dem Gymnasium 10. Klasse hab ich dann an einer nahegelegenen Berufsschule - wo ich dann auch meine Ausbildung zum FIAE gemacht habe - ein sogenanntes Berufsgrundschuljahr für Informatik absolviert. Da hat man halt so die Grundzüge von dem, was man als FIAE, FISI, Informatik-Kaufmann und als IT-Systemelektroniker in der Ausbildung gezeigt bekommt in einem einzigen Jahr komprimierter Weise gezeigt bekommen.
    Da ging es dann wieder um Office aber diese mal richtig mit VBA und Programmieren los (Also die altbekannten Kontrollstrukturen, PAP, Struktogramm, ..., If, Schleifen, Select, ...)

    Vorteile:
    - Praxisorientiertere Awnendung
    - Wissensvorsprung auf Ausbildung

    Nachteil:
    - Fällt mir jetzt nix ein

    In der Ausbildung war dann im 1. Jahr noch mal Office&VBA dran, 2. LJ mit VB.NET und ein wenig Java, 3. LJ dann Java und C++ sowie über alle Lehrjahre ein wenig SQL, PHP und Web Dev

    Vorteile:
    - Die grundlegenden Sachen, die man immer irgendwo und irgendwie braucht werden einem (relativ) praxisnah vermittelt

    Nachteile:
    - Nicht jede Firma verwendet das in der Berufsschule gezeigte. Leider kann ich keine der oben genannten Sprachen in meinem Beruf anwenden.


    Lg Radinator
    In general (across programming languages), a pointer is a number that represents a physical location in memory. A nullpointer is (almost always) one that points to 0, and is widely recognized as "not pointing to anything". Since systems have different amounts of supported memory, it doesn't always take the same number of bytes to hold that number, so we call a "native size integer" one that can hold a pointer on any particular system. - Sam Harwell
    Ich hatte grade letztes Jahr mein Abitur bestanden und hatte nur Info in der Oberstufe, sprich die letzten drei Jahre.
    Wir hatten zwar 5te Klasse einen Computerkurs, ging aber nur so um grundlegendes mit Word + Excel + PowerPoint.

    Ich hatte allerdings in der 7ten für ein Jahr eine Programmier AG, die mich praktisch ans Programmieren gebracht hat. Wir haben in DecimalBASIC programmiert und zwar so verschiedene kleine Sachen. Vokabeltrainer, Verschlüsselung mit ROT, Ziel20 (ein Spiel). Nach der AG hat mich mein Lehrer persönlich auf ProjectEuler gebracht, wodurch ich immens viel lernen konnte.

    Später habe ich mir dann selbst eine neue Sprache gesucht, also alles privat, sodass ich in der 11ten dann, erstes Mal Info für mich, Grundkenntnisse in VB.NET und C# hatte, wenn nicht mehr.

    Der Unterricht fing praktisch bei null an, Kontrollstrukturen und Struktogramme, bis wir bei Ruby angefangen haben. Erst RubyKara, ein Workaround mit Turtlegraphics, um die Sprache kennenzulernen, und dann später Pong in Ruby On Rails. Im Nachhinein betrachtet find ich Ruby eig ganz cool, auch wenn mir Python bei weitem besser gefällt, aber für Schule absolut in Ordnung, wobei RubyOnRails imho ne Katastrophe ist.
    Es ging aber vom Unterricht, wir haben Dinge einigermaßen gelernt, OOP fiel durch RoR praktisch raus (übertrieben, aber mehr als Klassen haben wir auch nicht erstellt). Zweites und Drittes Jahr kamen dann noch einmal HTML mit Sinatra für eine Webanwendung und dann SQL auch irgendwo.

    Ich fande das an sich einen ganz guten Unterricht, wenn auch für jemanden, der sich schon damit befasst hat, leicht unterfordernd, aber es war simpel und kratzte hier und da etwas an, anstatt sich in was zu vertiefen. Nur die Webanwendung war etwas komisch, wir wurden praktisch ins Wasser geworfen und sollten einfach mal machen, aber naja.
    »There's no need to "teach" atheism. It's the natural result of education without indoctrination.« — Ricky Gervais
    Gymnasium zwei Jahre Java
    Vorteile:
    • Grundlegende Programmierkonzepte schnell und einfach gelernt (Rekursion wurde nachher auf der Uni wesentlich schlechter erklärt mMn)
    • Unkompliziert (im Gegensatz zu z.B. C/C++)
    Nachteile:
    • "Weltfremd" - Wurde abseits des Unterrichts nicht verwendet; mit dem erlangten Wissen konnte man kein wirklich nützliches Programm schreiben (es wurde z.B. kein IO behandelt)
    • Kein Clean-Coding gelernt: Code quasi unlesbar...

    Berufsschule 2 Jahre C#
    Vorteile:
    • Endlich Stoff, der realitätsnah vermittelt wurde; Man konnte jetzt eigenständig sinnvolle kleine Tools schreiben
    • Endlich kein Java mehr! (Wer braucht schon Performance...)
    Nachteile:
    • Immernoch kein Clean-Coding gelernt; Code immernoch unlesbar...

    Uni (über die Semester verteilt Java, C, C++, ASM, JavaScript)
    Vorteile:
    • Clean-Coding wurde behandelt!
    • Arbeiten mit git
    • Endlich kann man komplexe Systeme bestehend aus vielen Komponenten selber (und wartbar!) schreiben
    • Arbeiten an coolen Projekten mit Hardware wie z.B. HoloLens
    ​Nachteile:
    • Es werden nur Basics vermittelt; Es wird vorausgesetzt, dass man sich selbstständig um vertieftes Wissen bemüht!
    • Leistungsniveau und Wissensstand variieren unter den Studis sehr; Projektarbeit im Team daher teilweise schwierig

    us4711 schrieb:

    X-Zat schrieb:

    Es wird vorausgesetzt, dass man sich selbstständig um vertieftes Wissen bemüht!

    Studium: That's the name of the game ....

    Ich wollt' gerad sagen, das ist ja mal mehr als nur normalität. Beim Studium, gerade Informatik, gehört Eigeninitiative einfach dazu. Es gibt so viele Leute die hier bei uns arbeiten die aus nem Informatik Studium kommen, die aber höchstens Grundlagen beherrschen. Und das ist finde ich einfach nur traurig.
    Realschule

    10 Klasse: HTML/CSS --> Wobei das eher einfache Grundlagen waren

    Ausbildung (FISI)

    2 Jahr: Bisschen vb.net (oder wahlweise c#) wobei die Klasse eig. nicht interessiert war, viele sind/waren der Meinung das man als FiSi nicht Programmieren können muss.
    3 Jahr: etwas PowerShell --> Hätte in unserem Beruf wahrscheinlich mehr Sinn gemacht damit anzufangen.
    NETworkManager - A powerful tool for managing networks and troubleshoot network problems!
    Ich hatte in der 11. Klasse etwas Informatikunterricht, wobei wir da nur HTML & JS auf ziemlich einfachem Niveau gemacht haben. Für die Leute, die sich noch mit nichts auskannten, war das ein ganz akzeptabler Einstieg in C-like Programmiersprachen, der Rest (inklusive mir) hat nichts wirklich gelernt. Trotzdem war der Unterricht ganz entspannt und angenehm, ohne todlangweilig zu sein und erstaunlicherweise waren alle Leute motiviert genug, um während dem Unterricht nicht von der erstaunlich extensiven Sammlung an gecrackten (!) Spielen auf dem Schulserver Gebrauch zu machen - die Auswahl ging von Rollercoaster Tycoon und ähnlichen über viele CoD-Titel, GTA SA & VC bis zu Spielen wie Crysis und Minecraft.

    Auch die Hardware war erstaunlich angenehm - wir hatten 50 HP-Laptops (für nur 20 Leute) mit aktuellem i5, 8GB RAM, ner SSD und dedizierter Nvidia-Grafik, welche dank extragroßen Akkus nach 1.5h Benutzung immer noch 90% Akkuladung hatten, was eine sehr angenehme Abwechslung zu den sonst in der Schule eingesetzten Schrott-Laptops von "Terra" darstellte, welche 5min zum booten und weitere 5min zum Anmelden bräuchten.

    Ansonsten habe ich noch eine "Robotik-AG" geleitet (hatte das Ganze von einem Lehrer übernommen, der das vor 15 Jahren angefangen hatte), wo Kinder aus der 6. bis zur 10. Klasse mit LEGO Mindstorms NXT- und später auch EV3-Robotern dir Basics vom Programmieren und Bauen von Robotern gelernt haben - in meinem letzten Jahr hatten wir sogar mit ein paar Teams an einem trinationalen Wettbewerb teilgenommen, wobei das Team, welches ich betreut habe, sogar mit Abstand den 1. Platz geholt hat ^^

    Letzten Endes finde ich vor allem den Ansatz mit den Robotern sehr cool, da die Basics Einfach zu erlernen sind, man sich aber, obwohl man nur 10-16 Jahre alt ist, immer weiter entwickeln kann und man immer komplexere Sachen machen kann, wenn man weit genug ist.
    Hab gar nix mit IT gelernt. Hab mir damals (vor ca. 2 Jahren) nen C# Buch gekauft und Abends nach dem Arbeiten durchgearbeitet weil mich das Thema interessiert hat. Hat ca. 1 Jahr gedauert bis ich das Buch durch hatte. Zusätzlich habe ich vieles im Internet recherchiert und in kleinen Projekten umgesetzt. Auch hier im Forum habe ich viele Threads verfolgt und mir Lösungen und Konzepte anderer angeschaut um meinen Horizont zu erweitern. Tutorials habe ich mir nie angeschaut, fand alle schlecht die ich gefunden habe.

    Da ich dann irgendwann auch im Geschäft ein wenig programmieren sollte, hab ich mir noch VB.Net rein gezogen. Den Syntax hatte ich dann recht fix (paar Wochen) drauf.
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen
    Wir hatten in der Schule ein wenig Pascal und Oberon. Ein paar kleinere Sachen wie Lottogenerator, Matheberechnungen usw. konnten wir schon mal umsetzen.

    Dafür wurde der Schwerpunkt auf Excel gesetzt. Unteranderem für Mathe. Berufsbedingt kam ich jedoch schnell an die Grenzen der Zellenprogrammierung in Excel, so dass ich angefangen habe VBA zu Progen. Aber auch da waren die Grenzen durch die sehr komplexen Berechnungen schnell erreicht.

    Irgendwann bin ich dann auf Vb.net umgestiegen, und habe mir arbeitsbedingt soviel wie als nur auch möglich die Themen aus dem Internet/Foren recherchiert. Nebst dem habe ich auch eigene Projekte in meiner Freizeit erstellt, und so wurde Vb.Net immer mehr zur Hauptsprache.
    Das Interesse für andere Sprachen kam dann ein wenig später. Ever Learning by doing, war das Motto.

    Freundliche Grüsse

    exc-jdbi