Was würde kein wahrer Programmierer je empfehlen?
Kein wahrer Programmierer würde sich je als wahrer Programmierer bezeichnen und in diesem Namen Tipps abgeben. Warum?
Weil einer der ersten Dinge, die ein Programmierer lernen muss ist, dass sich Dinge ändern, dass wir uns extrem rasch weiter entwickeln in diesem Fachbereich und dass wir grundsätzlich einen offenen Geist behalten müssen und uns nicht in ideologischen Grabenkämpfen des "wahren Glaubens" verlieren.
Ich bin kein wahrer, ich bin ein zorniger Programmierer.
Wenn etwas schädlich ist in der Wissenschaft allgemein und insbesondere in der Informatik, dann ist es dieser falsche Glaube, das Dogma, die Ideologie. Wenn das Gefühl der Richtigkeit und des Rechthabens vor die harte Realität der Zahlen tritt, können wir die Informatik als Wissenschaft einpacken.
Während wir als nur eins der vielen Beispiele in den 90ern das objektorientierte Paradigma sprich Dogma gehypt haben, haben wir übersehen, dass unsere Probleme keine Objekte sind. Der Unsinn mit Vererbung hat zu einer Zerstückelung des Codes geführt, zu Unwartbarkeit und schwer nachzuvollziehende Codebases. Wir haben unsere Programme zerstückelt, unsere Algorithmen in alle Winde verteilt und unsere Daten atomisiert anstatt sie zu großen Paketen zu binden, Pakete, die sich gut verarbeiten lassen.
Wir haben uns hinreißen lassen von schwadronierenden Professoren, dass Effizienz nicht wichtig wäre, im Rausch der 50% Steigerung der Prozessorleistung im Jahr, jetzt, da dieser Rausch vorbei ist, sitzen wir da mit einem Kater voll uneffizienter, aufgeblasener Software in Bibliotheken. Also Code, der so ineffizient ist, dass man ihn besser gleich neu schreibt, in Sprachen, die nicht effizient implementiert werden können, wie Python oder Ruby, absolute Krankheiten in unserem Geschäft, Werkzeuge der Ideologie und der Besserwisserei.
Weit entfernt von den Zahlen und Fakten. Dabei wird der Stromverbrauch durch diese kranken Werkzeuge in den Rechenzentren immer größer und größer, wir sind bei 900 Millionen in Deutschland allein, für die Stromkosten der CPU ganz allein, ohne die verfrühte Obsoleszenz durch diese jämmerliche Effizienz dieser kranken Werkzeuge von Desktop-PC überhaupt zu berücksichtigen.
Während ich auf meinem kleinsten Linux-Rechner, einem 32 Bit-Gerät von 2003 immer noch problemlos ein gutes, modernes Linux fahren kann und sich damit einwandfrei arbeiten läßt, bewegt sich das Ding selbst unter einem Windows XP nicht mehr, jedenfalls kann man darunter nicht arbeiten. Von späterem Windows-Bloat will ich gar nicht reden.
Es gibt keine wahren Programmierer.
Außer in der Glosse über wahre Programmierer, natürlich. Aber wenn wir anfangen wichtige Werkzeuge aus unserer Werkzeugkiste ohne Sinn und Verstand weg zu werfen, wie "GOTO" unter Python und uns damit en passant ganz nebenbei komplett die Möglichkeit nehmen effizient Finite-State-Maschinen zu implementieren, dann ist das ein Zeichen, dass wir dringend einen Wandel brauchen, ein Umdenken.
Java, Python, Ruby; weg damit. Einfach ersatzlos streichen. Es gibt effizientere Werkzeuge mit dem selben Anwendungsspektrum über 30 facher Geschwindigkeit und einem minimalen Speicherverbrauch, sowas wie LuaJIT oder C etwa, aber es bieten sich auch andere Pakete an.
Alles ist besser als das, was der Mainstream benutzt zur Zeit.
Und diese Offenheit des Geistes, die Selbstkritik am Zeitgeist und die Wahrung der klassischen Werte der Effizienz, das würde ein wahrer Programmierer empfehlen. Das Erlernen, wie die Maschine vor uns eigentlich funktioniert, einen vernünftigen Assembler-Kurs oder Kurs in OpenCL etwa würde er empfehlen, damit man nicht zu einem Fahrer wird, der mit krachenden Gängen anfährt, ohne auch nur eine Ahnung davon zu haben, was er der Maschine unter seinem Hintern mit seiner Ignoranz und Inkompetenz antut und wie viele Ressourcen er dabei sinnlos verschleudert, ja vielleicht sogar Menschenleben gefährdet, sagen wir rekursionsquatsch in sicherheitsrelevanten Applikationen verwenden, wenn wir genau wissen, dass der Stapelspeicher sehr klein ist und uns um die Ohren fliegt ohne jede Vorwarnung.
Diese Art der Geargrinder würde der wahre Programmierer mit Benzin übergießen und auf dem Freudenfeuer mit Genuß verbrennen und seine Hände und Seele daran wärmen.
Das würde ein wahrer Programmierer empfehlen.
Ich bin keiner. Ich bin zwar aufgewachsen als Assembler-Programmierer und hatte sechs Jahre Berufserfahrung in Assembler bevor ich auch nur mit neunzehn den ersten Fuß in die Hamburger Uni gesetzt habe, ich hasse Wirth und seine strukturierte Programmierung, die uns viel zu früh die Möglichkeiten genommen hat, die wir jetzt dringend brauchen, nämlich die Möglichkeiten einer geordneten Verwendung des "GOTO", die Lösung von Problemen mit Finite-State-Machines, aber natürlich weiß ich Struktur im Programm zu schätzen und sehe den Punkt darin. Ich glaube nicht, dass Programmierung nur etwas für eine winzige kleine Elite ist, sondern dass wir jeden aktivieren müssen in unserer Gesellschaft, wenn wir mit unserer Gesellschaftsform, dem Wohlstand und damit der Demokratie auf Dauer nicht Schiffbruch erleiden wollen.
Und deswegen bin ich kein wahrer Programmierer: ich kenne BASIC, bin damit selbst aufgewachsen und so ein gesunder Ansatz für den Durchschnittstypen, um den Computer eben nicht nur wie ein braver Konsument zu benutzen, sondern die Möglichkeiten zu erkennen, sie auszunutzen, das Fremdwissen in die Maschine einzuweben und es wahrhaftig zu demokratisieren.
Das haben wir nicht geschafft. Meine Professoren haben über BASIC gehetzt und uns gesagt, wir müssten alles vergessen, wenn wir "wahre Informatiker" werden wollten. Was für eine Ignoranz, eine Arroganz! Was für eine elfenbeintürmeske Idiotie. Die waren auch immer am Großtun mit ihren VAXen und Mainframes und dem ganzen teuren Geschmeiß für Konzerne.
Wir wussten, wir würden diese alte Säcke in ihren Grundfesten erschüttern und wir würden ihre Elfenbeintürme schleifen mit unseren billigen Heimcomputern und PC. Heute sind es nicht die dämlichen Clouds der großen Macker, sondern die winzigen Raspberry Pis, die die fetten Bonzen nicht kommen sehen. Und wieder werden wir sie stürzen.
Und deshalb bin ich kein wahrer Programmierer. Ich bin ein zorniger. Es ist falsch die Macht und damit die Daten zu zentralisieren in Datenzentren. Und der zornige Programmierer rät dir, deine Daten selbst zu verwalten, sie selbst zu hosten, mit kleinen Pis, die im eigenen Haus stehen, da seine eigene Cloud aufzubauen und die Macht und damit die Daten und damit die unsere Demokratie vernichtende Technokratie auf die wir uns zu bewegen zu stoppen.
Das Begrenzen der Möglichkeiten, das CO2 Steuerbelasten des ohnehin schon im Präkariat lebenden Bürgers bedeutet das Fortnehmen seiner finanziellen Möglichkeiten, das bedeutet Einschränkung seiner Freiheiten, so dass sie schließlich fort sind und dann auch auf dem Papier gelöscht werden können im nächsten Schritt.
Der grüne Wahnsinn der Technokratie im grünen trojanischen Pferd, nach chinesischen Vorbild, die Kontrolle und Zentralisierung aller unserer Daten in den Zentren von einigen wenigen globalen Megakonzernen, die den oppressiven Regierungen der Welt nur all zu gern Zugriff geben und die ich nicht anders als als feige Kollaborateure bezeichnen würde.
Das würde der zornige Programmierer empfehlen: diese Macht zurück holen. Vielleicht ist es heute kein BASIC mehr, ich würde Lua nehmen, meinetwegen auch BASIC, Gambas
hat eine sehr schöne zukunftsweisende IDE am Laufen, mit der auch der Durchschnittsbürger mit ein paar Klicks seine Träume verwirklichen kann. Nichts gegen BASIC. Ich denke zwar, dass wir mit Lua besser fahren, aber definitiv nicht mit Python und dem anderen ideologischen Krampf, der gehypt wird durch unsere Lehrer und Professoren.
So wie unsere Professoren uns an die Mainframes bringen wollten und dazu, mit diesem System der Hohepriester der Rechenzentren zu kollaborieren und sich mit der Antidemokratie gemein zu machen. Denn miese Performance bedeutet, dass man Dinge nicht mehr mit geringen Ressourcen umsetzen kann. Das bedeutet, dass man unfrei wird.
Python macht Sklaverei.
Und zumindest im Zorn auf diesen ineffektiven Mist, mit dem unser Markt geschwemmt wird seit über 30 Jahren würde der zornige Programmierer mit dem wahren Programmierer im Arm liegen und gemeinsam Benzin über den Schrott gießen und es freudig abfackeln. Ich sehne mich nicht zurück nach den alten Tools, den alten Zeiten.
Aber ich vermisse die Zeiten, in denen wir es noch schaffen konnten, Menschen auf den Mond zu bringen, während wir heute die Prozessleistung des Planeten von damals in der Tasche haben, aber nichts mehr machen, als endlos Bilder bei Tinder zu swipen. Das ist alles, was wir damit zustande bringen.
Denn wir haben uns zu Konsumenten machen lassen, wir haben die Chancen und Möglichkeiten für die Zukunft aus der Hand gegeben, anstatt diese aus den Händen der Mächtigen und Großen zu reißen und die Welt zu verändern und eine Zukunft zu erschaffen, indem für diese Großstrukturen immer weniger und weniger Platz und Notwendigkeit bestehen wird.
Die Presse ist bereits demokratisiert. Die alten großen Presse Imperien zerfallen, das Öffentlich-Rechtliche ist am Kollabieren, ich sage: weg damit. Wir brauchen kein Informations-Monopol mehr keinen staatlichen Zeigefinger der Belehrung und Zurechtweisung. Aber das heißt eben auch, wenn wir mit dem einen aufräumen, sollten wir nicht vergessen, dass das neue Monopol schon wartet, die neuen Herrscher, die neuen Dikaturen, die uns bevormunden wollen und über uns herrschen und und ausplündern und damit effektiv unsere Freiheit nehmen.
Effizienz ist Freiheit. Nimm sie dir, das sage ich. Nimm dir das Recht auf BASIC, auf Lua, auf Assembler, auf eigene Programme, auf eigene Services, auf eigene Server, kleine Boxen wie der Raspberry Pi bedeuten Freiheit. Schmeiß die Ideologie über Bord und geh' zurück an die Zahlen, miss die Ausführungszeiten für deine Routinen, denn Effizienz ist Freiheit, Effizienz ist Fortschritt, Effizienz ist Zukunft. Effizienz, nicht Reduktion! Mehr machen aus dem, was wir haben, nicht zurück schrauben. Nicht Initiative abgeben an die Staaten, die eben nicht demokratisch sind, die salopp gesagt auf unsere Werte scheißen. Mit Rückzug erreichen wir gar nichts außer unseren Untergang und damit den unserer Werte.
Und wir müssen sie uns zurück holen. Sie versuchen sie uns zu stehlen. Und wir kriegen sie nicht geschenkt, Freiheit muss man erkämpfen und verdienen, jede Generation auf's neue und wir machen das nicht mit Stöcken und Gewehren, sondern mit Argumenten, mit besserer Technologie, mit besseren Lösungen für Problem, mit Wahrung der Werte, mit Humanismus und Verständigkeit.
Von Verstehen. Sapere aude, habe den Mut deinen Verstand selbst zu benutzen. Lerne heute noch BASIC oder Lua
, hol' dir deine Welt zurück.
Der wahre Programmierer war gestern, der zornige Programmierer, das ist heute. Und wir haben alles Recht zornig zu sein. Der Diskurs, der Austausch der Ideen, die Entwicklung aber auch die offene Kritik an allem. Allem. Das ist etwas, was wir uns zurück holen müssen.
Sofort. Oder es ist zu spät. Das ist nämlich schon fünf vor Zwölf, liebe Greta, lieber Rezo von wegen "es gibt nur eine gültige Meinung", ich glaube, es hakt. Und 2020 wird in Hamburg hoffentlich nicht Grün gewählt, dann haben wir hier nämlich den Salat.