Friday, June 29, 2007

Perl-Kurse mit Damian Conway

Damain Conway's Vorträge sind wahrscheinlich die Besten, die ich je gehört habe. Und dieses Jahr besteht die Chance, ziemlich viel von ihm zu lernen. Er wird an der diesjährigen YAPC::Europe teilnehmen und direkt davor zwei Kurse in der Schweiz halten.

  • Perl Best Practices - Viele denken mittlerweile, das Buch ist eine Art Gesetz. Das würde sich Damian aber nie anmaßen zu behaupten. Er sieht es vielmehr als eine Reihe von Vorschlägen. Es ist also kein Muss, Perl so zu programmieren wie er es in dem Buch beschreibt. Aber er regt dazu an, über seinen Programmierstil nachzudenken und in vielen (besser: den meisten) Punkten gebe ich ihm Recht. An zwei Tagen wird er über den Inhalt den Buches lehren.
  • Perl6 Update - In letzter Zeit wird immer häufiger über Perl6 gesprochen, aber Conway berichtet in dem 1-Tages-Kurs anhand von aktuell einsetzbaren Modulen und anderen Beispielen wie weit Perl6 schon ist und was es bringen wird.
Die Verbindliche Anmeldung muss bis zum 04.07.2007 erfolgen.

Thursday, June 28, 2007

Open Source Jahrbuch - "Call for Papers"

Für das Open Source Jahrbuch 2008 suchen die Herausgeber noch Autoren. Dazu haben Sie einen "Call for Papers" veröffentlicht. Wer also etwas mit Open Source zu tun hat, kann sich ja mal die Autoreninfos anschauen. Bis zum 31.07.2007 muss ein Exposé mit 1500 Wörtern eingereicht werden.

Wednesday, June 27, 2007

Umfrage zur Web-Programmierung

Die Veranstalter des Plat_Forms-Contest (ich habe einige mal darüber hier im Blog berichtet), haben jetzt auch eine Umfrage gestartet. Dabei geht es darum, welche Plattformen (hier: Programmiersprachen) man einsetzt und zwei davon vergleicht man. Warum sind Applikationen in der einen Sprache "wartbarer" oder "sicherer" als Applikationen in der anderen Sprache. Es wäre schön, wenn sich auch einige Perl-Programmierer daran beteiligen würden und sagen würden, warum sie Perl verwenden.

Vielleicht interessiert sich der eine oder Andere auch für den offiziellen Bericht zu der Veranstaltung. Bei heise hat das eine heftige Diskussion ausgelöst, wobei die heise-News da etwas einseitig waren - schade eigentlich.

Text farbig darstellen mit Tk::Text

Wer mit Perl/Tk arbeitet weiß, dass es manchmal Sachen gibt, die man nur durch ausprobieren herausbekommt - oder durch Fragen in einem Forum. In letzter Zeit hat sich die Frage gehäuft, ob man bei Tk::Text bestimmte Textteile farbig markieren kann. Hier mal ein kleines Beispiel wie man Fehlermeldungen rot markieren kann:

#!/usr/bin/perl

use strict;
use warnings;
use Tk::Text;
use Tk;

my $mw = tkinit;
my $text = $mw->Text()->pack;
$text->tagConfigure('red_text', -foreground => 'red');

while( my $inhalt = ){

if( $inhalt =~ /^Fehler:/ ){
$text->insert('end',$inhalt,'red_text' );
}
else{
$text->insert('end',$inhalt );
}
}


MainLoop;

__DATA__
Dies ist ein Test!
Fehler: Laeuft nicht
Eine Zeile dazwischen.
Noch eine Zeile
Fehler: fehlerhafte Zeile
Fehler: noch ein Fehler
Alles ok!

Monday, June 25, 2007

Arbeiten mit CSV-Dateien

Im Forum von Perl-Community.de tauchen relativ häufig Fragen in Verbindung mit CSV-Dateien auf. Die meisten wollen das CSV-Format selbst parsen und dann recht umständlich die benötigten Informationen heraussuchen. Ich selbst überlasse so etwas ganz gerne Modulen von CPAN. Mein "Lieblingsmodul" zum Thema CSV ist DBD::CSV. Damit kann man mit CSV-Dateien umgehen wie mit "normalen" Datenbanken - und kann die altbekannte API von DBI verwenden.

Hier mal ein kleines Beispiel:

Die CSV-Datei "konferenzen":
KonfID;KonfName;Monat
1;Perl-Workshop;Februar
2;YAPC::Europe;August
3;FrOSCon;August
4;"Linux-Tage Essen";November


Das Perl-Skript:
#!/usr/bin/perl

use strict;
use warnings;
use DBI;

use Data::Dumper;

#Ordner, in dem die CSV-Datei liegt
my $dir = '.';

#Trennzeichen in der Datei (hier: das Semikolon)
my $sep = ';';

#Verwende DBI mit DBD::CSV damit mit den
#CSV-Dateien gearbeitet werden kann
my $dsn = "DBI:CSV:csv_sep_char=\\".$sep;

my $dbh = DBI->connect( $dsn,"","" ) or die $DBI::errstr;
$dbh->{'RaiseError'} = 1;

#SQL-Statement
my $select = qq~SELECT KonfName
FROM konferenzen
WHERE Monat = ?~;

my $gesuchter_monat = 'August';

# Abfrage ausfuehren
my $sth = $dbh->prepare( $select ) or die $dbh->errstr;
$sth->execute( $gesuchter_monat ) or die $dbh->errstr;

# Ausgabe Ergebnis
print "Konferenzen im $gesuchter_monat:\n";
while( my ($conf) = $sth->fetchrow_array ){
print "\t",$conf,"\n";
}


Dann bekommt man als Ausgabe:
C:\>csv_beispiel.pl
Konferenzen im August:
YAPC::Europe
FrOSCon

Auf der Suche nach Perl-Programmierern?

Viele Unternehmen, mit denen ich mich unterhalte, sagen dass es schwierig sei, gute Perl-Programmierer zu bekommen. Die meisten guten Programmierer sind entweder selbständig und wollen in keine Festanstellung oder sie sind angestellt und wollen nicht unbedingt wechseln. Die wenigen guten Leute, die auf zu haben sind trifft man häufig auf Konferenzen. Unternehmen, die auf der Suche nach Perl-Programmierern sind, sollten sich vielleicht auf der Job-Messe der YAPC::Europe blicken lassen. Vielleicht haben sie dort mehr Glück.

Tuesday, June 19, 2007

Schweizer Team ist Sieger in der Kategorie Perl beim „Plat_Forms“ Web-Programmier-Wettbewerb

Pressemitteilung des Deutschen Perl-Workshops:

Schweizer Team ist Sieger in der Kategorie Perl beim „Plat_Forms“ Web-Programmier-Wettbewerb

Deutscher Perl-Workshop gratuliert – Besonders der kompakte und leicht erweiterbare Code beeindruckt

Perl erzeugt kompakten und einfach zu erweiternden Code – das bestätigt die Studie „Plat_Forms 2007: The Web Development Platform Comparison“ der Freien Universität Berlin.
„Der Entwicklungszyklus ist mit Perl besonders schnell und die Sprache ist sehr flexibel. Für Unternehmen, die auf schnelle Entwicklung und leistungsfähige Software Wert legen, stellt Perl eine echte Alternative dar“, so Cedric Bouvier vom schweizer Team Etat de Genève/Optaros, das in der Kategorie Perl den Wettbewerb Plat_Forms 2007 gewonnen hat.
Die anderen Perl-Teams – plusW aus Deutschland und Revolution Systems aus den USA – folgen mit knappem Abstand, die Entscheidung ist der Jury schwer gefallen.
Die teilnehmenden Perl-Teams hoffen, dass die weitreichenden Fähigkeiten der Perl-Plattform zur professionellen Web-Entwicklung nun mehr Verbreitung finden. „Dazu könnten auch Fachhochschulen und Universitäten beitragen, indem sie Perl häufiger als bisher in ihre Lehrpläne aufnehmen“, so Dami Laurent, ebenfalls vom Team Etat de Genève/Optaros.

Der Deutsche Perl-Workshop gratuliert den erfolgreichen Teams zu ihrer guten Arbeit.
Perl wird zur Web-Entwicklung beispielsweise bei der Business-Plattform XING (vormals openBC), beim Nachrichten-Portal heise online und der Technik-Community Slashdot eingesetzt.

Pressekontakt Deutscher Perl-Workshop:
Alvar Freude
(01 79) 13 46 47 1
(07 11) 50 70 825
Ludwig-Blum-Straße 37
70327 Stuttgart
alvar at a-blast dot org

Friday, June 15, 2007

Ein guter Einstieg in das Leben eines Vortragenden: Lightning Talks

Es viele verschiedene Typen von Menschen, in Bezug auf Vorträge gibt es meiner Erfahrung nach drei Grundtypen: Der Typ der auf gar keinen Fall einen Vortrag halten will, der zweite Typ traut sich nicht so richtig und der dritte Typ hat gar keine Hemmungen davor, vor ein Publikum zu treten und über ein Thema vorzutragen.

Man kann sich auch weiterentwickeln, das heißt wer eher Typ 1 ist kann sich durchaus bis zum Typ 3 entwickeln, was aber seine Zeit dauert. Denn Typ 1 weigert sich schlicht einen Vortrag zu halten. Wenn man es schon ausprobiert hat (oder musste) und es ist dem Typ 1 absolut unangenehm, dann sollte man das akzeptieren. Wenn man dann aber bemerkt, so schlimm ist es für einen selbst gar nicht, mal vorne zu stehen und über sein Lieblingsthema zu sprechen aber man traut sich vielleicht nicht so recht, vor großem und fremdem Publikum zu sprechen, dann ist das hier genau das richtige für einen: Lightning Talks!

Lightning Talks sind ganz kurze Vorträge - meist 5 Minuten. Sie eignen sich hervorragend dazu, Luft aus dem Redner-Dasein zu schnuppern. Nervosität ist meist überflüssig, weil die 5 Minuten so schnell vorbeigehen, dass häufig die Session-Chairs eingreifen müssen und den Redner vom Pult holen. Und in diesen 5 Minuten kann man einfach mal über sein Lieblingsthema reden.

Ich habe auch so angefangen: 2004 auf meinem ersten Perl-Workshop bin ich für Martin Fabiani bei einem Lightning Talk eingesprungen, 2005 selbst einen Lightning Talk eingereicht, 2006 einen Langvortrag (40 Minuten) gehalten und in diesem Jahr war ich mit einem Langvortrag, einem Mittleren Vortrag (30 Minuten) und zwei Lightning Talks dabei.

Und mittlerweile bin ich schon bei Typ 3 angelangt. Mir macht es Spaß, vorne zu stehen und etwas über Perl zu erzählen.

Mal schauen, ob ich in diesem Jahr anfange, "internationale Luft" zu schnuppern indem ich einen Lightning Talk für die YAPC::Europe 2007 einreiche. Wer nach Wien kommt, wird das Ergebnis sehen...

Vielleicht findet sich ja noch der eine oder andere, der für die YAPC::EU einen Lightning Talk einreichen will?!?

Vorträge auf der YAPC::EU 2007

Die Qual der Wahl!

Aus 116 eingereichten Vortragsvorschlägen haben die Organisatoren der diesjährigen YAPC::Europe 80 Vorträge ausgesucht - mit einem ganz netten Algorithmus. Der Mix der Vorträge ist sehr gut und da dürfte wohl für jeden etwas dabei sein. Hoffentlich passiert es nicht zu oft, dass Vorträge die mich interessieren in parallelen Tracks laufen.

Perls Datenstrukturen

Wer sich schon immer mal gefragt hat, wie die verschiedenen internen Datenstrukturen von Perl zusammenhängen und mit der reinen Textdokumentation nicht so viel anfangen kann, der sollte sich mal perlatlas im bloodgate-Wiki anschauen. Ich finde es sehr gut gelungen!

Wednesday, June 13, 2007

YUR.tv - Beta-Phase

Wer in die aktuelle Ausgabe von $foo geschaut hat, wird ein Interview mit Malte Ubl finden. In dem Interview ging es hauptsächlich um ein Projekt des Unternehmens bei dem er arbeitet: YUR.tv.

Jetzt befindet sich das Projekt in der Beta-Phase.

Unter http://www.yur.tv/homepage/ ist die Testseite von YUR.tv erreichbar. Hier kann man eigene Videos hochladen und die Videos anderer anschauen. Ich führe das hier in diesem Blog auf, weil YUR.tv zumindest zu einem großen Teil mit Perl umgesetzt wurde. Mehr dazu findet man auch im Blog von YUR.tv.

Papagei gegen Schnabelkerf...

... oder besser: Parrot gegen Bugs! In Vorbereitung auf ein neues Release von Parrot, sollen möglichst viele Bugs gefixt werden. Deshalb gibt es am 16. Juni einen "Parrot Bug Day". An diesem Tag kann man sich im IRC-Channel #parrot (irc.perl.org) mit anderen Entwicklern treffen. Auch die Core-Entwickler werden die meiste Zeit online sein.

Monday, June 11, 2007

Open Source Meets Business 2008

Bis zum 28. September 2007 hat man Zeit, Vorträge für die nächste "Open Source Meets Business"-Veranstaltung. Die von heise veranstaltete Konferenz findet vom 22. - 24. Januar 2008 statt. Was das mit Perl zu tun hat? Auf den ersten Blick erstmal nichts, aber wäre es nicht toll, bei so einer Veranstaltung mal einen Vortrag über ein Perl-Projekt zu hören? Ich fände das wirklich toll und vielleicht gibt es ja den Einen oder Anderen, der über ein interessantes Projekt berichten kann.

Wednesday, June 06, 2007

The Perl-Review: 3.3 ist da!

Die dritte Ausgabe 2007 der englischsprachigen Perl-Zeitschrift "The Perl-Review" ist da! brian d foy berichtet darin, wie man seine Module warten kann und dabei den persönlichen Aufwand so gering wie möglich hält. Alberto Simoes erklärt in verständlichen Worten, wofür Carp zu gebrauchen ist. Weitere große Themen sind der Perl-Debugger und Tk-Megawidgets.

"P"-Stammtisch

Stefan Fischerländer ist auf der Suche nach Programmierern der "P"-Programmiersprachen (Perl, PHP, Python) in Niederbayern. Er möchte einen Stammtisch gründen, der sich hauptsächlich mit dem Thema "Web" beschäftigt. Für seine Suche und den Stammtisch hat er ein eigenes Blog gestartet.

Tuesday, June 05, 2007

Blog-Software in Perl wird Open Source

SixApart wird seine Blog-Software MovableType ab der kommenden Version als Open Source bereitstellen. Die Software mir dann unter die GPL gestellt. Die kommerzielle Version der nächsten Generation von MovableType wird wohl in zwei bis drei Monaten rauskommen, die Open Source-Version dann kurz darauf.

Ich sehe das mit Freude, dass eine bekanntere Software, die in Perl geschrieben ist, so zur Verfügung gestellt wird. Vielleicht sehen dann einige Leute, dass auch mit Perl echt coole Software geschrieben werden kann.

Friday, June 01, 2007

Wenn einer eine Reise tut...

... dann kann er was erleben.

Genauso war es gestern auch bei mir. Pünktlich um kurz vor 7 Uhr saß ich im ICE von Frankfurt nach Hamburg um auf den Google Developer Day 2007 zu fahren. Um kurz vor 11 Uhr bin ich dann in meinem Nachtquartier - dem Hotel Lumen in der Nähe des Hauptbahnhofs - angekommen und habe meine Tasche abgestellt.

Mit der Hochbahn ging es vom Hauptbahnhof bis zum Stephansplatz, der nicht weit vom Hotel Side entfernt ist. Am Eingang des Hotels waren dann gleich ein paar Kameras zu sehen, die die ganze Veranstaltung aufgezeichnet haben. Bei der Anmeldung stand schon eine ziemlich lange Schlange, aber dennoch ging es relativ schnell, bis ich mein Namensschild und das T-Shirt in der Hand hatte. Vor dem größten Sessionraum war auch schon ein Buffet aufgebaut, an dem ich mich erstmal mit Essen und Trinken versorgt habe.

Bei der Begrüßung gab es dann die erste "Panne". Es sollte eine Zusammenfassung von Mashups gezeigt werden, aber die Präsentation war nicht auf dem Laptop gespeichert. Aber solche Sachen lockern so eine Veranstaltung auch etwas auf und es war ja keine richtige Panne. In der Begrüßung wurde Stephan Uhrenbacher, der Gründer von Qype.de interviewt. Danach wurde noch die Keynote aus London live übertragen.

Die erste Session, an der ich teilgenommen habe, war der API-Workshop. Hier sollten in 90 Minuten ein paar Sachen zum Thema Google Maps API in kleinen Gruppen ausprobiert werden. Wir waren eine 3er-Gruppe, die eigentlich gar keine Erfahrung mit der Maps API hatten. Dennoch haben wir die meisten Aufgaben lösen können. So ein Workshop ist ganz gut, um ein Gefühl für die API zu bekommen und ist als Einstieg auch besser als ein reiner Frontalvortrag - und man lernt gleichzeitig noch ein paar neue Leute kennen.

Dann gab es erstmal Kaffeepause. Essen scheint übrigens recht wichtig zu sein bei Google - wie auch Karl Krainer von Google Deutschland in seiner Keynote gesagt hatte. Also wer an diesem Tag Hunger oder Durst litt, war selbst schuld.

Nach der Pause habe ich an der Session über die Maps API teilgenommen. Das war eine richtige Präsentation und hat gezeigt, was man mit Google Maps alles machen kann. Dabei sind mir ein paar Ideen gekommen, was ich in Zukunft machen könnte.
Direkt im Anschluss war ich bei einem Vortrag über KML und die Verwendung in Google Earth. KML ist eine Beschreibungssprache für Punkte und Strecken in Google Earth und Google Maps. Es ist schon sehr schön zu sehen, was theoretisch alles möglich ist.

Nach einer 15-minütigen Pause gab es dann ein Wrap-Up der Sessions. Hier gab es auch nochmal einen kurzen Vortrag. Anschließend gab es mal wieder Essen ;-) und die Keynote aus Mountain View. Um kurz vor 20 Uhr habe ich die Veranstaltung verlassen - nicht ohne dass ich das Geschenk, das jeder noch bekommen hat, abzuholen.

Vom Side Hotel bin ich dann direkt zum Feuerstein gefahren. Dort sollte ein außerplanmäßiges Hamburg.pm-Treffen stattfinden. Es war noch keiner da, also habe ich vor der Tür auf Tina gewartet. Kaum waren wir dann drin, kam auch noch Robert. Etwas später stieß dann noch Malte zu unserer Runde. Es war ein recht nettes Treffen. Danke Hamburg.pm.

Insgesamt war es ein lohnenswerter Tag und ich hoffe, dass es im nächsten Jahr wieder einen Google Developer Day geben wird.