Kategorie-Archiv: Webdevelopment

Testen und Screenshots einer Website unter verschiedenen Browsern

Als Webentwickler hat man ja oft das Problem die Seite unter verschiedenen Browsern einigermaßen gleich aussehend zu bekommen. Durch bessere Verbreitung von Web-Standards wird das Problem zwar ein wenig entschärft, so bald es aber um dynamische und komplexe Inhalte geht, kommt man normalerweise nicht umher, unter verschiedenen Browsern zu testen.

Der Total Validator kann zusätzlich zur Überprüfung von der Syntax von Websites einen Screenshots der unter einem auswählbaren Browser erzeugt wurde, anzeigen. Es gibt auch ein FireFox-Plugin welches darauf zurück greift (Download).

Sehr faszinierend finde ich aber die rein auf Screenshots spezialisierte Seite Browsershots. Momentan kann man dort Bildschirmfotos unter 65 verschiedenen Kombinationen aus Webbrowser, Version und Betriebssystem generieren lassen. Die Arbeit wird dabei von verschiedenen Sponsoren erledigt bei denen die Seite automatisiert aufgerufen, abgelichtet und dann auf Browsershots komfortabel zur Verfügung gestellt wird.

Ansonsten bleibt natürlich auch die Wahl sich z.B. in VirtualBox verschiedene Betriebssystem samt Browsern zu installieren. Gerade bei dynamischen Websites, die interaktive Funktionalitäten Biete welche auf reinen Screenshots nicht erkennbar sind, ist dieser Weg natürlich unumgänglich.

Menschliche Rechenzeit sinnvoll nutzen, die Zweite

Captchas – diese kleinen lustigen bunten und verunstalteten Texte die man abtippen muss um irgendwelche Formulare im Internet abzusenden kennt mittlerweile jeder. Damit soll verhindert werden, dass irgendwelche Bots allerlei Unfug treiben und z.B. massenweise eMail-Adressen einsammeln und so weiter…

Es gibt zum Beispiel den ReCaptcha Dienst mit dem man seine eigenen Seiten gegen solche Bots schützen kann. Der Clou: Der Benutzer muss zwei meist englische Wörter aus dem Bild herauslesen. Eines davon kennt der Dienst selbst nicht: Die betreibende Universität digitalisiert nämlich Bücher und versucht auf diese Weise die Wörter zu erkennen, die die automatische Texterkennungssoftware nicht lesen konnte. Bisher hat sich noch kein SPAM-Bot in mein Blog verirrt .. falls es mal einer tut, kann man vielleicht auch hier bald beim Bücher-Digitalisieren helfen 🙂

Einbinden externer Quellen in ein SVN Repository

Stephan hat mich gerade auf ein sehr cooles und mir bisher unbekanntes Feature von Subversion hingewiesen. Mit einem Befehl kann man beliebig viele externe Quellen in ein SVN-Repository einbinden. Sehr nützlich ist das, wenn man z.B. viele externe (oder auch firmeninterne) Bibliotheken nutzt. Diese werden dann bei jedem Entwickler beim Update oder Checkout automatisch heruntergeladen und Code kann auch im Original-Repository verändert werden (falls man denn die Rechte dazu hat)

Beispiel:
$ svn propset svn:externals „libs/mlib https://svn.example.com/mlib“ trunk
$ svn update trunk/

Hole externen Verweis nach ‚trunk/libs/mlib‘

[…]

Externer Verweis aktualisiert zu Revision 123.

Aktualisiert zu Revision 4567.

In Eclipse werden solche externen SVN-Quellen vom Subversive Plugin mit einem hübschen roten Pfeil kenntlich gemacht: Screenshot von Eclipse

Kennwörter generieren

Ich habe gerade einen Kennwort-Generator erstellt, welcher unseren Kunden Passwörter vorgeben soll. Die Kennwörter sollten sicher aber zugleich gut merkbar sein. Die meisten klingen etwas asiatisch angehaucht, manche auch etwas anrüchig, das ist aber keine Absicht, wirklich. Hier ein paar Beispiele:

  • ge+Dawatu53
  • bini+Mawo93
  • gumi-papi87
  • wanadu+Gu18
  • wohe#Fike98

Musterlösung Fachinformatiker-Einstellungstest und Plat_Form

Heute nur kurz zwei Links:

  1. Es gibt eine „Musterlösung“ – in Form einer Statistik der häufigsten Antworten – für den Einstellungstest, denn Manitu vor kurzem veröffentlicht hat.
  2. Gerade in der aktuellen iX gelesen: Die Ergebnisse des Plat_Forms Wettbewerb in dem es darum ging, welche Umgebung beim entwickeln von Web-Applikationen am besten abschneiden.

MySQL-Datenbank über das Netz kopieren

Als Webentwickler kommt man ja öfter mal in die Situation eine Datenbank zwischen zwei Hosts kopieren zu müssen. Meist ist der MySQL Server so konfiguriert, dass nur lokale Verbindungen erlaubt sind. Ein MySQL-Verbindungsaufbau vom Host Ziel zum Host Quell fällt also schonmal flach. Meist wird man sich also mysqldump oder phpMyAdmin behelfen. Am einfachsten geht es wohl, wenn man mysqldump und den mysql-Kommandozeilen-Client einfach hintereinander schaltet – mit einer SSH Verbindung dazwischen. Und weil es so einfach ist, werden die Daten vor dem Versand über das Netz noch komprimiert.

Heraus kommt ein Einzeiler, $server sei dabei die Adresse des Quell-Hosts und $db der Datenbankname (die Datenbank muss auf dem Zielrechner bereits exisitieren). Nun kann man auf dem Ziel-Rechner folgendes eingeben:

(ssh $server mysqldump -u root $db -p |gzip) |gunzip | mysql -u root $db

Hier wurde für den Zugriff auf die Quell-Datenbank der MySQL-Benutzer root mit Kennwort verwendet, auf dem Zielrechner sogar der MySQL Benutzer root ohne Kennwort – da es sich in dem Fall um meinen Laptop handelt und MySQL von außen nicht erreichbar ist 🙂
Ich denke, dass Prinip sollte klar geworden sein.

Google Gears / SQL Datenbanken per Drag’n’Drop

Langsam fange ich an Google Gears interessant zu finden …
Die Grundidee ist, dass Google Webapplikationen ohne Web nutzbar machen will. Dazu bietet ein Firefox Plugin die Möglichkeit per Javascript auf dem Lokalen Rechner Daten in (SQLite?) Datenbank abzulegen und ähnliches.

  • http://newz.at/google-gears/
  • http://www.mxgraph.com/demo/mxgraph/schema.html

Google Gears / SQL Datenbanken per Drag’n’Drop

Langsam fange ich an Google Gears interessant zu finden …
Die Grundidee ist, dass Google Webapplikationen ohne Web nutzbar machen will. Dazu bietet ein Firefox Plugin die Möglichkeit per Javascript auf dem Lokalen Rechner Daten in (SQLite?) Datenbank abzulegen und ähnliches.