Montag, 28. April 2008

Talk: Mastering Perl von brian d foy

Die Slides (PDF) von brian d foy's Talk "Mastering Perl" sind online.




Enjoy!

German Perl Tour 2008 - Frankfurt.pm Treffen vom 24.04.2008

Am 24.04.2008 besuchte brian d foy im Rahmen seiner German Perl Tour 2008 die Frankfurter Perlmongers (Frankfurt.pm).

Das gut besuchte Treffen fand bei ebenfalls gutem Wetter ab 19 Uhr im italienischen Restaurant Zimt und Koriander, dem üblichen Treffpunkt der monatlichen Treffen von Frankfurt.pm, statt.

Hier eine kleine, sicherlich unvollständige Auswahl der angeregt diskutierten Themen:


Wegen der Vorbereitungen für einen Termin am Freitag musste ich das Treffen leider bereits um 21:30 verlassen.

Vielleicht hält brian sein Perl Bootcamp nächstes Jahr wieder in Deutschland. Ich würde mich sehr freuen, wenn es weitere PerlMonger-Treffen mit brian geben würde.


Dank an Renée Bäcker

Renée Bäcker (Herausgeber von $foo - Perl-Magazin und PerlNews - Deutschsprachige Perl-News), der die "German Perl Tour 2008" organisiert und dafür sehr viel Zeit und Energie investiert hat, gebührt ein Riesen-Extra-Lob und Dank.

XING Gruppe German Unix User Group (GUUG) e. V.

GUUG LogoSeit kurzem gibt es eine XING Gruppe German Unix User Group (GUUG) e. V. für Mitglieder und Interessenten der German Unix User Group.



"Die GUUG ist ein deutschlandweit aktiver Verein, der sich für die Belange von professionellen Unix-Anwendern und Unix-Administratoren einsetzt. Dazu führen wir jährlich mehrere Fachkonferenzen durch. Durch eine Xing-Gruppe soll zum einen die Vernetzung der bisherigen ca. 1000, über Deutschland und das deutsch sprechende Ausland verteilte Vereinsmitglieder gestärkt werden, zum anderen sollen so interessierte Personen die kein Vereinsmitglied sind sich ein Bild über die Aktivitäten des Vereins und der Personen hinter den Vereinsaktivitäten machen können."

Quelle: Beschreibung der XING Gruppe German Unix User Group (GUUG) e. V.

Freitag, 25. April 2008

Command Line Zip für Windows

Meines Wissens gibt es außer winrar kein Kommandozeilentool zum Zippen von Dateien und Ordnern für Windows.

Im Rahmen eines kleineren Kundenauftrags habe ich aber genau so ein Tool zum Einsatz in Batchdateien für Windows benötigt.

Mit Perl ist so ein Tool sehr schnell geschrieben.

Man nehme Archive::Zip.

In der Source-Code Distribution (Archive-Zip-1.23.tar.gz) befinden sich im Ordner examples zahlreiche Beispiele zur Verwendung von Archive::Zip.

Das Beispielprogramm zip.pl aus dem examples Verzeichnis ist genau das gewünschte Tool.

zip.pl


#!/bin/perl -w
# Creates a zip file, adding the given directories and files.
# Usage:
# perl zip.pl zipfile.zip file [...]

use strict;
use Archive::Zip qw(:ERROR_CODES :CONSTANTS);

die "usage: $0 zipfile.zip file [...]\n"
if (scalar(@ARGV) < 2);

my $zipName = shift(@ARGV);
my $zip = Archive::Zip->new();

foreach my $memberName (map { glob } @ARGV)
{
if (-d $memberName )
{
warn "Can't add tree $memberName\n"
if $zip->addTree( $memberName, $memberName ) != AZ_OK;
}
else
{
$zip->addFile( $memberName )
or warn "Can't add file $memberName\n";
}
}

my $status = $zip->writeToFileNamed($zipName);
exit $status;


Anwendungsbeispiele:

Komplettes Verzeichnis zippen

perl zip.pl test.zip examples

oder auch

perl zip.pl test.zip examples/*


Einzelne Dateien zippen

perl zip.pl test.zip datei1.doc datei2.doc dateiN.doc


Siehe auch:

Hackszine.com: Command Line Zip for Windows

Mittwoch, 9. April 2008

CPAN-Module auf dem Asus Eee PC (Linux) installieren


Seit ein paar Tagen habe auch ich einen Asus Eee PC. Nach einer gewissen Gewöhnungsphase (die Tastatur ist schon ziemlich klein für meine Wurstfinger) macht der kleine Rechner sogar richtig Spaß.


Perl 5.8.8 ist auf dem kleinen Schmuckstück vorinstalliert. Einer der Gründe, warum ich mir das Teil überhaupt zugelegt habe.


perl -v

This is perl, v5.8.8 built for i486-linux-gnu-thread-multi

...


Leider stellt Asus keine Entwicklertools wie make oder GCC zur Verfügung.

Ohne diese Tools lassen sich jedoch kaum CPAN-Module installieren.

Warnung

Die nachfolgende Anleitung zeigt Änderungen am System auf, die möglicherweise zur völligen Unbrauchbarkeit des Eee PC führen können.


Schritt für Schritt

Ausgehend von der gut gemachten Anleitung Installing Development Tools, habe ich nachfolgende Schritte durchgeführt, um die Entwicklungs-Tools auf dem Eee PC einzurichten.

Schritt 1: Den Rechner bitte sichern, z.B. nach dieser Anleitung.

Falls etwas schiefgeht, kann man den Eee PC durch Drücken der Taste F9 während des Bootvorgangs auf die Werkseinstellungen zurücksetzen.

Alle gemachten Änderungen und auch die persönlichen Daten und Einstellungen gehen dabei unwiderruflich verloren. Aber wenigstens bleibt einem (meistens) noch die Hardware.

Schritt 2: Zur Shell

Eine Shell erhält man mittels CRTL-ALT-T.

Eine brauchbare Shell lässt sich übrigens wie folgt einstellen:

sudo update-alternatives --config x-terminal-emulator

und dann die 1 für /usr/bin/konsole wählen.

Schritt 3: /etc/apt/sources.list anpassen

# Standard repos
deb http://update.eeepc.asus.com/p701/ p701 main
deb http://update.eeepc.asus.com/p701/en/ p701 main

# Xandros repos
deb http://xnv4.xandros.com/xs2.0/upkg-srv2 etch main contrib non-free
deb http://dccamirror.xandros.com/dccri/ dccri-3.0 main
deb http://www.geekconnection.org/ xandros4 main

# Debian repos
deb http://http.us.debian.org/debian/ etch main contrib non-free
deb http://www.debian-multimedia.org etch main


Schritt 4: /etc/apt/preferences anpassen

Package: *
Pin: origin update.eeepc.asus.com
Pin-Priority: 950

Package: *
Pin: origin
Pin-Priority: 925

Package: *
Pin: origin xnv4.xandros.com
Pin-Priority: 900

Package: *
Pin: origin dccamirror.xandros.com
Pin-Priority: 850

Package: *
Pin: origin www.geekconnection.org
Pin-Priority: 750

Package: *
Pin: release a=stable
Pin-Priority: 700

Package: *
Pin: release a=testing
Pin-Priority: 650

Package: *
Pin: release a=unstable
Pin-Priority: 600
Package: *


Schritt 5: Die Entwicklungs-Tools (build-essential) installieren


sudo apt-get udate

sudo apt-get install build-essential

Einfach Yes eingeben, wenn apt-get fragt, ob die Pakete installiert werden sollen

Schritt 6: Installation des C-Compilers testen

Dazu einfach ein kleines C-Programm erstellen und kompilieren


cd /tmp
vi hello.c

hello.c wie gewohnt

#include

int main()
{
printf("Hallo Welt\n");
return 0;
}


kompilieren und ausführen


gcc ./hello.c
./a.out



Schritt 7 (optional): ncftp installieren


sudo apt-get install ncftp


Jetzt stehen die fehlenden Tools (make, gcc) zur Verfügung. Viele CPAN-Module können jetzt installiert werden.

Schritt 8: Entwickler Bibliotheken installieren

Falls bestimmte Bibliotheken benötigt werden, können diese einfach über apt-get aus den Ergänzungen http://update.eeepc.asus.com/p701/pool/ geladen werden.

Dazu vorher die Datei /etc/apt/sources.list wieder in ihren Ausganszustand zurückversetzen:

# Standard repos
deb http://update.eeepc.asus.com/p701/ p701 main
deb http://update.eeepc.asus.com/p701/en/ p701 main

und mit

sudo apt-get update

aktualisieren. Jetzt können die libs direkt von Asus passend für den EEE eingespielt werden.

sudo apt-get install libsqlite-dev openssl ... und viele andere mehr


Schritt 9: CPAN-Module installieren

Jetzt ist es endlich soweit


sudo perl -MCPAN -e shell

install Bundle::CPAN



That's it!

Sonntag, 6. April 2008

Simplicity

Simplicity What can we learn about usability…

Simplicity

Donnerstag, 3. April 2008

Perl Tech-In: Perl-Kenntnisse auffrischen

Dave Cross (Magnum Solutions) hat die Slides seines Perl Teach-In für die UKUUG Spring Conference aktualisiert.

Das eintägige Tutorial zeigt Programmierern, die längere Zeit nicht mehr mit Perl programmiert haben oder eine andere Programmiersprache verwenden, was Perl aktuell kann und wie man es heute anwendet.

Absolut lesenswert.

Teil 1




Teil 2: Objektorientierung




Siehe auch: