Ich hatte schon öfter was über ungewöhnliche Programmiersprachen geschrieben. Zuletzt über Folders, eine Sprache die ganz ohne Dateien auskommt.

Heute habe ich zwei neue Sprachen kennengelernt. Nein, nicht gelernt. Nur erfahren dass es das gibt. Da wäre zum einen Qalb, eine Sprache in der die Quelltexte (eigentlich auch der Name, aber bei قلب hätte ich noch weniger Ideen zur Aussprache als bei der lateinischen Umschreibung) in arabischer Schrift verfasst werden. Hier gibt es alles was man braucht bei Github. :-D

Die Sprache ist aber schon älter, neuerdings gibt es — ebenfalls bei Github — eine Sprache namens Potaka (wieder eine lateinische Umschreibung, für পতাকা fehlt mir nicht nur eine Idee zur Aussprache sondern sogar die Zeichen im Font). Um die zu beherrschen sollte man bengalische Schrift entziffern können. Wer es versuchen mag: das hier sieht nach einem Spielfeld aus — genau sagen kann ich das aber nicht… ;-)

Sommerlich warm

Sommerlich warm

Der Lüfter an meinem Taschenrechner (Lenovo Thinkpad X201, Baujahr dürfte 2010 sein) hat mich schon länger genervt. Der ist nicht sonderlich laut, lief aber praktisch durchgehend. Gestern habe ich das Ding unbeaufsichtigt liegen lassen weil es Messwerte erfassen sollte. Als ich wiederkam war es aus, nach dem Neustart stand in den Logs… naja, siehe Bild. :-(

Ich bin froh dass die Kernschmelze verhindert wurde.

Mit einer Hand habe ich nachgesehen was ein Ersatz kosten würde, mit der anderen habe ich die Tastatur abgeschraubt. Da findet man den Lüfter direkt vor sich. Auf den ersten Blick sah der ganz OK aus, ich habe ihn trotzdem mit einem Zahnstocher stillgelegt (wichtig, der wirkt sonst wie ein Dynamo und frittiert unter Umständen den Rechner) und dann großzügig Druckluft aus der Dose angewendet.

Unglaublich, wie gut das wirkt, das sollte man vielleicht regelmäßig machen. Beim nächsten Mal traue ich mich vielleicht auch die Wärmeleitpaste auszutauschen. Die Bildschirmauflösung ist nicht ganz zeitgemäß, ansonsten bin ich immer noch rundum zufrieden mit dem Notebook.

Ich sehe mir immer mal wieder gerne esoterische Programmiersprachen an. Lustig, auf was für Ideen Leute kommen — einfach nur weil es geht. :-)

Die meisten Sprachen haben eine vergleichsweise einfache Grammatik (es sei denn sie legen es speziell darauf an eben keine einfache Grammatik zu haben). Bei fast allen werden die Quelltexte in ASCII-Notation verfasst. Nennenswerte Ausnahmen sind Piet (da liegen die Quelltexte als GIF vor) und neuerdings vielleicht noch Emojicode. Aber selbst wenn es kein ASCII ist: es sind Dateien.

Jetzt habe ich von Folders gehört. Bei der Sprache liegen Quelltexte nicht mehr als Dateien vor, sondern als Ordner. Und damit die Ordner nicht so aus der Reihe tanzen haben sie griffige Namen bekommen: so heißt die Entsprechung für if jetzt New Folder, und aus print wird Setup. Der Datentyp für Integers heißt Vacation photos, der für Texte ist Img

Eingängig, oder? Und das beste: Quelltexte haben eine Länge von Null Bytes (nur halt eine komplexe Verzeichnisstruktur). Wer schreibt jetzt einen Flugsimulator? :-D

Traditionell bewege ich mich viel in der Shell, und da habe ich es oft mit verschiedenen Datenformaten zu tun die ich lesen oder schreiben möchte. Lesen ist mittlerweile vergleichsweise einfach: jq für JSON, XMLStarlet für XML.

Wie man sinnvoll XML generiert weiss ich noch nicht, aber vor ein paar Tagen hat Jan-Piet Mens ein Tool veröffentlicht mit dem man sauber JSON generieren kann: jo (hier bei Github).

Ausprobiert habe ich das noch nicht, aber die Beschreibung sieht sehr vielversprechend aus. Gerade in Verbindung mit dem Monitoring-Tool meiner Wahl — Zabbix — hätte ich mit so einem Tool im Werkzeugkasten einiges deutlich eleganter schreiben können…

Was stimmt hier nicht?

Was stimmt hier nicht?

Dies ist ein weiteres altes Projekt, entstanden etwa um 2004. Ich hatte das auf der alten Schatenseite, und damit es nicht komplett verloren geht stelle ich es hier nochmal kurz vor.

Damals konnte ich einen Commodore C64 der Mülltonne entreissen. Die ganz alte Bauform, in Fachkreisen auch liebevoll Brotkiste genannt. Leider war das Ding nicht mehr einzuschalten, und da ich eh keine Commodore-Vergangenheit habe tat es mir auch nur ein bisschen leid das Teil zu zerlegen.

Leider hatte ich zu der Zeit noch keine Ahnung von Mikrocontrollern, ansonsten hätte ich versucht die Tastatur funktionstüchtig zu halten. So ging das nicht, dementsprechend ist sie dem Dremel zum Opfer gefallen um Platz für Kühlkörper und Speicher frei zu machen. Schade. :-(

Eingebaut habe ich dann ein VIA EPIA M10000b, somit lief der C64 mit einer Taktfrequenz von 1GHz. Dazu kamen 256MB RAM, eine 2,5″-Platte mit 20GB, ein CD-Laufwerk aus einem Notebook und ein externes Netzteil.

Der C64-PC

Der C64-PC

So ausgestattet hing das Ding damals an meinem Fernseher. Hauptsächlich als Daddelkiste. Wirklich oft ist er dann aber ehrlich gesagt nicht mehr zum Einsatz gekommen…

Heutzutage würde man das anders angehen. In dem Gehäuse würde sich ein Raspberry gut machen. Der braucht wesentlich weniger Platz, also könnte man sogar die Funktion der Tastatur erhalten. Und mit Retropie als Distribution wäre das 80er-Jahre-Feeling fast authentisch… :-D

Siehe auch…

Gestern habe ich auf Twitter gelesen dass es im Zabbix-Share ein Modul gibt mit dem man das Monitoring-Tool meiner Wahl — Zabbix — direkt auf einen Arduino zugreifen lassen kann: Zabbuino nennt sich das.

Komischerweise habe ich letzte Woche erst überlegt wieviel Aufwand es wohl sein mag, das Zabbix-Protokoll nachzuimplementieren. Ich bastele zur Zeit wieder mal mit dem WLAN-fähigen Chip ESP8266 herum, den hatte ich hier auch schon erwähnt. Damit lassen sich prima Messwerte einsammeln, und das schreit dann nach Zabbix. Mein erster Ansatz war, Messdaten per HTTP zur Verfügung zu stellen. Die werden dann von einem Skript periodisch abgeholt und per zabbix_send eingespeist. Wesentlich eleganter wäre es natürlich, Zabbix direkt auf den Sensor zugreifen zu lassen…

Es wäre also wirklich mal einen Versuch wert, das Zabbuino-Modul in Verbindung mit einer kleinen ESP8266-Platine zu testen, die kann man auch fuer deutlich unter fünf Euro kaufen. Oder hat das schon jemand ausprobiert?

Da ich das letzte Woche aber noch nicht kannte habe ich schon einen dritten Weg eingeschlagen. Noch viel besser, wie ich finde. Das ist aber eine andere Geschichte, und die soll ein anderes Mal erzählt werden…

Gerade habe ich in die Präsentation reingesehen mit der Steve Jobs im Oktober 1988 sein damaliges Baby, den NeXT, vorgestellt hat. Bei Minute 07:11 sagt er folgendes:

I think the PC was everything it was ever going to be in 1986.

Fast genau so schön wie die 640kB, die Bill Gates zugeschrieben werden. :-D

Auch wenn ich den NeXT faszinierend finde, das Video habe ich dann doch nicht mehr ganz gesehen. Ohne die Slides macht das wenig Spass.

Komischer Zufall. Ich muss zugeben dass mir der Name erstmal nichts gesagt hätte. Wenn ich nicht letzte Woche den Text zu Claude Shannon geschrieben hätte, dem Erbauer der ersten Useless Machine. Der hat das eben nach einer Idee von Marvin Minsky getan, und eben dieser Herr Minsky ist diese Woche verstorben.

Ich finde es wirklich schade dass man solche Namen nicht kennt, insbesondere wenn man in der IT arbeitet und sich — wie ich — auch gerne mal mit deren Geschichte befasst. :-(

Letzte Woche hatte ich ja schon gelesen dass Minsky sich die Useless Machine ausgedacht hat. Ich weiß auch seit letzter Woche dass er Stanley Kubrick bei der Ausgestaltung von 2001 beraten hat, und dass er vor allem ein Pionier in der künstlichen Intelligenz war.

Wie ich Heute an verschiedenen Stellen lese war sein AI Lab am MIT nicht nur an der Entwicklung des Arpanet, dort wurde auch der Gedanke propagiert dass digitale Informationen frei sein sollten — was sich später dann zur Open-Source-Bewegung entwickelt hat. Danke!

image

Rechnung vom 09.09.1994

Noch ein Fundstück vom Aufräumen: eine Rechnung von 1994. Zwischen Abi und Studium habe ich gearbeitet, und so konnte ich mir zu Beginn des Studiums einen neuen Computer leisten. Ein AMD DX2-80 (praktisch ein 486er) mit 4MB RAM, 420MB Platte und VGA-Grafik. Den passenden Bildschirm hatte ich noch von dem 486SX-20 den ich vorher hatte (welcher seinerseits einen XT abgelöst hatte).

Der Bolide konnte nicht nur die allgegenwärtige Kombination aus DOS und Windows 3.11 ausführen, neben einigen muss-ich-nicht-haben-Programmen gehörte auch Corel Draw 4 zum Paket. Damals habe ich da auch echt viel mit gespielt, das war auch ernsthaft kaufentscheidend.

So ausgestattet ist der Kasten dann 1995 mit mir nach Dortmund gezogen, ins Studentenwohnheim.

An der Uni wurde damals objektorientierte Programmierung in der Sprache Beta unterrichtet. Die Übungsaufgaben konnten dann im sogenannten ‚Pizza-Pool‘ erledigt werden, einem Raum voller Sun SPARCstations mit Namen wie Salami, Diavolo oder Speciale. Ging auch nur da, den Beta-Compiler gab es nämlich nur für Solaris und Linux.

Linux?

Kannte ich bis dahin noch nicht. Unix fand ich aufregend (‚gut‘ kann ich nicht behaupten, weil ich die ganze Tragweite da noch nicht überblicken konnte). Und sowas kann ich auch zu Hause benutzen?

Naja, so einfach war es nicht. Ich habe im Allkauf (Real gab es noch nicht), eine Zeitschrift gefunden (würde mich nicht wundern wenn die mir nächste Tage noch in die Hände fällt), darin waren zwei CDs: Slackware. Die Installation war damals noch ein echtes Abenteuer. Ohne eigens compilierten Kernel ging da nicht viel mehr als eine Shell. Ich habe zwei Wochen und viel Hilfe von einem SunOS-erfahrenen Kommilitonen gebraucht um X11 zu starten (die grafische Oberfläche, damals noch mit dem Window-Manager TWM).

Handbuch von SuSE 6.0

Damals war das hilfreich

So habe ich Linux damals schon faszinierend gefunden, und ich hatte auch immer eine Partition auf der Platte. Trotzdem habe ich nicht wirklich ernsthaft was damit gemacht. So richtig ging es dann erst Ende 1998 wieder los, mit einer SuSE-Distribution, 5.2 oder 5.3 müsste das gewesen sein. Da hat es dann auch nicht mehr lange gedauert bis das mit wechselnden Distributionen mein Haupt-Betriebssystem wurde, ich glaube 2000 oder 2001 habe ich mein letztes privates Windows-System ausgeschaltet. Seitdem habe ich an meine Rechner nur noch Linux und — in Spezialfällen — BSD gelassen.

image

Neues aus dem Internet

Die habe ich beim Aufräumen gefunden. Vor 17 Jahren konnte man ‚Internetausdrucken‘ noch als Journalismus verkaufen… :-D

(Nicht falsch verstehen: nichts gegen das Linux Magazin, das lese ich immer noch gerne.)