Silent Teacher

Toxicode bietet einen wunderschönen JavaScript-Lehrgang an: Silent Teacher. Ohne ein Wort Erklärung kann man einige elementare Programmierkonzepte wie Variablen und Funktionen selbst entdecken. Der „Stille Lehrer“ stellt geschickt kleine Aufgaben anhand deren man die dahinter stehenden Code-Regeln selbst entdecken kann. Toller Einstieg für Programmier-Anfänger.

JSFiddle

JSFiddle ist eine wunderbare Website, um kleine Codeschnipsel auszuprobieren. JSFiddle besteht aus vier Fenstern. In drei Fenstern kann man HTML, CSS und JavaScript eingeben. Im vierten Fenster sieht man das Ergebnis, wenn man zuvor run gedrückt hat. Man kann JSFiddle mit und ohne Anmeldung nutzen. Die Anmeldung hat den Vorteil, dass man seine Codeschnipsel unter einem Titel speichern kann. JSFiddle ist kostenlos; links unten wird dezent Werbung eingeblendet.

Variablennamen

Für Variablennamen gelten eine Reihe von Regeln und Empfehlungen. Für Variablennamen sollte man in der Regel nur die 26 Buchstaben, klein oder groß, verwenden. Zusätzlich kann man noch Zahlen und den Unterstrich _ verwenden. Eine Zahl darf allerdings nicht am Anfang stehen und der Unterstrich sollte weder am Anfang noch am Ende stehen. Als Variablennamen sind alle sogenannten JavaScript-Key-Wörter (for, if, null, true usw.) nicht zugelassen. Auch sollte man Variablen nicht nach anderen bekannten JavaScript-Objekten wie z.B. String oder Math benennen. Das gibt nur Chaos.
Üblich ist es, Variablennamen in JavaScript in Camel-Case zu schreiben. Diese Schreibweise haben wir schon bei parseInt und parseFloat kennengelernt. Ist ein Name aus zwei oder mehr Namen zusammengesetzt, so beginnt man jedes neue Wort mit einem Großbuchstaben. So kann man zusammengesetzte Namen sehr gut lesen. Einfache Variablen sollten immer klein beginnen. Konstanten, also Variablen, dessen Werte sich im Laufe des Programms nicht ändern, schreibt man komplett groß. So kann man sie gut von den übrigen Variablen unterscheiden.

// gute Variablennamen
var summe;
var bruttoPreis;
var nettoPreis;

// Konstanten
var MEHRWERTSTEUER = 1.19;
var MAX_GEBOT = 1000;
var MIN_GEBOT = 1;

// ungueltige oder schlechte Namen
var 1;
var 1Haus;
var Math = 1;

Kanban-Tafel

Mit einer Kanban-Tafel kann man Arbeitsprozesse visuell darstellen. Die einfachste Kanban-Tafel besteht aus drei Spalten: ‚zu tun‘, ‚in Bearbeitung‘ und ‚fertig‘. Einzelne Arbeitsschritte bzw. Aufgaben werden nun auf Karten geschrieben und in die Spalte ‚zu tun‘ geheftet. Fängt man eine Aufgabe an, wandert die Karte auf ‚in Bearbeitung‘; ist die Aufgabe erledigt, wird sie in die Spalte ‚fertig‘ geschoben. Komplexere Kanban-Tafeln bestehen aus weiteren Spalten wie ‚im Test‘ und ‚getestet‘. Kanban-Tafel (und die etwas aufwändigeren Scrum-Boards) sind in der Software-Entwicklung weit verbreitet. Es werden entweder echte Tafeln zusammen mit echten Karten oder Online-Boards verwendet. Bei Online-Boards kann man aus einer Vielzahl von Produkten wählen. Meist bieten sie eine kostenlose Grundversion an. Für zusätzliche Features muss man dann eine monatliche Gebühr bezahlen. Ein einfaches, aufgeräumtes, in der kostenlosen Grundversion ausreichendes Tool ist KanbanFlow.

IDE

Eine integrierte Entwicklungsumgebung (IDE, Integrated Development Environment) stellt dem Entwickler verschiedene Werkzeuge zum Schreiben und Ausführen von Programmen zur Verfügung. Kern einer IDE ist ein leistungsstarker Editor, der Schlüsselwörter (var, if, for, …) der jeweiligen Programmiersprache farblich besonders hervorhebt (Syntax-Highlighting), der nach Eingabe von wenigen Buchstaben Vorschläge für das Weiterschreiben macht (Autovervollständigung) und der vor Fehlern oder Ungenauigkeiten warnt. Klassischerweisse ist eine Entwicklungsumgebung ein Programm, das aus dem Internet (frei oder kostenpflichtig) heruntergeladen wird, auf dem Rechner installiert wird und das auf Dateien des Rechners zugreift. Das Spektrum reicht hier von schlanken Texteditoren wie Notepad++ bis hin zu Alleskönnern wie Eclipse. Seit geraumer Zeit etablieren sich auch IDE’s, die ausschließlich in der Cloud arbeiten. Die IDE wird direkt im Browser geöffnet und die Dateien, die man bearbeitet, liegen in einen Cloud-Speicher. Entweder installiert man die Software auf einem eigenen Server oder man nutzt fertig gehostete Produkte. Interessante, einfache Cloud IDE’s sind Orion und ShiftEdit.

Nachtrag: Nach 6 Wochen Praxiseinsatz von ShiftEdit (freie Version) kann ich es für den professionellen Gebrauch nicht empfehlen. Es läuft nicht rund und verliert bisweilen seine Einstellungen.

Open Books

Im Netz gibt es eine Reihe von Büchern, die frei zugänglich sind (leider häufig veraltete Auflagen). Hier möchte ich auf das HTML5-Handbuch von Clemens Gull und Stefan Münz (dem Autor von SELFHTML) aufmerksam machen. Es stellt alle HTML-Elemente systematisch vor. Der Schwerpunkt liegt dabei auf der Semantik (der Bedeutung) der HTML-Elemente. Eine kurze Einführung in CSS und JavaScript rundet das Buch ab. Einfach mal reinschauen!

SELFHTML

SELFHTML ist ein Projekt, dass eine deutschsprachige Dokumentation zu HTML, CSS und JavaScript bereitstellt. Insbesondere der Teil zu HTML ist empfehlenswert. SELFHTML wurde 1995 von Stefan Münz aufgebaut und entwickelte sich schnell zu einer wichtigen, deutschsprachigen Dokumentation für HTML. 2005 übernahm ein Entwicklerteam SELFHTML und Stefan Münz zog sich aus dem Projekt zurück. Heute wird das Projekt von dem Verein SELFHTML e.V. geführt. Mitarbeit an SELFHTML ist jederzeit willkommen!

Die Programmierwerkstatt

Herzlich willkommen in der Programmierwerkstatt! Die Werkstatt dient der Begleitung eines Programmierkurses an der Gesamtschule Bremen Mitte (GSM). Die Werkstatt wendet sich auch an alle, die Programmieren lernen möchten.

Im Mittelpunkt der Werkstatt steht die Programmiersprache JavaScript und das Web, also HTML und CSS. Später kommen wir vielleicht auch zu PHP. Du wirst lernen mit Variablen, Bedingungen, Schleifen, Funktionen und Objekte umzugehen; du wirst Anwendungen programmieren und Webseiten erstellen.

Man lernt am besten, wenn man was macht. Hier soll eine kleine Webanwendung, ein Vokabeltrainer, erstellt werden.

Über Kommentare freue ich mich. Direkt hier im Blog oder per Mail.