Monday, December 31, 2007

Mein Perl-Jahr 2007...

So langsam aber sicher neigt sich das Jahr 2007 seinem Ende zu. Jetzt sind es nichtmal mehr 9 Stunden bis man sich wieder an eine neue Jahreszahl gewöhnen muss. Wie es in zig Fernsehshows gemacht wird und jeder Radiosender sendet sowas, darf es natürlich auch hier nicht fehlen: Ein Jahresrückblick...

Mein Perl-Jahr 2007...

* ... im Februar habe ich die erste Ausgabe von $foo herausgebracht
* ... vom 21. - 23.02. fand der 9. Deutsche Perl-Workshop in München statt. Ich habe dabei (inkl. Lightning Talks) 4 Vorträge gehalten. Ich denke, das lief ganz gut.
* ... ab März habe ich bei einem neuen Kunden gearbeitet. Ein ganz anderes Arbeiten als bisher (wo ich meistens allein Verantwortlich für das Projekt war), aber viele neue Erfahrungen und dort habe ich dann auch Perl-Schulungen gehalten.
* 31.05.: Mein Projekt bei Sanofi-Aventis geht leider zu Ende. Nach über drei Jahren (nur durch meine Australien-Reise unterbrochen) ist das Projekt abgeschlossen.
* 26.07. - 30.09.: Die große Perl-Umfrage findet statt (Ergebnisse sind auf der Homepage zu finden).
* 29.07.: Endlich geht die neue Forensoftware von Perl-Community.de live (danke @Strat)
* 28. - 30. August: YAPC::Europe in Wien und mein erster Lightning Talk auf einer YAPC; Lust bekommen auf mehr (vielleicht wieder was bei der YAPC::Europe 2008 in Kopenhagen)
* 12.10.: Erster Launch meiner neuen Seite für Perl-Nachrichten (siehe auch mein Blog-Eintrag)
* 26. - 28. Oktober: 3. Frankfurter Perl-Community Workshop
* ... ab November ein Projekt bei der SAP AG (genauer: SAP Hosting).
* irgendwann November: Ich habe die 10.000er Marke bei den Beiträgen auf Perl-Community.de geknackt ;-)
* 18.12.: Perl wird 20 Jahre alt
* 18.12.: Perl 5.10 wird veröffentlicht
* 29.12.: Erstes Release meines Backup-Programms für Webseiten

... und noch vieles mehr. So auf die Schnelle kann ich gar nicht an alles denken.

Auf jeden Fall war es ein interessantes tolles Jahr.

Ich wünsche jedem einen Guten Rutsch ins Neue Jahr. Und ich hoffe, dass 2008 (auch abseits von Perl) ein schönes und tolles Jahr für jeden wird.

Neuigkeiten über PerlNews

Thomas Fahle hat mir ein paar Tipps gegeben, wie ich die PerlNews-Seite etwas bekannter machen kann. Deswegen lasse ich den RSS-Feed über FeedBurner verbreiten, habe die Seite bei wikio.de und rss-nachrichten.de angemeldet.

Saturday, December 29, 2007

SWS Website Backups

Wie in meinem vorherigen Post angekündigt: Hier ein Setup für das Backup-Programm. Einfach installieren, Accounts anlegen und schon kann man ziemlich einfach Backups von seinen Webseiten machen. Hat man Shell-Zugriff auf den Server gibt es praktischere Dinge, aber wenn man das nicht hat, ist es so recht komfortabel.

Wenn es jeman ausprobieren will, bitte!

Wenn dabei Fehler auftauchen, dann diese bitte in unserem Ticket-System melden. Da das Tool noch am Anfang der Entwicklung steht, kann es durchaus noch zu kleineren Problemen kommen.

Zugangsdaten für Mantis:

User: Gast
Passwort: gast

Net::FTP unter Windows

Net::FTP ist ein ganz praktisches Modul, um mit Perl Dateien von einem FTP-Server zu holen. Ich habe mir mit WWW::ConfixxBackup ein kleines Skript geschrieben, mit dem ich Webseiten über Confixx sichern und die Archive runterladen kann. Das ist ganz praktisch wenn man kein Shell-Zugriff auf den Server hat (was ja meistens bei Shared Webhosting der Fall ist).

Ich habe das Ganze unter Linux entwickelt und getestet - funktioniert einwandfrei. Unter Windows scheint auch alles gut zu funktionieren. Aber der Schein trügt: Wenn ich die .tar.gz-Dateien öffne, kommt gleich eine Fehlermeldung dass der CRC nicht stimmt.

Ich hatte ziemlich schnell den Übertragungsmodus in Verdacht, denn wenn man .tar.gz als ASCII überträgt, ist das nicht besonders geschickt! In der Doku zu Net::FTP habe ich dann die Methode binary entdeckt. In das Programm eingebunden und siehe da, es klappt - immer noch nicht :-(

Dank der Debug-Option von Net::FTP habe ich herausgefunden, dass die Dateien immer noch in ASCII übertragen werden. Mmmhh...

Nach ein wenig rumprobieren habe ich das $ftp->binary innerhalb der Schleife, die die Dateien herunterlädt, geschrieben und dann hat es funktioniert... In der Doku war aber nix zu finden, dass man das binary für jede einzelne Datei gesetzt werden muss. Oder ist das mal wieder ein Windows-Problem?

Egal, ich werde demnächst eine .exe des Programms zur Verfügung stellen.

Friday, December 28, 2007

TPF: Call for Grant-Proposals

Mir bleibt im Moment nichts weiter zu sagen als: Es ist eine weitere Runde eingeläutet (http://news.perlfoundation.org/2007/12/call_for_grant_proposals.html)

Mittlerweile ist Ovid nicht mehr der Vorsitzende des Grant-Komitees, da er es zeitlich nicht mehr geschafft hat. Alberto Simoes ist sein Nachfolger.

Was ist ein Grant
?

Sunday, December 23, 2007

neue StrawberryPerl-Version

Es gibt eine neue Version von Strawberry Perl!

Strawberry Perl ist eine Alternative zu ActivePerl von ActiveState, das zum Kompilieren von Modulen den Microsoft Visual C++-Kompiler benötigt.
Strawberry Perl dagegen liefert einen MinGW-Kompiler mit und auch alles Andere ist OpenSource...

Thursday, December 20, 2007

Anmeldung zum Dt. Perl-Workshop 2008 jetzt möglich

Seit gestern abend ist die Anmeldung zum 10. Deutschen Perl-Workshop möglich.

Der Beitrag für Personen beträgt 75 €. Der Beitrag für Firmenteilnehmer beträgt 250 €. Studenten, Orgas und Vortragende (mindestens 20min-Vorträge) bezahlen einen ermäßigten Beitrag von 50 €.

Der Deutsche Perl-Workshop hat das Ziel, den Austausch und die Vernetzung zwischen Entwicklern von Perl-Modulen und fortgeschrittenen Anwendern im deutschsprachigen Raum zu fördern.

Wednesday, December 19, 2007

Perl 5.10

Unzählige Blogs und andere Ticker haben es schon berichtet, aber ich hatte bisher keine Zeit. Dennoch möchte ich es nicht versäumen, hier auf die neueste Perl-Version hinzuweisen!

Perl 5.10 ist endlich da!

Heute mittag wird gleich die ActivePerl-Version zu Hause auf dem Laptop installiert und dann habe ich endlich Smart-match-Operator, defined-or-Operator, given-when und vieles mehr zur Verfügung.

Die Perl5Porters haben echt gute Arbeit geleistet. Danke an alle P5P...

Jetzt muss natürlich etwas Werbung her *fg*

Das $foo-Magazin steht jetzt ganz offiziell in der Perl-Dokumentation. Aus perldoc perlfaq2:

Which magazines have Perl
content?

The Perl Review ( http://www.theperlreview.com ) focuses
on Perl almost completely (although it sometimes sneaks in an article about
another language). There's also $foo Magazin, a german magazine dedicated to
Perl, at ( http://www.foo-magazin.de ).


Natürlich haben "The Perl-Review" und auch "$foo" schon über die Neuerungen in Perl 5.10 berichtet...

Tuesday, December 18, 2007

Neue Artikel über Perl6-Operatoren

Adriano Ferreira hat zwei neue "Mikro-Artikel" über Perl6-Operatoren fertig:

Happy Birthday Perl!

Perl wird heute 20 Jahre alt. Happy Birthday!

In der Timeline kann man die ganze Geschichte verfolgen!

Auch wenn Perl jetzt *schon* 20 Jahre alt ist, ist die Sprache doch keineswegs veraltet. Dank CPAN und anderen Projekten, kann man auch die aktuellen Anforderungen (zum Beispiel im sogenannten Web 2.0) sehr gut erfüllen.
Vielmehr wird Perl immer reifer und lernt dennoch dazu: Die kurz bevorstehende neue Perl-Version 5.10 wird einige neue Features bringen.

Danke @Larry für die tolle Programmiersprache.

Neue Heimat für PerlNews

Die PerlNews sind umgezogen - mit eigener Domain etc.: http://perl-nachrichten.de/

Sunday, December 16, 2007

Neue Funktionen bei PerlNews

Ich habe ein paar neue Features bei PerlNews eingebaut:

* Artikel können jetzt kommentiert werden
* und sie können bewertet werden
* eine Suche wurde integriert, die auf einer MySQL-Fulltext-Search basiert

Daneben gibt es einige neue Funktionen im Adminbereich der Software.

Ich habe mich mit dieser Software auch für ein Projekt des "Winter of Codes" von Vienna.pm beworben. Ich hoffe, dass ich den Zuschlag bekomme, den so etwas beflügelt einen doch enorm, an der Software etwas weiterzuentwickeln.

Thursday, December 13, 2007

Perl Advent Calendar sucht noch Beiträge

Der Perl Advent Calender sucht noch Beiträge...

London.pm vs. Vienna.pm auf der nächsten YAPC::EU

London.pm ist groß und sie stellen in der Regel anteilsmäßig die meisten Teilnehmer auf der YAPC::EU (siehe auch die Statistiken der YAPC::EU::08). Aus diesem Grund hat domm von Vienna.pm scherzhaft geäußert, dass es eine Gruppe not_London.pm geben sollte, um mal die Vormacht von London.pm zu brechen.

Greg - der neue "Chef" von London.pm - hat das mitbekommen und den "Krieg" erklärt. Jetzt wird es bei der YAPC::EU::08 einen kleinen Wettkampf zwischen Greg und domm geben - mit Kochen, Armdrücken und ein Glockenspiel ; - ich freu' mich drauf...

Monday, December 10, 2007

Erste Anwendung unter Perl 5.10

Ich weiß nicht, ob es wirklich die erste Anwendung ist die dauerhaft unter Perl 5.10 läuft, aber seit einigen Tagen läuft PAUSE mit dem Release Candidate 2 der neuen Perl-Version.

PAUSE ist der Perl Authors Upload Server, über den die CPAN-Autoren ihre Distributionen hochladen.

Sunday, December 09, 2007

YAPC-Videos

Barbie hat es geschafft, jede Menge Videos online zu stellen. Darunter auch mein Lightning-Talk bei der YAPC::EU 2007 in Wien. Danke @Barbie!

Monday, December 03, 2007

'Ne Flasche Whisky gefällig?

wer Lust hat, eine Flasche Whisky zu gewinnen, sollte bei dem Wettbewerb der London-Perlmongers mitmachen.

Sunday, December 02, 2007

Erste Infos zur YAPC::EU 2008

Gestern wurden erste Informationen zur YAPC::2008 in Kopenhagen veröffentlicht.

Die europäische Perl-Konferenz wird vom 13. - 15. August 2008 an der "Copenhagen Business School" stattfinden. Das Thema ist diesmal "Beautiful Perl".

Wer ständig auf dem Laufenden bleiben will, sollte sich den Feed abonnieren.

Sollte noch jemand Lust verspüren, sich nach der Konferenz sportlich etwas auszutoben, kann mit brian d foy zum Reykjavík Marathon fahren, der direkt am Wochenende nach der YAPC stattfindet.

Friday, November 30, 2007

Vienna.pm "Winter of Code" -> Wiki

Vienna.pm hat bei der YAPC::EU 2007 einen größeren Überschuss erzielt. Gemäß ihrer Satzung wird der Verein Perl-Entwicklungen unterstützen. Aus diesem Grund wurde der "Winter of Code" ins Leben gerufen.domm hat ein Wiki für den WoC eingerichtet. Jeder kann dort Kommentare hinterlassen, um die Seiten bearbeiten zu können, muss man "eingeladen" werden.

Friday, November 23, 2007

"Perl dev room" auf der FOSDEM 2008 ?

Die Fosdem 2008 wird am 23./24. Februar in Brüssel stattfinden. Damit es nicht nur einen "Python dev room" gibt, sondern auch einen "Perl dev room", sucht eco nach Vortragenden und Teilnehmern.

Wer Interesse hat, soll sich einfach bei ihm melden.

Sunday, November 18, 2007

Release-Kandidat 1 für Perl 5.10 auf CPAN

Rafael Garcia-Suarez hat gestern den ersten Release Kandidaten für Perl 5.10 auf CPAN geladen. Damit rückt die Veröffentlichung der neuen Perl-Version immer näher...

Ich freue mich schon sehr auf die neuen Features!

Tuesday, November 13, 2007

Perl-Veranstaltungen promoten

Gabor Szabo hat einen AdServer für Perl-Veranstaltungen eingerichtet. Jeder, der eine eigene Webseite hat, kann mit einem kleinen Snippet Text-Links einbinden, die auf Perl-Events verweisen.

Der Vorteil der Sache ist, dass man als Webmaster sich nicht selbst um aktuelle Links kümmern muss.

Da es JavaScript ist, wird es aber von einigen nicht gesehen.

Gabor Szabo beschreibt unter http://adserver.szabgab.com/ wie man das Snippet in seine eigene Webseite einbaut.

Konfiguriert wird der AdServer mit einer YAML-Datei. Ist also ziemlich einfach, eigene Perl-Veranstaltungen dort eintragen zu lassen.

Perl-Umfrage: Die Ergebnisse als PDF

Auch wenn es ein paar Wochen später als angekündigt passiert ist, jetzt sind die Ergebnisse auch als PDF-Datei online. Auf der Seite finden sich noch links zu Auswertungen, die von anderen Personen gemacht wurden.

Noch eine LinkedIn-Gruppe: CPAN-Autoren

Neben der Perlmongers-Gruppe gibt es jetzt eine weitere Gruppe auf LinkedIn: Die CPAN-Autoren.

Es ist doch ganz nett, wenn man dort so alles trifft...

Friday, November 09, 2007

Wednesday, November 07, 2007

Prominente Unterstützung für Perl6-Entwicklung

Wenn das mal kein Name ist, der die Perl6-Entwicklung unterstützt: Die Mozilla Foundation!

Zusammen mit der Perl-Foundation hat Mozilla einen Grant für die Perl6-Entwicklung genehmigt. Patrick Michaud - der Perl6-Compiler-Pumpking - bekommt für die nächsten vier Monate 15.000 US$ (10.000 US$ von Mozilla und 5.000 US$ von TPF).

Während dieser Zeit soll Perl6 auf Parrot laufen, die Testsuite soll erweitert werden, das Parrot Compiler Toolkit soll weitgehend fertiggestellt werden (inkl. Dokumentation) und noch weiteres.

Tuesday, November 06, 2007

4. Ausgabe von $foo

Heute ist die 4. Ausgabe des deutschsprachigen Perl-Magazins $foo erschienen. Damit ist es fast eine ganze Woche Verspätung. Das hing leider an der Druckerei, die Probleme mit den Druckmaschinen hatte und am Logisitik-Unternehmen (keine Ahnung was die so lange mit den Heften gemacht haben).

Vielleicht kam einfach nur der Feiertag in der letzten Woche dazwischen...

Die Abos gehen morgen in die Post!

Es sind Themen für die unterschiedlichsten Bereiche dabei:

Für Windows-Nutzer ganz interessant dürfte der Artikel "ExcelPerl" von Martin Fabiani sein.

Um Themen aus der Webentwicklung geht es in "Caching in Webapplikationen", "HTML::Template::Compiled" und "Sessions in Catalyst"

Natürlich gibt es noch einige weitere Themen!

Friday, November 02, 2007

Selenium Screencast

Ich teste gerade ein paar Tools zum Thema "Screencast". Dabei habe ich einen Test-Screencast zum Thema "Webapplikationen testen" (mit dem Schwerpunkt auf Selenium) erstellt. Das ist im Wesentlich das was ich schon beim Frankfurter Perl-Community Workshop erzählt habe. Ich denke, dass es für einen ersten Screencast nicht sooo schlecht ist.

Das Ganze ist mit einer "Trial-Version" von BB FlashBack Express entstanden.

Thursday, November 01, 2007

TPF-Grant beantragen

Die erste (öffentliche) Amtshandlung des neuen "Grant Committee Chair" Alberto

Monday, October 29, 2007

HP-Drucker-Anzeige verändern...

Eben bin ich auf einen tollen Blog-Eintrag gestoßen: Yaakov hat ein kleines Perl-Skript geschrieben, mit dem sich die Anzeige von HP-Druckern verändern lässt...

Vortragsfolien online

Die Folien von meinen Vorträgen vom 3. Frankfurter Perl-Community Workshop sind online...

Frankfurt Perl-Workshop Tag 3

Gestern war der letzte Tag des 3. Frankfurter Perl-Community Workshop. Um kurz vor 11 Uhr hat Martin mit seinem LDAP-Vortrag begonnen. Diesmal war auch der Beamer aus dem Club Voltaire vorhanden; dennoch haben wir auch mit VNC gearbeitet...

Danach habe ich einen Vortrag über DBIx::Class gehalten, bei dem ich in der Vorbereitung wieder ein paar Kleinigkeiten über das Modul gelernt habe - also quasi "Lernen durch Lehren"...

Nach mir war dann Max an der Reihe. Erst hat er über mögliche Probleme bei der Verwendung von base.pm berichtet und dass mit seinem Modul parent.pm nicht auftreten. Sein Modul bedeutet auch wieder Arbeit für mich, weil ich dadurch mein Modul Class::Superclasses anpassen muss *g* Auf solche Arbeit freut man sich aber ;-)

Als nächstes hat Max dann einen "Perl für Fortgeschrittene"-Vortrag gehalten, in dem er ein eigenes "ORM" gebaut hat. Max hat noch kurz vor dem Vortrag den Inhalt angepasst, nachdem ich in meinem DBIx::Class-Vortrag eine Aussage getroffen habe, dass eines der Features vermutlich nicht ganz so einfach nachzubauen wäre. Max hat dann gezeigt, dass es wohl doch recht einfach sein sollte, das Feature nachzubauen. Danke...

Im Anschluss an Max war ich wieder an der Reihe. Ich habe kurz gezeigt, wie man mit Selenium und seinen Komponenten sehr schnell und einfach Webanwendungen testen kann. Da wir kein Internet hatten und ich das mit getesteten Tests zeigen konnte, musste ich improvisieren und schnell was auf dem Laptop machen. Das hat natürlich nicht sofort geklappt, aber der Fehler war schnell behoben. Das zeigt nur wieder, dass man Live-Demos sehr gut vorbereiten sollte! In so einer Runde wie hier ist das nicht so wild wenn etwas nicht auf Anhieb 100%ig läuft, aber auf einer größeren Konferenz wäre das nicht so toll...

Als letzter Vortrag wurden die neuen Features von Perl 5.10 gezeigt. Dazu habe ich Paul Fenwicks Vortrag verwendet...

Danke an alle, die Vorträge vorbereitet haben und an Erkan, der die Räumlichkeiten organisiert hat!

Insgesamt war es ein echt tolles Wochenende mit vielen interessanten Themen...

CfP vom Dt. Perl-Workshop endet heute!

Heute endet die Frist zur Einreichung von Vortragsvorschlägen für den 10. Deutschen Perl-Workshop. Wer also noch einen Vorschlag hat, sollte ihn möglichst schnell über die Webseite des Workshops einreichen...

Sunday, October 28, 2007

Frankfurt Perl-Workshop Tag 2

Am gestrigen Samstag haben wir die ersten Vorträge gehört. Die Veranstaltung findet im Club Voltaire statt. Dort haben wir ziemlich günstig einen Raum bekommen, der für die Größe der Veranstaltung vollkommen ausreicht.

Eigentlich sollte ein Beamer für uns bereit stehen, aber als ich in den Raum kam, war natürlich keiner da. Ich habe dann Martin noch schnell angerufen, ob er nicht seinen 21-Zoll-TFT mitbringen könne. In der Zwischenzeit sind Thomas und Max aufgetaucht. Nachdem auch die beiden vergeblich nach einem Beamer gesucht hatten, kam Wieland rein. Max hatte die Idee mit VNC zu arbeiten. Wir hatten WLAN, so dass wir bei den Vortragenden den VNC-Server installierten und alle die Präsentation auf dem eigenen Laptop verfolgen konnten.

Martin hat von seinem Laptop aus noch den Monitor bedient, so dass wir genügend Möglichkeiten hatten, auch ohne Beamer den Vortrag zu verfolgen. Max hat (zumindest die ersten beiden Vorträge) aufgenommen. Mal schauen was dabei rausgekommen ist...

Den ersten Vortrag habe ich über CGI::Application gehalten. Die Folien und Beispielprogramme werde ich demnächst auf meiner Homepage veröffentlichen.

Nach mir war dann Martin an der Reihe. Er hat erst das Poard - die Software von Perl-Community.de - vorgestellt und dann sein ExcelPerl vorgestellt. Da ich abends etwas vorhatte, musste ich die Veranstaltung leider verlassen.

Was die weiteren Vorträge waren, hat Thomas aufgeschrieben...

Saturday, October 27, 2007

Frankfurter Perl-Community Workshop - Tag 1

Traditionell ist am 1. Tag des Frankfurter Perl-Community Workshops ein Kennenlernen. Gestern mussten wir auf die Schnelle improvisieren, weil unser Stammlokal - das Café Activ - zu hatte. Vorher hatte sich keiner darum gekümmert, nachzufragen ob sie überhaupt auf hätten. Aber alles kein Problem. Martin Fabiani und ich waren kurz vor sechs am Café Activ. Martin hatte mich angerufen, um mir mitzuteilen dass sie zu haben. Ich war allerdings keine 5 Meter von ihm entfernt ;-)

Wir haben dann einen Zettel geschrieben, dass das Treffen in einer Bar gegenüber stattfindet. Anscheinend hat es jeder gelesen, der kommen wollte... Kurz nachdem Martin und ich uns gesetzt hatten, kam Wieland rein. Wir waren dann eine ganze Zeitlang zu dritte, bis Thomas kam. So nach und nach kamen alle - bis wir zu neunt waren.

Wir haben über alle Mögliche geredet - von der Vortragseinteilung für den Workshop über Perl bis zu ganz allgemeinen Themen. Um kurz vor 23 Uhr hat sich unsere Runde aufgelöst. Wir wollen ja für die Vorträge ausgeschlafen sein...

Friday, October 26, 2007

Perl-Programmierer gesucht...

In meinem Postfach stapeln sich mittlerweile die ganzen Projektanfragen. Selbst wenn ich mich durch 5 teilen würde, wäre ich immer noch voll ausgelastet. Einerseits ist es schön zu wissen, dass man mit Perl immer noch sehr gut Geld verdienen kann, andererseits ist es nicht so toll, dass diese Stellen nicht besetzt werden können. Denn so besteht die Gefahr, dass die Unternehmen auf Perl verzichten und etwas Anderes einsetzen...

Wenn also jemand auf der Suche nach einem Perl-Projekt ist oder jemanden kennt, kann gerne an perlprojekte@renee-baecker.de schreiben (diese Mail-Adresse wird allerdings nur rund 4 Wochen bestehen). Vielleicht kann ich ja was "vermitteln"...

Thursday, October 25, 2007

Hiveminder richtig nutzen

Hiveminder ist eine ToDo-Anwendung, die in Perl geschrieben ist. Als Framework wird Jifty verwendet.

Paul Fenwick hat einen tollen Vortrag darüber gehalten, wie Hiveminder richtig genutzt wird. Ich nutze Hiveminder schon länger als ToDo-Liste, aber anscheinend habe ich noch lange nicht alles genutzt...

Wednesday, October 24, 2007

StrawberryPerl-Homepage

Perl und Windows - da gibt es nicht nur ActivePerl, sondern seit einiger Zeit auch ein paar andere Bundles. Eines davon ist StrawberryPerl.

Adam Kennedy hat jetzt eine eigene Webseite dafür eingerichtet...

Der Vorteil von StrawberryPerl gegenüber ActivePerl ist, dass ein passender C-Compiler gleich mitgeliefert wird und man nicht mehr auf die PPM-Versionen von Modulen warten muss.

Tuesday, October 23, 2007

Grants Commitee hat einen neuen "Chef"

Alberto Simões ist zum neuen Vorsitzenden des "Grants Commitee" der TPF gewählt worden. Ich denke, dass die Wahl den richtigen getroffen hat. Er hat einen guten Kontakt zur "Basis", da er Vorsitzender der "Portuguese Association for Perl Programmers" ist und die Perlmonger-Gruppe von Braga leitet.

Den Lesern von "The Perl-Review" wird er sicherlich auch bekannt sein, da er regelmäßig Artikel für die Zeitschrift schreibt.

Ich wünsche ihm viel Spaß und viel Erfolg!

Monday, October 22, 2007

Code-freeze für Perl 5.10.0

Soo, langsam aber sicher rückt die Version 5.10.0 näher. Rafael Garcia-Suarez hat vor wenigen Minuten den Code-freeze angekündigt. Er wartet nur noch auf zwei Updates...

Ich freue mich schon sehr auf die neue Version, da sie doch ziemlich viel Neues bringt.

Noch eine Woche CfP für Dt. Perl-Workshop

Heute in einer Woche (29. Oktober) endet die Frist, um Vortragsvorschläge für den 10. Deutschen Perl-Workshop einzureichen. Wer einen Vortrag halten möchte, sollte also möglichst bald den Vorschlag auf der Webseite einreichen!

siehe auch den "Call for Papers"

Thursday, October 18, 2007

MySQL Quickpoll

Auf der MySQL-Homepage kann man darüber abstimmen, mit welcher Programmiersprachen man MySQL-Anwendungen implementiert...

Wednesday, October 17, 2007

Tuesday, October 16, 2007

CPAN-Gesichter...

Ich habe ja schonmal davon berichtet, dass es für CPAN-Autoren die Möglichkeit gibt, sich selbst ein "Gesicht" zu geben - über Gravatare. Jetzt wurden alle Gravatare mal gesammelt und in einer kleinen Bildergalerie online gestellt. Wie hat Andy Armstrong so schön geschrieben:

"We're disappointingly white and male - but who knew how damn fine we'd look as a group? Somebody should organise a naked calendar photo shoot next. People would pay lots of money not to see that."

Friday, October 12, 2007

In 80 Tagen um die Welt - Zwischenbericht

Nach rund einem Zehntel der Reisezeit musste ich feststellen, dass es auf der Perl-Landkarte doch noch einige weiße Flecken gibt, so dass ich die Reise nicht kontinuierlich mit Modulen begleiten kann. Gerade im Arabischen Raum ist diese Landkarte noch quasi unerschlossen. Entweder gibt es dort keine Perl-Programmierer (in Dubai gibt es welche, ist aber trotzdem zu wenig) oder sie gründen keine PM-Gruppen und veröffentlichen keine Module auf CPAN...

Sobald ich wieder etwas habe, werde ich natürlich wieder Module vorstellen...

Perl-Neuigkeiten selbst einreichen...

Ich hatte der TPF mal vorgeschlagen, sogenannte "local representatives" einzuführen. Damit könnte man einen besseren Kontakt zur "Basis" bekommen und Neuigkeiten besser weiterverbreiten. Das würde der Wahrnehmung von Perl in der Öffentlichkeit ganz gut tun. Wir wissen, dass Perl noch lange nicht tot ist und eine tolle und mächtige Sprache ist. Leider ist das Bild von Perl in der Öffentlichkeit nicht ganz so gut.

TPF möchte meinen Vorschlag mal überdenken und auf die Frage, wie die "local representatives" an Neuigkeiten etc. kommen würde und wie es weiterverbreitet wird, habe ich gesagt, dass es man eine Plattform haben müsste, bei der jeder Neuigkeiten einreichen kann und wo jeder Interessierte über einen RSS-Feed sich über die neuesten Sachen informieren kann.

Einen ersten Prototypen habe ich fertig: http://perlnews.renee-baecker.de

Das ganze ist mit CGI::Application und HTML::Template::Compiled umgesetzt. Da ist natürlich noch einiges daran zu tun, aber ich denke es ist ein erster Anfang...

Wenn die TPF auf meinen Vorschlag eingeht, wird die Plattform an eine Mailingliste angeschlossen, so dass Nachrichten automatisiert weitergereicht werden können. Und es sind noch einige andere Sachen daran zu verbessern...

Tuesday, October 09, 2007

In 80 Tagen um die Welt - Tag 7

Mal wieder bin ich einen Tag zu spät, aber besser spät als gar nicht...

Nach einer Woche kommt Phileas Fogg nach Ägypten. Wie gut das Ägypten auf Englisch 'Egypt' heißt, das bringt zu einem Perl-Skript mit dem Namen egypt. Mit dem Skript kann man Graphen von Funktionsaufrufen in C-Programmen erstellen. Dazu benötigt man das Programm, Perl, gcc und Graphviz.

Wenn man alles installiert hat, kann man ein C-Programm (z.B.
#include

void hello(){
printf("Hallo Welt!\n");
}

int main(void){
hello();
return 0;
}
) mit der Option -dr kompilieren
gcc -dr hallo_welt.c
Dadurch wird eine RTL-Datei erzeugt, in diesem Fall heißt die hallo_welt.c.00.expand.

mit egyt hallo_welt.c.00.expand | dotty - kann man sich den Graphen dann anschauen...

Monday, October 08, 2007

In 80 Tagen um die Welt - Tag 6

Ich bin gestern das Modul schuldig geblieben, was ich hiermit nachholen möchte...

Phileas Fogg ist an Griechenland vorbeigereist, aber das Land hat ihn sicherlich beschäftigt - wenn man schon mal in der Nähe ist...

Um aber auf den Namen für das nächste Modul zu kommen, muss man schon einen Umweg gehen! Im Englischen heißt man "versteht nur Bahnhof" ganz einfach "It's all Greek to me" und Greek ist - richtig! Der englische Name für Griechenland. Jonathan Rockway hat für alle Programmierer - deren Kollegen sagen, dass man bei Perl nur "Bahnhof versteht" - ein Modul geschrieben, bei dem man wirklich nur Bahnhof versteht: Acme::Greek. Wie man an dem "Acme" sieht, ist es eher ein "Spaß-Modul".

Ähnlich wie Acme::Bleach oder Acme::Buffy und viele andere mehr verändert es den Sourcecode, aber das Perl-Programm funktioniert weiterhin. Ein Beispiel:
#!/usr/bin/perl

use Acme::Greek;
print "Phileas Fogg is on his way to Egypt\n";
So sieht das Skript aus, wenn man es programmiert hat. Beim ersten Programmaufruf "übersetzt" Acme::Greek den Quellcode in unleserlichen Kram:
use Acme::Greek;
#!/θσρ/βιν/περλ
πριντ "Πηιλεασ Φογγ ισ ον ηισ ςαυ το Εγυπτ\ν";
Toll, nicht?
Und wenn man das Programm dann ein zweites Mal ausführt, wird tatsächlich "Phileas Fogg is on his way to Egypt" ausgegeben.

Saturday, October 06, 2007

In 80 Tagen um die Welt - Tag 5

Auf dem Weg von Italien nach Ägypten muss Phileas Fogg über das Mittelmeer - beginnend in Brindisi, einer italienischen Hafenstadt. 1999 bin ich selbst von dort nach nach Griechenland gefahren - das waren einige Stunden Fahrt mit der Fähre. Diese Mischung bringt mich auch auf das heutige Perl-Modul... Auf der Fahrt kommt Phileas Fogg nahe an Griechenland vorbei. Um den Griechen seine Wette zu erklären, muss er die "80" Tage in eine Zahl umwandeln, die in griechischen Buchstaben geschrieben wird. Zum Glück gibt es das Modul Convert::Number::Greek!

Ein einfaches Beispielskript:
#!/usr/bin/perl

use strict;
use warnings;
use Convert::Number::Greek 'num2greek';use Encode;

my $number = 80;
my $greek = num2greek $number;
print $greek;
Wer das ausführt bekommt wahrscheinlich eine Warnung und das Ergebnis angezeigt. Die Warnung wird ungefähr so aussehen:
Wide character in print at skript.pl line 9.
Dieses Problem tritt dann auf, wenn man mit Unicode zu tun hat. Diese Warnung kann man auf zwei Wegen "abschalten"...

1.) Dem Filehandle mitteilen, dass der utf8-Layer verwendet werden soll, also einfach ein
binmode STDOUT, ':utf8';
vor der print-Anweisung.

2.) Mit dem Modul Encode arbeiten:
#!/usr/bin/perl

use strict;
use warnings;
use Convert::Number::Greek 'num2greek';
use Encode;

my $number = 80;
my $greek = num2greek $number;

$greek = encode_utf8( $greek );
print $greek;

Friday, October 05, 2007

In 80 Tagen um die Welt - Tag 4

Auch am vierten Tag der Reise ist Phileas Fogg in Italien unterwegs. Wäre er rund 135 Jahre später durch Italien gereist, hätte er sich mit Gianni Ceccarelli treffen können und über dessen Modul Template::Plugin::ASCIITable unterhalten können.

Wie man sieht, werde ich die Module nicht nur nach Region aussuchen sondern auch nach der Herkunft des Autors...

Mit Template::Plugin::ASCIITable kann man ziemlich einfach ASCII-Tabellen über Template-Toolkit erstellen. Intern verwendet das Modul Text::ASCIITable.

Ein kleines Beispiel-Template:
[% USE ASCIITable %]
[% ASCIITable.cols('a', 'b', 'c');
ASCIITable.rows([1,2,3],['one','two','three']);
ASCIITable.draw() %]
Und hier das dazugehörige Perl-Skript:
#!/usr/bin/perl

use strict;
use warnings;
use Template;

my $tt = Template->new();
$tt->process('template.tt');
Jetzt fragt sich sicherlich der Eine oder Andere, wofür man so ein Modul gebrauchen könnte. ASCII-Tabellen werden immer noch ganz gerne verwendet, wenn man keine Bilder irgendwo einfügen kann oder wenn es weiterverarbeitet werden soll. Genau hier hilft das Modul. Man muss sich nicht selbst um die Erstellung der Tabelle kümmern sondern kann sich darauf beschränken dem Template die Werte zu übergeben und der Rest passiert "automatisch".

Thursday, October 04, 2007

3. Frankfurter Perl-Community Workshop

Vom 26.-28.10. findet der 3. Frankfurter Perl-Community Workshop statt. Das ganze ist eine lockere Zusammenkunft mit einigen Vorträgen aber ganz ohne Zeitdruck und/oder Stress. Wer Lust hat, kann einfach vorbeikommen - und auf Grund des nicht ganz so großen Raums am besten unter http://wiki.perl-community.de/bin/view/Community/PlanungWorkshopOktober2007 eintragen. Oder hier sagen, damit ich es ins Wiki eintragen kann.

In 80 Tagen um die Welt - Tag 3

Als Phileas Fogg auf seiner Reise durch Italien kam, konnten diese mit seiner Perldokumentation recht wenig anfangen - alles auf Englisch, wo doch einige Leute auf dem Land nur relativ schlecht Englisch verstanden.

Mittlerweile ist das nicht mehr so tragisch. Enrico Sorcinelli hat mit dem Modul POD2::IT zumindest für einen kleinen Teil der Perldokumentation die italienische Übersetzung veröffentlicht.

Mit perldoc POD2::IT::perl bekommt man die italienische Fassung von perldoc perl.
NOME
perl - Practical Extraction and Report Language [Linguaggio Pratico di
Estrazione e Report, NdT]

SINOSSI
perl [ -sTuU ] [ -hv ] [ -V[:*variabilediconfigurazione*] ]
[ -cw ] [ -d[:*debugger*] ] [ -D[*numero/lista*] ]
[ -pna ] [ -F*pattern* ] [ -l[*ottale*] ] [ -0[*ottale*] ]
[ -I*directory* ] [ -m[-]*modulo* ] [ -M[-]*'modulo...'* ] [ -P ] [ -S ]
[ -x[*directory*] ] [ -i[*estensione*] ]
[ -e *'comando'* ] [ -- ] [ *filedelprogramma* ] [ *argomento* ]...

Se per voi il Perl Þ una novitÓ, dovreste iniziare con perlintro, una
introduzione per principianti che fornisce qualche informazione generale
per aiutarvi a consultare il resto dell'ampia documentazione.

Per facilitarne l'accesso, il manuale del Perl Þ stato suddiviso in
diverse parti.

In generale
perl Perl in generale (questa parte)
perlintro Introduzione al Perl per principianti
perltoc Sommario della documentazione del Perl
Das bringt mich natürlich zu einem weiteren Punkt: Joergen W. Lang hat das Projekt perldoc2 gestartet, das nicht nur die italienische Übersetzung liefern soll, sondern auch die deutsche Übersetzung (neben vielen weiteren Sprachen). Wer also des italienischen oder des deutschen mächtig ist und Lust hat, sollte sich mal bei Joergen melden. Er freut sich sicherlich...

Wednesday, October 03, 2007

Nützliche Variablen: $/

Im Forum tauchen immer wieder ähnliche Fragen auf und heute hatte ich wieder ne Mail im Postfach, bei denen es sich die Schreiber unnötig schwer machen. Da ich lange Zeit in dieser Ecke gearbeitet habe und die heutige Mail damit zu tun hatte möchte ich eine nützliche Spezialvariable in Perl mit einer FASTA-Datei erläutern.

FASTA-Dateien sind Dateien in einem bestimmten Format, in denen Sequenzdaten gespeichert sind - also mit Bioinformatik zu tun haben. Perl ist in der Bioinformatik eine weit verbreitete Programmiersprache und wenn man sich der Mächtigkeit von Perl bedient versteht man auch warum...

Diese FASTA-Dateien werden häufig eingelesen. Dabei möchte man meistens komplette Blöcke in ein Array schreiben. Also nicht Zeilenweise wie in den meisten Fällen in denen eine Datei eingelesen wird, sondern in benutzerdefinierten Blöcken.

Eine FASTA-Beispieldatei:
>gi|5524211|gb|AAD44166.1| cytochrome b [Elephas maximus maximus]
LCLYTHIGRNIYYGSYLYSETWNTGIMLLLITMATAFMGYVLPWGQMSFWGATVITNLFSAIPYIGTNLV
EWIWGGFSVDKATLNRFFAFHFILPFTMVALAGVHLTFLHETGSNNPLGLTSDSDKIPFHPYYTIKDFLG
LLILILLLLLLALLSPDMLGDPDNHMPADPLNTPLHIKPEWYFLFAYAILRSVPNKLGGVLALFLSIVIL
GLMPFLHTSKHRSMMLRPLSQALFWTLTMDLLTLTWIGSQPVEYPYTIIGQMASILYFSIILAFLPIAGX
IENY
>gi|1234567|gb|AAD44133.8| cytochrome a [Elephas maximus maximus]
LCLYTHIGRNIYYGSYLYSETWNTGIMLLLITMATAFMGYVLPWGQMSFWGATVITNLFSAIPYIGTNLV
EWIWGGFSVDKATLNRFFAFHFILPFTMVALAHTHLTFLHETGSNNPLGLTSDSDKIPFHPYYTIKDFLG
LLILILLLLLLALLSPDMLGDPDNHMPGLMITADSHIKPEWYFLFAYAILRSVPNKLGGVLALFLSIVIL
GLMPFLHTSKHRSMMLRPLSQALFWTLTMDLLTLTWIGSQPVEYPYTIIGQMASILYFSIILAFLPIAGX
IENY
In vielen Programmen sieht man dann so etwas:
#!/usr/bin/perl

my $fasta_file = '/pfad/zur/datei.fasta';
my @sequences;
my $sequence;
my $counter = 0;

open(FILEHANDLE, "<$fasta_file") or die $!; while( ){
if( $_ =~ /^>/ and $counter > 1 ){
push(@sequences, $sequence);
$sequence = $_;
}
$sequence .= $_;
$counter++;
}
push @sequences, $sequence if $sequence;
close(FILEHANDLE);

foreach(@sequences){
print "Sequenz: $_\n\n";
}

Das ist aber reichlich umständlich. Erstens gibt es schon Module wie etwas BioPerl oder Bio::FASTASequence oder wenn man es doch selbst machen will, sollte man die Sachen von Perl nutzen.

Es gibt eine Spezialvariable $/ (siehe auch perldoc perlvar), die das "Ende des einzulesenden Blocks" festlegt. Im Normalfall - wenn man also nichts verändert hat, ist die Variable auf "\n" gesetzt. Damit wird festgelegt, dass immer bis zu einem "\n" eingelesen wird.

Hier ist das zeilenweise einlesen aber eher ungeschickt. Wenn man sich die FASTA-Datei anschaut, sieht man, dass jeder Eintrag mit ">" an einem Zeilenanfang beginnt.

Also kann man $/ auf "\n>" setzen. Damit ist *ein* einzulesender Block durch ein Zeilenende-Zeichen und einem folgenden ">" begrenzt.

Somit kann man folgendes machen:
#!/usr/bin/perl

my $fasta_file = '/pfad/zur/datei.fasta';
my @sequences;

{
local $/ = "\n>";
open my $fh, '<', $fasta_file or die $!;
while(my $sequence = <$fh> ){
chomp $sequence;
$sequence = '>' . $sequence unless $sequence =~ /^>/;
push @sequences, $sequence;
}
close $fh;
}

foreach(@sequences){
print "Sequenz: $_\n\n";
}

Noch deutlicher wird es bei Dateien, bei denen die interessanten Blöcke durch eine Leerzeile begrenzt sind. Zum Beispiel:
Header1
Info1 zu Header1
Zeile2 der Info1

Header2
Info1 zu Header2
Zeile2 der Info1


Hier kann man $/ auf "\n\n" setzen und schon bekommt man bei jedem Durchlauf der while-Schleife beim Einlesen einen kompletten interessanten Block geliefert.

Aber man sollte aufpassen: Die Änderung von $/ sollte man auf einen möglichst kleinen Block beschränken. Deswegen habe ich oben auch um das Einlesen die geschweiften Klammern gepackt. Aber es gibt ein Problem wenn man *kein* local verwendet und innerhalb eines Programms erst eine FASTA-Datei dann eine andere Datei einlesen will...

chomp arbeitet übrigens auch mit $/, deswegen macht es in meinem Beispielcode auch das richtige und entfert das "\n>" bei jedem Eintrag...

In 80 Tagen um die Welt - Tag 2

Am zweiten Tag seiner Reise - dem 03.10.1872 - kam Phileas Fogg nach Frankreich. Dort hat rund 73 Jahre zuvor die Französische Revolution stattgefunden. Das bringt mich auch schon zum heutigen Perl-Modul - DateTime::Calendar::FrenchRevolutionary...

Jean Forget hat ein Modul geschrieben, mit dem man Daten aus dem Revolutionskalender in den Gregorianischen Kalender umrechnen kann - und natürlich auch in die entgegengesetzte Richtung. Der Revolutionskalender war zwar nur von 1793 bis 1805 in Kraft, aber das Modul ist dennoch eine gute Möglichkeit auf etwas einzugehen, das stark mit Frankreich zu tun hat.

In dem Beispielcode wird das Datum des zweiten Reisetages von Phileas Fogg in das entsprechende Datum des Französischen Revolutionskalenders umgerechnet:
#!/usr/bin/perl

use strict;
use warnings;
use DateTime;
use DateTime::Calendar::FrenchRevolutionary;

my ($day,$month,$year) = (3,10,1872);

my $date = DateTime->new(
day => $day,
month => $month,
year => $year,
);

my $french = DateTime::Calendar::FrenchRevolutionary->from_object(
object => $date,
);

my $greg_date = sprintf "%02d.%02d.%02d",
$day,
$month,
$year;

my $french_date = sprintf "%02d.%02d.%02d",
$french->day,
$french->month,
$french->year;

print qq~Das Datum $greg_date des Gregorianischen Kalenders
entspricht dem $greg_date
des Französischen Revolutionskalenders.~;

Tuesday, October 02, 2007

In 80 Tagen um die Welt - Tag 1

Sooo, heute beginnt die 80-tägige Reise aus "In 80 Tagen um die Welt" von Jules Verne. Jan Theofel hat die Aktion mit der täglichen Bloggerei initiiert. Er und zwei weitere Blogger werden ihre Einträge unter http://www.die-80-tage-blogger.de veröffentlichen. Ich werde die Reise mit einer losen Sammlung von Perl-Modulen begleiten.

Den Start möchte ich mit DateTime::Format::Natural::Lang::EN machen, da die Reise in London beginnt. Das Modul ist Teil der Distribution DateTime::Format::Natural. Damit lassen sich "natürlichsprachliche" Zeitangaben in ein "Kalenderformat" umwandeln.

Interessant wird es natürlich so richtig, wenn man es mit anderen Parsing-Techniken verbindet und so aus einem Fließtext viele Informationen sammeln kann. So könnte man das Modul - in Verbindung mit anderen Modulen - zum sogenannten Data-Mining verwenden...

Hier ein kleines Beispiel, wie man es machen könnte:
#!/usr/bin/perl

use strict;
use warnings;
use DateTime::Format::Natural;

my $string = 'today Phileas Fogg started his tour around the world';
my $parser = DateTime::Format::Natural->new(
lang => 'en',
);


my $date = "";
for my $word ( split / /, $string ){
my $dt = $parser->parse_datetime( $word );
next unless $parser->success;
$date = sprintf "%02d.%02d.%04d",
$dt->day,
$dt->month,
$dt->year;
}

print "Die 80-Tage-Blogger starten am $date\n";

Natürlich funktioniert das jetzt nur am heutigen Tag richtig. Also bräuchte man für ein sinnvolles Data-Mining noch einen Bezugspunkt dazu, was "today" ist...

Tuesday, September 25, 2007

Twitter und Facebook - jetzt mit CPAN-Anwendungen

Twitter-Nutzer können sich jetzt über die neuesten CPAN-Uploads informieren lassen: Randy Ray hat einen Bot mit dem Namen "cpan_linked" geschrieben. Dieser holt alle 15 Minuten Informationen über die neuesten Module. Gibt es neue Module, werden in gleichmäßigen Abständen die Nutzer des Bots informiert. So bleibt man ständig auf dem laufenden was auf CPAN passiert.

"CPAN Friends" ist eine Anwendung von Leon Brocard, die für Facebook-Nutzer ganz interessant sein könnte. Wer die Anwendung in seinem Facebook-Account installiert, kann die Modul-Uploads von Freunden beobachten...

Monday, September 24, 2007

PDF mit Perl bearbeiten

Auf perl.com gibt es seit ein paar Tagen einen Artikel, der PDF::Reuse vorstellt. Ich finde das ein sehr nützliches Modul, mit dem ich mir schon vor zwei Jahren ein kleines Programm zum PDF-Handling geschrieben habe. Das wird zur Zeit auch recht häufig in der Bearbeitung unseres Perl-Magazins eingesetzt.

Hilfe benötigt! Suche 80 Module...

Jan Theofel möchte zu dem Buch "In 80 Tagen um die Welt" eine Aktion starten, bei der er für jeden Tag der Reise ein Rezept online stellt. Ein paar weitere Blogger werden für ihr jeweiliges "Fachgebiet" ebenfalls passende 80 Beiträge verfassen. Was das mit Perl zu tun hat? Auf den ersten Blick nichts, aaaaber...

  • Er möchte ein MovableType-Blog aufsetzen, um alle Weblogs zu sammeln...
  1. ist MovableType in Perl geschrieben
  2. das Skript, dass die Feeds der verschiedenen Blogs sammeln und auswerten wird ist in ... Perl
  • Ich möchte mich ebenfalls mit 80 Beiträgen beteiligen.

Da gibt es allerdings ein kleines Problem: Ich möchte passend zu der Reise Perl-Module vorstellen, bei denen entweder deren Autoren aus der jeweiligen Region/Land kommen, oder die einen Bezug zu dem Land/der Region haben - wie z.B. Business::ACN für Australien geeignet wäre. Natürlich kenne ich nicht alle Module. Wer also Ideen hat, welches Modul zu welchem Tag passt, kann sich gerne bei mir Melden. Am besten als Kommentar auf diesen Post.

Die Meerespassagen sind das Schwierigste. Gibt es genügend Module, mit denen man einen Bezug zu dem jeweiligen Tag der Reise herstellen kann? Zur Not gilt auch, dass in dem Beispiel-Code die Region/das Land die Ausgangsbasis ist.

Edit: die Reise soll am 02. Oktober beginnen, also immer her mit den Vorschlägen ;-)

Noch 6 Tage Perl-Umfrage

Die letzte Woche der Perl-Umfrage ist angebrochen! Wer noch nicht mitgemacht hat, sollte das noch tun ;-) Es wäre schön, wenn die Umfrage einigermaßen repräsentativ wäre - und dafür brauchen wir - DICH!! Die Umfrage läuft noch bis 30. September...

Noch mehr Test-Reports

Wer hat schon 20 Testsysteme für seine Module zur Verfügung? Bei sich im Umfeld wohl kaum jemand - vielleicht gibt es ein paar Ausnahmen, aber die meisten dürften wohl so zwischen 1-3 Systeme zur Verfügung haben, auf denen eigene Module getestet werden können. CPAN-Autoren haben das Glück, dass es die CPAN-Testers gibt. Keine Ahnung wieviel unterschiedliche Systeme die CPAN-Tester insgesamt haben, aber es sind einige - und vor allem mit allen möglichen Unterschieden in der Konfiguration. Erstmal vielen Dank an alle CPAN-Tester!

Man kann auch ziemlich einfach selbst zum CPAN-Tester werden: Einfach CPAN::Reporter installieren, mittels o conf init test_report ein paar Einstellungen vornehmen und dann wird bei jeder Installation mit CPAN.pm ein Test-Report verschickt.

Jetzt gibt es eine neue Version von CPAN::Reporter, die auch Fehler bei "make" und "*.PL" melden.

Sunday, September 23, 2007

Russsischer Perl-Workshop

Am 26. Oktober 2007 findet der Russische Perl-Workshop innerhalb der InfoCom 2007 statt. Es wird zu drei Themen Vorträge geben: "Perl6", "Perl und XSLT" und "Perl beginners". Die Teilnahme ist kostenlos.

Thursday, September 20, 2007

Israelischer Perl-Workshop 2007

Gabor Szabo hat ein ganz spezielles Datum für den diesjährigen Israelischen Perl-Workshop herausgesucht: 31.12.2007!

Natürlich werden dafür auch Vortragende gesucht, Deadline für Vortragseinreichung ist der 7. Oktober.

Die Kosten werden wohl unter 100$ liegen und direkt im Anschluss an den Workshop wird es wohl einen Hackathon geben...

Wednesday, September 19, 2007

Perl-Foundation: Board of Directors hat gewählt...

Im Vorstand der Perl-Foundation gab es einige Änderungen. Bei den Wahlen im August 2007 gab es ein paar Veränderungen: Richard Dice übernahm das Amt des Präsidenten von Bill Odom, der zum neuen Vorsitzenden gewählt wurde. Jim Brandt wird neuer Vize-Präsident. Im Amt bestätigt wurden Kurt DeMaagd als Schatzmeister und Allison Randal sowie Nat Torkington als weitere Vorstandsmitglieder.

Richard Dice bleibt weiterhin Vorsitzender des "Steering Committees" und Jim Brandt im "Conference Committee" - bis zu den nächsten Wahlen in den Kommitees.

Kevin Lenzo, der bisher der Vorsitzende war, bleibt als Nicht-Stimmberechtigtes Mitglied dem Vorstand erhalten und trägt jetzt den Titel "Director Eremitus".

Monday, September 17, 2007

Tipps via Atom

Paul Fenwick betreibt in Australien ein Trainingsunternehmen (Perl Training Australia). Auf seiner Homepage veröffentlicht Fenwick auch immer wieder Tipps rund um Perl. Seit neuestem kann man die Tipps auch über Atom bekommen...

Wednesday, September 12, 2007

Webseite Belgischer Perl-Workshop

Wie schon angekündigt, findet am 27. Oktober der 1. Belgische Perl-Workshop in Brüssel statt. Jetzt gibt es auch eine richtige Webseite dazu... Dort kann man alle wichtigen Informationen über die Veranstaltung finden.

CPAN mit Gravataren...

Wer hat denn das Modul geschrieben? Wie sieht der/die denn wohl aus? Manchmal macht man sich ja Vorstellungen darüber, wer denn hinter einem bestimmten Modul steckt. Und wenn man sich dann im realen Leben trifft, ist die Person ganz anders. Damit man wenigstens so ungefähr weiß, wie der Autor aussieht, kann jeder ein Gravatar für seine cpan.org-Mailadresse anlegen. Dann wird es automatisch angezeigt - wie es bei mir jetzt auch ist...

Tuesday, September 11, 2007

Perlconsole

Ich glaube ich muss mir mal Perlconsole genauer anschauen...

Von der Webseite:
Perl Console is a light program that lets you evaluate Perl code interactively. It uses Readline for grabing input and provides completion with all the namespaces loaded during your session.
Damit kann man anscheinend ganz gut einzelne Funktionen von Modulen ausprobieren ohne ein Skript zu schreiben...

"Perl-Wettbewerb"

Zum 10-jährigen Geburtstag von "Perl-Snapshot" im Linux-Magazin, gibt es nicht nur einen Artikel über den Autor Mike Schilli - der auch für $foo-Perl-Magazin schreibt, sondern auch einen weiteren Perl-Snapshot und einen kleinen Perl-Wettbewerb.

Zu gewinnen gibt es verschiedene Bücher. Also: mitmachen lohnt sich...

VMware Infrastructure Perl Toolkit

Das Perl SDK für VMware Infrastructure ist in der Version 1.0 erschienen. Folgendes kann man mit der Infrastructure API machen:
  • Inventory Operations
  • Virtual Machine Life-cycle Operations
  • Host, Network, and Storage Configuration
  • Performance Monitoring and Management
  • User Management
  • Event Management
Sicherlich für Entwickler, die mit VMware arbeiten und Perl mögen, eine interessante Sache...

Paralleles Testen...

Mit dem neuen Test::Harness wird es auch ein Test::Harness::Parallel geben. Damit werden Tests parallel ausgeführt und bringen so eine Zeitersparnis. Eric Wilhelm ist bei der Entwicklung von Test::Harness beteiligt und hat das parallele Testen getestet. Die Tests von Perl 5.8.8 wurde in 200s statt 500s ausgeführt. Das macht doch schon einiges aus. Das Ganze ist zwar noch nicht stabil, aber es wird wohl recht bald rauskommen. Scheint eine sehr gute Sache zu sein...

Monday, September 10, 2007

Online Perl-Kurs von Jochen Lillich

Der Macher von "Radio Perl" hat lange keine Perlcasts mehr herausgebracht. Heute hat Jochen Lillich den Grund dafür "beendet". Ab 15. Oktober bietet er einen Online Perl-Kurs an, der 10 Wochen dauert und rund 250 EUR kostet... Ist sicherlich eine gute Sache für alle, die ihr Unternehmen für Weiterbildungen nicht über einen längeren Zeitraum verlassen dürfen/sollen...

Zeitreise ins Jahr 2002

Nachdem "domm" ein paar Videos der diesjährigen YAPC::EU online gestellt hat, wurde "acme" daran erinnert, dass er ja noch Videos von der YAPC::EU 2002 in München hat. Da es damals noch kein YouTube gab, hat er die Videos jetzt erst hochgeladen.

Sunday, September 09, 2007

Web::Scraper - ein echt nützliches Modul

Auf der YAPC::Europe hat Tatsuhiko Miyagawa sein Modul Web::Scraper vorgestellt. Damit soll man ziemlich einfach an Informationen von HTML-Seiten kommen. Jetzt bin ich gerade dabei, ein paar Module zu ändern - von der Verwendung von Regulären Ausdrücken und HTML::Parser hin zu Web::Scraper. Ich bin echt begeistert von dem Modul, da es viel Arbeit abnimmt. Und alte Module, die noch RegEx verwenden, müssen häufiger gewartet werden, weil sich die HTML-Struktur etwas ändert...

Ein kleines Beispiel:

HTML (wegen einem Fehler bei Blogger.com muss ich Leerzeichen bei den Tags einfügen):
< html >
< head >
< name="description" content="Beschreibung">
< /head >
< body >
< h1 >Test< /h1 >
< /body >
< /html >

Wenn hieraus die Beschreibung gefiltert werden soll, dann kann man das mit Regulären Ausdrücken, mit HTML::Parser und Web::Scraper lösen. In den folgenden Skripten lasse ich den HTML-Teil in der __DATA__-Sektion weg...

regex.pl
#!/usr/bin/perl

use strict;
use warnings;

my $content = do{ local $/; };
my ($description) = $content =~ /< meta \s+
name="description" \s+
content="(.*?)"/x;
print $description;

html_parser.pl
#!/usr/bin/perl

use strict;
use warnings;
use HTML::Parser;

my $content = do{ local $/; };
my $description = "";
my $parser = HTML::Parser->new();

$parser->handler( start => \&_start, "tagname,attr" );
$parser->parse( $content );

print $description;

sub _start{
my ($tag,$attr) = @_;
return unless $tag eq 'meta';
return unless $attr->{name} eq 'description';
$description = $attr->{content};
}

web_scraper.pl
#!/usr/bin/perl

use strict;
use warnings;
use Web::Scraper;

my $content = do{ local $/; };
my $parser = scraper {
process 'meta[name="description"]', description => '@content';
};
my $result = $parser->scrape( $content );
print $result->{description};

Bei der RegEx-Lösung ist die Wartbarkeit eher schlecht. Denn sobald etwas an der Reihenfolge der Attribute geändert wird, muss das Skript angepasst werden - und dieses Beispiel ist sehr einfach. Bei komplexeren RegEx geht sehr schnell etwas schief.

Die HTML::Parser-Lösung ist schon einiges sauberer, aber eher umständlich und lang. Hier ist die Wartbarkeit durch globale Variablen und die "Länge" etwas eingeschränkt. Soll nicht nur 1 Tag gesucht werden sondern viele verschiedene, werden die Handler auch dementsprechend komplex.

Mit Web::Scraper wird es recht übersichtlich. Und wenn man die Syntax einmal drin hat, dann ist es auch ziemlich einfach und schnell. Man muss sich halt mal die XPath-Syntax anschauen.
Es ist auf jeden Fall ein lohnenswertes Modul!

Tuesday, September 04, 2007

Test::Harness 2.99_01

Testen ist wichtig und ein wichtiges Modul für die Testsuite ist Test::Harness. Das Modul ist auf seinem Weg in Richtung Version 3.0. Die Entwickler haben eine neue "Entwickler-Version" auf CPAN geladen.

Es wäre praktisch, wenn möglichst viele sich diese Version herunterladen und ihre Testsuiten damit laufen lassen - und eventuell auftretende Probleme melden würden.

Monday, September 03, 2007

Neues von "Perlsurvey"

Ziemlich genau 4 Wochen vor dem Ende der aktuellen Umfrage wurde die 4000er-Marke geknackt. Da viele - auch ich - sich einiges aus der Auswertung der Zahlen erhoffen, wäre es natürlich gut, wenn noch mehr sich daran beteiligen würden.

Eben hat Kirrily Robert sich per Mail gemeldet und mitgeteilt, dass Google die Umfrage unterstützt. Zum einen durch eine Google AdWords-Kampagne und zum anderen bekommt Kirrily Zeit, um die Ergebnisse auszuwerten und den Bericht zu schreiben.

Edit: Kam eben per Mail...

So, I hereby declare this week to be sysadmin week!  I want to get at
least 200 sysadmins to take the Perl Survey.

How can we achieve this?

1) Google adwords campaign, targetting sysadmin terms

2) Emailing sysadmins we know

3) Sysadmin groups and organisations: SAGE, USENIX, etc. Also
operating system user groups eg. Linux User Groups, etc.

4) Sysadmin websites -- what are they? (I'll be investigating this)

5) Key people in the sysadmin community. Eg. Tom Limoncelli

Anyone got any other ideas? Anyone want to help out with this? Email
the list, or grab me on IRC -- Skud on irc.perl.org, usually hanging
out on #perl, #london.pm, and other places.

Friday, August 31, 2007

YAPC::Europe-Videos auf YouTube

Die ersten Videos der YAPC sind auf YouTube:

Französischer Perl-Workshop 2007

Auf der YAPC hat Philippe 'BooK' Bruhat den diesjährigen Französischen Perl-Workshop angekündigt, der am 16./17. November in Lyon stattfindet. Dort werden natürlich auch Vorträge gesucht...

YAPC::Europe 2007 -- Tag 3

19 Talks in 90 Minuten - so fing der letzte Tag der YAPC::Europe 2007 an. Die Lightning Talks sind ein gutes Mittel, in Projekt oder ein Modul in kurzer Zeit vorzustellen. Oder auch einfach etwas allgemeines, lustiges zu zeigen. Gerade für Konferenz-Neulinge ist es ein gutes Mittel, um einen Einstieg in das "Halten von Vorträgen" zu bekommen. Diesmal gingen die Lightning Talks von (Unicode-)Bugs in Perl, über GUI-Testing bis hin zu einem "Lessons learned"-Vortrag.

Mein Lightning Talk über Win32::GuiTest kam anscheinend ziemlich gut an, auch wenn er nicht 100%ig lief. Ich habe viel Lob für den Vortrag bekommen - so etwas baut auf und macht Freude auf zukünftige Vorträge bei einer YAPC.

Eigentlich war es kein "Vortrag", denn ich habe meinen Laptop alles machen lassen...

Danach habe ich erstmal lange Pause gemacht, weil der Vortrag, den ich mir eigentlich anschauen wollte, ausgefallen ist. Vor der Mittagspause habe ich mir noch den MAD-Vortrag von Gerard Goosens angehört. Dort wurde gezeigt, wie man einen Perl5-nach-Perl5-Übersetzer schreibt. Dabei wird das Perl-Programm in eine XML-Struktur übersetzt, die nach Belieben verändert werden kann.

Zwischen Mittagspause und Kaffeepause fanden dann die letzten Vorträge der diesjährigen YAPC::Europe statt. Der erste Vortrag, den ich mir angehört habe, war von Avar Arnfjörd Bjarmason über "5.10 regex pragmata". Das Hauptthema dabei war die Implementierung des POSIX-Plugins für die RegEx-Engine in Perl 5.10. Direkt im Anschluss hat "mock" gezeigt, wie er riesige Datenmengen in eine Datenbank schreibt und dafür verschiedene Techniken wie perlbal, MogileFS und memcached verwendet.

Ein paar "Nachteile" von Perl - wie zum Beispiel fehlende Installationsroutinen von Perl-Anwendungen - zeigte Mark Fowler. Dabei ging er zu jedem vermeintlichen Nachteil auf die Lösung ein. Der letzte Vortrag war eine Präsentation von "Perl Worst Practices" von Marty Pauly. Neben "Variablen" zeigte er auch, warum Reguläre Ausdrück zu "Bad Code" führen.

Wie es Tradition ist, findet zum Abschluss noch eine Auktion statt, mit deren Erlös die kommende YAPC unterstützt werden soll. Dabei werden auch allerlei kuriose Dinge versteigert. Diesmal wurde ein "Trainingslager mit Damian Conway" versteigert, das für 500 Euro (von mehreren Personen bezahlt) an den Auktionator weitergereicht wurde. Die Organisatoren der kommenden YAPC::EU müssen bei der nächsten Konferenz eine schwedische Flagge auf der Stirn tragen - das wurde für 370 Euro versteigert. Damit war die YAPC::Europe 2007 in Wien vorbei!

Die Teilnehmer zeigten auch Solidarität mit einem Portugiesischen Teilnehmer, der aus einem traurigen Anlass früher nach Hause musste. Und der frühere Flug hat über 500 EUR mehr gekostet. Auf der Auktion wurden diese Mehrkosten sehr schnell aufgebracht.

Am Abend gab es noch eine Zusammenkunft in einer Bar, um den Abschluss der YAPC zu feiern. Dabei kamen nochmal rund 80 Personen - echt toll...

Die YAPC::Europe 2007 war einfach Klasse! Super viele sehr nette Leute, viele und gute Vorträge und vor allem eine sehr gute Organisation. Man kann Vienna.pm nur zu einer solchen Leistung gratulieren!

Thursday, August 30, 2007

YAPC::Europe 2007 -- Tag 2

Der zweite Tag begann mit einer Keynote von Damian Conway. Dabei durften die Teilnehmer der YAPC sehen, wie Conway Variablen einführte, die wie Positronen auch zeitlich "rückwärts" existieren können. Für den Vortrag wurden laut Damian 545 Folien verwendet - einfach unglaublich wie man so etwas in 90 Minuten unterbringt. Conway hat eine unschlagbare Art, Vorträge zu halten. Kein Wunder, dass er damit seinen Lebensunterhalt sehr gut bestreiten kann. Noch vor der Frühstückspause wurde die "Jobmesse" eröffnet. Zehn Unternehmen haben hier ihre Stände aufgebaut um sich potentiellen Bewerbern zu stellen. Das zeigt, wie sehr Perl-Programmierer gefragt sind. Vielleicht sollte in den Universitäten etwas nachgesteuert werden und zumindest ein Einführungskurs angeboten werden. An wen kann man sich mit so einem Anliegen wenden?

Nach der Frühstückspause zeigte Mark Jason Dominus am Beispiel von Class::Observable, wie man "besseren" Code schreibt und dabei die Fehleranfälligkeit minimiert. Es waren ein paar interessante Punkte dabei, die auf jeden Fall im Hinterkopf verbleiben sollten. "mock" nutzte Google Codesearch um typische Schwachstellen in Perl-Modulen und -Anwendungen zu finden. Zudem stellte er zwei Tools ganz kurz vor, die beim Sicherheitstest von Webanwendungen nützlich sein können. Danach war die Mittagspause angesagt.

Meine Mittagspause ging bis zur Kaffeepause, da mich die Vorträge in der Zwischenzeit nicht so übermäßig interessiert haben. Das lag aber nur daran, dass ich mich mit den Themen nicht beschäftige und nicht an den Themen selbst.

Nach der Kaffeepause stand der zweite Conway-Vortrag auf dem Programm. Zusammen mit Larry Wall gab es einen Perl6-Update. Es gab viele kritische Fragen aus dem Auditorium, die Conway und Wall gut beantworteten. Direkt im Anschluss wurde der Transport zum "Attendees Dinner" organisiert. Da der Veranstaltungsort nicht alle Teilnehmer bedienen konnte, wurde ein "Alternativ Dinner" organisiert. Beim "Attendees Dinner" gab es neben gutem Essen und Trinken vor allem die Möglichkeit, mit sehr vielen YAPC-Besuchern zu sprechen. Damian Conway hat mir auch versprochen, das Vorwort für eine der nächsten Ausgaben von "$foo" zu schreiben. Das wäre echt cool!

Der Heimweg war abenteuerlich, weil wir nicht den direktesten Weg genommen haben, sondern mit Straßenbahnen quer durch Wien gefahren sind. So konnte ich wenigstens ein paar andere Ecken auch mal bei Nacht bewundern!

Im Hotel habe ich dann erst noch am Laptop gearbeitet und ein paar Sachen für meinen Lightning-Talk morgen früh gemacht.

Wednesday, August 29, 2007

YAPC::Europe 2007 -- Tag 1

Gestern begann die Konferenz mit der offiziellen Eröffnung durch Thomas Klausner. Danach gab es den ersten Vortrag: "How to get the most out of a YAPC" von José Castro gehalten. Dieser war hauptsächlich an die "Neulinge" der Konferenz gerichtet. Es ging dabei darum, wie man für sich selbst möglichst viel aus der Veranstaltung mitnehmen kann. Anschließend gab es die erste Keynote - gehalten von Larry Wall.

Der erste reguläre Vortrag, den ich mir angehört habe, wurde von Jan Henning Thorsen über Operator-Overloading gehalten. Hier wurde gezeigt, wie eigene Subroutinen statt der Standardfunktionen bei bestimmten Operatoren ausführen kann. Dazu wird das Modul overload.pm verwendet. Viel Neues gab es dabei nicht für mich - genauso beim nächsten Vortrag: Barbie von Birmingham.pm zeigte wie Webanwendungen mit Selenium getestet werden können.

Beim Vortrag "Evolving architecture - make development easy and your site faster" zeigte Leo Lapworth, wie sich die Umgebung von Webanwendungen im Lauf der Zeit verändert: von einem einzelnen Server, der alles alleine macht bis hin zu einem System mit mehreren Servern, die spezialisiert einzelne Aufgaben wahrnehmen.
R. Geoffrey Avery zeigte bei "Manage::Objects" eine Möglichkeit, Objekte in einer Art "Singleton" "dauerhaft" zur Verfügung stellen zu können.

Wie man in 28 Tagen etwas für das tägliche Geschäft lernen kann, zeigte Greg McCarroll in "28 days later". Der letzte Vortrag vor der Kaffeepause war "Catalyst - refactor large apps with team and have fun!". Ich habe hier eigentlich eine "Anleitung" erwartet, wie man bestehende CGI-Skripte auf Catalyst umstellen kann, aber meine Erwartungen wurden nicht wirklich erfüllt.

Eine sehr interessante Alternative zu HTML::Prototype und CGI::Ajax zeigte Jon Allen in "Lightweight Ajax with OpenThought". OpenThought ist sehr leichtgewichtig und hat viele Möglichkeiten, mit einfachen Mitteln Ajax-Funktionen in Webseiten einzubauen. Das werde ich mir garantiert für mein nächstes Web-Projekt anschauen.
Ebenfalls um Webanwendungen ging es Leon Brocard "Scaling with memcached". Gerade stark frequentierte Webseiten wie Facebook haben das Problem, dass viele Datenbankabfragen gemacht werden müssen und die Ergebnisse gecachet werden sollen. Dies wird mit memcached und dem Perl-Modul Cache::Memcached erreicht.

Inhalte von Webseiten auslesen war das Thema von Tatsuhiko Miyagawa in "Practical Web scraping with Web::Scraper". Dabei verzichtet er auf Reguläre Ausdrücke und verwendet stattdessen XPath beziehungsweise CSS-Pfade.
Der letzte Vortrag am ersten Tag war "Finding Perl's place in the world" von Richard Dice. Er gab einen Einblick in seine Arbeit für die "Perl Foundation" und wie Perl in der Außendarstellung dasteht. Es gibt dabei einige positive Signale, aber auch noch viel Arbeit für alle Aktiven der Perl-Gemeinde.

Tuesday, August 28, 2007

YAPC::Europe 2008 -- Dänemark, wir kommen!

Bei der Eröffnung der YAPC::EU in Wien wurde - wie traditionell so üblich - der Ort der YAPC::EU im nächsten Jahr bekanntgegeben: Kopenhagen.

YAPC::EU 2008 wird von den Perl-Mongers Copenhagen ausgerichtet. Das Datum wird noch bekanntgegeben.

YAPC::Europe 2007 -- Tag 0

Fast direkt von der FrOSCon zur YAPC... Am Sonntag abend habe ich noch schnell meine Sachen gepackt, damit ich Montags ziemlich früh in Richtung Bahnhof losgehen konnte. Für mich ging es in Kelsterbach los - die Bahn hatte leichte Verspätung und fuhr von einem anderen Gleis. Aber es war ja genügend Puffer bis zur Abfahrt des EC 25 in Richtung Wien. Aber schon am Frankfurter Flughafen schien dieser Puffer aufgebraucht zu sein. Der Zug hielt im Bahnhof an und der Lokführer meldete "Weiterfahrt auf unbestimmte Zeit verschoben wegen Notfalleinsatzes". Na toll, fing ja schon gut an! Zum Glück kam gerade ein anderer Zug auf einem anderen Gleis, der auch zum Frankfurter Hauptbahnhof fuhr! Ich also rüber schnell in den anderen Zug und gehofft, dass dieser möglichst schnell abfährt.

Ich war dann doch überpünktlich am Hauptbahnhof in Frankfurt und konnte erstmal frühstücken. Der EC 25 (Dortmund - Budapest) kam dann sehr pünktlich und ich konnte meinen Platz einnehmen. Den Platz neben mir hatte ein netter Mann reserviert, der aber bis Nürnberg einen anderen Platz eingenommen hatte, damit wir beide genügend Platz hatten. Ab Nürnberg haben wir uns dann gut über die Geschichte Deutschland - Ungarn unterhalten. Das hatte auch sehr viele neue Sachen für mich parat.

In Wien angekommen, wollte ich mich erstmal erkundigen, wo ich überhaupt hin muss. Am Stadtplan lief mir erstmal Thomas Fahle über den Weg, der mit dem gleichen Zug angekommen ist. Im Hotel habe ich mich erstmal hingelegt und mich etwas ausgeruht.

Danach bin ich zur WU gefahren um mir anzuschauen, wo die YAPC::EU überhaupt stattfindet. Von der Uni bin ich dann direkt zum "Centimeter III" gelaufen, wo abends das Vor-Treffen stattfand. Dort bin ich gleich Yves Orton und Mark Overmeer über den Weg gelaufen. Bei ein paar Bier haben wir uns ganz gut unterhalten. So nach und nach sind sehr viele Leute eingetroffen - wesentlich mehr als Thomas Klausner angemeldet hatte, so dass die Bedienungen ganz schön in Stress geraten sind. Ich hatte dann noch ein ganz nettes Gespräch mit Richard Dice, Allison Randal und Ovid über die "Grant Comitee"-Geschichte...

Ich habe den ganzen Abend über einen Haufen netter Leute kennengelernt. Und ich bin erst um kurz vor 01.00 Uhr ins Hotel gegangen... Wenig Schlaf vor einem langen Tag

FrOSCon - Tag 2

Noch ein Nachtrag zu Tag 1 der FrOSCon: Bevor der Tag zu Ende ging, konnten wir noch ein paar Leuten bei Perl-Fragen behilflich sein. So haben wir innerhalb ein paar Minuten einen Perl-Einzeiler geschrieben, der einfachste CSV-Dateien bearbeitet. So konnten wir noch einige Leute "glücklich" machen.

Abends auf dem "Social Event" gab es dann kostenlose Würstchen - die von Google gesponsort wurden - und Salate, Steaks, und so weiter, die von O'Reilly "subventioniert" wurden.

Am zweiten Tag der FrOSCon ging es etwas später los, weil wir nicht erst den gesamten Stand aufbauen mussten, sondern nur ein paar Sachen wieder hergerichtet haben.

Vormittags war es dann ziemlich ruhig - man hatte fast den Eindruck, dass alle Teilnehmer erstmal ausschlafen mussten. Nachmittags war dann etwas mehr los und wir konnten einen Gewinner eines Jahres-Abos begrüßen.

Wir mussten dann etwas früher abbauen, weil ich mich ja zu Hause noch auf die YAPC::Europe vorbereiten musste. So ging eine - für uns erfolgreiche - FrOSCon zu Ende...

Saturday, August 25, 2007

FrOSCon - Tag 1

Nachdem der Abend gestern etwas länger geworden ist, sind wir heute früh wieder aufgestanden um pünktlich auf der FrOSCon die letzten Sachen an unserem Stand aufzubauen. Wir haben auch schon Ideen für unseren "nächsten" Stand - wann auch immer wir mal wieder auf einer Konferenz oder einer Messe vertreten sind.

Der Tag lief recht gut - ziemlich gut sogar, wenn man bedenkt, dass hier ein seeehr großer Teil PHP-Programmierer ist. Ich habe einige Bekannte wieder getroffen und teilweise endlich mal ein Gesicht zu Nicknames aus dem Internet bekommen...

Es sind weniger Besucher da, als von den Veranstaltern erwartet (rund 150 statt 500 Besucher), aber gerade in den Pausen ist an den Ständen recht viel los.

Uns gegenüber ist ein Stand von JAD, an dem in unregelmäßigen Abständen etwas Musik gespielt wird. Leider wird dann zwischendrin wieder abgebrochen und ein paar Macken scheint das System auch noch zu haben.

Die Verpflegung der Aussteller durch die FrOSCon ist ziemlich gut. Lecker Essen, viel zu trinken - so wie es sein muss ;)

Heute abend findet noch der Social Event unter dem Motto "Kölsch 0,2 statt Web 2.0" statt, bei dem die Würstchen von Google gesponsort sind und das Bier von O'Reilly gesponsort sind. Das zeigt mal wieder, dass "Essen" bei Google ganz groß geschrieben wird.

Vorhin habe ich mich noch mit Ralf vom Perl-Workshop-Orga-Team ziemlich gut unterhalten und ein paar neue Ideen - wie man Perl etwas "fördern" kann - mitgenommen. Das werde ich alles noch für mein Gespräch am Montag mit ein paar Leuten von der Perl-Foundation aufbereiten und hoffen, dass einiges umgesetzt wird.

Friday, August 24, 2007

FrOSCon - Tag 0

Wir betreiben bei der FrOSCon das erste Mal einen eigenen Stand bei einer Veranstaltung. Wir wollen hier ein wenig unser Perl-Magazin vorstellen (neudeutsch: "promoten"). Hier laufen etliche Entwickler und Förderer von Open Source rum, vielleicht warten einige nur auf ein Perl-Magazin ;)

Wir haben gerade unseren Stand aufgebaut und haben ganz nette "Nachbarn". Für unseren Stand haben wir einen Tisch, einen Zeitungsständer und diverses anderes Material zur Verfügung. Bilder und so weiter kommen in den folgenden Tagen...

1. Brüsseler Perl-Workshop

Brüssel.pm wird am 27. Oktober 2007 ihren 1. Brüsseler Perl-Workshop durchführen. Noch gibt es nicht allzu viel Informationen, ich denke aber, dass es sich bald ändern wird. Natürlich werden auch Vortragende gesucht, wobei die bevorzugte Sprache "Englisch" ist (neben Französisch und Holländisch).

Thursday, August 23, 2007

Perlsurvey - Knacken wir bald die 4000er Marke?

Vor fast einem Monat hat Kirilly Robert die Perl-Umfrage gestartet. Seitdem haben 3899 Leute mitgemacht (Stand 23.08.2007 16:47 Dt. Zeit). Wäre doch ganz nett, wenn es nach einem Monat 4000 Teilnehmer wären, oder? Das Ausfüllen der Umfrage dauert normalerweise nicht mal 5 Minuten...

Die Umfrage ist noch bis Ende September offen, dann beginnt die Zeit des Auswertens.

"Beginning Perl" als Wiki

Simon Cozens hat sein (etwas altes) Buch "Beginning Perl" in ein Wiki überführt. Jetzt darf jeder das Buch verbessern...

Tuesday, August 21, 2007

10. Deutscher Perl-Workshop // CfP

Von Mittwoch, dem 13.02.2008 bis Freitag, den 15.02.2008 findet der 10. Deutsche Perl-Workshop in Erlangen am Regionalen Rechenzentrum statt. Zielgruppe des Workshops sind alle ernsthaften Perl-Anwender und die, die es werden wollen.

Unser Workshop steht und fällt mit den Vorträgen. Üblicherweise sind Vorträge 5, 20 oder 40 Minuten lang. Alle Themen, die in irgendeiner Weise mit Perl oder dem Perl-Umfeld zu tun haben, können als Vorträge für den Workshop interessant sein. Unter www.perl-workshop.de/2008/cfp.html findestDu den ausführlichen "Call for Papers". Abgabefrist für die Einreichung von Vorschlägen ist Montag, der 29.10.2007.

Countdown YAPC::EU 2007 - Noch genau eine Woche!

Maros Kollar hat gerade ein "Update" für die Jobmesse rausgegeben:

Es haben sich 10 Aussteller für die Jobmesse gefunden:
  • BOOKING.COM
  • Geizhals Preisvergleich
  • Google
  • heise online
  • i5invest - driving your startup to success
  • Morgan Stanley
  • nfotex
  • Shopzilla
  • Venda
  • Verisign
Und mit über 300 Teilnehmern dürfen wir nächste Woche eine Rekord-YAPC erwarten. Also jede Menge netter Leute, viele Vorträge, ein großes "Staraufgebot" mit Larry Wall, Damian Conway, Mark Jason Dominus und Chia-Liang Kao (als Vertretung für Audrey Tang, die leider verhindert ist).

Für mich geht es am Montag ab in Richtung Wien!

The Perl-Foundation needs you!

Ovid hat nach jahrelanger Arbeit sein Amt als Vorsitzender des "Grant Commitee" abgegeben. Jetzt sucht die Perl-Foundation nach einem Nachfolger. Zu den Hauptaufgaben gehört es, vierteljährlich den "Call for Proposals" auszuschreiben und die Abstimmungen anzustoßen. Die Perl-Foundation ist auch dankbar, wenn neue Leute in die Perl-Foundation kommen und so vielleicht auch die "Reichweite" erhöhen.

Relativ wichtig ist es meiner Meinung nach auch, dass die Ankündigungen etc. einem möglichst breiten Publikum bekanntgemacht werden, damit auch die Aufgaben und die Aktivitäten der Perl-Foundation noch bekannter werden.

Monday, August 20, 2007

Perl-Bootcamp in Frankfurt

Im November (12.-15.) gibt es einen neuen Versuch, ein Perl-Bootcamp durchzuführen. Der 5-Tages-Kurs wird von Big Nerd Ranch Europe organisiert und findet in Frankfurt statt. Als Tutor konnte brian d foy gewonnen werden. Das ist sicherlich eine interessante Sache - wenn auch nicht ganz billig. brian ist sicherlich ein Top-Perl-Programmierer von dem man viel lernen kann

Mal schauen, ob brian Zeit findet, an einem Frankfurt.pm-Meeting teilzunehmen...

Friday, August 17, 2007

interessanter Urlaub für Kurzentschlossene

Wer schon immer mal nach Portugal wollte und kurzfristig Urlaub machen möchte, der kann ja zum "Intermediate OO Perl"-Vortrag von Damian Conway fliegen. Ich werde das wohl leider nicht schaffen, da nächste Woche sehr viel Arbeit auf mich wartet und ich noch einige Sachen für die FrOSCon und die YAPC::Europe vorbereiten muss.

Movable Type 4 erschienen

Vor ein paar Tagen ist Movable Type 4 erschienen. Die - auf Perl-basierende - Blog-Software ist für den privaten Gebrauch kostenlos. Wer mehr Funktionsumfang haben will, muss dafür zahlen. Die OpenSource-Variante der Software lässt noch ein wenig auf sich warten...

Durch das Hinzufügen der Möglichkeit, statische Seiten zu verwalten, wird aus der reinen Blog-Software schon fast ein CMS. Mal schauen wie sich das weiterentwickelt.

Tuesday, August 14, 2007

Perl-Schulungen-Verzeichnis

Unter http://www.perltraining.org/ ist eine Seite erreichbar, die von Gabor Szabo betrieben wird. Wie der Domain-Name schon verrät, geht es dabei um Perl-Schulungen. Für einige Länder sind Unternehmen eingetragen, die Kurse in Perl-Programmierung anbieten. Die Liste ist noch lange nicht komplett. Für Hinweise ist Gabor sicherlich dankbar.

Perl spart Zeit...

Gerade auf der Mailingliste von Sydney.pm:

> perl -e 'print int(rand(5) + 1),"\n"';
> 1

Years before Perl was invented, I was onsite and doing some tricky
development which involved the need for regular printouts. It was a pain
fetching the printout, so I wrote in shell a random name picker
similar to the one here, so that one of me or the two guys I was
working with would be requested to go and get the printout everytime
an lp command was issued.

I put my name at the end of the list, and then quietly changed
int(rand(3) + 1) to int(rand(2) + 1). One of the guys figured it
out after the next 6 printouts were all him and his mate, and demanded
I change it to int(rand(1)+1), after which neither of us had to fetch another
printout for a few days.


Das Shell-Skript lässt sich sehr leicht in Perl schreiben und so kann man mit Perl viel Zeit sparen ;)

Monday, August 13, 2007

Perl im Web - manchmal zu offensichtlich....

Es ist ja wirklich schön zu sehen, dass viele Webseiten mit CM-Systemen in Perl gepflegt werden, doch manchmal ist es etwas zu offensichtlich und die Systeme geben Fehler mitten in die Seite aus.

Ein aktuelles Beispiel ist ein Artikel auf connect.de (falls der Fehler schon behoben wurde, hier ein Screenshot). Im März hatte ich auch kurz über Forbes.com berichtet, die offensichtlich auch Perl einsetzen.

Das ist zwar nicht so wild wie die ganzen mysql-Warnungen (und andere Fehler) von PHP-Anwendungen (wie hier zum Beispiel), aber solche Fehlermeldungen sollten für den normalen User unsichtbar sein. Wer zuviele Fehlermeldungen ausgibt, zeigt dem geneigten Leser auch noch eventuelle Sicherheitslücken - egal in welcher Sprache die Anwendung geschrieben ist. Besser ist es, Fehler in die error.log zu schreiben und die regelmäßig zu analysieren.

Ich weiß, dass ich den Fehler auch noch ab und zu begehe, aber solche Beispiele erinnern mich immer wieder daran, so Sachen wie "use CGI::Carp qw(fatalsToBrowser)" nach der Entwicklung wieder rauszunehmen...

Thursday, August 09, 2007

Mastering Perl

Auf Amazon gibt es das Buch schon seit ein paar Wochen und eben habe ich auch die offizielle Presseinformation von O'Reilly bekommen:

"Mastering Perl" ist da! brian d foy hat das Buch geschrieben, das so eine Art "3. Teil" in der Reihe nach "Programming Perl" und "Intermediate Perl" ist. Es behandelt etliche Themen auch tiefergehender.

Ich werde es mir holen...

Aus der offiziellen Presseinformation:

5. Mastering Perl
------------------
brian d foy, Foreword by Randal L. Schwartz
First Edition July 2007
ISBN 978-0-596-52724-2
342 pages, broschiert, EUR 38.00

This is the third in O'Reilly's series of landmark Perl tutorials,
which started with Learning Perl, the bestselling introduction
that taught you the basics of Perl syntax, and Intermediate Perl,
which taught you how to create re-usable Perl software.
Mastering Perl pulls everything together to show you how to bend
Perl to your will.

Hier finden Sie eine ausfuehrliche Beschreibung:
http://www.oreilly.de/catalog/9780596527242/

Hier finden Sie ein Probekapitel des Buches:
http://www.oreilly.de/catalog/9780596527242/chapter/

Tuesday, August 07, 2007

EasyEclipse - IDE für Perl (und anderes)

Ich bin eben gerade über EasyEclipse gestolpert. Das ist ein Paket bestehend aus LAMP, Eclipse und - für Perl-Programmierer wichtig - EPIC. Da ist alles schon vorkonfiguriert. Vielleicht werde ich es mir mal anschauen, auch wenn ich grundsätzlich nicht besonders begeistert bin von Eclipse. Das ist mir zu aufgeblasen. Aber ich kenne viele Leute, die sehr gerne mit Eclipse arbeiten und für die könnte dieses Paket sehr nützlich sein.

Falls jemand schon Erfahrungen damit gemacht hat oder vorhat, in nächster Zeit das mal auszuprobieren wäre ich für einen Kommentar dankbar...

Monday, August 06, 2007

Keine Perl-Programmierer gefunden? Vielleicht selbst daran schuld...

Ich habe es schon mehrfach geschrieben, bei Thomas Fahle habe ich auch Postings dazu gesehen: Jede Menge Jobs für Perl-Programmierer und es scheint sich keiner zu finden, der diese Stelle ausfüllen will. Das kann mehrere Gründe haben:

Es gibt keine Perl-Programmierer mehr... Das kann ich kaum glauben, da die Perl-Community sehr aktiv ist und man doch auf etliche trifft, die Perl (zumindest einigermaßen) programmieren können.

Die Stellenausschreibung ist zu unbekannt... Das könnte durchaus sein. Ich durchforste relativ regelmäßig das Internet nach neuen Perl-Stellen, um diese dann bei Perl-Community.de einzustellen. Manchmal muss ich schon ewig suchen, bis ich so eine Stellenausschreibung gefunden habe. Vielleicht sollte man dann mal etwas Geld investieren, und die Stellenausschreibung irgendwo bewerben. Z.B. in der c't oder in $foo ;) oder über Google Adwords. Auch bei der diesjährigen YAPC::Europe gibt es eine "Jobmesse". Es gibt auch etliche kostenlose Möglichkeiten: In verschiedenen Foren wie Perl-Community.de oder Perl.de. Auch auf jobs.perl.org kann man so etwas posten. Netzwerke bilden wie bei XING oder LinkedIn und dort nach geeigneten Leuten suchen...

Es gibt genug Perl-Programmierer, aber keiner sucht einen neuen Job... Das könnte ich mir schon eher vorstellen. Die meisten Perl-Programmierer die ich kenne, haben einen Job und suchen nicht wirklich einen neuen Job. Bei einer sehr guten Gelegenheit, würde vielleicht der eine oder andere zugreifen. Doch dafür muss die Stellenanzeige auch dementsprechend gestaltet sein. Ein ganz guter Blog-Eintrag von Kirrily Robert verdeutlicht, wie es nicht unbedingt sein sollte.

Das ist alles keine Garantie dafür, einen guten Perl-Programmierer zu finden, aber es ist ein erster Schritt dorthin.

Wenn alles nichts hilft, sollte man vielleicht darüber nachdenken, das nötige Wissen intern vermitteln zu lassen über Schulungen und/oder eine entsprechende Ausbildung. Das bringt vielleicht nicht sofort was, dafür ist man langfristig auf der sicheren Seite. Das kurzfristige Loch kann zum Beispiel mit Freelancern gefüllt werden.

Neue Version von "kephra"

Herbert "lichtkind" Breunung hat eine neue Version seines - in Perl geschriebenen Editors - "kephra" online gestellt. Ich verwende diesen Editor für meine gesamten Programmierarbeiten und ich bin ziemlich zufrieden damit. Es fehlen noch ein paar Sachen bis zu einem "kompletten" Editor (Konsole um Programme laufen zu lassen, Anbindung an Debugger,...), aber der Editor ist auf einem sehr guten Weg...

Noch mehr Videos...

Nach den Videos von den Lightning Talks auf der OSCON, gibt es jetzt neuen "Fernsehstoff" für Perl-Programmierer!

Dave Cross hat vor ein paar Wochen ein Teach-In gehalten. Auf der Webseite von Dave sind die Vorträge zu finden, und von drei Teilen gibt es auch Videomitschnitte:

Wednesday, August 01, 2007

"Hey, wie machst Du Debugging?" - "De..was?"

Zu den wohl lästigsten Aufgaben beim Programmieren gehört wohl die Fehlersuche. Da ist man eigentlich schon fertig mit dem Programm oder ist mitten beim Programmieren und dann fällt einem auf: "Oh man, wieso steht da der Müll in der Variablen?" Und dann beginnt die lange Fehlersuche...

Meine Methode der Wahl ist es, mich mit unzähligen print- bzw. warn-Befehlen dem Fehler zu nähern. Mit dem Perl-Debugger kann ich nicht so wirklich viel anfangen. Vielleicht hilft mir in Zukunft die "Reference Card" für den Perl-Debugger weiter...

Tuesday, July 31, 2007

$foo-Ausgabe "Herbst 2007"

Wie gestern abend angekündigt, ist jetzt auch die neue Ausgabe auf der Homepage von $foo eingetragen. Abonnenten können dort die PDF-Datei herunterladen...

Monday, July 30, 2007

3. Ausgabe vom $foo-Magazin

Heute ist die 3. Ausgabe vom $foo-Magazin eingetroffen. Alle Abonnenten dürfen sich in den nächsten Tagen auf Post freuen!

Verbesserungsvorschläge, Themenwünsche etc. sind immer willkommen.

Die Homepage wird morgen aktualisiert, so dass dann auch diese Ausgabe bestellt werden kann und die Codebeispiele heruntergeladen werden können. Ich werde dann hier im Blog kurz Bescheid geben.

Neue Forensoftware

Auf Perl-Community.de läuft nun endlich die neue Forensoftware. Es hakt zwar noch an einigen Stellen, aber das wird hoffentlich recht bald abgestellt. Martin Fabiani hat in den letzten Tagen noch an einigen Bugfixes gearbeitet, so dass es jetzt doch schon recht nett ist. Besonders markant zum alten Ikonboard ist die Geschwindigkeit. Herrlich wenn das Forum so schnell ist!

Friday, July 27, 2007

Perl-Umfrage

Kirrily Robert hat eine Online-Umfrage zum Thema Perl gestartet. Das Formular ist in nichteinmal 5 Minuten ausgefüllt (nachdem man seine Mail-Adresse validiert hat). Eine Bitte an alle Perl-Programmierer: mitmachen!

Es ist egal, ob man schon zig CPAN-Module geschrieben hat oder erst seit einem Tag Perl programmiert!

Die Ergebnisse sollen schon spätestens Anfang Oktober vorliegen.