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.)

Disclaimer: Ich habe nicht viel Erfahrung am Mac. Wenn ich Quatsch schreibe, bitte berichtigt mich.

Einstellungen für US-PC-Tastatur

Einstellungen für US-PC-Tastatur

Ich versuche jetzt schon seit einer ganzen Weile, mich mit den Eigenarten eines Macbooks zu arrangieren. Einer der größten Störfaktoren dabei war die Tastatur. Nicht nur weil ich sonst an US-Layout gewöhnt bin. Die alten Apple-Tastaturen (nicht die ganz alten, aber wenn ich mein Extended II anschließe muss ich befürchten daß die Putzfrau das entsorgt :-) ) haben ein brauchbares Layout aber nicht die beste Bedienung, bei den neueren hat sich ein Designer offenbar viel Mühe gegeben um die Nachteile von Laptop und Desktop zu kombinieren. Die Reaktion der Tasten ist durchaus OK, aber Form und Layout haben nicht ansatzweise was mit Ergonomie zu tun.

Nun denn: ich habe jetzt eine ordentliche Tastatur angeschlossen. Ohne Ziffernblock, dafür aber mit ordentlicher Mechanik und US-Layout.

Ab Werk kann OS X leidlich damit umgehen. Dass die Alt- und die Kommando-Taste (auch Apfel-, Windows- oder Propeller-Taste) nicht dem Mac entsprechen stört mich nicht. Wohl aber dass ich keine Power-Taste habe. Die braucht man um den Bildschirm zu sperren. Und ich würde manchmal auch gerne weiterhin Umlaute schreiben können. Unter Linux habe ich dafür die Compose-Taste, das ist perfekt. Kann der Mac das auch?

Naja, Lösung für mein Problem — und der Grund für diesen Beitrag — ist vorerst das Tool Karabiner. Das scheint sehr mächtig zu sein, aber ich finde es auch sehr unübersichtlich. Da ich jetzt schon zwei Mal rausgesucht habe wie ich meine Forderungen damit umsetzen kann habe ich die richtigen Einstellungen mal hier als Screenshot hinterlegt. Jetzt ist die Pause-Taste (rechts neben Scroll-Lock) meine Power-Taste, und in Verbindung mit Alt kann ich bei Bedarf Umlaute schreiben.

Erwähnt hatte ich dieses Projekt schon mal, es stammt vom November 2012. Aus mir nicht nachvollziehbaren Gründen habe ich es aber nie vorgestellt. Das reiche ich hiermit nach.

Dass ich ein ausgeprägtes Interesse an Tastaturen habe muss ich hier wohl nicht nochmal betonen. :-)

So finden sich in meiner Sammlung auch zwei ältere Apple-Tastaturen. Zum einen ist da ein — tatsächlich ganz ordentliches — Apple Extended Keyboard II. Gebaut wurden die von 1990 bis 1994, und Enthusiasten zufolge ist das die beste Tastatur die Apple je verkauft hat, sicherlich nicht zuletzt weil da anständige Alps-Schalter drin sind.

Noch origineller — und in meinen Augen ein typisches Apple-Produkt — ist das Apple Adjustable Keyboard von 1993. Typisch Apple? Wie gesagt, in meinen Augen: sie war teuer, und vor allem ist das Aussehen wichtiger als die Benutzbarkeit. Pfeiltasten gibt es zur Not noch ohne die kleine Erweiterung, aber ich persönlich würde weder auf Funktionstasten noch auf Navigationstasten (Anfang, Ende, Seite hoch, Seite runter) verzichten wollen. Und hat man die Erweiterung angeschlossen muss man schon einen ziemlich langen Arm machen um zur Maus zu greifen… :-/

Wie auch immer: ausprobieren wollte ich beide, und da ich selbst bei der Arbeit keinen Zugriff auf einen Rechner habe an dem die funktionieren würden — Apple hat den Apple Desktop Bus 1999 sterben lassen — musste ein Konverter her. Sowas kann man kaufen. Muss man aber nicht.

Dank eines japanischen Entwicklers der auf geekhack.org als hasu bekannt ist, auf Github als tmk. Der hat die TMK Keyboard Firmware Collection veröffentlicht. Das ist eine Firmware die auf verschiedenen AVR-basierten Plattformen lauffähig ist, in erster Linie ist das wohl der Teensy 2.0. Die Firmware kann verschiedene Tastatur-Protokolle sprechen. In die eine Richtung natürlich USB, für den Anschluss an einen modernen Rechner. In die andere Richtung unter anderem PS/2, Sun, oder eben Apple Desktop Bus. Dabei bietet die Firmware eine Reihe von Features mit denen man auch alten Tastaturen programmierbare Makros, Media-Tasten oder Maussteuerung beibringen kann.

Leider hatte ich keinen Teensy zur Hand. Wohl aber die Teile um was kompatibles zu bauen, sowie die Ausstattung um eine passende Platine zu ätzen. Also erstmal KiCad angeworfen und ein minimales Schaltbild, sowie ein Platinenlayout gezaubert:

(Die Dateien die dabei entstanden sind bräuchten etwas Pflege, daher veröffentliche ich die hier nicht. Aber mit den beiden Bildern dürfte es nicht schwer sein das bei Bedarf nachzuvollziehen.)

ADB USB Konverter

ADB USB Konverter

Das Resultat ist mit etwa 2x5cm wirklich winzig geworden, aber: es funktioniert!

Mit einem gekauften Konverter hätte man vielleicht auch die Maus benutzen können, aber mal ehrlich: da zieht wohl auch ein hartgesottener Fanboy was modernes ohne Kugel vor. Obwohl: ich hatte vor einer Weile die Gelegenheit mal etwas mit System 7.5 (dem zeitgenössischen Betriebssystem für die beiden Tastaturen) rumzuspielen, und da hat das Adjustable Keyboard deutlich zur Authentizität beigetragen… :-D

Wer mir etwas zu Weihnachten schenken möchte — und das möchten die wenigsten — könnte zum Qwerkywriter greifen. Ich wüsste zwar nicht wo ich so ein Ding ernsthaft einsetzen könnte, aber die Idee finde ich saucool — und nett umgesetzt… :-)