Archiv für den Monat: September 2014

Die Geheimnisse von PostgreSQL beim Profi lernen

Viele Administratoren müssen sich heute mit dem Thema Datenbanken befassen – sei es, weil der Mailserver ein SQL-Backend spendiert bekommt, oder gar komplexe Shop- und Buchungssysteme darauf aufbauen. Unter Profis beliebt ist PostgreSQL, ein robustes, objekt-relationales SQL-Datenbanksystem, dessen Einrichtung zwar oft als komplex wahrgenommen wird, das im Betrieb aber dafür mit zahlreichen Features dankt, und in den vergangenen zwanzig Jahren seine Stabilität und Ausgereiftheit in zahlreichen Projekten unter Beweis stellen konnte.

Der Dozent Christoph Berg war nach seinem Studium zunächst als wissenschaftlicher Mitarbeiter an der Uni Saarbrücken beschäftigt, und ist mittlerweile PostgreSQL-Berater bei der credativ GmbH. In der PostgreSQL-Community ist er alles andere als ein Unbekannter: Neben seiner Aktivität im Projekt ist er auch der offizielle Package Maintainer und Debian-Entwickler für PostgreSQL. Sein Wissen gibt er nicht nur in zahlreichen Vorträgen auf Konferenzen, sondern auch im firmeneigenen Blog und auf seiner privaten Webseite weiter.

Pünktlich zum geplanten Erscheinen von PostgreSQL 9.4 – der Version, die auch in Debian 8 „Jessie“ Einzug halten soll -, finden diesen Herbst wieder mehrere PostgreSQL-Kurse im Linuxhotel statt, in denen noch Plätze frei sind.

Der Kurs, der schon seit ca. zehn Jahren im Linuxhotel angeboten wird, ist dabei über die Jahre seiner Ausrichtung treu geblieben und richtet sich primär an Datenbankadministratoren, auch wenn SQL-Anwendungsentwickler noch das ein oder andere darin lernen können. Empfehlenswert ist auf jeden Fall der Besuch des ebenfalls im Linuxhotel unmittelbar davor angebotenen SQL-Grundlagenkurs, sofern entsprechende Grundkenntnisse noch nicht vorhanden oder eingerostet sind. Neben einer Einführung in die Geschichte des Datenbanksystems sowie einem Überblick über Architektur, Syntax und Installation, geht Christoph auch auf komplexe Anfragen, verschiedenen Möglichkeiten zur Anwendungsentwicklung sowie zahlreiche PostgreSQL-Funktionen ein, darunter Lokalisierung und Encodings, Rules, Concurrency Control, Locking, Stored Procedures und Trigger, Replikation und Backup.

„Unsere Teilnehmer kommen in der Regel aus der Industrie und besuchen den Kurs, um anschließend konkrete Projekte zu stemmen“, erklärt Christoph „Der Kurs veranschaulicht an vielen praktischen Beispielen die konkreten Anwendungsmöglichkeiten von PostgreSQL. Wenn es die Zeit zulässt, und das Thema für alle Teilnehmer gleichermaßen interessant ist, bietet sich durchaus auch mal die Möglichkeit, konkrete Fragestellungen anhand einer Produktiv-Datenbank zu erörtern. Auch Themen wie Hochverfügbarkeit (HA), Replikation und SSL sprechen wir im Rahmen des Kurses bei Interesse gerne an.“

Einblick in eine faszinierende Welt – Mikrocontroller-Schulungen im Linuxhotel

In der heutigen technisierten Welt findet man sie fast überall – in der Waschmaschine, im Toaster, im Kühlschrank, in der Kaffeemaschine und sogar in der heimischen Beleuchtung kommen sie vor: die Rede ist von Mikrocontrollern. Das sind jene kleine Systeme, die dafür sorgen, dass viele unserer technischen Geräte, Gimmicks und Gadgets überhaupt erst funktionieren, und die sich neben dem geringen Stromverbrauch auch durch ihre Zuverlässigkeit auszeichnen.

Neben unseren Kursen zu Servern, Netzwerken, Anwendungssoftware und verschiedenen Programmiersprachen bieten wir im Linuxhotel diesen Herbst zum ersten Mal auch einen Einblick in diesen ganz speziellen Bereich der hardwarenahen Softwareentwicklung.

Mit Erich Wälde und Carsten Strotmann stehen dabei zwei erfahrene Experten zur Verfügung, die die Kursteilnehmer in die Geheimnisse der Mikrocontroller-Programmierung einführen. Erich ist promovierter Physiker, im Hauptberuf als Linux-Systemintegrator bei einem Gerätehersteller tätig, der sich zudem mit Elektronik und Computern befasst, und sich dabei in den vergangenen 15 Jahren einen umfangreichen Erfahrungsschatz aufgebaut hat. Dabei ist ihm auch die Anwendungsseite nicht fremd. Routinemäßig sammelt er Messdaten über die Umgebung (Temperatur, Luftfeuchte, Luftdruck), die Solaranlage und den Wasserstand in der Zisterne ein. Die Daten werden über RS485 und teilweise über ISM-Band Funkverbindungen zusammengetragen. Eine Laserstrecke zur Übertragung ist in Arbeit, sowie ein Sensor zur Erfassung der Gewitteraktivität.

Carsten befasst sich bereits seit den achtziger Jahren mit hardwarenaher Programmierung und legt seinen Schwerpunkt dabei auf die Erzeugung möglichst kleinen und kompakten Programmcodes. Zudem ist er genauso wie Erich als Redakteur bei der Zeitschrift „Vierte Dimension“ engagiert, die von der Forth-Gesellschaft herausgegeben wird, und hat als Trainer bereits große Erfahrung, ist er doch auch als Dozent für Themen wie DNS, Netzwerke und Firefall aktiv.

Beide geben ihren Erfahrungsschatz auch innerhalb der Community gerne weiter. Erich gibt regelmäßig Bugreports für die verschiedenen Entwicklungswerkzeuge auf und ist auf den amForth-Mailingliste aktiv, um anderen Interessierten unter die Arme zu greifen, unter anderem durch das Schreiben von Dokumentation und das Veröffentlichen von Codebeispielen. Zudem ist er regelmäßig auf FOSDEM, Chemnitzer LinuxTage und LinuxTag präsent, um sein Wissen über Mikrocontroller-Programmierung, aber auch zu anderen Open-Source-Themen, in Form von Vorträgen weiterzugeben. Carsten indes zeichnet im Verein für den Mikrocontroller-Verleih verantwortlich, der interessierten Neulingen die Möglichkeit gibt, auch ohne große Anfangsinvestition die Welt der Mikrocontroller zu entdecken – wichtig ist ihm dabei, gleich ein Paket aus verschiedenen Entwicklungsumgebungen zu schüren, für die er auch Anleitungen zum leichteren Einstieg verfasst.

„Eine der Hürden ist mit Sicherheit, dass der Aufwand durch Board, Netzteil, Verbindungskabel, Programmer und natürlich dem Lernen von Maschinensprache entsprechend hoch ist“, fasst Erich Wälde zusammen. „Unser Kurs richtet sich daher auch explizit an Anfänger, die sich zum ersten Mal mit der Materie befassen“, fügt Carsten Strotmann hinzu.

Angefangen bei einem Überblick der gängigen Mikrocontroller sowie der gemeinsamen Installation der notwendigen Hard- und Software-Komponenten („Toolchain“), führt der Kurs schrittweise anhand von praktischen Programmierübungen zu konkreten Ergebnissen, wie dem Blinken einer LED, die Nutzung des Analog-Digital-Wandlers, und die Regelung der Helligkeit mittels Puls-Weiten-Modulation. Auch die einzelnen Teilsysteme eines Mikrocontrollers wie RAM, Flash, EEPROM, die Beschaltung der Pins und die verschiedenen Bussysteme und Schnittstellen werden im Kurs thematisiert, abgerundet durch die Möglichkeiten des Debuggings.

Als Mikrocontroller kommen dabei die 8-bittigen Atmel AVR atmega Controller in Form eines Arduino Duemilanove zum Einsatz, da diese nicht nur günstig und leicht zu erwerben, sondern auch vielfältig nutzbar sind. Andere Geräte, die vor allem für fortgeschrittene Anwender interessant sind, wie beispielsweise der Parallax Propeller mit mehreren Rechenwerken, werden eher am Rande gestreift. Ein kleiner Exkurs befasst sich darüber hinaus mit dem Thema „Stromsparen“, um Systeme beispielsweise allein mittels Solarzelle autonom zu versorgen.

„Gerade in den letzten Monaten merken wir ein gestiegenes Interesse an Mikrocontrollern, da hier ein Großteil des Systems offen liegt, was insbesondere sicherheitsbewussten Anwendern – Stichwort Open Hardware, keine Backdoors – entgegenkommt“, fasst Carsten den aktuellen Stand zusammen und ergänzt: „Theoretisch kann man sich mit dem nötigen Wissen sogar die komplette Hardware, inklusive notwendiger Krypto-Chips, Zufallszahlen-Generatoren und Hardware-Security-Module, selbst zusammenbauen.“

Der Kurs ist dabei so aufgebaut, dass sich die Teilnehmer hauptsächlich mit den Programmiersprachen Assembler und C befassen. Ein Teil der Übungen werden vergleichend in beiden Sprachen bearbeitet. Ein Blick in die Maschinensprachenlistings kommt nicht zu kurz, denn das ist zur Fehlersuche unerlässlich. Später wird es einen Exkurs in die Sprache Forth geben, ergänzende andere Themen sind aber denkbar. Interessierte Anwender sollten grundlegende Kenntnisse der Kommandozeile (Shell) sowie etwas technisches Englisch zum Verständnis der Datenblätter mitbringen, alles weitere ist optional, auch Programmiererfahrung ist nicht zwingend nötig. Der Kurs im September wird auf Deutsch abgehalten, kann auf Wunsch künftig auch englischsprachig stattfinden, sofern genügend Teilnehmer diesen Wunsch äußern.

Der nächste dreitägige Kurs findet Ende September im Linuxhotel statt – es sind noch Plätze frei!

Als kleines „Schmankerl“ hat uns Erich freundlicherweise ein einfaches „Hello world“-Programm in allen drei Programmiersprachen zur Verfügung gestellt, das ihr hier herunterladen könnt.