Aaron Fischer Ingenieur, Vater, Heimwerker, Problemlöser

Seit über 21 Jahren ein aktiver Teil des Internets, und noch immer habe ich nicht genug davon. Hier finden sich meine Gedanken, Experimente und Projekte, die über die Jahre entstanden sind.

Funktionale- und Integrationstests mit Selenium in Technologie fast 11 Jahre

Webseiten testen macht kein Spaß. Vor allem dann nicht, wenn man ein zweiseitiges Formular schon zum 25sten Mal ausgefüllt hat und immer noch ein Bug drin ist. Da ich gerne Dinge so weit es geht automatisiere, habe ich mich vor etwas längerer Zeit (diesen Blog-Post wollte ich schon vor ca. einem Jahr erstellen :) nach Test-Frameworks für Webseiten umgesehen.

Es gibt unzählige, allen voran SimpleTest und PHPUnit. Allerdings haben all diese Frameworks ein Problem: Die Testfälle sind dermaßen aufwendig zu erstellen, dass es bei größeren und komplexeren Seiten einfach zu zeitaufwändig und langweilig ist. Ein Beispiel hierfür aus dem Tutorial von SimpleTest: weiter ...

Bääm! in Privates vor 11 Jahren

Da lag ich also. Total am Ende, vollgepumpt mit Medika, gelb wie die Simpsons, die Infusion im Arm und Reste von klebrigem Ultraschall-Gel auf dem Bauch. Unfähig aufzustehen, lag ich in einem kleinen sterilen Kämmerlein in der Notaufnahme und wartete auf den im Gesicht mit Akne übersähten Doktor. Er fragte mich unzählige Dinge - das glaubte ich zumindest - und fingerte an mir herum. Irgendwann ging er wieder und ein Zivi brachte mich in die innere. Das ist der Teil des Krankenhauses, in dem Leute liegen, die keine Mägen haben oder die auf ihre Magen/Darm-Spiegelung warten um mit Sonden nach Tumoren zu suchen. weiter ...

Angezapft und ausgeblutet in Privates vor 11 Jahren

Ich war heute das erste mal Blut spenden. Einen halben Liter habe ich mir mit Gewalt aus dem Körper gepumpt, hätte nicht gedacht, dass das so schnell geht. Bea hatte auch ihr Blut fließen lassen.

War eigentlich kein großes Ding, hab mir das irgendwie spektakulärer vorgestellt. Lob an das DRK, die Ärzte und Helfer waren alle sehr zuvorkommend, kompetent und Nett.

Kompetenzzentrale in Privates vor 11 Jahren

Da mich kb genötigt hat (ok, eigentlich hab ichs ihm ja versprochen), ein paar Bilder von meiner Kompetenzzentrale zu zeigen: Hier also mein Arbeitszimmer:

Projekte Programmierwettbewerb 1: Auswertung in Programmierwettbewerbe vor 11 Jahren

Zuerst einmal möchte ich mich bei allen bedanken die mitgemacht haben! Insgesamt habe ich sieben Einsendungen in den unterschiedlichsten Programmiersprachen erhalten, das hat mich sehr gefreut!

Mitgemacht haben (sortiert nach Abgabedatum):
Aaron Fischer (Ruby, download)
Klaus Breyer (PHP, download)
Thomas Monninger (Bash, download)
Florian Eitel (Ruby, download)
Wolfgang Kuhl (Java, download)
Stefan Nitz (PHP, download)
Marcel Steinle (C#, download)
Robert Giczewski (Java, download)
weiter ...

Projekte Programmierwettbewerb 1: Regeln in Programmierwettbewerbe vor 11 Jahren

Da ja zur Zeit sonst nicht viel auf meinem Blog passiert möchte ich einen kleinen Programmier-Wettbewerb starten. Die Aufgabe ist nicht schwer und fordert ca. eine Stunde Spaß.

Änderungswünsche vom Kunden erhalte ich meistens als Liste per E-Mail oder Word-Dokument (ich weiß, es ist grausam, aber was will man machen?). Damit ich bei all den Mails und Dateien nicht den Überblick verliere, trage ich jeden Änderungswunsch in mein Wiki ein und hake ihn bei Beendigung ab und schreibe evtl. noch einen Kommentar darunter. weiter ...

Essays AJAX ohne AJAX über 11 Jahre

Ist es möglich, XMLHTTPRequests zu versenden, auch wenn das Interface nicht zur Verfügung steht? Bei alten Browsern beispielsweise kann dies der Fall sein. Wie bekommt man dennoch AJAX-Requests (GET, POST, File Uploads) ohne ein Neuladen der Seite hin? Mit ein paar Tricks ist dies möglich.

Die Idee ist Folgende: Wenn per JavaScript ein GET-Request abgesetzt werden soll, wird dynamisch ein iFrame erzeugt und dessen src-Attribut auf eine URL gesetzt, die dann aufgerufen wird. Die GET-Parameter können dann wie gewohnt in Form von ?p1=val1...&pn=valn an die Adresse angehängt werden. Um die Server-Response abzufangen, bekommt das iFrame eine onLoad-Funktion verpasst, die den Inhalt des iFrames extrahiert, weiterverarbeitet und das iFrame wieder löscht. Das iFrame dient hier als eine Art Container zum Senden und Empfangen. weiter ...