Immer wieder bin ich angenehm überrascht wie viele Aufgaben ich mit BASH in oft einer (langen) oder nur wenigen Zeilen lösen kann. Warum schreibe ich dann fast alles in Skriptsprachen wie Ruby, Python oder Perl?
Ganz einfach weil die Syntax einfacher zu merken ist und BASH doch einige Eigenheiten hat, die es zu merken gilt.
Darum hier ein Versuch sämtliche gern gemachte Fehler niederzuschreiben. Ich würde mich über Kommentare eurer Fallgruben von euch freuen.
Read the rest of this entry »
Das Vorurteil das man keine Webseiten unter Linux entwickeln kann, möchte ich hiermit mal aus der Welt schaffen. Ich arbeite fast täglich an Webseiten mit Linux, seit Jahren und würde mit keinem Betriebsystem tauschen wollen.
Der Editor
Der Editor ist Geschmackssache dazu will ich nicht viele Worte verlieren. Ich verwende vim und bin durch die ganzen Plugins und der Konfigurationsmöglichkeiten sehr zufrieden damit. Quanta und Bluefish sind zwei speziell für web development zugeschnittene Editoren.
kleine Helfer
Ich finde eine Bildschirmlupe die Bereiche des Bildschirms vergrößert darstellt sehr praktisch dazu verwende ich kmag. Um Pixeln zumessen verwende ich kruler, das ein Bildschirmlineal ist das man in alle 4 Himmelsrichtungen drehen kann. Ksnapshot ist ein Programm das Screenshots erzeugt, es ist unter anderen möglich nur ein Fenster oder nur eine Region auszuwählen.
Firefox-Plugins
Der Firefox ist zum Entwickeln besonders geeignet durch die große Anzahl an Plugins.
Mit Firebug und dem Web Developer ist es möglich Informationen aller Art herauszufinden und direkt CSS oder HTML zu ändern. Tamper Data ist ideal um Werte von Formularen abzufangen und die Einträge zu manipulieren. Mit Selenium IDE kann man Navigationen und Interaktionen auf einer Webseite aufzeichnen und abspielen.
Browserchecks
Webseiten sollten auf allen gängigen Browsern funktionieren. Um Webseiten auf Windows zu testen verwende ich virtual box, eine Virtualisierungs Software mit einer Windows XP Installation und allen möglich installierten Browsern. Es gäbe auch das Programm ie4linux das verschiedene IE Versionen mit wine emulieren kann. Leider ist das sehr langsam, nach meiner Erfahrung. Für Safari den OSX Browser verwende ich Konqeuror der ebenfalls wie Safari Webkit verwendet zum rendern der Webseite und man so ziemlich die selbe Darstellung hat. Mit Lynx kann man auch Webseiten im Textmodus testen. Es gibt auch das Webservice browsershots.org die von einer URL mit beliebig einstellbaren Browsern Screenshots erzeugt.
Validierung
Um zu überprüfen ob die Seite valides HTML und CSS liefert, kann direkt der Validator von w3.org zum überprüfen verwendet werden. Wenn die Seite lokal am Rechner liegt kann man tidy verwenden, es gibt auch das Firefox Plugin Html Validator womit man auch offline validieren kann.
Server-Technik
Da auf den meisten Servern auch ein Linux lauft ist es natürlich klar das man auch die selbe Server-Technik lokal am Desktop installieren kann. Ein Webserver wie den Apachen lässt sich genau so einfach wie MySQL, PHP, Django oder Rails mittels aptitude installieren.
Nennt mich Nerd, aber ich erfreue mich an automatisch generierten Grafiken wie Diagrammen aus Datenmengen. Ein Tool das genau zu diesen Zweck verwendet werden kann ist Graphviz, damit lassen sich schnell und einfach Diagramme erstellen. Strukturdiagramme, Pfeildiagramme, automatisch erzeugte Diagramme und aufwändig manuell gestaltete Diagramme. Bevor eine Grafik erstellt werden kann wird eine Definitionsdatei erstellt in der Beschreibungssprache DOT.
Im ersten Beispiel soll eine Grafik erzeugt werden, die von “Linux” Verbindungen zu “Debian”, “Gentoo” und “Ubuntu” zeigt.
/* linux_family_1.dot */
digraph G {
Linux -> Debian
Linux -> Gentoo
Linux -> Ubuntu
}
Mit dem Kommandozeilenbefehl dot wird nun der Quelltext zu einer Grafik (GIF, PNG, SVG oder PostScript) verarbeitet. In unseren Beispiel wollen wir eine PNG Datei aus dem DOT Quelltext erzeugen.
dot -Tpng linux_family_1.dot > linux_family_1.png
Read the rest of this entry »