Piwik Opt-Out IFrame
Puh, endlich wieder bloggen. Nachdem ich die Seite hier auf meinen eigenen Server umgezogen habe, konnte ich anfangs keine Artikel posten. Damit ist jetzt Schluss, denn hier geht's gleich weiter.
Nachdem Google Analytics ja seit geraumer Zeit bzgl. geltenden Datenschutzes in Kritik geraten ist1, 2, 3, hatte ich zunächst keine Software zur Erhebung von Statistiken im Einsatz. Nun habe ich mich jedoch für Piwik entschieden und es anhand des Blogeintrages von Daniel Weihmann datenschutzkonform konfiguriert. Dabei habe ich auch gleich das Opt-Out IFrame im Impressum eingebunden, durch das Benutzer dieses Blogs der Erhebung von Statistiken widersprechen können.
Bedauerlicher Weise passt der Inhalt des Frames layout-technisch garnicht zum Look-and-Feel dieses Blogs und ich habe mich gefragt, wieso man dort kein eigenes Stylesheet einbetten kann. Gut, es gibt hier und da Blogeinträge, die beschreiben, dass man ja eine Referenz im Template setzen könne, allerdings gilt das dann global. Für alle, die Piwik also für mehrere Webseiten einsetzen, ist das keine Lösung. Glück, dass Piwik die Template-Engine Smarty verwendet, denn so kann man das Opt-Out Template erweitern, sodass dem IFrame ein CSS direkt übergeben werden kann:
Original Template plugins/CoreAdminHome/templates/optOut.tpl
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="robots" content="noindex, nofollow" />
</head>
<body>
{if !$trackVisits}{'CoreAdminHome_OptOutComplete'|translate}
<br/>
{'CoreAdminHome_OptOutCompleteBis'|translate}
{else}
{'CoreAdminHome_YouMayOptOut'|translate}
<br/>
{'CoreAdminHome_YouMayOptOutBis'|translate}
{/if}
<br/><br/>
<form method="post" action="?module=CoreAdminHome&action=optOut{if $language}&language={$language}{/if}">
<input type="hidden" name="nonce" value="{$nonce}" ></input>
<input type="hidden" name="fuzz" value="{$smarty.now}"></input>
<input onclick="this.form.submit()" type="checkbox" id="trackVisits" name="trackVisits" {if $trackVisits}checked="checked"{/if}></input>
<label for="trackVisits"><strong>
{if $trackVisits}{'CoreAdminHome_YouAreOptedIn'|translate} {'CoreAdminHome_ClickHereToOptOut'|translate}
{else}{'CoreAdminHome_YouAreOptedOut'|translate} {'CoreAdminHome_ClickHereToOptIn'|translate}{/if}
</strong></label>
</form>
</body>
</html>
Angepasstes Template
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="robots" content="noindex, nofollow" />
{if isset($smarty.request.css)}
<link rel="stylesheet" type="text/css" href="{$smarty.request.css}" />
{/if}
</head>
<body>
{if !$trackVisits}{'CoreAdminHome_OptOutComplete'|translate}
<br/>
{'CoreAdminHome_OptOutCompleteBis'|translate}
{else}
{'CoreAdminHome_YouMayOptOut'|translate}
<br/>
{'CoreAdminHome_YouMayOptOutBis'|translate}
{/if}
<br/><br/>
<form method="post" action="?module=CoreAdminHome&action=optOut{if $language}&language={$language}{/if}">
<input type="hidden" name="nonce" value="{$nonce}" ></input>
<input type="hidden" name="fuzz" value="{$smarty.now}"></input>
{if isset($smarty.request.css)}
<input type="hidden" name="css" value="{$smarty.request.css}"></input>
{/if}
<input onclick="this.form.submit()" type="checkbox" id="trackVisits" name="trackVisits" {if $trackVisits}checked="checked"{/if}></input>
<label for="trackVisits"><strong>
{if $trackVisits}{'CoreAdminHome_YouAreOptedIn'|translate} {'CoreAdminHome_ClickHereToOptOut'|translate}
{else}{'CoreAdminHome_YouAreOptedOut'|translate} {'CoreAdminHome_ClickHereToOptIn'|translate}{/if}
</strong></label>
</form>
</body>
</html>
Was jetzt noch zu tun ist, ist dem IFrame die Url zum Stylesheet zu übergeben. Aber Vorsicht: Die Url muss ensprechend kodiert sein (zum kodieren eignet sich bspw. der URL Encoder von hier). Im Falle dieses Blogs lautet die URL zum Stylesheet http:// www.josupeit.com/css/piwik.css und das entsprechend kodierte Pendant also http%3a%2f%2fwww.josupeit.com%2fcss%2fpiwik.css. Der IFrame-Code ändert sich also wie folgt:
<iframe src="http://vps1.josupeit.com/piwik/index.php?module=CoreAdminHome&action=optOut&language=de&css=http%3a%2f%2fwww.josupeit.com%2fcss%2fpiwik.css" frameborder="no" height="200px" width="600px"></iframe>
Viel Spaß.
1 Google Analytics (Wikipedia)
2 Warum Google Analytics in Deutschland illegal ist - Golem (Golem)
3 Datenschützer bricht Verhandlungen über Google Analytics ab (Heise Online)
Messung des Einflusses von Aspektorientierung auf die Entwicklungszeit
So, jetzt wo seit einiger Zeit das Ergebnis meiner Bachelorarbeit vorliegt, stelle ich sie, wie bereits meine übrigen Ausarbeitungen, natürlich zum Download zur Verfügung. Die Arbeit trägt den Titel "Messung des Einflusses von Aspektorientierung auf die Entwicklungszeit - Eine Experimentwiederholung mit zusätzlicher Analyse von Pointcut- und Adviceentwicklungszeiten" und befasst sich mit einem Vergleich der Zeit, die Softwareentwickler benötigen, um objektorientierten Quellcode mit Java-Bordmitteln zu entwickeln und der Zeit, die nötig ist, um das gleiche Problem mit der aspektorientierten Spracherweiterung AspectJ zu lösen.
Bei der Arbeit handelt es sich um eine Bachelorarbeit im Studiengang Angewandte Informatik - Systems Engineering am Institut für Informatik und Wirtschaftsinformatik der Universität Duisburg-Essen.
Erste Fotos aus Schottland online
Mahlzeit Buben und Mädels,
wie einige von Euch bereits wissen, besuche ich derzeit zusammen mit Gina meine Cousine Kathrin in Schottland. Heute möchte ich daher die Gelegenheit nutzen, auf die in den letzten drei Tagen frisch geschossenen Fotos hinzuweisen, die ich just hochgeladen habe. Natürlich werden in der selben Galerie noch weitere Bilder von den nächsten Tagen folgen, an denen wir uns hier im schönen Lande des Linksverkehrs (ich müsste lügen, wenn ich behaupten würde, in den letzten Tagen nicht mehr als einmal dem Unfalltode nur knapp entkommen zu sein) die Füße platt laufen, also stay tuned und immer mal wieder reinschauen: Fotogalerie Schottland 2011.
Ach ja: Ich bin vor allem der Uhrzeit wegen einigermaßen schreibfaul und möchte daher auch auf Kathrins Blog verweisen, die sicherlich die ein oder andere Anekdote von Ausflügen in die Highlands o.ä. besser schildern kann, als ich. Hier also direkt der Link: Kathy goes northwards: Glencoe Adventure
Neues Spielzeug im Wohnzimmer: Xbox 360 Kinect
Da hat meine bessere Hälfte dieses Jahr mal wieder keine Kosten und Mühen gescheut, denn seit gestern ziert Microsofts neuer Kinect-Sensor für die Xbox 360 das Wohnzimmer! Nachdem alles ausgepackt und verkabelt war, mussten wir, den Nachbarn um 00:15 Uhr zum Leid, natürlich noch Kinect Adventures ausprobieren und ich muss sagen: Es macht echt Laune. Zwei Mankos gibts jedoch noch: Der Sensor ist im Gegensatz zur popeligen Wii-Sensorleiste doch echt riesig (aber aufgrund der vielen Kameras und Motorsteuerung natürlich auch technisch aufwändiger) und soll in der Mitte vom Fernseher aufgestellt werden. Leider wird dadurch jedoch das Bedienpanel des Fernsehers verdeckt und somit die Steuerung per Fernbedienung unmöglich, was uns weitere Kosten in Höhe von ca. 40 Euro für eine separate Halterung für den Fernseher beschert. Außerdem ist mein Wohnzimmer gerade wegen der Schrägen hier im Dachgeschoss echt mickrig.
Selbstauskunft einholen bei SCHUFA, Creditreform und Co.
Seit Anfang des Jahres gibt es sie endlich: Eine Regelung, die es deutschen Staatsbürgern ermöglicht, einmal jährlich kostenfrei eine Selbstauskunft bei gängigen Scoring-Unternehmen, wie der SCHUFA Holding oder Creditreform einzuholen (siehe auch §34 Abs 1 u. 4 BDSG). Vor einiger Zeit twitterte dazu @tobySde, der die Seite selbstauskunft.net vorstellte. Selbstauskunft.net bietet nach unkomplizierter und TLS-verschllüsselter Anmeldung den kostenfreien Service, seine gespeicherten Daten und Scoring-Werte bei über 30 Unternehmen einzuholen.
Hinter dem Portal steht die Bremer Digineo GmbH, die den Service nach eigener Aussage betreibt, weil in Zeiten von Telefonflatrates keine Mehrkosten durch den innerdeutschen Faxversand entstehen. Unterm Strich hat man also die Möglichkeit, seinen Namen, seine Anschrift und sein Geburtsdatum einzugeben, eine Personalausweiskopie hochzuladen und Standardschreiben an ausgewählte Unternehmen faxen zu lassen und ich muss sagen: Es ist keine drei Tage her und ich habe bereits von drei Unternehmen Antwort erhalten. Mir scheint die ganze Nummer eine gute Sache zu sein, ich halte Euch auf dem Laufenden.
Einziges Manko für Datenschutzfreaks, wie, wie man es mir nachsagt, ich es bin: Die angepriesene GPG Verschlüsselung für E-Mails von Selbstauskunft.net ins heimische Postfach funktioniert nicht. Nach Eingabe der eigenen E-Mail Adresse kann man zwar seine öffentlichen Schlüssel wählen, posten der Formulardaten funktioniert dann jedoch nicht mehr.










