Skip to content

Freies WLAN Karlsruhe (not!)

Die Junge Union in Karlsruhe fordert ein Stadt-weites kostenloses WLAN Netzwerk finanziert durch die Stadt Karlsruhe. Die politische Idee einer freien WLAN Versorgung geistert auch durch Wahlprogramme (bei den Grünen zum Beispiel "Gleichzeitig muss das Ziel die Minimierung der Strahlenbelastung sein") oder humoristische Politiksafari vom Loboisten mit dem Arcor farbenen Iro. Aber belege für einen Standortvorteil durch "kostenloses WLAN" sucht man vergebens. Überhaupt ist es fraglich wieso die Kommune kostenlos eine Technologie anbieten muss wenn der freie de-regulierte Wettbewerb lässig bezahlbar ist (von der Zielgruppe). WLAN in Karlsruhe Und weil diese Forderung dem Normalbürger schwer begreiflich zu machen ist wird eine abenteuerliche Behauptung über den Nutzen einer solchen Installation aufgestellt:
Der wirtschaftspolitische Sprecher der JU, David Ruf, ergänzt: "Das Internet ist das wichtigste Kommunikationsmittel unserer Zeit. Eine entsprechende kostenlose Infrastruktur könnte für Unternehmer sehr wohl den Ausschlag geben, nach Karlsruhe zu kommen."
Ich weiß ja nicht mit welchen Unternehmen Herr Ruf sich so unterhält, aber die Unternehmen die ich kenne geben UMTS Geräte an Ihre Mitarbeiter aus oder bauen selbst Hotspots auf (und die Unternehmen selbst lassen sich Kupfer oder Glas bis in den Serverschrank legen). Auch das KIT als Eliteuniversität deckt schon seit Jahren die wichtigsten Campus- und Randbereiche mit WLAN ab (bis zum Schloss und Schlossgarten wo sich bekanntermaßen viele Studenten aufhalten). Dabei arbeitet die Uni (DUKATH) auch mit dem ZKM oder INKA e.V. zusammen. Letzterer hat ja auch schon mit der Stadt zusammen den Stadtgeburtstag mit Wi-Fi bestrahlt und bringt das Uni WLAN bis auf den Marktplatz. Hier gibt es also auch durchaus begründete Erfahrungen in der Stadt Karlsruhe: "Wireless City". In diesem Zusammenhang eine Bemerkung zu der Technologieregion Karlsruhe. So langsam kommt dieses Image auch bei den Einwohnern und Gewerbetreibenden an. Immer mehr Cafes und Restaurants bieten Hotspots an. Die wirklich progressiven auch noch kostenlos -weil sie erkannt haben dass hier Geld zu verdienen ist. Je mehr Kunden man mit Hotspots anlocken kann, desto weiter wird die Abdeckung sich ausdehnen - ganz ohne Löcher in den Stadthaushalt zu reißen. WLAN ist tot Klar ist nur, dass sich Wi-Fi wirtschaftlich und technisch nicht für eine zuverlässige und leistungsfähige Abdeckung von großen Stadtbereichen eignet. Der Mitbewerber (WiMax) kommt nicht richtig in die Startlöcher (insbesondere weil niemand noch einen (vierten) Funk Empfänger haben möchte. Fazit Leise still und heimlich hat sich UMTS durchgesetzt. Endgeräte sind bezahlbar, UMTS Sticks werden nachgeschmissen und selbst Technologie-konservative Unternehmen wie Apple (iPhone) oder Amazon (Kindle) bieten entsprechende Endgeräte an. Im Mischbetrieb mit WLAN werden die meisten Bedürfnisse nach Mobilität gedeckt. Und für die gehobenen Ansprüche kündigt sich die nächste UMTS Entwicklungsstufe (LTE) auch schon an.

Vielen Dank und geht wählen!

Liebe Freunde, Bekannte, Kolleginnen und Kollegen, ich möchte mich für Euer Verständnis in der Wahlkampfphase bedanken. Wie Ihr sicherlich bemerkt habt war ich sehr aktiv im Wahlkampf der Piratenpartei Deutschland/Baden-Württemberg tätig. Ich bin dort Mitglied und war auf Infoständen und anderen Aktionen tätig. Ich kann Euch sagen dabei lernt man eine Menge Menschen kennen, und das hat mich umso mehr bestätigt dass es Richtig und Wichtig ist was ich tue. Wir KÖNNEN alle etwas bewegen und verändern. Wie unsere Partei so schön sagt, jeder hat einen "Änderhaken" also bitte nutzt diesen auch und geht wählen! Warum ist mir das Thema so wichtig? Bürger haben in Unruhigen Zeiten generell ein hohes Schutzbedürfnis - sie glauben den Politiker vieles wenn Sie Sicherheit versprochen bekommen. Abstrakte Werte wie Freiheit und Bürgerrechte bleiben dabei schnell mal auf der Strecke - besonders wenn man sich immer noch unbehindert fühlt. Aber da unsere Freiheit das einzige ist was wir zu schützen haben, muss man hier kompromisslos auf die im Grundgesetz verbrieften Rechte bestehen, auf die im Grundgesetz festgeschriebenen föderalistischen und subsidaritären Prinzipien. Ich denke nur an die Gewaltenteilung, das Zensurverbot und die Gleichbehandlung. In diesem Sinne, und ohne viel Wahlkampf zu machen (der findet jetzt gleich auf der Strasse statt) verabschiede ich mich von Euch - und freue Mich Eure Stimmen in den Wahlergebnissen wiederzufinden. http://www.klarmachen-zum-aendern.de Gruss Bernd

Die "Medienexperten" der SPD

Die Medienkommision der SPD hat einen Antrag für den nächsten Bundesparteitag der SPD vorgelegt. Inhaltlich klingt das ganze wie eine versteckte Wahlwerbung für die Piratenpartei. Zuerst stellt die Kommision die Fakten dar:
Zugleich ist zu konstatieren: Die Auflagen und Reichweiten der regionalen Tageszeitungen sinken kontinuierlich - und im Ergebnis - dramatisch. Vor allem Jüngere verzichten immer häufiger auf die Nutzung der Tageszeitung. Dies bestätigt die aktuelle JIM-Studie 2008. Auf die Frage, auf welches Medium Jugendliche im Alter von 12 bis 19 Jahren am wenigsten verzichten können, hat das Internet das Fernsehen mit 29 Prozent zu 16 Prozent deutlich hinter sich gelassen. Das Schlusslicht bilden die Tageszeitungen. Lediglich drei Prozent der Jugendlichen erklären die Tageszeitung zum Favoriten. Im Jahr 2000 waren es immerhin noch 9 Prozent - und das Fernsehen war in jenem Jahr mit 34 Prozent einsamer Spitzenreiter.
Statt sich darüber zu freuen, dass die monopolisierten Rundfunkanstalten an Bedeutung verlieren und alle Jugendlichen sich in einem interaktiven und pluralistischen Medium beteiligen sorgt sich die SPD (traditionsgemäß) um den Qualitätsjournalismus im Printbereich:
Wie lässt sich dieser Trend stoppen, wenn er sich schon nicht umkehren lässt? Ein Patentrezept gibt es nicht. Aber deshalb sollte nicht auf alle Therapiemöglichkeiten verzichtet werden.
Eine Partei die Jugendliche therapieren will weil diese nicht mehr Papier in die Hand nehmen, oder die von einer Verlagerung des Journalismus in den Onlinebereich nichts wissen will muss man fast schon als Anachronismus bezeichnen. Dazu fordern Sie dann auch noch das von FWS bereits angedrohte Leistungsschutzrecht. Das ist wohl das Projekt 18% für die Bundestagswahl. Warum kämpft die SPD denn so für die Tageszeitungen (und verwendet dabei in der Wahlkampfzeit geradezu schwachsinnige Formulierungen) könnte man sich fragen. Nun, da gibt es zum Beispiel die "Deutsche Druck- und Verlagsgesellschaft", dd_vg. Die SPD ist hierüber an einigen (ca. 15) Lokal- und Regionalzeitungsverlagen und Verlagsgesellschaften, 5 Druckereien und RPR beteiligt. Die dd_vg hat 2008 über 21Mio EUR Betriebsergebnis (EBITDA). Vom Jahresüberschuss von 15.5Mio EUR wurde laut Jahresbericht an die SPD 11,4Mio EUR ausgeschüttet. Ich vermute mal, dass durch die Parteifinanzierung dieser Betrag durch den Staat verdoppelt wird (die SPD erhält über 40 Mio EUR jährlicher Parteifinanzierung, aber nur wenn Sie durch Mitgliedsbeiträgen, Spenden und Einnahmen entsprechendes Geld selbst einnimmt). Ich kann nur annehmen dass die dd_vg also eine Laute Stimme im SPD Konzern hat. (Übrigens ist der Geschäftsbericht auch so voll von Informationen und unterhaltsamen Karrikaturen - Lesebefehl. Darin wird auch dargestellt wie die dd_vg die Verlage für den Eintritt ins Internetzeitalter vorbereiten möchte. Irgendwie scheint mit die dd_vg progressiver als die SPD-Medienkommission zu sein). (Danke an den Piratenstammtisch Karlsruhe für den Anstoß)

Software Patente

Zwei der größten Patentsammler im Software Bereich (SAP und Microsoft) stehen gerade unter Druck. Bei Microsoft droht ein Verkaufsverbot für Microsoft Word aus dem Office Paket, und SAP soll 139Mio USD Strafe zahlen. Eigentlich würde man bei beiden Unternehmen ja eher erwarten, dass sie Ihre Patente dazu einsetzen von anderen Unternehmen Geld zu bekommen, aber branchenüblich werden die Patent-Portfolios nur noch dazu benutzt um Ansprüche von anderen abzuwehren. Dieses Wettrüsten muss aufhören. Es ist leider möglich dass Trivialpatente die Softwareentwicklung lähmen und kleine Unternehmen jederzeit durch eine entsprechende Klage zugrunde gerichtet werden können. Es ist kein Wunder, dass ein Microsoft Mitarbeiter (Microsoft-Projektleiters Rickard Falkvinge) die Piratenpartei in Schweden gegründet hat, und es ist auch kein Wunder dass sich die Piratenpartei gegen Software Patente ausspricht. Und ach ja... es ist ja bald Bundestagswahl. Da die Softwarepatente über die EU im Markt durchesetzt werden sollen und das EPA auch nicht gerade durch fortschrittliche Ansichten glänzt ist eine International aufgestellte Partei wie die Piraten genau richtig um dagegen anzukämpfen.

CSU/FDP will Transparenz der BaFin abschaffen.

Transparenz ist einige der wichtigen Forderungen der Piratenpartei. Dieses Bürgerrecht wird durch das Informationsfreiheitsgesetz garantiert (weil im Grundgesetz als informationelle Selbstbestimmung gefordert). Und nun gibt es eine Initiative (unter Seehofer) die diese abschaffen will. Guter Beitrag bei Kontraste zu diesem Thema - ansehen und danch die Piraten wählen.

Grundsätze

Aktuell spitzt sich die Situation um den Entwurf für Sperrgesetz der Bundesregierung zu. CDU und SPD haben sich scheinbar auf einen Entwurf geeinigt, der viele der geäußerten Bedenken adressiert. Übrig bleibt aber das prinzipielle Problem dass einer Zensur-Infrastruktur Tür und Tor geöffnet wird. Es ist meine Überzeugung, dass diese Regelung ein zu großes Mißbrauchsrisiko hat und ein Fehler ist. Die sehr erfolgreiche e-Petition von Franziska Heine (am Ende des Tages vermutlich die erfolgreichste in der Geschichte der ePetitionen) oder die Aufklärungsarbeit in Blogs, Online-Magazinen und auch teilweise in Offline Medien hat die Netzpolitik zu einem gesellschaftlichen Thema gemacht und hat vermutlich auch mitgeholfen die Verbesserungen an dem Gesetz zu etablieren. Ebenso wurden einige Misstände in der Arbeit des BKA aufgedeckt. Der Kampf gegen Kinderpornografie und Kindesmissbrauch hat dadurch ohne Zweifel einen Boost bekommen. Gesetzt den (wahrscheinlichen) Fall, dass der Entwurf am Donnerstag verabschiedet wird, und dass die daraufhin folgenden Instanzen (Rat, Präsident, Eilantrag beim Verfassungsgericht) ihn nicht stoppen, so stellt sich mir die Frage wie geht es weiter? Für mich gibt es da eine ganz klare Antwort: weiterhin in meinem Umfeld Aufklärungsarbeit leisten. Gegen die Vorurteile und Falschinformationen vorgehen. Aber es ist Absolut gegen meine Überzeugung sich als Retter der Gerechtigkeit zu verstehen und irgendwelche Aktionen zu starten die nicht rechtstaatlich sind. Die Diskussion um #Zensursula wurde sehr emotional geführt: für einige Aktivisten war es die erste wirkliche Politische Arbeit überhaupt. Der Frust-Level ist hoch. Ich Warne davor den Pfad der legitimen Mittel zu verlassen. Defacements, DOS Angriffe, SPAM oder vergleichbare Methoden sind in meinen Augen keine akzeptablen Mittel. (Ganz abgesehen davon dass damit höchstens die Befürchtungen der Stasi 2.0 belegt werden und es zu einer Verschärfung der Cybercrime Gesetze kommen wird). Wenn das Gesetz rechtsgültig zustande kommt, so gibt es keine selbstauferlegtes Kreuzrittertum das es rechtfertigt für das eigene Wertesystem die Grundsätze unserer Gesellschaft aufs Spiel zu setzen. Ich kann nicht auf einer Seite die Meinungsfreiheit verteidigen und auf der anderen Seiten demokratisch gefasste Beschlüsse angreifen. Und mit Verbrechern die dies planen möchte ich nichts zu tun haben - da kann ich auch nicht wegsehen! Die nächte Möglichkeit gegen das Gesetz etwas zu tun ist die Bundestagswahl. Und hier gibt es zwei große Parteien (FDP, Grüne) die sich gegen das Gesetz im Wahlprogramm aussprechen. Daneben gibt es noch den Außenseiter (Piratenpartei) der sich sicherlich auch über Zuspruch freut (wobei man sich bewusst sein muss dass sowohl Erst- als auch Zweitstimme mehr oder weniger verloren sind bei der Wahl, und es nur ein "Zeichen" setzen wird). - Meine persönliche Strategie ist es (neben meinem Beitritt bei den Piraten) mit meiner Erststimme den Direktkandidat zu unterstützen (da diese Stimme weniger Einfluss hat) und meine Zweitstimme ... wird jedenfalls weder CxU noch SPD sein.

Löschen statt verstecken: Es funktioniert!

Der AK-Zensur (Arbeitskreis gegen Internetsperren und Zensur) veröffentlicht ich einer Presseerklärung Ergebnisse einer Aktion bei der Provider (bei denen die Server die auf Internationalen Sperrlisten stehen) gehosted werden automatisiert per Mail angeschrieben wurden. Ergebnis: Einige Inhalte wurden umgehend entfernt, schnelle Reaktion, große Anzahl von falschen Sperren, die Provider wenden sich selbst an die Ermittlungsbehörden und keiner der Provider gab an in der Sache bereits kontaktiert worden zu sein.

Internetsperren nach Chinesischem Vorbild

Der Artikel in der Online Zeit beschreibt schön welche Begehrlichkeiten die Einführung eines Internet Sperrsystems wecken kann. Ich stehe weiterhin auf dem Standpunkt dass die geplanten Internet Sperren nicht dazu geeignet sind den Missbrauch von Kindern oder die Verbreitung von Kinderpornografie zu verhindern, sehr wohl aber ein einen Eingriff in unsere Grundrechte (Zensurverbot) darstellen. Außerdem ist es ein eklatanter Verstoß gegen die Gewaltenteilung (das BKA entscheidet über rechtswidrige Inhalte ganz ohne richterliche Kontrolle). Ganz zu schweigen von den Problemen dass Gefahrenabwehr Landesrecht ist. Es ist symptomatisch für die symbolhafte Wahlkampfpolitik die gerade betrieben wird, dass die Politik nahe Deutsche Kinderhilfe (die vom Deutschen Spendenrat nicht mehr als Spendenwürdig anerkannt ist ) die meisten Spendenflüsse in Projekte reduziert, dafür verstärkt nur noch Lobby Arbeit machen will (wie die Welt berichtet). Mit PR trächtigen Gesetzen läßt sich die Lage der Kinder in Deutschland und den Rest der Welt nicht verbessern. Hier ist vielmehr nachhaltige und zähe Arbeit im Bereich Prävention (Unterstützung der Familien und Therapie der potentiellen Täter), Ermittlung (mehr und qualifizierteres Personal) und vor allem auch Strafverfolgung (mehr Richter, härtere Urteile) notwendig. Das ist teuer - aber wenn man irgendwelchen Zahlen glauben darf - notwendig. Die Online Petition gegen Netzsperren kann noch bis zum 16.06.2009 mitgezeichnet werden. Momentan sind es schon über 84.000 Benutzer, die sich das Verstecken von Problemfällen verbitten.

XSRF Schwachstelle auf dem ePetitions Server

Der ePetitions-Server des Deutschen Bundestages hat leider ein Sicherheitsloch. Das Eintragen und Austragen aus den Petitionslisten erfolgt durch einen einfachen HTTP GET Request ohne Sicherung durch ein Shared Secret (nonce). Deswegen ist es sehr trivial auf einer beliebigen Web Seite Bilder oder iFrames einzubauen die bei einem Besuch unbemerkt für den Besucher eine Anfrage an den Petitionsserver absenden. War der Besucher auf dem Petitionsserver angemeldet so wird die Aktion ohne weitere Nachfrage durchgeführt. Dies geht natürlich nur, wenn der Benutzer auf dem Server bereits angemeldet ist. Aber eine Gültige Login Session beim ePetitionsserver hat jeder der dort schon mal mitdiskutiert hat (das Session cookie läuft solange der Browser nicht geschlossen wird). Auf folgender Seite habe ich einen Proof of Concept erstellt. Besucher dieser Seite (nach der Vorschaltseite) werden in der Liste gegen das Gendiagnose-Gesetz eintragen. Sie müssen sich dort selbst wieder austragen. Wenn Sie die Seite besuchen wollen, so kopieren Sie den Link in die Browser Adresszeile. http://eckenfels.net/w/CompXSRFPetition Das BSI hat übrigend eine Studie zum Web2.0 veröffentlicht in der XSRF als eines der größten Sicherheitsprobleme genannt wird. Man kann zwar nicht behaupten dass der E-Petitionsserver sehr Web2.0 ist, aber immerhin hätte der Bund Ressourcen zur Verfügung gehabt dieses Sicherheitsloch selbst zu entdecken. Übrigens glaube ich nicht, dass die Schwäche in der eingesetzten Foren-Software SMF ist (da diese es an anderer Stelle wie Logout oder Profil richtig macht) sondern eher an der Erweiterung für die Abstimmungen. Über die Firma hinter dem Projekt findet sich einiges im Artikel von Alvar Freude. Vielen Dank an Matthias Bauer für den Hinweis auf dieses Problem.

Presseerklärung der Piratenpartei

Gerade Drübergestolpert:
4. Mai 2009 Die Piratenpartei hat in den letzten beiden Wochen einen bemerkenswerten und erfreulichen Zuwachs an Mitgliedern verzeichnen können. Die aktuelle politische Entwicklung hat zu einem Anstieg um mehr als 100 Mitglieder geführt, womit die Marke von 1000 Mitgliedern inzwischen deutlich übersprungen wurde. Damit zeigt sich die wachsende Bedeutung der Freiheit des Wortes und des Schutzes der informationellen Selbstbestimmung. Europaweit engagieren und organisieren sich immer mehr Bürger in den verschiedenen nationalen Piratenparteien sowie in Bürgerrechtsorganisationen gegen Zensur und die Beschränkung des freien Zugangs zum Internet.
Der komplette Text der Erklärung und das Diagramm der Mitzeichner der Petition gegen die Internetsperren. Einen Spiegel Online Artikel zu dem Thema.

OAuth Problem

We’d like to publicly show our appreciation for Twitter’s role in helping to minimize premature publicity of this threat, even at its own expense, taking the heat as if it was their own issue in order to allow other companies to address this threat.
Die Abschaltung der OAuth Authentifizierung bei Twitter Services führte zu einem Pressesturm. Das ReadWrite Web Blog hat jetzt eine (etwas aufgeblasene) Zusammenfassung der Ereignisse veröffentlicht. Persönlich finde ich - jetzt nachdem die Fakten klar sind - die ganzen Reaktionen etwas übertrieben. Immerhin ist es weiterhin so, dass Millionen von Anwender OAuth nicht nutzen (können) und Ihre Web 2.0 Passwörter weiterhin in dutzenden Third-Party Anwendungen eingeben um deren Dienste zu nutzen. Ein Session Fixation Angriff, wie er bei OAuth möglich ist hat dabei doch wesentlich weniger weitreichende Konsequenzen. Entsprechend ist auch das Ergebnis, dass alle OAuth APIs wieder aktiviert wurden, und das Protokoll nur in einem langfristigen Community Prozess noch etwas verbessert werden kann. Interessanterweise scheint die Flickr API Authentication dieses Problem z.B. nicht zu haben. Zum einen wird nach einem Authorisierungsversuch der Benutzer auf eine festgelegte WebSeite des Anbieters verwiesen, und zum anderen kann der Authorisierungstoken (frob) nur vom Dienstanbieter mit einem Signierten Request in einen Auth Token umgewandelt werden. Ich hab mir mal ne Mühe gemacht eine kleine Google Appengine Anwendung zu erstellen die diesen Vorgang vorführt.

Ticker auf dem iPhone

Für mich ist das iPhone ein praktischer Begleiter, der oft den Blick auf den Notebook erspart. Ich wechsle öfters zwischen dem Twitter Client, der Xing Status Meldung, Mails, diversen Web Seiten und Feeds hin und her. Um das etwas zu verbessern habe ich nach einem Ticker gesucht. Zwar hat das iPhone OS noch nicht den Event-Push Dienst, den Apple für 3.0 angekündigt hat, aber es gibt im Cydia Repository ein nettes Winterboard Widget mit Namen iTicker. Dieses zeigt auf der Springboard Menu Seite RSS Einträge an. Das ganze ist eine HTML Seite mit etwas CSS und JavaScript kann man also gut seinen Bedürfnissen anpassen. Ich habe es so erweitert, dass es 2 Einträge pro Seite anzeigt und das Author Feld farblich abgesetzt voranstellt. Da stellt sich jetzt nur die Frage, welchen Feed ich hier anzeigen will. Es gibt einige Diente die Meldungen bereitstellen die für mich relevant sind. Manche Dinge sind dabei wichtiger und sollen nicht im endlosen Updates-Strom untergehen. Manche Meldungen erhalte ich über mehrere Feeds. Aber es gibt ja zum Glück Yahoo Pipes. Hier kann ich mehrere RSS Feeds aggregieren, filtern und nachbearbeiten. Zum Beispiel nehme ich mindestens das letzte Tweet meiner Frau (wenn dies nicht älter als einen Tag ist) und einige Tweets aus dem Facebook Friends News Feed. Das kopiere ich alles zusammen, entferne Duplikate anhand vom Link und schneide den Namen aus dem Titel ab und stecke Ihn (falls nicht schon vorhanden) in das Author Feld. Im iTicker habe ich die Pipe fest hinterlegt, kann deren Inhalt aber jederzeit grafisch zusammenstellen. Bei dem ganzen Unterfangen hat es mir geholfen dass ich die iTicker Dateien einfach auf dem Windows Rechner bearbeitet habe. Diese sind in Firefox lauffähig, und dank Firebug Extension war das JavaScript und CSS Debugging auch recht einfach. Um auf dem iPhone Änderungen zu machen habe ich die Dateien per SSH und vi geändert, anschliessend hilft mir die SBSettings Erweiterung das Springboard schnell neu zu starten ("Respring"). Jetzt muss ich nur noch herausfinden wie ich die Updates des Feeds besser kontrollieren kann. Irgendwie scheint da noch eine Google JS Feeds Library nicht ganz mitzuspielen.

Lambdas in Java

Gerade bastle ich an einem Wrapper für DataSources der im Umgang mit Datenbanken helfen soll (zusätzliche Statistiken, blocking bei DB Fehlern und pausieren von DB Anfragen). Dabei wrappe ich zwei Methoden getConnection() und getConnection(String, String). Nur der Aufruf der realen Methode unterscheidet sich, der restliche Code ist in beiden Methoden gleich:

CODE:
public Connection getConnection(String user, String pass) ... {     verifyState();       while(true) {         try {             Connection c = ds.getConnection(user, pass);             verifyConnection(c); // throws SQLEx             return c;         } catch (SQLException e) {             handleException(e); // throws SQLEx         }     } } public Connection getConnection() ... {     verifyState();       while(true) {         try {             Connection c = ds.getConnection();             verifyConnection(c); // throws SQLEx             return c;         } catch (SQLException e) {             handleException(e); // throws SQLEx         }     } }

Im Sinne von DRY (don't repeat yourself) ist dies aber unschön, weil der (in Realität noch komplexere) Retry code doppelt vorkommt, und ich immer beide Methoden anpassen muss. Dieses Problem kommt oft bei Frameworks vor, und nennt sich "the whole in the middle" Muster. Eine Lösung wäre:

CODE:
public Connection getConnection(String user, String pass) {     return smartConnect(true, user, pass); } public Connection getConnection() {     return smartConnect(false, null, null); } Connection smartConnect(boolean hasArgs, String user, String pass) {     verifyState();       while(true) {         try {             Connection c;             // --- the whole in the middle             if (hasArgs)                 c = ds.getConnection(user, pass);             else                 c = ds.getConnection();             // ---             verifyConnection(c); // throws SQLEx             return c;         } catch (SQLException e) {             handleException(e);         }     } }

Das funktioniert aber nur im einfachsten Fall und es verkompliziert leider den Framework code, was auch wieder der Verständlichkeit schadet.

In C# 3.0 kann man das (wie ich grade gesehen habe) mit einer Lambda Action lösen (man kann also im Prinzip anonyme Funktionsblöcke übergeben). In Java müßte man dazu ein Objekt übergeben:

CODE:
public Connection getConnection(String user, String pass) {     return smartConnect(         new ConnectionProvider() {              Connection provide() { return ds.getConnection(user, pass); }}); } public Connection getConnection() {     return smartConnect(         new ConnectionProvider() {             Connection provide() { return ds.getConnection(); }}); } Connection smartConnect(ConectionProvider cp) {     verifyState();       while(true) {         try {             Connection c = cp.provide();             verifyConnection(c); // throws SQLEx             return c;         } catch (SQLException e) {             handleException(e); // throws SQLEx         }     } } abstract class ConnectionProvider {   Connection provide(); }

Der smartConnect() code wird damit lesbarer, und man kann auch komplexere Aktivitäten injizieren (eventuell mit Argumenten zur provide() methode), aber man muss jetzt noch eine extra Klasse definieren und alles in allem wird es auch mehr Code. Bei jedem Aufruf wird ein zusätzliches Objekt erzeugt. Ich denke ich werde also eher bei dem "if" Ansatz bleiben.

Ich vermute mal der Syntaktische Zucker "Lambda Expression" erzeugt bei C# auch ein extra Call Objekt, aber es fällt wesentlich weniger zusätzlichen Code beim Aufruf an.