Bei schönem Wetter draußen in der Sonne sitzen und ein wenig über die beste Programmiersprache der Welt lesen - das ist doch was ;-) Gut, dass jetzt die Sommer-Ausgabe des Perl-Magazins (
http://www.perl-magazin.de/) da ist!
Die Abonnenten sollten in den nächsten Tagen ihr Heft in den Händen halten können.
Inhalt dieser Ausgabe:
* WxPerl-Tutorial - Teil 10
Im 10. Teil des WxPerl-Tutorials stellt Herbert Breunung verschiedene Komponenten vor, die bei der Programmierung von Editoren eine Rolle spielen.
Dabei geht es von einfachen Textfeldern bis hin zur Scintilla Editorkomponente, die auch bei Kephra und Padre zum Einsatz kommt.
* XML und Perl - XML::Compile
XML hat unter Perl-Programmierern einen schlechten Ruf. Perl-Leute mögen Programme, die mächtig sind, sich an DWIM ("Do what I mean") halten und effizient arbeiten. Die XML-Umgebung ist extrem geschwätzig, formell und wurde oft von Leuten mit wenig Programmiererfahrung entwickelt.
Und für die Verarbeitung von XML gibt es viele verschiedene Module. Mark Overmeer stellt XML::Compile vor, mit dem die Verarbeitung und Erstellung von XML-Dateien zum Kinderspiel wird.
* Good Practices: App-Entwicklung mit Moose und Freunden
Daniel Brunder zeigt, wie mit verschiedenen Modulen aus dem Moose-Namensraum und Moose selbst sehr einfach Kommandozeilenprogramme entwickelt werden können.
Dieser Artikel zeigt Wege auf, wie sich nahezu mühelos Kommandozeilen-Applikationen schreiben lassen und führt dazu einige Module und Ideen vor, die nicht nur viel Freude bei der Entwicklung garantieren, sondern auch Kollaborationen extrem vereinfachen.
* Spread
In $foo 21 (1/2012) gab es den Artikel "Konfigurationsmanagement und Software-Deployment mit Rex". In bester Perl-TIMTOWTDI-Tradition ist dies nun eine Antwort darauf.
Das Ausgangsproblem: Klassen von UNIX Hosts, die gleich administriert werden sollen. Das bedeutet, dass auf ihnen dieselben Dateien verteilt und dieselben Kommandos ausgeführt werden müssen.
Das Zusatzproblem: Nicht jeder Host ist zu jedem Zeitpunkt erreichbar, z.B. weil er in Wartung ist oder wegen einer Netzstörung nicht erreichbar ist. Trotzdem muss automatisch sichergestellt sein, dass schlussendlich alle Hosts auf dem selben Stand sind.
* Ticket oder nicht Ticket?
Nicht nur diese Frage kann mit Postmaster-Filtern in OTRS beantwortet werden. Viele Tickets werden bei OTRS wie bei den meisten anderen Ticket-/Help Desk-Systemen über E-Mails erzeugt. Die E-Mails werden hier von dem so genannten Postmaster abgearbeitet. Bis dann der User die E-Mail als Ticket zu sehen bekommt, werden verschiedene Stufen abgearbeitet. Die E-Mail wird eingelesen (entweder von einem Postfach abgeholt oder über ein Skript herein geschoben), vorgefiltert, ein Ticket wird erzeugt und nachträglich noch einmal gefiltert.
In diesem Artikel werde ich verschiedene Wege zeigen, wie solche Filter umgesetzt werden können.
* Was ist neu in Perl 5.16?
Noch ist Perl 5.16 nicht erschienen, aber durch die monatlichen (Entwickler-)Releases kann man ständig am Geschehen dran bleiben. Die Entwicklerversionen enden einmal im Jahr in einer stabilen Version, so dass wir bald Perl 5.16 "in den Händen halten" dürfen. Durch die verkürzten Releasezyklen landen nicht so viele neue Features in den stabilen Versionen. Das ist aus Sicht der Wartbarkeit auch gar nicht so übel.
Hier werden die ganzen "kleinen" Bugfixes nicht näher ausgeführt, sondern nur die größeren Änderungen.
* Rezension
Diese Kolumne versteht sich als Dienst für alle an Perl Interessierte, alles einzusammeln was "Perl" auf dem Schild trägt und es unter die Lupe zu nehmen. Denn wer hat schon Zeit einer bezahlten Tätigkeit nachzugehen und das Netz zu überwachen? Um möglichst alles abzudecken, werden manche Werke nur mit wenigen Sätzen im Vorwort abgehandelt. Bei anderen soll detaillierter beschrieben werden, warum sie nach des Autors Meinung (nicht) empfehlenswert sind.
In dieser Ausgabe rezensiert Herbert Breunung die Bücher "Perl Hacks" und "Coders at Work".
* Ein Buchstabendreher verändert die Welt
Manchmal haben kleine Fehler eine große Auswirkung. Ein Beispiel dafür sind die folgenden zwei Zeilen:
$ perl -we "q(di)"
$ perl -we "q(id)"
Useless use of a constant in void context at -e line 1.
Die erste Zeile läuft normal durch, aber bei der zweiten Zeile gibt es eine Warnung. Die besagt, dass der String "id" im void-Kontext sinnfrei ist. Warum ist aber der String "di" erlaubt? Wo liegt hier der Unterschied?
Dieser Artikel erläutert die Antwort auf diese Frage
* CPAN-News
An dieser Stelle zeigen wir wieder sechs Module, die entweder komplett neu sind oder bei denen neue Versionen zur Verfügung stehen.