Ich habe mir dieses Wochenende „Arbeit mit nach hause genommen“. Die Implementierung einer Code-Bibliothek für Forschungsprototypen geht unter der Woche einfach nicht richtig voran. Da gibt es zu viele andere Arbeiten (E-Mails, Meetings, Anträge, Berichte, etc.) die mich in Anspruch nehmen.

Gestern habe ich dann die Quelltexte auseinander genommen und angefangen grundlegend umzubauen. Warum ist es nur so, dass man ein Programm zu mehr als 60% schreiben muss, bevor man weiß wie man es richtig machen muss? Jaja. Ich kenn die ganze Softwaren-Engineering Philosophie. Ich bin selber Softwaretechniker und weiß wie man es richtig macht, aber es klappt trotzdem nicht, wenn das geplante Programm zu komplex ist, bzw. man es zu komplex macht, weil man für die (schon bekannte) Zukunft vorbereitet sein will. Es ist wie eine Variante von Hofstadter’s law: Es gibt immer ein Problem mit einem Softwaredesign, selbst wenn man alle Probleme gelöst glaubt. Es wäre wirklich besser, wenn Software wirklich stinken könnte. Dann würde man früher merken, dass es in die falsche Richtung geht.

Die Arbeit an der TheLib geht weiter.

Eins habe ich in meiner bisherigen Arbeit als Entwickler von Forschungssoftware gelernt: große Softwareprojekte an Universitäten sind extrem schwierig durchzuführen. Hauptsächlich weil alle beteiligen Personen „Forscher“ sind und keine „Entwickler“. Es fehlt die Erfahrung, es fehlen die Prozesse und es fehlen die Strukturen um gemeinsame Ziele (Kompromisse) zu definieren. Gleichzeitig gibt es einfach Aufgaben, die durch kleine Programme nicht zu lösen sind. Als Ergebnis ist die meiste Software die im Rahmen von Forschungsprojekten an Universitäten entstehen nicht praktisch einsetzbar. Ein Zustand, mit dem ich mich nicht abfinden will.

Der Ansatz den wir mit TheLib verfolgen basiert auf der Idee von „Divide and Conquer“. Anstatt eine große Software zu entwickeln und zu warten die alles kann, konzentrieren wir uns auf kleinere Bestandteile der Software und steigern die Nutzbarkeit, Wartbarkeit und dadurch die Wiederverwendbarkeit dieser Komponenten. Die TheLib stellt Basisklassen zur Verfügung. Ich sehe das Projekt als „Ergänzung“ zu den bestehenden Projekten wie die STL oder BOOST an. Es ist keine Konkurenz und will auch keine sein. Darum achten wir auf eine extrem hohe Kompatibilität mit diesen Projekten.

Und, obwohl die TheLib in ihrem Ziel und Umfang recht bescheiden gehalten ist, macht sie uns schon sehr viel Arbeit. Naja. Aber das gehört dazu. Wenn es einfach wäre, dann könnte es ja jeder. ;-)

Da meine Festplatte unangenehm voll geworden ist, habe ich diese Woche eine neue Platte gekauft und eingebaut. Dabei ist mir wieder aufgefallen, wie ungern ich inzwischen an Computern herumbastele. Egal.

Mein Rechner hat als Motherboard das ASUS P8Z77-V, das ich übrigens nur in den höchsten Tönen loben kann. Aber, als ich jetzt meine neue Platte ansteckte und mein Windows gebootet hatte, tauchte eben diese neue Platte bei den Geräten zum sicheren Entfernen hinter dem entsprechenden Icon bei den Notification Icons auf. So ein Unsinn.

Nach etwas googlen kam raus, dass es am ASMedia-Controller liegt, der zwei der acht SATA-Ports steuert. Und ausgerechnet für den Controller kann man dieses Hot-Plug-Verhalten nicht im Bios einstellen. Es gibt im Netz dann einige Lösungsvorschläge, z.B. mit irgendwelchen Registry Hacks die per Scheduler bei Systemstart ausgeführt werden sollen, etc. Was ich im Netz aber nicht gefunden hatte, sondern was ich nach einigem Ausprobieren selber gefunden habe ist die „echte Lösung“. Man kann es einfach am Controller einstellen:

Gerätemanager > IDE ATA/ATAPI-Controller > Asmedia 106x SATA Controller > Eigenschaften > Policies

Was mich irgendwie stört, ist das diese Lösung nicht der erste Treffer bei Google war. …

Die Windows PowerShell (liebevoll auch MachtMuschel genannt) ist eigentlich sehr nett. Natürlich nöhlen die Linux-Nutzer dass die sowas schon immer hatten und dass es ja wohl nix besonderes sei. Das leugnet ja auch keiner, aber trotzdem kann man sich an der PowerShell doch erfreuen. :-)

Heute wieder ein kleines Problem: Ich brauch einen einfachen Hex-Dump einer Datei:

PS >  $str = ""; $cnt = 0; get-content -encoding byte C:\pfad\zur\Datei.txt | foreach-object { $str += (" {0:x2}" -f $_); if ($cnt++ -eq 7) { $cnt = 0; $str += "`n"; } }; write-host $str

Ist nur bedingt elegant, das gebe ich gerne zu, aber es erfüllt seinen Zweck voll und ganz. Und ist irgendwie auch nett …

Das Jahr 2012 ist fast vorüber. Ich möchte die Gelegenheit nutzen um ein bisschen zu rekapitulieren. Ok, ok. Jahresrückblicke mag niemand (ich auch nicht), aber trotzdem.

Anfang des Jahres hab ich meine Dissertation verteidigt. Damit ging auch meine Arbeit am Visualisierungsinstitut der Universität Stuttgart zu Ende. Aber nur meine Arbeit „am“, nicht meine Arbeit „mit“. Ich bei weiterhin auch fleißig im Kontakt mit den „Stuttgartern“ und wir haben noch viele spannende „heiße Eisen“ im Feuer.

Dann bin ich nach Dresden gezogen und hab an der Technischen Uni Dresden meine neue Stelle angenommen, als Post-Doc in der Nachwuchsforschergruppe VICCI. Die Stadt ist toll und die Gruppe ist super. Ich hab viel Spaß bei der Arbeit und auch hier laufen Forschungsprojekte für die ich mich begeistern kann.

Was noch? Die TheLib wurde gestartet. Zusammen mit zwei Freunden und ehemaligen Kollegen aus Stuttgart hab ich mich daran gemacht die Fehler der VISlib zu beheben, in dem wir eine neue, bereinigte Lib aus der Taufe heben. Es gibt da viel zu tun, aber ich bin mir sicher es lohnt sich.

Und natürlich ist da noch mein privates Spiel-Projekt: Springerjagt. Auch wenn ich schon letztes Jahr angefangen hatte an den Regeln zu feilen, so hat das Spiel dieses Jahr seinen Namen gekriegt. Und seine Webseite, auch wenn da nicht viel zu sehen ist. Aber, dass ich definitiv ein Projekt was ich auch weiterhin verfolgen will und werde.

Womit wir eigentlich auch schon bei den Vorsätzen für das neue Jahr sind (auch wenn noch 1-2 Tage dafür Zeit ist): Eigentlich nur, dass ich mein Bestes geben werde, damit 2013 genau so gut und erfolgreich verläuft wie 2012. Nein, sogar noch besser! Konkretere Pläne braucht es da gar nicht :-)

So, und weil ich nicht vor habe zu Neujahr extra noch einmal zu posten, wünsche ich euch jetzt:

„Einen guten Rutsch ins neue Jahr!“

Ich habe es die letzten Tage schon ruhig angehen lassen. Es ist nicht viel passiert und das ist auch gut so. Daher bleibt mir diese Woche auch nicht viel zu sagen, außer:

Frohe Weihnachten!

Es ist der erster Sonntag nach dem ich mein Versprechen abgegeben habe jeden Sonntag zu posten. Naja. Immerhin hab ich mir die Hintertür offen gehalten und euch vorgewarnt, dass es nicht immer einen sinnvollen Post geben wird ;-P Dann fangen wir doch gleich mal mit den nicht-sinnvollen Posts an:

Desletzt hab ich im Geschäft mal wieder eine Diskussion (bzw. einen Monolog) angehört, bei dem ein Experte (Linux-User, der Windows grundsätzlich nur mit dicken Handschuhen anfassen würde, wenn es unbedingt nötig sein sollte) recht deutlich seine Meinung vertreten hat: „Windows 7 sei ja wie es sei, aber Windows 8 sei für den Desktopbetrieb nicht geeignet“.

Ich kann diesen himmelschreienden Unsinn nicht mehr hören! Habt Ihr denn Windows 8 ausprobiert? Ich schon; auf meinem Desktop und es funktioniert super! Das Kachelstartmenü ist voll in Ordnung, die Apps kann man getrost ignorieren und auf dem normalen Desktop gibt es so viele kleine unscheinbare Verbesserungen, dass es richtig Spaß macht damit zu arbeiten. Zugegeben, viel von der GUI ist auf Touch-Eingabe hin verändert worden. Da braucht mal halt im Desktop-Betrieb eine Spezialhardware genannt: MOUSE!

Vielleicht habt Ihr gemerkt das SGrottel.de für etwa zwei Wochen nicht verfügbar war.
Ich bin gerade dabei das Durcheinander zu beseitigen und die verlohrenen Daten zu rekonstruieren (Nur die Posts. Die Kommentare sind verlohren).

Nur eine kurze Notiz: Trau KEINEM Backupsystem das Ihr nicht selber aufgesetzt und getestet habt.

Ich bin wieder im Internet!

Durch meinen Umzug war ich jetzt vier Wochen ohne Internet (ok, außer in meiner Arbeit, aber das zählt aus offensichtlichen Gründen nicht). Das ist eine verdammt lange Zeit! Jetzt ist das Warten aber endlich vorbei.

Als nächstes:

Ich hab noch je einen Bug-Report für Burns 3 und Dib. Die gehe ich in den nächsten Tagen an. Bzw., für den Burns 3 Bug hab ich einen Workaround geschrieben und warte eigentlich nur auf eine Bestätigung das damit das Problem behoben ist.

In letzter Zeit ist sehr viel los. Es gibt viel zu tun. Letzte Woche musste ich mich mal ablenken und mein Gehirn ein bisschen auslüften. Also habe ich etwas komplett neues ausprobiert und drei kleine Fonts gebastelt. Diese enthalten jeweils nur Glyphen für die Ziffern 1, 2, 3, 4 und 5 und stellen diese als Strichlistensymbole dar. Da ich der Meinung bin, dass diese drei Fonts nicht die notwendige Schöpfungshöhe erreichen um Lizenzwürdig zu sein, sind sie hier zum freien Download und zur völlig freien Verfügung für alle:

Tally Marks Europa.ttfTally Marks Europa.ttf Tally Marks Europa
[5.69 KB; MD5: beadd7876b05cdfa98a32498fb630ea0; Mehr Info]

 

Tally Marks Asia.ttfTally Marks Asia.ttf Tally Marks Asia
[5.11 KB; MD5: a952cb9ac13ff68b2ada0484bc786e0e; Mehr Info]

 

Tally Marks Spain.ttfTally Marks Spain.ttf Tally Marks Spain
[5.70 KB; MD5: 6219f0201922f513cb3efe0fbd2e1958; Mehr Info]