1 Comment

fuzzy learning

Ich weiß nicht genau, wie lange Computer schon mein Leben begleiten. Als kleines Kind spielte ich mit nicht mehr gebrauchten Lochkarten, die mein Vater von Arbeit mitbrachte. Er benutzte sie als Notizzettel, ich benutzte sie als Malunterlage. Es waren sie frühen Achtziger in der DDR und wir hatten ja nix. Später bekam mein Vater einen Sinclair ZX Spectrum mit Kassettenlaufwerk. Ich spielte Mondlandung und andere Spiele und er programmierte irgendwelche Dinge, die er für seine physikalischen Berechnungen brauchte. Die meisten Programme bekam man damals als kopierte Kassette. Später kamen dann die ersten Robotronrechner raus. Dann kam die Wende und wir konnten endlich 286er kaufen. Mein Nachbar schrieb ein Langenscheidtwörterbuch händisch ab. Sogar das Logo bastelte er selbst. Damals gab es noch keine Maus, daher mußte man die Koordinaten der Linien eingeben und schauen ob es passte. Das was heute wenige Klicks sind dauerte damals noch etwas länger. Dann kamen die 386er und Monkey Island. Es war das erste Spiel, was ich spielte, das einen “Kopierschutz” hatte. Zum Glück gab es Kopiergeräte und so bastelte sich jeder eine kleine Kopierschutzumgehung. Es gab den Norton Commander und viele andere Dinge folgten. Einige Jahre später gab es großes Getöse wegen der sogenannten Datenautobahn. Ich schaute regelmäßig Fernsehsendungen wie den Computerclub im WDR und verfolgte die Entwicklungen im Bereich der Computertechnologie aufmerksam. Aber all die Jahre hatte ich nur wenig Ahnung, was Software und Hardware da so genau machen. Ich weiß seit ewig, daß acht bit ein byte sind und auch was das bedeutet, aber ich weiß nicht genau, was mein Rechner macht, wenn ich ein Programm ausführe. Obwohl mir klar ist, daß alle Informationen, die das Programm benutzt, irgendwo im Speicher in langen Zahlenreihen von Einsen und Nullen gespeichert ist. Und auch, daß da natürlich keine Einsen und Nullen im Speicher sind, sondern die Einsen und Nullen nur Zustände beschreiben, die elektronisch im Speicher ablaufen. Im Laufe der Jahre hab ich viel über Computer gelernt. Und ich hab auch viel durch sie gelernt. Sobald ich irgendwas nicht weiß, googel ich es. Oder auch, wenn ich Dinge weiß, les ich gern den Wikipediaartikel, weil ich ihn noch nicht kenne. Ich arbeite täglich mit Computern aber ich verstehe sie immer noch nicht ganz.

 

Als Kind irgendwann 1987 oder 1988 hatte ich eine Idee von”Wie die Zukunft aussieht”. Ich stellte mir damals vor, daß in jedem Haus ein Bildschirm ist und es über eine Steuerung in der Armbanduhr möglich ist, virtuelle Räume auf diesem Bildschirm zu besuchen. Diese virtuellen Räume waren Bibliotheken, Musik- und Filmsammlungen. Aber auch Steuerungselemente des Hauses, wie Beluchtung, Heizung und was man da sonst noch so steuern kann. Ich glaube, daß viele in meiner Generation ähnliche Ideen hatten. Wir wuchsen halt mit Spock und Kirk, Pille und Scotty auf. Heute haben wir fast alle Smartphones, Tablets, Laptops und diverse andere Gadgets. Wir leben in einer Welt voller Computer. Und doch verstehen die wenigsten, was genau diese Computer machen, wie man mit ihnen kommuniziert, wie man sie Dinge machen lässt.

 

Mir ging es genauso. Da ich bis 2000 keinen eigenen Rechner hatte, konnte ich mich damit nicht beschäftigen. Danach bekam ich einen Rechner. Es dauerte einige Zeit, bis ich von Windows auf Linux wechselte. Und dann nimmt man sich vor das alles zu verstehen. Aber wo fängt man an. Ich persönlich versuche Dinge immer im “großen Bild” zu verstehen. Mir reicht es nicht eine Programmiersprache zu lernen und dann zwar Dinge passieren zu lassen ohne zu verstehen, was da genau passiert. I want to see the magic happen. Eines der ersten Bücher, die mich sehr begeisterten, war Hacking – The art of exploitation. Ich habe es ungefähr bis zum Ende von Kapitel 2 gelesen. Danach fing ich an verschiedene Tutorials zu verschiedenen Programmiersprachen zu lesen. Fuzzy learning. Bis auf Pythontutorials las ich die meisten aber eher, um ein grobes Gefühl für die Syntax der verschiedenen Sprachen zu bekommen. Trotzdem lernte ich keine Sprache wirklich, sondern bekam eher ein grobes Bild oder ein Gefühl dafür, was Programmiersprachen so ungefähr tun. Was genau sie im Rechner tun, ist mir noch immer eher nebulös. Aber ich mag den Ansatz des Buches, mit Pseudocode die Möglichkeiten der Sprachen zu verstehen und dann mit Assembler zu verstehen was genau passiert. Und mein Plan war C zu lernen, weil es C ist, Python zu lernen, weil es Dinge tut und Assembler zu lernen, weil ich dadurch verstehe, was im Rechner passiert und so leichter andere Sprachen verstehen kann. Leider ist Assembler pain in the ass zu lernen, wenn man so ein ablenkbares Eichhörnchen wie ich ist. Und nicht die richtigen Assemblerbücher hat. Ende 2011 auf dem Congress hörte ich von verschiedenen Menschen von codeyear. Auch auf twitter beschlossen einige da mitzumachen. Ich klickte mir auch einen Account bei codeacademy und wenige Wochen machte ich auch die Übungen. Allerdings hörte ich irgendwann auf, weil ich da eher code eintippte ohne zu verstehen, was genau der jetzt macht. Der tut zwar dann was er soll, aber ich weiß nicht warum. Gleichzeitig fing fiona an programmieren zu lernen. Ich verfolgte die ersten Monate, fiel dann aber in ein herbes Prokrastinationsloch im Fachbereich Programmierenlernen.

 

Seit einigen Wochen habe ich den inneren Schweinehund überwunden und mich wieder hingesetzt. Ich las verschiedene Tutorials zu Python, den Ruby-Guide mit den Comicfüchsen, sah diverse Tutorials auf Youtube (aus Langeweile, wegen des Popcorns oder wegen der ermüdenden Kommentare. P.S. Vielleicht verlink ich die alle mal und ihr müßt die alle am Stück ansehen). Irgendwann fand ich ein Python-Tutorial von google, was ich ganz cool fand, weil der Typ endlich mal angenehm schnell erklärt, aber eigentlich wollte ich ja auch Assembler lernen. Und C. Durch verschiedenen Gespräche auf der letzten SIGINT erinnerte ich mich wieder an fionas blog. Dort fand ich zwei gute Bücher mit denen man Assembler lernen kann. Seit einigen Tagen lese ich das erste davon “Programming from the ground up“. Heute hab ich noch das andere im Netz gefunden. Natürlich betreibe ich weiterhin “fuzzy learning” und habe deshalb nach dem Lesen eines Kapitels erstmal diverse lustige Buzzwords auf youtube und google verwendet und viel Spaß gehabt. Und ich werde wohl beide Bücher etwas parallel lesen. Fuzzy learning.

 

Mal sehen, wo das alles hinführt. Ich folge einfach dem weißen Kaninchen.

 

Links (die youtube videos sind nur eine sehr kleine Auswahl besonders grotesker, langweiliger oder hilfreicher Videos):

 

http://fionalerntprogrammieren.wordpress.com/

http://www.youtube.com/watch?v=tKTZoB2Vjuk

http://www.youtube.com/watch?v=5zzkOyTXBuQ

http://www.youtube.com/watch?v=p9Zkm_U6cJo

http://www.youtube.com/watch?v=JGHEhfFm53g

http://www.youtube.com/watch?v=LGkkyKZVzug

http://www.youtube.com/watch?v=Pj3DwaKRXos

http://www.youtube.com/watch?v=AQXAK3m3l78

 

One comment on “fuzzy learning

  1. Erinnert mich an meine frühere Technikverliebtheit. Heute weiß ich:
    Das Leben ist ruckzuck vorbei – für manche schon mit 30 – und vor lauter Beschäftigung mit den (digitalen) Werkzeugen hat man das weiße Kaninchen in der Matrix zu oft aus den Augen verloren und noch keinen gescheiten Ausgang gefunden.

Leave a Reply

Your email address will not be published. Required fields are marked *