Hallo liebes Forum, ich selbst bin staatl. gepr. Informatiker und Informatik-Techniker. Meine Freundin (26) interessiert sich seit Kurzem für das Thema Informatik. Da ich aus ihrer Sicht ein "guter Lehrer" bin, der ihr schon ein paar Dinge beigebracht hat, möchte ich irgendein Lernkonzept ausarbeiten, damit ich nicht völlig planlos durch die Materie renne, ihr das Thema näher zu bringen. Im Internet habe ich nun nach "Einführung in die Informatik" o.ä. gesucht, leider aber nichts brauchbares für jemanden gefunden, der von der Informatik keinen blassen Schimmer hat. Sie war bisher in einer komplett anderen Branche tätig und möchte sich eventuell umorientieren. Deshalb möchte ich ihr einen Überblick über alles "Wichtige" zum Thema Informatik geben, damit sie selbst erkennt, ob das Ganze das Richtige für sie wäre und sie daraufhin ggf. eine Ausbildung anstrebt. Deshalb meine Frage: Gibt es eine Brauchbare Seite, die einen Rundumschlag um das Thema macht, ohne allzu sehr ins Detail zu gehen? Ich habe schon angefangen, ihr die ersten Schritte eines "Hallo-Welt"-Programms in C beizubringen. Doch schon bei den ersten Steps kommen Fragen auf, die ich nur mit "das erklär ich dir später" abtun muss ("warum steht da 'int'?") Dieses "das erklär ich dir später" häuft sich aber, da ich im Moment eben komplett planlos lehre und nicht weiß, wo ich am Besten anfange. Mir würde eventuell eine Art Lehrplan reichen, wo ich mir selbst meinen "Vortrag" zusammentragen könnte. Schließlich bin ich ja vom Fach und halte mich für halbwegs kompetent. Ihr ein Programmierbuch in die Hand zu drücken ist auch nur ein Teilbereich der Informatik und lehrt ihr auch nicht wirklich, was Informatik tatsächlich ist und warum man überhaupt programmiert. Wisst ihr was ich meine? Könnt ihr mir weiterhelfen? Ich möchte sie tatkräftig bei ihrem Vorhaben unterstützen, denn ich bin froh darüber, dass sie sich dafür interessiert. Vielen Dank Euch!
Guck dir die Modulhandbücher von Bachelor-Abschlüssen der Unis an. Wenn du dich für halbswegs kompetent hälst, dann wird die Art und Weise, wie es dir beigebracht wurde, wohl nicht so schlecht sein.
Meinst Du Informatik oder Programmieren? Das sind zwei verschiedene Paar Schuhe. Google mal nach "Grundlagen der Informatik", da wirst Du fündig, weil so mestens auch die Vorlesungen heißen. Für obiges Problem vielleicht das hier: https://www4.fh-swf.de/media/downloads/fbtbw/download_8/schmidt_2/grundlagen_der_informatik/skript_1/Skript_Grundlagen_der_Informatik.pdf
Fang mit dem Thema Entscheidbarkeit und Turingmaschinen an, damit sie erstmal weiß was überhaupt geht und was nicht geht... ;)
> Sie war bisher in einer komplett anderen Branche tätig und möchte sich > eventuell umorientieren. M.M.n. ist es immer Hilfreich wenn man an Gegebenheiten der /anderen Branche/ anknüpfen kann. Welche ist es? > Ich habe schon angefangen, ihr die ersten Schritte eines > "Hallo-Welt"-Programms in C beizubringen. Doch schon bei den ersten > Steps kommen Fragen auf, die ich nur mit "das erklär ich dir später" > abtun muss ("warum steht da 'int'?") Dieses "das erklär ich dir später" > häuft sich aber, da ich im Moment eben komplett planlos lehre und nicht > weiß, wo ich am Besten anfange. Python hilft hier, weil keine Typen anzugeben sind. Natürlich muss die Sache mit den Datentypen "später" doch vollständig erklärt & verstanden werden, aber eben später. "der Computer (die CPU) ist der sturste und dümmste Angestellte" ist ein Satz welcher mir in dieser Situation hilft. Er muss zwingend alles haarklein "erklärt" bekommen/angewiesen werden. Welche Mittel hast da/was willst einsetzen? - PC? uC? Hochsprache(n)? In welche Richtung soll es gehen? - Embedded mit physical computing , also wo LEDs blinken und sich was (RC-Servo) bewegt oder abstrakt (nur) am PC Bildschirm, EDV-Anwendungen? (Ist die Interessentin gewohnt Abstrakt zu denken? Muss daraufhin geführt werden? Liegt ihr das?)
>Meinst Du Informatik oder Programmieren?
Das ist genau das Problem...
Eigentlich will ich ihr Informatik beibringen, denn um Programmieren zu
verstehen (Speicherverwaltung, Prozesse,...) sollte auch ein bisschen
Hintergrund bzgl. Rechnerarchitektur etc. gegeben sein.
Wie soll sich jemand einen Pointer vorstellen können, wenn er nicht
weiß, wie ein Speicher funktioniert?
Gruß
Fang mit der CPU und den Aufbau eines Rechners an. Dann würde ich auch mal mit C anfangen da simpel vom Syntax her, einfach gcc filename.c und man kann es ausprobieren. Wenn sie mal das Konzept mit Funktionen, Schleifen, If und Variablen kennt dann kann man sich den ASM Code ansehen um zu verstehen was man vorher bei der CPU gelernt hat. Wenn man den Aufbau und Funktionsweise eines Rechners nicht miteinbezieht dann bleiben sehr viele abstrakte Fragen übrig die dann halt hingenommen werden ohne das die Person wirklich versteht was da passiert. Uni Unterlagen würde ich nicht nehmen. Wenn man C kennt und mit Files umgehen kann dann kann es ja weiter gehen mit Java oder SML oder WEB.
Wenn es wirklich um Informatik geht, würde ich mit den mathematischen Grundlagen und, wie oben schon geschrieben wurde, Turingmaschine, Algorithmen und sowas anfangen. Dir scheint es aber ums Programmieren und ein bisschen Rechnerarchitektur zu gehen. Da halte ich es für sinnvoller, erstmal mit was einfachem anzufangen und dann zu sehen, was sie interessiert. Du zeigst ihr, wie man ein einfaches Fenster öffnet. Wenn sie fragt, wie man darauf 'malen' kann, zeigst du ihr, wie Graphikausgabe funktioniert. Wenn sie fragt, wie man damit eine Seite im Internet aufrufen kann, zeigst du ihr, wie Netzwerkkommunikation funktioniert.
> Eigentlich will ich ihr Informatik beibringen, denn um Programmieren zu > verstehen (Speicherverwaltung, Prozesse,...) sollte auch ein bisschen > Hintergrund bzgl. Rechnerarchitektur etc. gegeben sein. > > Wie soll sich jemand einen Pointer vorstellen können, wenn er nicht > weiß, wie ein Speicher funktioniert? Gut. Also Schaltanwendungen mit Transistoren (Grundschaltungen) --> TTL Logik (Gatter, FlipFlop, Schieberegister, Zähler) --> ALU --> CPU, Register, A&D Bus --> RAM, ROM, PIA --> Maschinensprache, Assembler --> "Hochsprache(n)", Rechnerarchitekturen.
Sepp schrieb: > Fang mit der CPU und den Aufbau eines Rechners an. > Dann würde ich auch mal mit C anfangen da simpel vom Syntax her, einfach > gcc filename.c und man kann es ausprobieren. Wenn sie mal das Konzept > mit Funktionen, Schleifen, If und Variablen kennt dann kann man sich den > ASM Code ansehen um zu verstehen was man vorher bei der CPU gelernt hat. > Wenn man den Aufbau und Funktionsweise eines Rechners nicht > miteinbezieht dann bleiben sehr viele abstrakte Fragen übrig die dann > halt hingenommen werden ohne das die Person wirklich versteht was da > passiert. > Uni Unterlagen würde ich nicht nehmen. > Wenn man C kennt und mit Files umgehen kann dann kann es ja weiter gehen > mit Java oder SML oder WEB. Sehr gutes didaktisches Konzept um jemanden nachhaltig von Anfang an das Interesse zu nehmen. C und ASM zum Einstieg?! Rechnerarchitektur und Speichermodelle?! Definitiv mit Python oder einer ähnlichen Sprache anfangen die schnelle Erfolge verspricht, und dann nach und nach in die Details warum etwas so funktioniert eintauchen. http://tryruby.org Bist du wirklich sicher ihr Informatik beibringen zu wollen? Wozu? Wenn sie ein inhärentes Interesse daran hätte, hätte sich das sicherlich schon bemerkbar gemacht. Programmieren kann ich nachvollziehen, da habe ich meiner Frau auch Hilfe zur Selbsthilfe gegeben und nun kann sie Photoshop für ihre Zwecke soweit skripten wie sies braucht, oder auch die ein oder andere Webkleinigkeit.
Ralf schrieb: > Eigentlich will ich ihr Informatik beibringen, denn > um Programmieren zu verstehen (Speicherverwaltung, > Prozesse,...) sollte auch ein bisschen Hintergrund > bzgl. Rechnerarchitektur etc. gegeben sein. Und Du selbst hast es gelernt, indem es Dir jemand in dieser Reihenfolge beigebracht hat? Ganz ehrlich: Dann waerst Du die grosze Ausnahme. > Wie soll sich jemand einen Pointer vorstellen können, > wenn er nicht weiß, wie ein Speicher funktioniert? Wie der Speicher funktioniert, kann man aber GANZ einfach erklaeren: Reihenhaussiedlung (alternativ: Neubaugebiet), Adresse entspricht der Hausnummer, Wortbreite entspricht Zahl der Zimmer der Wohnung. Das Beste, was Du tun kannst, ist, ihr Interesse an der Sache und ihre Freude ueber den Lernfortschritt zu foerdern. Das wichtigste Mittel ist, ihr bei den Dingen zu helfen, die sie interessieren - und nicht, sie mit dem zu bombardieren, was Du fuer wichtig haeltst. Abstrakte Erklaerungen sind dann und dort richtig, wo sie durch konkretes Interesse von ihr motiviert sind.
Possetitjel schrieb: > ... Sehr gut ausgedrückt, würde ich so unterschreiben. Wenn du testen willst ob überhaupt Aussicht auf Erfolg besteht, lass sie Human Resource Machine spielen: http://store.steampowered.com/app/375820/?l=german Als ich das neulich per Zufall bei meiner Frau gesehen habe, als sies aufm Sofa gespielt hat, konnte ich das nur mit einem "Sehr gut, du programmierst Assembler" kommentieren :)
Possetitjel schrieb: > Und Du selbst hast es gelernt, indem es Dir jemand in > dieser Reihenfolge beigebracht hat? Manche bekommen den Kontakt aus privatem Interesse. Das geht das Kraut und Rüben. Andere kommen über Informatik-Unterricht hinzu. Erst Schule, dann Ausbildung/Studium. Da geht es hoffentlich geordneter zu.
Pete K. schrieb: > Google mal nach "Grundlagen der Informatik", da wirst Du fündig, weil so > mestens auch die Vorlesungen heißen. > > Für obiges Problem vielleicht das hier: Strebt leider kerzengerade auf Programmierung zu. Ein paar Seiten hingeschmissene Grundlagen, der Rest ist ein Grundkurs in Java.
Ralf schrieb: > Wie soll sich jemand einen Pointer vorstellen können, wenn er nicht > weiß, wie ein Speicher funktioniert? Programmiersprachentheaterintendant schrieb: > Also Schaltanwendungen mit Transistoren (Grundschaltungen) --> TTL Logik > (Gatter, FlipFlop, Schieberegister, Zähler) --> ALU --> CPU, Register, [...] Na, nach deiner/eurer Logik fehlend da aber noch zuvor mind. Atom- und Halbleiterphysik. Wenn es ums Programmieren geht, fange mit was leichtem an. Python wurde schon genannt. Wenn sie gar keine Ahnung hat, ist evtl. Scratch kein schlechter Einstieg. Da kannst du genug Zeit mit Kontroll-Strukturen, OO-Notierung, Variablen usw. verbringen. Vergiss erst mal C, Asm, C++ usw.
Eine etwas breitere Übersicht darüber, was Informatik als Fach darstellt: https://www.hs-weingarten.de/~ertel/vorlesungen/ginf/skript.pdf http://homepages.fh-friedberg.de/euler/wi/skript.pdf
Um was geht es? Programmieren oder Informatik? Ich würde erst einmal einen groben Überblick darüber zu vermitteln versuchen, was Informatik überhaupt ist. Allein schon, um den Laien-Eindruck zu verscheuchen, dass Informatik gleich Programmieren sei. Ist es auch, aber da wären beispielsweise noch Rechner/Automaten, Codieren/Komprimieren, Verschlüsseln, Komplexität, Linguistik, Computergrafik (wie arbeiten Computerspiele), uvam. Sowas kurz angerissen macht der Person vielleicht erst klar, wohin das Interesse überhaupt geht, wenn überhaupt. Und dann kann man sich Details des interessanten Teilaspektes widmen.
Es ist zwar nicht das typische Curriculum für Informatik aber lehrreich: Knuth, Art of programming.
Wenn es primär über Informatik geht, empfehle ich als Literatur http://informatikbuch.de/10.Auflage/index.html. Ich habe hier die 6. Auflage in Form toten Holzes. Das Buch gibt einen guten Überblick, was alles zum Bereich Informatik zählt und ist m.E. auch leicht lesbar, allerdings werden viele Bereiche nur angerissen. Einen Überblick bekommt man trotzdem und kann zumindest viele Begriffe schon mal einordnen.
was bin ich froh das ich zu DOS- und real-mode zeiten mit computern angefangen habe. typisierte programmiersprachen würde ich python und dergleichen vorziehen, weil sie wissen muss was ein byte/word/dword ist, was man damit abbilden kann, und was der unterschied zu einem string ist. wenn das einigermaßen sitzt, einfach mal los programmieren, und z.b. schauen was passiert wenn man 2 uint8 addiert (stichwort: überlauf). erkläre auch wie eine festplatte aufgebaut ist, was partitionen sind, und was ein dateisystem ist. füge kleine anekdoten ein wie z.b. das die daten noch da sind wenn man eine datei löscht, und warum das so ist. es ist wie bei allem: die grundlagen müssen da sein, der rest baut darauf auf.
Hallo zusammen, wie steht es denn um Visual Basic/ VBA? VBA hätte den Vorteil, dass jeder Excel und dergleichen hat und schnelle Lernerfolge sieht und trotzdem mit z.B. Datentypen und Funktionen/Routinen in Berührung kommt.
A. K. schrieb: > macht der Person vielleicht erst klar, wohin das Interesse > überhaupt geht, wenn überhaupt. Und dann kann man sich Details des > interessanten Teilaspektes widmen. Sehe ich auch so. Es gibt längst nicht mehr DIE Informatik. Spätestens seit in jedem Haushalt Computer stehen, fast keine Firma ohne Intranet auskommt und das WWW aus dem normalen Leben nicht mehr wegzudenken ist, haben sich die Aufgabengebiete um Größenordnungen vervielfacht. Universalinformatiker gibt es nicht mehr, denn kein Mensch kann mehr in Lebenszeit das gesamte Spektrum lernen oder gar anwenden. So nützlich das Detailwissen der Grundprinzipien bis runter auf Hardwareebene auch ist, nicht jeder Informatiker muß das heutzutage unbedingt haben. Ein Webdesigner braucht nicht zu wissen, wie die Bits vom Massenspeicher über Chipsätze und Busse zur CPU gelangen oder wie die Register heißen und welche Aufgaben sie erfüllen. Nicht mal ein Netzwerkadmin benötigt diese Kenntnisse. Ein Treiber-/Systemprogrammierer hingegen schon. Der wiederum muß sich nicht drum scheren, wie man einen Exchangeserver aufsetzt und verwaltet oder wie man einen Webshop designed. Alles von der Pike auf lernen zu wollen, kostet extrem viel Zeit und ist nicht für jede Spezialisierungsrichtung sinnvoll. Also sollte die ungefähre Richtung schon klar sein, bevor ein zielführender Lehrplan aufgestellt werden kann.
Informatik im wissenschaftlichen Sinne, also an einer (Fach-)Hochschule hat wenig mit programmieren zu tun. Ich vermute, Deine Berufsbezeichnung deutet eher auf eine schulische Ausbildung hin (oder eine "Akademie"). Von daher verstehe ich nicht, warum Du ihr nicht einfach das beibringst, was Du machst oder gelernt hast? Das ist doch das, wo Du Dich am besten auskennst. Alternativ in die Themen einarbeiten, in denen sie interesse hat. Wenn sie beispielsweise Webseiten programmieren möchte, macht C/C++ wenig Sinn. Wichtig ist es m.E. am Anfang, Übung im interessanten Bereich zu bekommen.
Obwohl von 1968, ist 'Knaurs Buch der Denkmaschinen' immer noch eine prima Einführung in die Grundlagen der Informatik und Kybernetik. http://www.2n-1.de/denkmaschinen.html Wen mans im Antiquariat findet, sollte man auf jeden Fall die paar Mäuse investieren. Das Kapitel über den sprechfaulen König ist z.B. ein sehr anschauliches Exempel für Datenreduktion und Signalisierung, es werden mit den bekannten Wasserschleusen UND, ODER und XOR Gatter gebaut und die Familie, die ins Kino gehen will, nutzt diese Verküpfungen dann. Die lange Einführung mit Wittgensteins Sprachtheorie ist evtl. langatmig aber hilft, Begriffe zu 'begreifen'. Mit 12 Jahren habe ich die damals immer übersprungen, aber den Rest verschlungen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.