Sorce Code online editieren

Der Trend hält ja schon seit ein paar Jahren an: Die Internet-Anwendungen werden immer mächtiger, und durch weite Verbreitung von Breitband-Internet und effektiveren JavaScript-Implementierungen können immer mehr Anwendungen im Browser umgesetzt werden. Der meiner Meinung nach entscheidenende Vorteil dabei ist, dass man halt keine spezielle Software installieren muss, und verhältnismäßig plattformunabhängig ist (Internet-Explorer macht dann eventuell schon Kopfschmerzen…).

Umso erstaunlicher, dass gerade Programmierer diese Möglichkeiten sogut wie gar nicht nutzen. Gerade in der Lehre oder für ganz kleine, schnelle Bugfixes wäre eine Lösung, bei der man Code ändern kann, ohne einen Texteditor und FTP-Programm zu laden, sehr interessant.

Man stolpert nicht sofort ‚drüber, aber am weitesten scheint „Codemirror“ (http://marijn.haverbeke.nl/codemirror/index.html) von Marijn Haverbeke zu sein. Ich denke ich sollte mich mal näher damit befassen. Ich kann mir gut vorstellen, dass es in 5 Jahren recht selbstverständlich ist, für kleinere Änderungen und zum ‚reinschnuppern in eine (Web-)Programmiersprache Browser-IDEs zu nutzen. Die Hürden zum Einstieg könnten einfach deutlich geringer sein, wenn man erst einmal einen gewissen Reifegrad dieser Implementationen erreicht hat.

Mal sehen, was die Zukunft bringt.

hannover-basketball.de

Ich werde einen neuen Versuch starten, eine Informations- und Community-Seite für die lokale Basketballszene hochzuziehen. Vor etwa einem Jahr machte ich den ersten Anlauf, und konnte eine Menge dabei lernen:-)

Die meisten Leute lesen nur. Sogar eine triviale Aktion wie sich mal schnell einen Foren-Account zu registrieren ist für viele schon mehr, als sie bereit sind an Eigeninitiative zu investieren. Man wird ja eigentlich schon genug geflutet von Information, da hat man vielleicht nicht unbedingt Lust, sofort auf die Seite zu gehen, wenn panschk das befiehlt.

Cheik hingegen hat einfach sein Ding gemacht auf ballinthecity-hannover.blogspot.com, und hat durch unermüdlichen Einsatz und vor allem persönlichen Kontakt zu all den Leuten in den verschiedenen Vereinen deutlich mehr „Unterstützung“ bekommen.
Was ich daraus wohl lernen kann:

  • Eine treue Leserschaft aufzubauen, ist ein Prozess, der Zeit und Ausdauer braucht
  • Auf aktive Mitarbeit von irgendjemanden sollte man nicht setzen.
  • Persönlicher Kontakt ist ungemein wichtig. E-Mails werden von einigen Leuten scheinbar nicht gelesen oder einfach nicht beantwortet

All das ist für mich schwierig gewesen, weil ich davon ausging, dass alle von meiner Idee genauso begeistert wären wie ich. Natürlich nicht — Die meisten Leute haben meist einfach besseres zu tun, als gerade mein Projekt oder dein Projekt oder sonstwas zu unterstützen.

Man muss erstmal einen echten Mehrwert für die Leute schaffen, dann kommen sie vielleicht auch…

Mal sehen ob mir das diesmal gelingt:-)

Mücken und andere Quälgeister Teil 2

Fortsetzung von Mücken und andere Quälgeister Teil 1

Unser jugendlicher Vandale hatte also weiterhin eine hohe intrinsische Motivation, den Mitgliedern unserer kleinen Community die Laune zu verderben. Ein Benutzer der Seite, spinesheath, schlug also vor, ich solle doch das Sperren von IP-Adressen durch Administratoren ermöglichen. Wenn ich das richtig behalten habe, werden IP-Adressen wenigstens bei DSL-Nutzern in der Regel dynamisch durch den ISP (Internet Service Provider) vergeben und bleiben deswegen nicht lange gleich.

Im Extremfall könnte also ein „guter“ Nutzer, wenn er den gleichen polnischen Internetanbieter wie der Quälgeist hat, mit einer gesperrten IP-Adresse auf die Seite kommen und könnte diese entsprechend gar nicht mehr besuchen.
Ich habe die Dauer der Sperrung also auf 24 Stunden begrenzt. Da die IP-Adresse eh oft wechselt, bringt mehr Dauer ja eh keine Vorteile. Regelmäßig wird ein Admin also die IP-Adresse des Angreifers sperren lassen müssen, damit man zumindest für ein paar Stunden Ruhe hat.

Erstaunlich, wieviel Energie manche Leute darin stecken, anderen das Leben schwer und Sachen kaputt zu machen. Man hat ja nicht einmal einen finanziellen Vorteil davon oder so.

Mücken und andere Quälgeister Teil 1

So kalt wie es im Moment ist, muss ich mir um Mücken wohl erstmal keine Sorgen machen. Wobei die wahrscheinlich nach all dem Regen doppelt hart zurückschlagen, wenn es wieder wärmer wird. Aber übers Wetter spreche ich aus Mangel an interessanteren Einfällen eigentlich schon oft genug also…

Es geht ähnlich nervige Viecher, die mich in der letzten Woche in meiner Funktion als Überadmin auf BWMN beschäftigt haben. 1337 H4x0rs oder, in diesem Fall wohl passender, „nervige kleine Kinder“. Ooookaayyy, ich hatte ein paar Sicherheitslücken im System, insbesondere wurde nicht auf jeder Seite explizit gecheckt, ob der Benutzer, der eine Aktion durchführt, auch die notwendigen Rechte hat. Ich bin halt zu naiv und glaube an das Gute im Menschen wie kleine Kinder an den Weihnachtsmann. Ob der Bengel, der mir letztes Wochenende meine wertvolle Freizeit geraubt hat, noch an den Weihnachtsmann glaubt?

Der Reihe nach!

Offenbar hat einer unserer Nutzer ein leicht zu erratendes Passwort gehabt oder der Angreifer ist sonstwie daran gekommen. Jedenfalls hatte dieser Nutzer sogar Admin-Rechte, und so konnte der Angreifer fröhlich Maps löschen und Newsbeiträge mit Schimpfwörtern verzieren. Und er konnte sich neue Accounts mit Administratorrechten erschaffen. Toll, wa? Leider machte er auch genau das, und die anderen Administratoren konnten vieles nicht wiederherstellen.

Als ich am nächsten Morgen dank E-Mails von Nightmarjoo Wind von der Sache bekam, entzog ich allen Administratoren außer drei besonders vertrauenswürdigen die Administratorenrechte und bat meinen Webhosting-Provider, ein Backup aufzuspielen, was schnell und unkompliziert erledigt wurde. Damit war die Sache erledigt, dachte ich…

Leider waren ja da noch diese oben erwähnten Lücken beim Checken der Erlaubnis, und so konnte ich mich wenig später noch einmal an den netten E-Mail Support von allinkl wenden, um das gleiche Backup noch einmal installieren zu lassen (60 MB große Datenbank-Backups über ein Web-Interface herumzuschubsen macht nämlich nicht wirklich Spass:-)): Die News-Beiträge hatte das Hacker-Kid leider verunstalten können.

Offensichtlich erzürnt, dass seine in stundenlanger harter Arbeit hinterlassenen Spuren der Verwüstung innerhalb von Sekunden wieder getilgt wurden, nervte der Angreifer weiter: Da es mittlerweile keine Sicheitslücken gab (Es gibt bestimmt noch welche, aber wahrscheinlich keine mehr, die man als 12jähriger mit Mückenhirn so leicht findet), spammte er einfach die Bereiche der Seite, die für jeden normalen Nutzer zugänglich sind, mit seinen geistreichen Ergüssen voll. Oder er durchsuchte die Map-Liste nach Maps, in denen die Autoren das Passwort öffentlich gemacht hatten, damit mehrere Leute nach dem Wikipedia-Prinzip an der Map frickeln können, um diese dann zu schänden.

Das sind Sachen, die man kaum vermeiden kann, und die dem Angreifer auch mehr Zeit kosten, als wenn er schnell per Knopfdruck deine Datenbank löschen konnte. Aber es kann einem natürlich trotzdem den Spass an einer solchen Seite gewaltig vermiesen.

„Sauber“ von vorne anfangen oder bestehenden Code ausbauen

Ich habe, wie wohl die meisten Programmierer, keine besoners hohe Meinung von Code, den ich vor zwei Jahren geschrieben habe. Wenn ich nur ganz sauber von vorne starten kann wird alles besser…oder nicht?

http://www.joelonsoftware.com/articles/fog0000000069.html

Nachdem ich das gelesen habe, bin ich mir recht sicher, dass die „Prototyp“-Versionen meiner Masterarbeit nicht einfach weggeworfen werden sollten. Man kann mit Refactoring und Hinzufügen von Kommentaren und kleinen lokalen Code-Verbesserungen die Qualität wohl auch in einem „alten“ System auf ein gutes Level bringen, nehme ich an.

Masterarbeit mit CSS?

So wirklich begeistert von LaTeX war ich nie, und da ich mich in den letzten Tagen etwas mit CSS beschäftigt hatte, und dabei eine Menge neuer Möglichkeiten kennengelernt habe, spielte ich mit dem Gedanken, zu versuchen, meine Masterarbeit mit HTML/CSS zu schreiben. Denn CSS kann ich einfach besser als LaTeX;)

Wichtig war dabei für mich, dass eine schön gestaltete PDF(!!) Datei dabei am Ende ‚rauskommt. Schließlich ist PDF das Format, dass für Arbeiten dieser Art (zurecht) allgemein verlangt wird. Also würde ich mit einem Browser in das PDF-Format drucken. Mit einigen kleinen CSS-Befehlen konnte ich schnell ein recht solides Seitenlayout machen, aber dann kamen die speziellen Kopfnüsse:

– BibTeX-mäßige Referenzen wären mit etwas mehr Selbstdiziplin und ein bisschen PHP-Code ‚drumrum wohl kein großes Problem

– Inhaltsverzeichnis automatisch generieren stell ich mir noch etwas schwieriger vor. Klar, dass man jetzt um echtes Programmieren, etwa Parsen von HTML-Dateien, nicht ‚rum kommt. Da wird es schon fraglich, ob LateX lernen nicht doch schneller ist;)

– Den Ausschlag dafür, die Idee jetzt doch zu verwerfen, waren jedoch Fußnoten. Die möchte ich unbedingt haben, und ich stelle es mir schwer bis unmöglich vor, sicherzustellen, dass die Fußnoten immer auf der „richtigen“ Seite sind.

Also werde ich doch weiter LaTeX benutzen. Word wäre natürlich auch eine Option, und die sehr viel bessere Rechtschreibkorrektur ein echtes Argument, aber der Nerd in mir sträubt sich dagegen. Und ehrlich gesagt beherrsche ich Word noch weniger Gut als LaTaX.