<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Deutschsprachige Perl-Blogs</title>
  <link rel="alternate" href="http://planet.perl-magazin.de" type="text/html"/>
  <subtitle>Deutschsprachige Perl-Blogs</subtitle>
  <author>
    <name>Renee Baecker</name>
    <email>info@perl-magazin.de</email>
  </author>
  <updated>2012-05-17T21:00:06Z</updated>
  <link rel="self" href="http://planet.perl-magazin.de" type="application/atom+xml"/>
  <id>http://planet.perl-magazin.de</id>
  <entry>
    <title>lichtkind's blog: Perl 6 Tablets</title>
    <link rel="alternate" href="http://kephra-lk.livejournal.com/5583.html" type="text/html"/>
    <content type="html">ich hab so paar Themen an denen ich jahrelang rumkaue denn Ausdauer ist gut. neben Kephra sind es die Perl 6 Tafeln die aus ein paar Wikiseiten der perl-community.de Wiki entstanden und jetzt vielleicht sogar zur offiziellen Perl 6 Nutzerdokumentation werden k&amp;ouml;nnten. Genau, dieser Beitrag wird sowas wie die deutsche &amp;Uuml;bersetzung meines &lt;a href="http://blogs.perl.org/users/lichtkind/2012/05/8th-week-of-perl-6-tablets.html" rel="nofollow"&gt;englischen Blogs&lt;/a&gt; f&amp;uuml;r Leute welche die &lt;a href="http://perl-nachrichten.de/index.cgi/details/1053" rel="nofollow"&gt;Meldung&lt;/a&gt; und manche meiner &lt;a href="https://twitter.com/#!/kephra_lk" rel="nofollow"&gt;Twitternachrichten&lt;/a&gt; neugierig gemacht haben.&lt;br /&gt;&lt;br /&gt;Die kurze Fassung war das die Tafeln nach http://tablets.perl6.org/ umgezogen sind. Die einpr&amp;auml;gsame URL und die sch&amp;ouml;nere Gestaltung per CSS sind angenehmer f&amp;uuml;r den Nutzer aber nicht der Hauptgrund warum ich das ganze f&amp;uuml;r wichtig halte. Klar mache ich hier nichts weiter als meine Arbeit zu promoten aber es geht auch um was anderes.&lt;br /&gt;&lt;br /&gt;1. Das Format&lt;br /&gt;&lt;br /&gt;Die docs sind jetzt in markdown geschrieben was erstmal mir weit weniger schmerzen bereitet zu schreiben als die Socialtext Wikisyntax. Es fehlen einige funktionen wie unsichtbare Anker, aber man kann ja raw HTML einf&amp;uuml;gen. Per pandoc lassen sich auch sofort andere Formate erstelle wie PDF, HTML, POD oder epub.&lt;br /&gt;&lt;br /&gt;2. Zusammenarbeit&lt;br /&gt;&lt;br /&gt;Urspr&amp;uuml;nglich w&amp;auml;hlte ich ja wiki damit jeder mitmachen kann. Praktisch taten das sehr wenige. Aber seit die Tafeln im gleichen Archiv wie viele andere wichtige Perl 6-Sachen liegen machen &lt;a href="https://github.com/perl6/tablets/graphs/impact" rel="nofollow"&gt;weit mehr Leute mit&lt;/a&gt;. Und das obwohl das clonen und comitten in git ein wenig mehr Aufwand ist. Aber github macht es einfach (kleine &amp;Auml;nderungen lassen sich sogar im editor-widget im browser t&amp;auml;tigen) und commit bits werden freiz&amp;uuml;gig erteilt. Jede &amp;Auml;nderung schreibt der chatbot sofort in den im #perl6 channel per (was ich immer wollte). Rakudo, niecza, testsuite, specs, etc machen es genauso weil es R&amp;uuml;ckkopplung an die Alteingesessenen und lurker erleichtert und Fehler so schneller erkannt werden. Docs, Tests, Implementationen und Module k&amp;ouml;nnen sich so gegenseitig zur besten L&amp;ouml;sung hochschaukeln und Perl 6 wird dadurch wirklich zu einem &lt;a href="http://de.wikipedia.org/wiki/Massively_Multiplayer_Online_Role-Playing_Game" rel="nofollow"&gt;MMORPG&lt;/a&gt; wie m&amp;auml;sak einst richtig schrieb.&lt;br /&gt;&lt;br /&gt;3. Das Format&lt;br /&gt;&lt;br /&gt;Es ist nicht nur die Syntax, sondern hauch die hypertext-struktur der Doks die wir ja nicht so in der Kerndokumentation haben. Das ist auch gut so weil weiterhin viel im Terminal o.&amp;auml;. gelesen wird. Aber weit wir den Mehrwert des Lesens und Lernens a la Wikipedia kennen, sollten wir es auch nutzen. Und ich versuch explizit es so zu schreiben das die Tafeln auch noch funktionieren wenn alle Links rausformatiert werden. Dennoch glaub ich das der nutzen ein wesentlich gr&amp;ouml;&amp;szlig;er ist wenn es so abl&amp;auml;uft: Wenn ein Neuling oder Aussenseiter eine Frage hat, welche die FAQ gut beantwortet nur er versteht darin ein Wort nicht dann kann er mit einem Klick in den Glossar gehen wo es erkl&amp;auml;rt wird und von dort gleich zu den Beispielen wo es angewandt wird oder er sieht mit welchen syntaktischen mitteln Perl das l&amp;ouml;st. Das hilft wesentlich Leute zu informieren was Perl ist und auch Vorurteile abzubauen.&lt;br /&gt;&lt;br /&gt;Doch das in der Perl 5-Welt zu sehen ist noch reines Luftschloss, da nicht mal die ganzen Anh&amp;auml;nge fertig sind geschweige die Tafeln selber. Anhang A, der Hauptindex aller Befehle ist schon umfangreich und gut gestaltet, in Anhang B findet sich vieles davon thematisch sortiert, Anhang D die Perldelta bietet einiges wesentliches, Anhang E - die Appetithappen auch. Derzeit bem&amp;uuml;he ich mich vor allem G - den Glossar und F die FAQ zu vervollst&amp;auml;ndigen. Mitarbeit ist nat&amp;uuml;rlich st&amp;auml;ndig erw&amp;uuml;nscht und die deutsche Version musst wegen dieser Proportionen der Arbeit leider aufgegeben werden.</content>
    <category term="perl 6"/>
    <id>http://kephra-lk.livejournal.com/5583.html</id>
    <published>2012-05-17T15:00:44Z</published>
    <updated>2012-05-17T15:00:44Z</updated>
  </entry>
  <entry xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
    <id>tag:blogger.com,1999:blog-4905086986099100156.post-9128191419077587696</id>
    <published>2012-05-14T15:29:00.000+02:00</published>
    <updated>2012-05-14T15:29:37.940+02:00</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Perl-Zeitung"/>
    <content type="html">Endlich ist es soweit - die Perl-Zeitung Ausgabe 17 ist da!  Näherers auf der Homepage &lt;a href="http://perl-zeitung.at"&gt;http://perl-zeitung.at&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905086986099100156-9128191419077587696?l=usr-bin-perl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content>
    <link rel="replies" type="application/atom+xml" href="http://usr-bin-perl.blogspot.com/feeds/9128191419077587696/comments/default" title="Kommentare zum Post"/>
    <link rel="replies" type="text/html" href="http://usr-bin-perl.blogspot.com/2012/05/perl-zeitung-ausgabe-17.html#comment-form" title="0 Kommentare"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4905086986099100156/posts/default/9128191419077587696"/>
    <link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4905086986099100156/posts/default/9128191419077587696"/>
    <link rel="alternate" type="text/html" href="http://usr-bin-perl.blogspot.com/2012/05/perl-zeitung-ausgabe-17.html" title="Perl-Zeitung Ausgabe 17"/>
    <author>
      <name>Gernot Havranek</name>
      <email>noreply@blogger.com</email>
      <gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="27" height="32" src="http://4.bp.blogspot.com/_O2VHxnNuvGs/SnFSbVd_BBI/AAAAAAAABoE/EncnXLroqE0/S220/profil.jpg"/>
    </author>
    <thr:total>0</thr:total>
    <title>Perl-Blog (GHIT): Perl-Zeitung Ausgabe 17</title>
  </entry>
  <entry>
    <title>Perl-Nachrichten.de: Perl-Zeitung Ausgabe 17</title>
    <link rel="alternate" href="http://perl-nachrichten.de/index.cgi/details/1059" type="text/html"/>
    <content type="html">
      <div xmlns="http://www.w3.org/1999/xhtml">Endlich ist es soweit - die Perl-Zeitung Ausgabe 17 ist da!

Näherers auf der Homepage <a href="http://perl-zeitung.at">http://perl-zeitung.at</a>
</div>
    </content>
    <author>
      <name>Gernot Havranek</name>
    </author>
    <id>1059</id>
    <published>2012-05-14T13:30:26+02:00</published>
    <updated>2012-05-14T13:30:26+02:00</updated>
  </entry>
  <entry>
    <title>Perl-Nachrichten.de: Drei Grant-Anträge stehen zur Diskussion</title>
    <link rel="alternate" href="http://perl-nachrichten.de/index.cgi/details/1058" type="text/html"/>
    <content type="html">
      <div xmlns="http://www.w3.org/1999/xhtml">Für das zweite Quartal 2012 stehen drei Grant-Anträge zur Diskussion:

 * Easy installation of non-CPAN dependencies von Alexandr Ciornii
 * Perl module for Linked Data von Tope Omitola
 * Spanish Localization of the Perl Core Documentation von Enrique Nell and Joaquin Ferrero


Die Kommentare aus der Community werden auch bei der Abstimmung im Grants Committee der Perl Foundation berücksichtigt.

Mit den Grants unterstützt die Perl Foundation kleinere und mittlere Projekte, die der Perl Community helfen, mit bis zu 2.000 USD.</div>
    </content>
    <author>
      <name>Renée Bäcker</name>
    </author>
    <id>1058</id>
    <published>2012-05-04T05:51:21+02:00</published>
    <updated>2012-05-04T05:51:21+02:00</updated>
  </entry>
  <entry>
    <title>Perl-Nachrichten.de: Sommer-Ausgabe des Perl-Magazins ist da!</title>
    <link rel="alternate" href="http://perl-nachrichten.de/index.cgi/details/1057" type="text/html"/>
    <content type="html">
      <div xmlns="http://www.w3.org/1999/xhtml">Bei schönem Wetter draußen in der Sonne sitzen und ein wenig über die beste Programmiersprache der Welt lesen - das ist doch was ;-) Gut, dass jetzt die Sommer-Ausgabe des Perl-Magazins (http://www.perl-magazin.de) da ist!

Die Abonnenten sollten in den nächsten Tagen ihr Heft in den Händen halten können.


Inhalt dieser Ausgabe:

 * WxPerl-Tutorial - Teil 10

   Im 10. Teil des WxPerl-Tutorials stellt Herbert Breunung verschiedene Komponenten vor, die bei der Programmierung von Editoren eine Rolle spielen.

Dabei geht es von einfachen Textfeldern bis hin zur Scintilla Editorkomponente, die auch bei Kephra und Padre zum Einsatz kommt.

 * XML und Perl - XML::Compile

   XML hat unter Perl-Programmierern einen schlechten Ruf. Perl-Leute mögen Programme, die mächtig sind, sich an DWIM ("Do what I mean") halten und effizient arbeiten. Die XML-Umgebung ist extrem geschwätzig, formell und wurde oft von Leuten mit wenig Programmiererfahrung entwickelt.

Und für die Verarbeitung von XML gibt es viele verschiedene Module. Mark Overmeer stellt XML::Compile vor, mit dem die Verarbeitung und Erstellung von XML-Dateien zum Kinderspiel wird.

 * Good Practices: App-Entwicklung mit Moose und Freunden

   Daniel Brunder zeigt, wie mit verschiedenen Modulen aus dem Moose-Namensraum und Moose selbst sehr einfach Kommandozeilenprogramme entwickelt werden können.

Dieser Artikel zeigt Wege auf, wie sich nahezu mühelos Kommandozeilen-Applikationen schreiben lassen und führt dazu einige Module und Ideen vor, die nicht nur viel Freude bei der Entwicklung garantieren, sondern auch Kollaborationen extrem vereinfachen. 

 * Spread

   In $foo 21 (1/2012) gab es den Artikel "Konfigurationsmanagement und Software-Deployment mit Rex". In bester Perl-TIMTOWTDI-Tradition ist dies nun eine Antwort darauf.

Das Ausgangsproblem: Klassen von UNIX Hosts, die gleich administriert werden sollen. Das bedeutet, dass auf ihnen dieselben Dateien verteilt und dieselben Kommandos ausgeführt werden müssen.

Das Zusatzproblem: Nicht jeder Host ist zu jedem Zeitpunkt erreichbar, z.B. weil er in Wartung ist oder wegen einer Netzstörung nicht erreichbar ist. Trotzdem muss automatisch sichergestellt sein, dass schlussendlich alle Hosts auf dem selben Stand sind.

 * Ticket oder nicht Ticket?

   Nicht nur diese Frage kann mit Postmaster-Filtern in OTRS beantwortet werden. Viele Tickets werden bei OTRS wie bei den meisten anderen Ticket-/Help Desk-Systemen über E-Mails erzeugt. Die E-Mails werden hier von dem so genannten Postmaster abgearbeitet. Bis dann der User die E-Mail als Ticket zu sehen bekommt, werden verschiedene Stufen abgearbeitet. Die E-Mail wird eingelesen (entweder von einem Postfach abgeholt oder über ein Skript herein geschoben), vorgefiltert, ein Ticket wird erzeugt und nachträglich noch einmal gefiltert.

In diesem Artikel werde ich verschiedene Wege zeigen, wie solche Filter umgesetzt werden können. 

 * Was ist neu in Perl 5.16?

   Noch ist Perl 5.16 nicht erschienen, aber durch die monatlichen (Entwickler-)Releases kann man ständig am Geschehen dran bleiben. Die Entwicklerversionen enden einmal im Jahr in einer stabilen Version, so dass wir bald Perl 5.16 "in den Händen halten" dürfen. Durch die verkürzten Releasezyklen landen nicht so viele neue Features in den stabilen Versionen. Das ist aus Sicht der Wartbarkeit auch gar nicht so übel.

Hier werden die ganzen "kleinen" Bugfixes nicht näher ausgeführt, sondern nur die größeren Änderungen. 

 * Rezension

   Diese Kolumne versteht sich als Dienst für alle an Perl Interessierte, alles einzusammeln was "Perl" auf dem Schild trägt und es unter die Lupe zu nehmen. Denn wer hat schon Zeit einer bezahlten Tätigkeit nachzugehen und das Netz zu überwachen? Um möglichst alles abzudecken, werden manche Werke nur mit wenigen Sätzen im Vorwort abgehandelt. Bei anderen soll detaillierter beschrieben werden, warum sie nach des Autors Meinung (nicht) empfehlenswert sind.

In dieser Ausgabe rezensiert Herbert Breunung die Bücher "Perl Hacks"  und "Coders at Work".

 * Ein Buchstabendreher verändert die Welt

   Manchmal haben kleine Fehler eine große Auswirkung. Ein Beispiel dafür sind die folgenden zwei Zeilen:

$ perl -we "q(di)"
$ perl -we "q(id)"
Useless use of a constant in void context at -e line 1.

Die erste Zeile läuft normal durch, aber bei der zweiten Zeile gibt es eine Warnung. Die besagt, dass der String "id" im void-Kontext sinnfrei ist. Warum ist aber der String "di" erlaubt? Wo liegt hier der Unterschied? 

Dieser Artikel erläutert die Antwort auf diese Frage

 * CPAN-News

   An dieser Stelle zeigen wir wieder sechs Module, die entweder komplett neu sind oder bei denen neue Versionen zur Verfügung stehen.</div>
    </content>
    <author>
      <name>Renée Bäcker</name>
    </author>
    <id>1057</id>
    <published>2012-05-02T08:21:37+02:00</published>
    <updated>2012-05-02T08:21:37+02:00</updated>
  </entry>
  <entry>
    <title>Perl-Nachrichten.de: Französischer Perl-Workshop 2012: Call for Papers</title>
    <link rel="alternate" href="http://perl-nachrichten.de/index.cgi/details/1056" type="text/html"/>
    <content type="html">
      <div xmlns="http://www.w3.org/1999/xhtml">Für den Französischen Perl-Workshop, der am 29./30. Juni in Straßburg stattfindet, werden Vorträge gesucht.</div>
    </content>
    <author>
      <name>Renée Bäcker</name>
    </author>
    <id>1056</id>
    <published>2012-05-02T08:20:30+02:00</published>
    <updated>2012-05-02T08:20:30+02:00</updated>
  </entry>
  <entry>
    <title>Perl-Nachrichten.de: Grant akzeptiert: Devel::Cover verbessern</title>
    <link rel="alternate" href="http://perl-nachrichten.de/index.cgi/details/1055" type="text/html"/>
    <content type="html">
      <div xmlns="http://www.w3.org/1999/xhtml">Der Grant "Improving Devel::Cover" von Paul Johnson wurde akzeptiert.</div>
    </content>
    <author>
      <name>Renée Bäcker</name>
    </author>
    <id>1055</id>
    <published>2012-05-02T08:18:30+02:00</published>
    <updated>2012-05-02T08:18:30+02:00</updated>
  </entry>
  <entry xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
    <id>tag:blogger.com,1999:blog-31159397.post-7442357400471790018</id>
    <published>2012-04-26T14:29:00.000+02:00</published>
    <updated>2012-04-26T14:29:00.950+02:00</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Mojolicious"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="EBook"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Perlybook"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="CPAN"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="EPublisher"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="MetaCPAN"/>
    <content type="html">Heute wurde ein neuer Dienst ins Leben gerufen, mit dem man die Dokumentation von CPAN-Modulen als &lt;a href="https://de.wikipedia.org/wiki/E-Book"&gt;E-Book&lt;/a&gt; bekommen kann: &lt;a href="http://perlybook.org/"&gt;http://perlybook.org&lt;/a&gt;. Zur Zeit stehen mit &lt;a href="https://de.wikipedia.org/wiki/EPUB"&gt;ePub&lt;/a&gt; und Mobi zwei Zielformate zur Verfügung, mit denen der Großteil der E-Book-Leser zurechtkommen.&lt;br /&gt;&lt;br /&gt;Der Dienst steht noch ganz am Anfang und wird stetig weiterentwickelt. Wir haben den Code &lt;a href="https://github.com/reneeb/cpan2ebook"&gt;auf github gestellt&lt;/a&gt;, so dass jeder leicht daran mitarbeiten kann. Natürlich wurde alles mit Perl umgesetzt: &lt;a href="http://mojolicio.us/"&gt;Mojolicious&lt;/a&gt; als Framework für die Applikation, &lt;a href="https://metacpan.org/module/EPublisher"&gt;EPublisher&lt;/a&gt; mit Plugins für die Erstellung der E-Books und &lt;a href="https://metacpan.org/module/MetaCPAN::API"&gt;MetaCPAN::API&lt;/a&gt; um an die ganzen Modulinformationen wie das Pod etc. zu kommen.&lt;br /&gt;&lt;br /&gt;Falls irgendwelche Fehler auffallen, dann bitte einen &lt;a href="https://github.com/reneeb/cpan2ebook/issues"&gt;Bugreport&lt;/a&gt; aufmachen. Wenn irgendwelche Features fehlen, dann bitte einen Feature-Request aufmachen. Ein paar Sachen werden in Kürze noch kommen - eine &lt;a href="https://github.com/reneeb/cpan2ebook/wiki/ROADMAP"&gt;ROADMAP&lt;/a&gt; ist auch auf github zu finden.&lt;br /&gt;&lt;br /&gt;Feedback ist jederzeit willkommen: perlybook@perl-services.de&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31159397-7442357400471790018?l=reneeb-perlblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content>
    <link rel="replies" type="application/atom+xml" href="http://reneeb-perlblog.blogspot.com/feeds/7442357400471790018/comments/default" title="Post Comments"/>
    <link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31159397&amp;postID=7442357400471790018" title="0 Comments"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31159397/posts/default/7442357400471790018"/>
    <link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31159397/posts/default/7442357400471790018"/>
    <link rel="alternate" type="text/html" href="http://reneeb-perlblog.blogspot.com/2012/04/modul-dokumentation-als-e-book.html" title="Modul-Dokumentation als E-Book"/>
    <author>
      <name>ReneeB</name>
      <uri>http://www.blogger.com/profile/00640158903859175674</uri>
      <email>noreply@blogger.com</email>
      <gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif"/>
    </author>
    <thr:total>0</thr:total>
    <title>Perl-Blog (Renee Baecker): Modul-Dokumentation als E-Book</title>
  </entry>
  <entry>
    <title>Perl im O'Reilly-Blog: Social Coding mit GitHub</title>
    <link rel="alternate" href="http://community.oreilly.de/blog/2012/04/19/social-coding-mit-github/" type="text/html"/>
    <content type="html">
      <div xmlns="http://www.w3.org/1999/xhtml">Was kommt dabei heraus, wenn man Open-Source-Ideen, moderne Versionierungskonzepte und die mächtige Kommunikationsinfrastruktur eines sozialen Netzwerks in einen Topf wirft und gut umrührt? Natürlich eine der spannendsten und populärsten Entwicklerplattformen der Welt. Gastautorin Ninja Lamberty über den Social-Coding-Dienst github, der kürzlich seinen vierten Geburtstag feierte und als Hoster von Projekten wie Joomla!, jQuery, Linux Mint, [...]</div>
    </content>
    <category term="Gastbeiträge"/>
    <author>
      <name>Alexander Plaum</name>
    </author>
    <id>http://community.oreilly.de/blog/?p=13921</id>
    <published>2012-04-19T11:57:53Z</published>
    <updated>2012-04-19T11:57:53Z</updated>
  </entry>
  <entry>
    
    <link rel="alternate" type="text/html" href="http://frankfurt.pm/2012/04/nachstes-treffen-08-mai-2012.html"/>
    <id>tag:frankfurt.pm,2012://1.29</id>

    <published>2012-04-12T08:26:42Z</published>
    <updated>2012-04-12T08:27:32Z</updated>

    <summary>Das nächste Treffen findet am 08. Mai 2012 um 19:30 Uhr im MoschMosch statt....</summary>
    <author>
        <name>Renée Bäcker</name>
        <uri>http://www.perl-services.de/</uri>
    </author>
    
        <category term="Monatliche Treffen" scheme="http://www.sixapart.com/ns/types#category"/>
    
    <category term="treffen" label="Treffen" scheme="http://www.sixapart.com/ns/types#tag"/>
    
    <content type="html" xml:lang="de" xml:base="http://frankfurt.pm/">
        Das nächste Treffen findet am 08. Mai 2012 um 19:30 Uhr im MoschMosch statt. 
        
    </content>
<title>Frankfurt Perlmongers: Nächstes Treffen: 08. Mai 2012</title></entry>
  <entry>
    
    <link rel="alternate" type="text/html" href="http://frankfurt.pm/2012/04/bericht-treffen-10-april-2012.html"/>
    <id>tag:frankfurt.pm,2012://1.28</id>

    <published>2012-04-12T08:07:22Z</published>
    <updated>2012-04-12T08:26:19Z</updated>

    <summary>Hier wieder eine kurze Übersicht, was so alles besprochen wurde:YAPC::EuropeEs ist ziemlich schwierig einen Ort für den Social Event zu finden, der die erwarteten ~400 Teilnehmer fasst. Max wird sich aber weiter darum kümmern. Für das Mittagessen sollen die Teilnehmer...</summary>
    <author>
        <name>Renée Bäcker</name>
        <uri>http://www.perl-services.de/</uri>
    </author>
    
        <category term="Monatliche Treffen" scheme="http://www.sixapart.com/ns/types#category"/>
    
        <category term="YAPC::Europe" scheme="http://www.sixapart.com/ns/types#category"/>
    
    <category term="drucken" label="drucken" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="ebook" label="ebook" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="yapceu2012" label="yapceu2012" scheme="http://www.sixapart.com/ns/types#tag"/>
    
    <content type="html" xml:lang="de" xml:base="http://frankfurt.pm/">
        <![CDATA[Hier wieder eine kurze Übersicht, was so alles besprochen wurde:<br /><b><font style="font-size: 1.25em;"><br />YAPC::Europe</font></b><br /><br />Es ist ziemlich schwierig einen Ort für den Social Event zu finden, der die erwarteten ~400 Teilnehmer fasst. Max wird sich aber weiter darum kümmern. Für das Mittagessen sollen die Teilnehmer in die Mensa gehen. Wir wollen versuchen, einen abgetrennten Bereich zu bekommen, damit nicht alle über den Raum verstreut sind.<br /><br />Bis jetzt haben wir Sponsorenzusagen von rund 23.000 EUR. Es dürfen aber ruhig noch mehr werden. Der Großteil der Firmen auf unserer Liste sind jetzt angeschrieben, mal sehen was noch an Rückmeldungen kommt.<br /><br />Wir wollen auch Kurse vor und nach der YAPC anbieten. Bisher hat Gabor Szabo schon angeboten, einen Kurs übers Testen zu halten. Wir werden noch weitere Leute ansprechen.<br /><br />Auch an einem Programm für die zwei Tage nach der YAPC arbeiten wir. Häufig bleiben die Teilnehmer noch etwas länger und wollen sich etwas anschauen...<br /><br />Das Thema "T-Shirts" ist noch komplett offen.<br /><br /><b><font style="font-size: 1.25em;">Sonstiges</font></b><br /><br />Ansonsten gab es viele verschiedene Themen. Unter anderem wurde über Hausbau gesprochen, wie man da viel Geld unterbringen kann, dass manche Entscheidungen vorher schwierig sein können (wo kommen die Steckdosen hin, ...?) und vieles mehr.<br /><br />Ein weiteres Thema war "Drucken über das Netzwerk" und wie man Drucker mit FTP-Server lahmlegen kann. Es gab auch einen kurzen Erfahrungsbericht von einem Drucker, der an einem Windows-Rechner hängt,der als Druckerserver dient. Das Drucken funktioniert dort häufiger mal nicht ;-)<br /><br />Auch Perl-Themen kamen zur Sprache: Zum einen habe ich kurz von einer Webseite erzählt, die bald online gehen wird, über die man die Dokumentation von CPAN-Modulen als ebook (.mobi oder .epub) bekommen kann.<br /> ]]>
        
    </content>
<title>Frankfurt Perlmongers: Bericht Treffen 10. April 2012</title></entry>
  <entry>
    
    <link rel="alternate" type="text/html" href="http://frankfurt.pm/2012/04/april-treffen-findet-heute-statt.html"/>
    <id>tag:frankfurt.pm,2012://1.27</id>

    <published>2012-04-10T09:06:41Z</published>
    <updated>2012-04-10T09:10:37Z</updated>

    <summary>Eigentlich sollte das April-Treffen in der letzten Woche stattfinden, musste aber mangels Teilnehmer ausfallen. Jetzt nach den Osterfeiertagen sind alle gestärkt und so findet das Treffen heute (10. April) abend um 19:30 Uhr im MoschMosch statt....</summary>
    <author>
        <name>Renée Bäcker</name>
        <uri>http://www.perl-services.de/</uri>
    </author>
    
        <category term="Monatliche Treffen" scheme="http://www.sixapart.com/ns/types#category"/>
    
    <category term="treffen" label="Treffen" scheme="http://www.sixapart.com/ns/types#tag"/>
    
    <content type="html" xml:lang="de" xml:base="http://frankfurt.pm/">
        <![CDATA[Eigentlich sollte das April-Treffen in der letzten Woche stattfinden, musste aber mangels Teilnehmer ausfallen. Jetzt nach den Osterfeiertagen sind alle gestärkt und so findet das Treffen heute (10. April) abend um 19:30 Uhr im MoschMosch statt.<br />]]>
        
    </content>
<title>Frankfurt Perlmongers: April-Treffen findet heute(!) statt</title></entry>
  <entry>
    
    <link rel="alternate" type="text/html" href="http://perl-howto.de/2012/03/netntp-antwortpakete-eines-ntpservers-einfach-dekodieren.html"/>
    <id>tag:perl-howto.de,2012://1.227</id>

    <published>2012-03-22T19:15:00Z</published>
    <updated>2012-03-28T20:14:54Z</updated>

    <summary><![CDATA[ "Das Network Time Protocol (NTP) ist ein Standard zur Synchronisierung von Uhren in Computersystemen &uuml;ber paketbasierte Kommunikationsnetze. NTP verwendet das verbindungslose Transportprotokoll UDP. NTP wurde speziell entwickelt, um eine zuverl&auml;ssige Zeitgabe &uuml;ber Netzwerke mit variabler Paketlaufzeit zu erm&ouml;glichen." Quelle:...]]></summary>
    <author>
        <name>Thomas Fahle</name>
        <uri>http://www.thomas-fahle.de</uri>
    </author>
    
        <category term="Net" scheme="http://www.sixapart.com/ns/types#category"/>
    
    <category term="perl" label="perl" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="sysadmin" label="sysadmin" scheme="http://www.sixapart.com/ns/types#tag"/>
    
    <content type="html" xml:lang="de" xml:base="http://perl-howto.de/">
        &lt;p&gt;
"Das &lt;a href="http://de.wikipedia.org/wiki/Network_Time_Protocol"&gt;Network Time Protocol&lt;/a&gt; (NTP) ist ein Standard zur Synchronisierung von Uhren in Computersystemen &amp;uuml;ber paketbasierte Kommunikationsnetze. NTP verwendet das verbindungslose Transportprotokoll &lt;a href="http://de.wikipedia.org/wiki/User_Datagram_Protocol"&gt;UDP&lt;/a&gt;. NTP wurde speziell entwickelt, um eine zuverl&amp;auml;ssige Zeitgabe &amp;uuml;ber Netzwerke mit variabler Paketlaufzeit zu erm&amp;ouml;glichen." &lt;small&gt;Quelle: &lt;a href="http://de.wikipedia.org/wiki/Network_Time_Protocol"&gt;Wikipedia: Network Time Protocol&lt;/a&gt;&lt;/small&gt;.
&lt;/p&gt;
&lt;p&gt;
NTP-Server versenden Antworten im &lt;a href="http://www.faqs.org/rfcs/rfc2030.html"&gt;NTP Message Format&lt;/a&gt;, die sich mit
&lt;a href="http://search.cpan.org/perldoc?Net::NTP"&gt;Net::NTP - Perl extension for decoding NTP server responses&lt;/a&gt; von &lt;a href="http://search.cpan.org/~abh/"&gt;Ask Bj&amp;oslash;rn Hansen&lt;/a&gt; einfach dekodieren lassen.
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;


&lt;h2&gt;Beispiel:&lt;/h2&gt;
&lt;p&gt;
Net::NTP exportiert eine einzige Funktion, &lt;i&gt;get_ntp_response()&lt;/i&gt;, die als optionalen Parameter auch die Adresse eines NTP-Server annimmt und liefert einen Hash zur&amp;uuml;ck, dessen Schl&amp;uuml;ssel die einzelnen Abschnitte des NTP Antwort Pakets enth&amp;auml;lt.
&lt;/p&gt;
&lt;pre&gt;
#!/usr/bin/perl
&lt;span style="color: #8B008B; font-weight:bold;"&gt;use&lt;/span&gt; &lt;span style="color: #000000;"&gt;strict&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
&lt;span style="color: #8B008B; font-weight:bold;"&gt;use&lt;/span&gt; &lt;span style="color: #000000;"&gt;warnings&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;use&lt;/span&gt; &lt;span style="color: #000000;"&gt;Net::NTP&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;qw(get_ntp_response)&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;my&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$ntp_server&lt;/span&gt; = &lt;span style="color: #8B008B; font-weight:bold;"&gt;shift&lt;/span&gt; ||  &lt;span style="color: #CD5555;"&gt;&amp;#39;ptbtime1.ptb.de&amp;#39;&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;my&lt;/span&gt; &lt;span style="color: #00688B;"&gt;%response&lt;/span&gt; = &lt;span style="color: #00688B;"&gt;get_ntp_response&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$ntp_server&lt;/span&gt; &lt;span style="color: #000000;"&gt;)&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;my&lt;/span&gt; &lt;span style="color: #00688B;"&gt;@response_keys&lt;/span&gt; = &lt;span style="color: #8B008B; font-weight:bold;"&gt;sort&lt;/span&gt; &lt;span style="color: #8B008B; font-weight:bold;"&gt;keys&lt;/span&gt; &lt;span style="color: #00688B;"&gt;%response&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;foreach&lt;/span&gt; &lt;span style="color: #8B008B; font-weight:bold;"&gt;my&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$response_key&lt;/span&gt; &lt;span style="color: #000000;"&gt;(&lt;/span&gt; &lt;span style="color: #00688B;"&gt;@response_keys&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;/span&gt; &lt;span style="color: #000000;"&gt;{&lt;/span&gt;
	&lt;span style="color: #8B008B; font-weight:bold;"&gt;print&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;&amp;quot;$response_key: $response{ $response_key }\n&amp;quot;&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
&lt;span style="color: #000000;"&gt;}&lt;/span&gt;
&lt;/pre&gt;
&lt;p&gt;
Das Programm liefert folgende Ausgabe:
&lt;/p&gt;
&lt;pre&gt;
Leap Indicator: 0
Mode: 4
Originate Timestamp: 1332443226.50195
Poll Interval: 0.0000
Precision: -21
Receive Timestamp: 1332443226.90883
Reference Clock Identifier: PTB
Reference Timestamp: 1332443217.35515
Root Delay: 0
Root Dispersion: 0.0000
Stratum: 1
Transmit Timestamp: 1332443226.90883
Version Number: 3
&lt;/pre&gt;
&lt;p&gt;
Die Schl&amp;uuml;ssel des &lt;span style="color: #00688B;"&gt;%response&lt;/span&gt; ensprechen den einzelnen Feldern des NTP Antwortpakets:
&lt;/p&gt;
&lt;pre&gt;
                           1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |LI | VN  |Mode |    Stratum    |     Poll      |   Precision   |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                          Root Delay                           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                       Root Dispersion                         |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                     Reference Identifier                      |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                                               |
      |                   Reference Timestamp (64)                    |
      |                                                               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                                               |
      |                   Originate Timestamp (64)                    |
      |                                                               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                                               |
      |                    Receive Timestamp (64)                     |
      |                                                               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                                               |
      |                    Transmit Timestamp (64)                    |
      |                                                               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                 Key Identifier (optional) (32)                |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                                               |
      |                                                               |
      |                 Message Digest (optional) (128)               |
      |                                                               |
      |                                                               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
&lt;/pre&gt;
&lt;p&gt;
&lt;small&gt;Quelle:&lt;a href="http://www.faqs.org/rfcs/rfc2030.html"&gt; RFC 2030&lt;/a&gt;&lt;/small&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;


&lt;h2&gt;Siehe auch&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;CPAN: &lt;a href="http://search.cpan.org/perldoc?Net::NTP"&gt;Net::NTP - Perl extension for decoding NTP server responses&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPAN: &lt;a href="http://search.cpan.org/perldoc?POE::Component::Client::NTP"&gt;POE::Component::Client::NTP - A POE Component to query NTP servers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.ntp.org/"&gt;NTP: The Network Time Protocol&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.ptb.de/de/org/q/q4/q42/_ntp_main.htm"&gt;PTB: Zeitsynchronisation von Rechnern mit Hilfe des "Network Time Protocol" (NTP)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.pool.ntp.org/zone/de"&gt;Germany - de.pool.ntp.org&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.faqs.org/rfcs/rfc1305.html"&gt;RFC 1305&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.faqs.org/rfcs/rfc2030.html"&gt;RFC 2030&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Wikipedia: &lt;a href="http://de.wikipedia.org/wiki/Zeitserver"&gt;Zeitserver&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Wikipedia: &lt;a href="http://de.wikipedia.org/wiki/Network_Time_Protocol"&gt;Network Time Protocol&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;

        
    &lt;img src="http://feeds.feedburner.com/~r/PerlHowto/~4/p9UyorvNfS4" height="1" width="1"/&gt;</content>
<title>Perl HowTo: Net::NTP - Antwortpakete eines NTP-Servers einfach dekodieren</title></entry>
  <entry xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
    <id>tag:blogger.com,1999:blog-31159397.post-1211450065933147721</id>
    <published>2012-03-22T06:25:00.004+01:00</published>
    <updated>2012-03-22T06:41:58.523+01:00</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="PerlStand"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="LinuxTage"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Chemnitz"/>
    <content type="html">Am vergangenen Wochenende war ich mal wieder in Chemnitz - wie schon im letzten Jahr war ich bei den &lt;a href="http://chemnitzer.linux-tage.de/2012/"&gt;Chemnitzer LinuxTagen&lt;/a&gt;. Diesmal hatten &lt;a href="http://perl.org/"&gt;wir&lt;/a&gt; einen eigenen Stand, nachdem wir im letzten Jahr man an den Stand der &lt;a href="http://otterhub.org/"&gt;OTRS-Community&lt;/a&gt; durften.&lt;br /&gt;&lt;br /&gt;Aber bevor es mit den Linuxtagen losging, gab es freitags in den Räumen von &lt;a href="http://www.cape-it.de/"&gt;cape-IT&lt;/a&gt; noch ein OTRS-Usertreffen. Ich bin mit Hannes verspätet dort eingetroffen, aber trotzdem war es noch sehr interessant. Den Vortrag von Rico zu den Neuerungen in &lt;a href="http://www.cape-it.de/kix4otrs.html"&gt;KIX4OTRS&lt;/a&gt; habe ich verpasst, aber zur "Plauderrunde" waren wir da.&lt;br /&gt;&lt;br /&gt;Hannes hat uns gezeigt, womit er sich so beschäftigt. Sehr interessante Ideen ;-) Andre von &lt;a href="http://otterhub.org/"&gt;Otterhub&lt;/a&gt; hat auch noch einen guten &lt;a href="http://www.otterhub.org/de/2012/03/20/bericht-otrs-stammtisch-linuxtage-chemnitz-2012/"&gt;Review geschrieben&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Samstag früh ging es dann zu den Linuxtagen, der Stand musste ja noch aufgebaut werden. Ich bin mal wieder mit ziemlich viel Gepäck angereist, Flyer, Banner, Sticker, Bücher, &lt;a href="http://perl-magazin.de/"&gt;Perl-Magazine&lt;/a&gt; etc. mussten alle mit nach Chemnitz.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/-TxnPI0W969w/T2q7e_x7hBI/AAAAAAAAABY/DQyH0SdZ0is/s1600/Foto0093.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 250px; height: 333px;" src="http://3.bp.blogspot.com/-TxnPI0W969w/T2q7e_x7hBI/AAAAAAAAABY/DQyH0SdZ0is/s400/Foto0093.jpg" alt="" id="BLOGGER_PHOTO_ID_5722592417718961170" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Wir hatten an den beiden Tagen recht gut zu tun, auch wenn es zwischendrin immer wieder Leerlauf gab. Man hat zwar von Einzelnen die typischen Sprüche über Perl wie "das ist doch nicht lesbar", "ach wenn ich schon die ganzen Dollarzeichen sehe" gehört, aber insgesamt waren es gute Gespräche, die wir dort geführt haben. Ich habe auch wieder viele neue Kontakte geknüpft... und neue Ideen gesammelt. Ich muss mir z.B. mal die &lt;a href="http://www.archivista.ch/de/index.php?target=_top"&gt;Archivista&lt;/a&gt;-Box anschauen.&lt;br /&gt;&lt;br /&gt;Am Sonntag habe ich auch noch einen Vortrag über &lt;a href="http://jenkins-ci.org/"&gt;Jenkins&lt;/a&gt; mit Perl gehalten. Ich hoffe, dass die Videoaufnahmen bald im Netz landen. Dann werde ich das hier verlinken.&lt;br /&gt;&lt;br /&gt;Mehr oder weniger direkt nach dem Vortrag musste ich dann schon zum Bahnhof, weil die Heimfahrt über 7 Stunden dauerte und ich noch sonntags ankommen wollte.&lt;br /&gt;&lt;br /&gt;An dieser Stelle möchte ich mich auch bei Markus bedanken, der den Stand organisiert hat und bei Wolfgang, Steffen und Florian, die am Stand geholfen haben.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31159397-1211450065933147721?l=reneeb-perlblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content>
    <link rel="replies" type="application/atom+xml" href="http://reneeb-perlblog.blogspot.com/feeds/1211450065933147721/comments/default" title="Post Comments"/>
    <link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31159397&amp;postID=1211450065933147721" title="0 Comments"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31159397/posts/default/1211450065933147721"/>
    <link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31159397/posts/default/1211450065933147721"/>
    <link rel="alternate" type="text/html" href="http://reneeb-perlblog.blogspot.com/2012/03/chemnitz-linuxtage-und-otrs-usertreffen.html" title="Chemnitz: LinuxTage und OTRS-Usertreffen"/>
    <author>
      <name>ReneeB</name>
      <uri>http://www.blogger.com/profile/00640158903859175674</uri>
      <email>noreply@blogger.com</email>
      <gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif"/>
    </author>
    <media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-TxnPI0W969w/T2q7e_x7hBI/AAAAAAAAABY/DQyH0SdZ0is/s72-c/Foto0093.jpg" height="72" width="72"/>
    <thr:total>0</thr:total>
    <title>Perl-Blog (Renee Baecker): Chemnitz: LinuxTage und OTRS-Usertreffen</title>
  </entry>
  <entry xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
    <id>tag:blogger.com,1999:blog-8909542667463743647.post-1438397343388613444</id>
    <published>2012-03-16T22:57:00.000+01:00</published>
    <updated>2012-03-16T22:57:41.765+01:00</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Perlworkshop"/>
    <content type="html">Ich bin schon ueber eine Woche hinterher, hier der Vollstaendigkeit halber meine Zusammenfassung vom 2. und 3. Tag.&lt;br /&gt;&lt;br /&gt;Das Highlight war Steffen Ullrich's &lt;a href="http://maulwuff.de/pws/2012/web20sec/" target="_blank"&gt;Web 2.0 Security Workshop&lt;/a&gt;. Parallel dazu lief der Perl-6-Track. Der Tag endete mit den Lightningtalks. Hier hat mir besonders Lars Dieckow's "Lightningtalk-Marathon" gefallen. Statt nur einen Thema hatte er gleich ein halbes Dutzend (oder sogar mehr).&lt;br /&gt;&lt;br /&gt;Am 3. Tag stand ein XML-Workshop mit Mark Overmeer an. Als Steffen-Ullrich-Fan habe ich mir aber &lt;a href="http://maulwuff.de/pws/2012/net-inspect/" target="_blank"&gt;Deep Inspection mit Perl&lt;/a&gt; angehoert. Ueberhaupt war es der Steffen-Tag: Gleich im Anschluss Steffen Winkler und nach der Mittagspause Stefan Hornburg mit &lt;a href="http://www.linuxia.de/talks/pws2012/perlcommerce-beamer.pdf" target="_blank"&gt;Modern PerlCommerce&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Den Abschluss bildeten Lightningtalks und danach folgte das Highlight des Tages: Eine Fuehrung durch das Rechenzentrum und "IT-Museum". Besonders letzteres war sehr interessant. Bilder habe ich leider keine gemacht, vielleicht veroeffentlicht Roland seine ... :)&lt;br /&gt;&lt;br /&gt;Alles in allem drei sehr schoene Tage. Verglichen mit dem 13. Workshop ein riesiger Schritt in die richtige Richtung, zurueck zur alten Staerke. Vielen Dank an die Organisatoren.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8909542667463743647-1438397343388613444?l=www.perl-uwe.de' alt='' /&gt;&lt;/div&gt;</content>
    <link rel="replies" type="application/atom+xml" href="http://www.perl-uwe.de/feeds/1438397343388613444/comments/default" title="Kommentare zum Post"/>
    <link rel="replies" type="text/html" href="http://www.perl-uwe.de/2012/03/14-deutscher-perlworkshop-tage-2-und-3.html#comment-form" title="0 Kommentare"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8909542667463743647/posts/default/1438397343388613444"/>
    <link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8909542667463743647/posts/default/1438397343388613444"/>
    <link rel="alternate" type="text/html" href="http://www.perl-uwe.de/2012/03/14-deutscher-perlworkshop-tage-2-und-3.html" title="14. Deutscher Perlworkshop - Tage 2 und 3"/>
    <author>
      <name>Uwe Voelker</name>
      <uri>https://profiles.google.com/106319388693164629696</uri>
      <email>noreply@blogger.com</email>
      <gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif"/>
    </author>
    <thr:total>0</thr:total>
    <title>Perl-Uwe.de: 14. Deutscher Perlworkshop - Tage 2 und 3</title>
  </entry>
  <entry>
    
    <link rel="alternate" type="text/html" href="http://frankfurt.pm/2012/03/bericht-treffen-13-marz-2012.html"/>
    <id>tag:frankfurt.pm,2012://1.25</id>

    <published>2012-03-14T11:47:38Z</published>
    <updated>2012-03-14T12:03:28Z</updated>

    <summary>Gestern waren wir nur eine kleine Runde. Lag es an dem verschobenen Termin? Auf jeden Fall waren wir nur zu viert. Im Grunde hatten wir nur drei große Themen:VereinsgründungAus verschiedenen Gründen mussten wir die Satzung wegen Anmerkungen des Amtsgerichts abändern....</summary>
    <author>
        <name>Renée Bäcker</name>
        <uri>http://www.perl-services.de/</uri>
    </author>
    
        <category term="Monatliche Treffen" scheme="http://www.sixapart.com/ns/types#category"/>
    
    <category term="treffen" label="Treffen" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="workshop" label="Workshop" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="yapceu2012" label="yapceu2012" scheme="http://www.sixapart.com/ns/types#tag"/>
    
    <content type="html" xml:lang="de" xml:base="http://frankfurt.pm/">
        <![CDATA[Gestern waren wir nur eine kleine Runde. Lag es an dem verschobenen Termin? Auf jeden Fall waren wir nur zu viert. Im Grunde hatten wir nur drei große Themen:<br /><br /><b><font style="font-size: 1.25em;">Vereinsgründung</font></b><br /><br />Aus verschiedenen Gründen mussten wir die Satzung wegen Anmerkungen des Amtsgerichts abändern. Gestern haben wir die fehlenden Unterlagen fertig gemacht, so dass die Eintragung ins Vereinsregister hoffentlich bald erfolgt ist.<br /><br /><b><font style="font-size: 1.25em;">YAPC::EU 2012</font></b><br /><br />Wir haben neue Sponsoren für die <a href="http://yapc.eu/2012/">YAPC::Europe</a>: <a href="http://cpanel.com/">cPanel</a> wird Platin-Sponsor und <a href="http://www.net-a-porter.com/">Net-A-Porter</a> wird Gold-Sponsor. Mit weiteren Unternehmen stehe ich derzeit in Kontakt. Leider mussten wir auch eine Absage hinnehmen. Trotzdem bin ich mit dem bisherigen Verlauf der Sponsorensuche zufrieden.<br /><br />Das Social Event war auch ein Thema - oder vielmehr die Frage wo man das Event stattfinden lassen kann. Da kamen etliche Vorschläge wie der alte Flugplatz in Bonames, eine Kantine an der Hauptwache und die Saalburg auf. Max wird sich mit den Betreibern der jeweiligen Orte in Verbindung setzen. Gar nicht so einfach, einen geeigneten Platz für rund 400 Leute zu finden.<br /><br />In den kommenden zwei Wochen gibt es auch wieder einiges für das <a href="http://blogs.perl.org/users/yapceurope_2012/">YAPC-Blog</a>. Also schön aufmerksam lesen ;-)<br /><br />Auch ein mögliches Freizeit-Programm für die Tage vor und nach der YAPC waren Thema gewesen. Einige Leute werden früher anreisen oder später wieder nach Hause fahren. Für diese Leute wollen wir ein paar Vorschläge sammeln, was man so alles in Frankfurt machen kann. Wer hier vorschläge hat, Kommentare sind herzlich willkommen.<br /><br /><b><font style="font-size: 1.25em;">Deutscher Perl-Workshop</font></b><br /><br />Eigentlich wäre unser Treffen in der letzten Woche gewesen, aber da ein Großteil der <a href="http://frankfurt.pm/">Frankfurt Perlmongers</a> auf dem <a href="http://conferences.yapceurope.org/gpw2012/">Deutschen Perl-Workshop</a> in <a href="http://erlangen.de/">Erlangen</a> war, wurde es auf diese Woche verschoben. Wir haben uns über einige Vorträge unterhalten - wie z.B. "Sicherheit bei Web 2.0" von Steffen Ullrich, der gewohnt gut vorgetragen hat. An dieser Stelle nochmal ein Dank an die Organisatoren, die Sponsoren und die Vortragenden.<br /><br />Max hatte dort in einem Lightning Talk sein <a href="https://metacpan.org/module/Image::CCV">neuestes Modul</a> vorgestellt. Als wir darüber gesprochen haben, kam auch die Idee auf, dass man bei der YAPC mit der Gesichtserkennung den Registrierungsprozess beschleunigen könnte. Aber so weit ist das Modul noch nicht. ]]>
        
    </content>
<title>Frankfurt Perlmongers: Bericht Treffen 13. März 2012</title></entry>
  <entry xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
    <id>tag:blogger.com,1999:blog-8909542667463743647.post-1270205373577029879</id>
    <published>2012-03-06T15:36:00.000+01:00</published>
    <updated>2012-03-06T15:36:14.777+01:00</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Perlworkshop"/>
    <content type="html">Am ersten Tag berichtete Renee Baecker ueber Hudson/Jenkins. Auf Arbeit setzen wir Jenkins bereits ein (mit Chuck-Norris-Plugin) - interessant fuer mich war der Devel::Cover-Report. Das werde ich mal noch einbauen...&lt;br /&gt;&lt;br /&gt;Nach dem Mittagessen sprach Lars Dieckow ueber "Threadsicherheit von setlocale in Webanwendungen". In kurz: Solange niemand gettext threadsicher macht, sollte man es nicht mit Threads verwenden.&lt;br /&gt;&lt;br /&gt;Es folgte Peter Rabbitson mit "Benchmarking is hard" und seinem DBIx::Class-Vortrag. Aber nicht zwei Vortraege hintereinander, da war noch jemand dazwischen...&lt;br /&gt;&lt;br /&gt;...mein Vortrag ueber &lt;a href="http://www.slideshare.net/uwevoelker/mojouseragent/" target="_blank"&gt;Mojo::UserAgent&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Der m. M. beste Vortrag des Tages: Marc Lehmann ueber &lt;a href="http://staticperl.schmorp.de/" target="_blank"&gt;staticperl&lt;/a&gt; und &lt;a href="http://urlader.schmorp.de/" target="_blank"&gt;Urlader&lt;/a&gt;. staticperl baut ein statisch gelinktes Perl. Urlader ist ein (perl-unabhaengiger) Ersatz fuer PAR::Packer. Fuer sein Spiel &lt;a href="http://www.deliantra.net/" target="_blank"&gt;deliantra&lt;/a&gt; hat Marc einige Widrigkeiten von PAR erlebt und deshalb eine Alternative geschaffen. Er kommunizierte auch die Nachteile klar: hohe Einstiegshuerde, vieles muss per Hand gemacht werden. Trotzdem sehr interessant und einen Blick wert!&lt;br /&gt;&lt;br /&gt;Morgen steht das Social Event und die ersten Lightning Talks an.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8909542667463743647-1270205373577029879?l=www.perl-uwe.de' alt='' /&gt;&lt;/div&gt;</content>
    <link rel="replies" type="application/atom+xml" href="http://www.perl-uwe.de/feeds/1270205373577029879/comments/default" title="Kommentare zum Post"/>
    <link rel="replies" type="text/html" href="http://www.perl-uwe.de/2012/03/14-deutscher-perlworkshop-tag-1.html#comment-form" title="0 Kommentare"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8909542667463743647/posts/default/1270205373577029879"/>
    <link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8909542667463743647/posts/default/1270205373577029879"/>
    <link rel="alternate" type="text/html" href="http://www.perl-uwe.de/2012/03/14-deutscher-perlworkshop-tag-1.html" title="14. Deutscher Perlworkshop - Tag 1"/>
    <author>
      <name>Uwe Voelker</name>
      <uri>https://profiles.google.com/106319388693164629696</uri>
      <email>noreply@blogger.com</email>
      <gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif"/>
    </author>
    <thr:total>0</thr:total>
    <title>Perl-Uwe.de: 14. Deutscher Perlworkshop - Tag 1</title>
  </entry>
  <entry xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
    <id>tag:blogger.com,1999:blog-8909542667463743647.post-8827078489199651551</id>
    <published>2012-03-03T22:10:00.000+01:00</published>
    <updated>2012-03-03T22:10:03.559+01:00</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Perlworkshop"/>
    <content type="html">Bald ist es soweit: Von Montag bis Mittwoch findet in Erlangen der 14. Deutsche Perl-Workshop statt. In meinem Vortrag stelle ich Mojo::UserAgent vor. Folien folgen im Laufe der Woche.&lt;br /&gt;&lt;br /&gt;Ausserdem zeige ich noch in einen Lightning-Talk wie man den Speicherverbrauch von Perl-Modulen misst.&lt;br /&gt;&lt;br /&gt;Auf nach Erlangen!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8909542667463743647-8827078489199651551?l=www.perl-uwe.de' alt='' /&gt;&lt;/div&gt;</content>
    <link rel="replies" type="application/atom+xml" href="http://www.perl-uwe.de/feeds/8827078489199651551/comments/default" title="Kommentare zum Post"/>
    <link rel="replies" type="text/html" href="http://www.perl-uwe.de/2012/03/14-deutscher-perl-workshop-in-erlangen.html#comment-form" title="0 Kommentare"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8909542667463743647/posts/default/8827078489199651551"/>
    <link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8909542667463743647/posts/default/8827078489199651551"/>
    <link rel="alternate" type="text/html" href="http://www.perl-uwe.de/2012/03/14-deutscher-perl-workshop-in-erlangen.html" title="14. Deutscher Perl-Workshop in Erlangen"/>
    <author>
      <name>Uwe Voelker</name>
      <uri>https://profiles.google.com/106319388693164629696</uri>
      <email>noreply@blogger.com</email>
      <gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif"/>
    </author>
    <thr:total>0</thr:total>
    <title>Perl-Uwe.de: 14. Deutscher Perl-Workshop in Erlangen</title>
  </entry>
  <entry xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
    <id>tag:blogger.com,1999:blog-4905086986099100156.post-5729742682632485549</id>
    <published>2012-03-01T18:33:00.003+01:00</published>
    <updated>2012-03-01T18:38:01.666+01:00</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Video"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Larry"/>
    <content type="html">&lt;object id="flashObj" width="400" height="344" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,47,0"&gt;&lt;param name="movie" value="http://c.brightcove.com/services/viewer/federated_f9?isVid=1&amp;isUI=1" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;param name="flashVars" value="videoId=724203975001&amp;playerID=1187410652001&amp;playerKey=AQ~~,AAAAGuNzXFE~,qu1BWJRU7c2zPXB5pnS6ytF42ALvFXD6&amp;domain=embed&amp;dynamicStreaming=true" /&gt;&lt;param name="base" value="http://admin.brightcove.com" /&gt;&lt;param name="seamlesstabbing" value="false" /&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;param name="swLiveConnect" value="true" /&gt;&lt;param name="allowScriptAccess" value="always" /&gt;&lt;embed src="http://c.brightcove.com/services/viewer/federated_f9?isVid=1&amp;isUI=1" bgcolor="#FFFFFF" flashVars="videoId=724203975001&amp;playerID=1187410652001&amp;playerKey=AQ~~,AAAAGuNzXFE~,qu1BWJRU7c2zPXB5pnS6ytF42ALvFXD6&amp;domain=embed&amp;dynamicStreaming=true" base="http://admin.brightcove.com" name="flashObj" width="400" height="344" seamlesstabbing="false" type="application/x-shockwave-flash" allowFullScreen="true" allowScriptAccess="always" swLiveConnect="true" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905086986099100156-5729742682632485549?l=usr-bin-perl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content>
    <link rel="replies" type="application/atom+xml" href="http://usr-bin-perl.blogspot.com/feeds/5729742682632485549/comments/default" title="Kommentare zum Post"/>
    <link rel="replies" type="text/html" href="http://usr-bin-perl.blogspot.com/2012/03/5-programming-languages-everyone-should.html#comment-form" title="0 Kommentare"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4905086986099100156/posts/default/5729742682632485549"/>
    <link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4905086986099100156/posts/default/5729742682632485549"/>
    <link rel="alternate" type="text/html" href="http://usr-bin-perl.blogspot.com/2012/03/5-programming-languages-everyone-should.html" title="What are the five programming languages everyone, even non-programmers, should know about and why?"/>
    <author>
      <name>Gernot Havranek</name>
      <email>noreply@blogger.com</email>
      <gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="27" height="32" src="http://4.bp.blogspot.com/_O2VHxnNuvGs/SnFSbVd_BBI/AAAAAAAABoE/EncnXLroqE0/S220/profil.jpg"/>
    </author>
    <thr:total>0</thr:total>
    <title>Perl-Blog (GHIT): What are the five programming languages everyone, even non-programmers, should know about and why?</title>
  </entry>
  <entry xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
    <id>tag:blogger.com,1999:blog-4905086986099100156.post-8818726640012227612</id>
    <published>2012-02-17T12:33:00.000+01:00</published>
    <updated>2012-02-17T12:33:47.960+01:00</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Perl-Zeitung"/>
    <content type="html">... ab 1. März käuflich zu erwerben. Preis wie immer: € 1,80&lt;br /&gt;&lt;br /&gt;Inhaltsverzeichnis:&lt;br /&gt;Umgebungsvariablen anzeigen lassen&lt;br /&gt;Warnungen sammeln&lt;br /&gt;Encoding DosBox&lt;br /&gt;Dialog Yes/No&lt;br /&gt;ProgressBar ohne Modul&lt;br /&gt;Twitter-Api Programmierung mit Perl: Die "Single-User"-Lösung&lt;br /&gt;Was ist los in der Perl-Welt...&lt;br /&gt;Kommerzielle Werbung&lt;br /&gt;Gemeinnützige Werbung&lt;br /&gt;Perl-Zeitung aktuell &amp; Gewinnspiel&lt;br /&gt;Vorschau &amp; Abschluss&lt;br /&gt;&lt;br /&gt;&lt;a href="http://perl-zeitung.at"&gt;http://perl-zeitung.at&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905086986099100156-8818726640012227612?l=usr-bin-perl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content>
    <link rel="replies" type="application/atom+xml" href="http://usr-bin-perl.blogspot.com/feeds/8818726640012227612/comments/default" title="Kommentare zum Post"/>
    <link rel="replies" type="text/html" href="http://usr-bin-perl.blogspot.com/2012/02/perl-zeitung-ausgabe-16.html#comment-form" title="0 Kommentare"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4905086986099100156/posts/default/8818726640012227612"/>
    <link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4905086986099100156/posts/default/8818726640012227612"/>
    <link rel="alternate" type="text/html" href="http://usr-bin-perl.blogspot.com/2012/02/perl-zeitung-ausgabe-16.html" title="Perl-Zeitung Ausgabe 16"/>
    <author>
      <name>Gernot Havranek</name>
      <email>noreply@blogger.com</email>
      <gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="27" height="32" src="http://4.bp.blogspot.com/_O2VHxnNuvGs/SnFSbVd_BBI/AAAAAAAABoE/EncnXLroqE0/S220/profil.jpg"/>
    </author>
    <thr:total>0</thr:total>
    <title>Perl-Blog (GHIT): Perl-Zeitung Ausgabe 16</title>
  </entry>
  <entry>
    
    <link rel="alternate" type="text/html" href="http://frankfurt.pm/2012/02/nachstes-treffen-13-marz-2012-achtung-weicht-von-der-regel-ab.html"/>
    <id>tag:frankfurt.pm,2012://1.24</id>

    <published>2012-02-10T17:27:09Z</published>
    <updated>2012-02-10T17:33:22Z</updated>

    <summary>Eigentlich findet unser monatliches Treffen immer am 1. Dienstag des Monats statt. Im März werden wir aber eine Ausnahme machen! Da sehr viele von uns beim Deutschen Perl-Workshop in Erlangen sind, verschieben wir das Treffen um eine Woche.Unser nächstes Treffen...</summary>
    <author>
        <name>Renée Bäcker</name>
        <uri>http://www.perl-services.de/</uri>
    </author>
    
        <category term="Monatliche Treffen" scheme="http://www.sixapart.com/ns/types#category"/>
    
    <category term="treffen" label="Treffen" scheme="http://www.sixapart.com/ns/types#tag"/>
    
    <content type="html" xml:lang="de" xml:base="http://frankfurt.pm/">
        <![CDATA[Eigentlich findet unser monatliches Treffen immer am 1. Dienstag des Monats statt. <span style="color:red;">Im März werden wir aber eine Ausnahme machen!</span> Da sehr viele von uns beim <a href="http://conferences.yapceurope.org/gpw2012/">Deutschen Perl-Workshop</a> in Erlangen sind, verschieben wir das Treffen um eine Woche.<br /><br />Unser nächstes Treffen ist also am <b>13. März 2012 um 19:30 Uhr</b> im MoschMosch!<br /><br />Um einen genügend großen Tisch reservieren zu können, bitte kurz auf der <a href="http://frankfurt.pm/mailing-liste.html">Mailingliste</a> oder hier Bescheid geben. Natürlich freuen wir uns auch über kurzfristigen Besuch.<br /> ]]>
        <![CDATA[<br />]]>
    </content>
<title>Frankfurt Perlmongers: Nächstes Treffen: 13. März 2012</title></entry>
  <entry xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
    <id>tag:blogger.com,1999:blog-4905086986099100156.post-2150299991801047702</id>
    <published>2012-02-09T14:08:00.001+01:00</published>
    <updated>2012-02-09T14:09:16.084+01:00</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Perl-Zeitung"/>
    <content type="html">&lt;a href="http://perl-zeitung.at"&gt;Wir&lt;/a&gt; suchen &lt;b&gt;aktuell&lt;/b&gt;, Autoren die regelmäßig für die Perl-Zeitung schreiben möchten.&lt;br /&gt;&lt;br /&gt;Haben Sie Interesse?&lt;br /&gt;Melden Sie sich bei uns!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.perl-zeitung.at/kontakt.html"&gt;Kontakt&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905086986099100156-2150299991801047702?l=usr-bin-perl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content>
    <link rel="replies" type="application/atom+xml" href="http://usr-bin-perl.blogspot.com/feeds/2150299991801047702/comments/default" title="Kommentare zum Post"/>
    <link rel="replies" type="text/html" href="http://usr-bin-perl.blogspot.com/2012/02/perl-zeitung-sucht-autoren.html#comment-form" title="0 Kommentare"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4905086986099100156/posts/default/2150299991801047702"/>
    <link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4905086986099100156/posts/default/2150299991801047702"/>
    <link rel="alternate" type="text/html" href="http://usr-bin-perl.blogspot.com/2012/02/perl-zeitung-sucht-autoren.html" title="Perl-Zeitung sucht Autoren"/>
    <author>
      <name>Gernot Havranek</name>
      <email>noreply@blogger.com</email>
      <gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="27" height="32" src="http://4.bp.blogspot.com/_O2VHxnNuvGs/SnFSbVd_BBI/AAAAAAAABoE/EncnXLroqE0/S220/profil.jpg"/>
    </author>
    <thr:total>0</thr:total>
    <title>Perl-Blog (GHIT): Perl-Zeitung sucht Autoren</title>
  </entry>
  <entry xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
    <id>tag:blogger.com,1999:blog-4905086986099100156.post-6172268279149294033</id>
    <published>2012-02-08T19:57:00.000+01:00</published>
    <updated>2012-02-08T19:57:58.001+01:00</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="News"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="PDL"/>
    <content type="html">Das PDL-Entwicklerteam hat die neue Version 2.4.10 der &lt;a href="http://pdl.perl.org/"&gt;Perl Data Language&lt;/a&gt; vorgestellt. Die Sprache erweitert Perl um zusätzliche Funktionen, die in erster Linie bei wissenschaftlichen Berechnungen Vorteile gegenüber der Verwendung anderer Sprachen wie &lt;a href="http://www.mathworks.de/products/matlab/"&gt;MATLAB&lt;/a&gt; oder &lt;a href="http://www.scilab.org/"&gt;Scilab&lt;/a&gt; bieten sollen. Dazu setzt PDL unter anderem auf einen eigenen Datentyp, der speziell für die Verarbeitung N-dimensionaler Matrizen geeignet sei. &lt;br /&gt;&lt;br /&gt;Die &lt;a href="http://mailman.jach.hawaii.edu/pipermail/perldl/2012-February/006379.html"&gt;nun vorgestellte&lt;/a&gt; Version der PDL ergänzt eine Option zur Auto-Parallelisierung der PDL-Thread-Schleifen, unterstützt allgemein POSIX-Threads auf allen kompatiblen Plattformen und PDL-Datentypen mit einer Größe von mehr als 2 Gibibyte (auf 64-Bit-Systemen). Zudem stellen die Entwickler einen ersten Entwurf ihres &lt;a href="http://pdl.perl.org/content/pdl-book-toc.html"&gt;PDL-Handbuchs&lt;/a&gt; als PDF zum Download zur Verfügung. (&lt;a href="mailto:rl@ix.de"&gt;rl&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905086986099100156-6172268279149294033?l=usr-bin-perl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content>
    <link rel="replies" type="application/atom+xml" href="http://usr-bin-perl.blogspot.com/feeds/6172268279149294033/comments/default" title="Kommentare zum Post"/>
    <link rel="replies" type="text/html" href="http://usr-bin-perl.blogspot.com/2012/02/perl-data-language-mit-handbuch-und.html#comment-form" title="0 Kommentare"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/4905086986099100156/posts/default/6172268279149294033"/>
    <link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/4905086986099100156/posts/default/6172268279149294033"/>
    <link rel="alternate" type="text/html" href="http://usr-bin-perl.blogspot.com/2012/02/perl-data-language-mit-handbuch-und.html" title="Perl Data Language mit Handbuch und neuen Funktionen"/>
    <author>
      <name>Gernot Havranek</name>
      <email>noreply@blogger.com</email>
      <gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="27" height="32" src="http://4.bp.blogspot.com/_O2VHxnNuvGs/SnFSbVd_BBI/AAAAAAAABoE/EncnXLroqE0/S220/profil.jpg"/>
    </author>
    <thr:total>0</thr:total>
    <title>Perl-Blog (GHIT): Perl Data Language mit Handbuch und neuen Funktionen</title>
  </entry>
  <entry>
    <title>lichtkind's blog: Neue Artikel und?</title>
    <link rel="alternate" href="http://kephra-lk.livejournal.com/5375.html" type="text/html"/>
    <content type="html">Heute kam die &lt;a href="http://perl-magazin.de/index.cgi?action=issue;sub=show;issue=26;sid=059dcaec60a21178921ad703d91702ea" rel="nofollow"&gt;neue foo&lt;/a&gt;, mit den bereits angesprochenen Artikeln. Was als eine Folge des Wx-tutorials geplant war musste ich nochmal teilen, aber die rezensionen werden langsam richtig gut. Prompt kam am gleichen Tag Leserpost, was mich sehr freute.&lt;br /&gt;&lt;br /&gt;Und die n&amp;auml;chsten sind in Planung (Camel und Coders at work von peter Seibel, da&amp;szlig; ich nochmal etwas gegen Vision&amp;auml;re der Programmierung antreten lasen will). So nach und nach will ich alle Perl-Klassiker , wichtige Neuerscheinungen, auch Allgemein-Programmier-Klassiker und einiges links und rechts besprechen. Deswegen auch immer 2 Rezensionen in eienr Ausgabe.&amp;nbsp; K&amp;ouml;nntet ihr euch vorstellen auch Rezension zu einem CSS 3-Buch in der foo lesen zu wollen? Ich will das wirklich wissen.&lt;br /&gt;&lt;br /&gt;Danke.</content>
    <id>http://kephra-lk.livejournal.com/5375.html</id>
    <published>2012-02-01T22:36:46Z</published>
    <updated>2012-02-01T22:36:46Z</updated>
  </entry>
  <entry xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
    <id>tag:blogger.com,1999:blog-31159397.post-3455585763305142006</id>
    <published>2012-01-31T23:31:00.001+01:00</published>
    <updated>2012-01-31T23:32:38.413+01:00</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Perl-Magazin"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="$foo"/>
    <content type="html">Gerade wird es so richtig kalt - aber beim &lt;a href="http://perl-magazin.de/"&gt;Perl-Magazin&lt;/a&gt;  ist es schon Frühjahr. Die 21. Ausgabe des Magazins ist heute  erschienen und die Abonnenten sollten in den nächsten 1-2 Tagen Post  bekommen.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Inhalt dieser Ausgabe:&lt;br /&gt;&lt;br /&gt; * VMware und Perl&lt;br /&gt;&lt;br /&gt;   Virtualisierung ist mittlerweile ein großes Thema. Mit VMware und Perl kann man virtuelle Maschinen automatisch ansprechen.&lt;br /&gt;Stefan Oberwahrenbrock zeigt, welche VMware-Produkte es gibt und wie man diese mit Perl ansprechen kann.&lt;br /&gt;&lt;br /&gt; * Continuous Integration für Perl-Projekte mit Jenkins&lt;br /&gt;&lt;br /&gt;   Nichts ist schlimmer, als eine fehlerhafte Software an Kunden  auszuliefern. Deshalb sollten Tests und das Zusammenbauen der  unterschiedlichen Komponenten regelmäßig auf dem Programm stehen.&lt;br /&gt;Dieser Artikel zeigt, wie Jenkins für Perl-Projekte eingesetzt werden kann.&lt;br /&gt;&lt;br /&gt; * Perl in the Cloud - OpenShift Express by Red Hat&lt;br /&gt;&lt;br /&gt;   Das Thema "Cloud" ist derzeit in aller Munde, jeder will rein und immer mehr Anwendungen wandern in die Cloud.&lt;br /&gt;Thomas Fahle zeigt in diesem Artikel, wie man eigene Anwendungen mit OpenShift von RedHat in die Cloud bringt.&lt;br /&gt;&lt;br /&gt; * Rezension - Perl komplett&lt;br /&gt;&lt;br /&gt;   Herbert Breunung stellt in dieser Ausgabe wieder zwei Bücher vor -  Die "Perl Pocket Reference" von Johan Vromans und "Der  Perl-Programmierer" von Jürgen Plate.&lt;br /&gt;&lt;br /&gt; * Konfigurationsmanagement und Software-Deployment mit Rex&lt;br /&gt;&lt;br /&gt;   Mit Rex kann das komplette Deployment und die Konfiguration von  Servern automatisiert werden. Die Steuerdateien für Rex sind in Perl  geschrieben.&lt;br /&gt;Jan Gehring zeigt, wie die sogenannten "Tasks" geschrieben werden und welche Möglichkeiten Rex bietet.&lt;br /&gt;&lt;br /&gt; * Ein CPAN für eigene Module&lt;br /&gt;&lt;br /&gt;   Wie stelle ich Kunden die entwickelten Perl-Module zur Verfügung?  Diese Frage stellt sich wahrscheinlich für viele Perl-Programmierer.&lt;br /&gt;Man kennt ja das CPAN, warum also nicht die gleiche Struktur für eigene Projekte nutzen.&lt;br /&gt;Dieser Artikel zeigt, wie man mit Pinto ein CPAN für eigene Module aufbaut.&lt;br /&gt;&lt;br /&gt; * WxPerl Tutorial - Teil 9: Mächtige Widgets&lt;br /&gt;&lt;br /&gt;   Im neunten Teil des WxPerl-Tutorials zeigt Herbert Breunung eine  Übersicht über viele Widgets, die man in wxPerl-Programmen nutzen kann.  Er geht dabei den Weg von einfachen Widgets über einfache Auswahlwidgets  bis zu den Auswahlwidgets für den gehobeneren Anspruch.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31159397-3455585763305142006?l=reneeb-perlblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content>
    <link rel="replies" type="application/atom+xml" href="http://reneeb-perlblog.blogspot.com/feeds/3455585763305142006/comments/default" title="Post Comments"/>
    <link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31159397&amp;postID=3455585763305142006" title="0 Comments"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31159397/posts/default/3455585763305142006"/>
    <link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31159397/posts/default/3455585763305142006"/>
    <link rel="alternate" type="text/html" href="http://reneeb-perlblog.blogspot.com/2012/01/fruhjahr-2012-die-21-ausgabe-von-foo.html" title="Frühjahr 2012 - die 21. Ausgabe von $foo ist da!"/>
    <author>
      <name>ReneeB</name>
      <uri>http://www.blogger.com/profile/00640158903859175674</uri>
      <email>noreply@blogger.com</email>
      <gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif"/>
    </author>
    <thr:total>0</thr:total>
    <title>Perl-Blog (Renee Baecker): Frühjahr 2012 - die 21. Ausgabe von $foo ist da!</title>
  </entry>
  <entry xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
    <id>tag:blogger.com,1999:blog-31159397.post-6866127475199089091</id>
    <published>2012-01-22T23:11:00.003+01:00</published>
    <updated>2012-01-22T23:16:37.610+01:00</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="ye2012"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="yapceu2012"/>
    <content type="html">Endlich können &lt;a href="http://frankfurt.pm"&gt;wir&lt;/a&gt; das Datum und den Ort der diesjährigen YAPC::EU bekanntgeben: Die &lt;a href="http://yapc.eu/2012"&gt;YAPC::Europe 2012&lt;/a&gt; wird vom 20.-22. August 2012 an der Goethe Universität in Frankfurt stattfinden.&lt;br /&gt;&lt;br /&gt;Die &lt;a href="http://yapc.eu/2012"&gt;Webseite&lt;/a&gt; werden wir regelmäßig mit neuen Informationen bestücken. Die wichtigsten Informationen wird es auch im &lt;a href="http://blogs.perl.org/users/yapceurope_2012/"&gt;Blog&lt;/a&gt; geben.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31159397-6866127475199089091?l=reneeb-perlblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content>
    <link rel="replies" type="application/atom+xml" href="http://reneeb-perlblog.blogspot.com/feeds/6866127475199089091/comments/default" title="Post Comments"/>
    <link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31159397&amp;postID=6866127475199089091" title="0 Comments"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31159397/posts/default/6866127475199089091"/>
    <link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31159397/posts/default/6866127475199089091"/>
    <link rel="alternate" type="text/html" href="http://reneeb-perlblog.blogspot.com/2012/01/yapceurope-2012-datum-und-ort-stehen.html" title="YAPC::Europe 2012: Datum und Ort stehen jetzt fest"/>
    <author>
      <name>ReneeB</name>
      <uri>http://www.blogger.com/profile/00640158903859175674</uri>
      <email>noreply@blogger.com</email>
      <gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif"/>
    </author>
    <thr:total>0</thr:total>
    <title>Perl-Blog (Renee Baecker): YAPC::Europe 2012: Datum und Ort stehen jetzt fest</title>
  </entry>
  <entry xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
    <id>tag:blogger.com,1999:blog-31159397.post-7548029050352981679</id>
    <published>2012-01-16T00:01:00.002+01:00</published>
    <updated>2012-01-16T00:10:45.618+01:00</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Perl-Workshop"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Erlangen"/>
    <content type="html">Die&lt;a href="http://Erlangen.pm.org"&gt; Erlanger Perlmongers&lt;/a&gt; haben das &lt;a href="http://conferences.yapceurope.org/gpw2012/schedule"&gt;Programm des 14.Deutschen Perl-Workshops&lt;/a&gt; online gestellt. Teilweise gibt es zwei Track, die meiste Zeit ist es aber nur ein einzelner Track.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ich selbst werde einen längeren Vortrag über &lt;a href="http://conferences.yapceurope.org/gpw2012/talk/3914"&gt;Jenkins und Perl&lt;/a&gt; halten. Ein Lighting Talk über die &lt;a href="http://YAPC.eu/2012"&gt;YAPC::Europe&lt;/a&gt; wird auch dabei sein.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31159397-7548029050352981679?l=reneeb-perlblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content>
    <link rel="replies" type="application/atom+xml" href="http://reneeb-perlblog.blogspot.com/feeds/7548029050352981679/comments/default" title="Post Comments"/>
    <link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31159397&amp;postID=7548029050352981679" title="0 Comments"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31159397/posts/default/7548029050352981679"/>
    <link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31159397/posts/default/7548029050352981679"/>
    <link rel="alternate" type="text/html" href="http://reneeb-perlblog.blogspot.com/2012/01/programm-des-14-deutschen-perl.html" title="Programm des 14. Deutschen Perl-Workshops"/>
    <author>
      <name>ReneeB</name>
      <uri>http://www.blogger.com/profile/00640158903859175674</uri>
      <email>noreply@blogger.com</email>
      <gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif"/>
    </author>
    <thr:total>0</thr:total>
    <title>Perl-Blog (Renee Baecker): Programm des 14. Deutschen Perl-Workshops</title>
  </entry>
  <entry xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
    <id>tag:blogger.com,1999:blog-8909542667463743647.post-8577078552268631816</id>
    <published>2012-01-07T22:23:00.001+01:00</published>
    <updated>2012-01-07T22:30:41.094+01:00</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="HamburgPM"/>
    <content type="html">Im Februar 2010 haben mein Kollege &lt;a href="http://www.pqpq.de/"&gt;Johannes Plunien&lt;/a&gt; und ich die Hamburger Perlmongers wieder "belebt". Danach fanden (bis auf wenige Ausnahmen) jeden Monat Treffen statt. Als Gaeste konnten wir &lt;a href="http://www.linuxia.de/talks/"&gt;Stefan Hornburg&lt;/a&gt; und &lt;a href="http://www.renee-baecker.de/vortraege.html"&gt;Renee Baecker&lt;/a&gt; begruessen.&lt;br /&gt;&lt;br /&gt;Insgesamt habe ich vielleicht 10 Vortraege gehalten, meist die Premiere meiner YAPC- oder Perl-Workshop-Vortraege. Auch einige "Hamburger" haben interessante Projekte und Module vorgestellt. Trotz allem Einsatz bin ich mit der Beteiligung nicht zufrieden. Die Teilnehmerzahl schwankt zwischen 4 und 10 (mit dem Durchschnitt wohl so bei 5).&lt;br /&gt;&lt;br /&gt;Deshalb gibt es jetzt etwas neues: Einen &lt;a href="http://wiki.attraktor.org/Termin:Mojolicious_workshop_%28Perl_webframework%29"&gt;Mojolicious-Workshop&lt;/a&gt;!&lt;br /&gt;&lt;br /&gt;Am 28.1.2012, 10 Uhr in dem Raeumen vom &lt;a href="http://wiki.attraktor.org/Main_Page"&gt;Attraktor e. V.&lt;/a&gt; wird Marcos Rebelo eine Einfuehrung in Mojolicios geben. Anschliessend wird in kleinen Gruppen an konkreten Projekten gearbeitet. Wer eigene Ideen hat, kann diese gern verfolgen. Mojolicious-Kenntnisse werden nicht vorausgesetzt, aber Perl-Kenntnisse sollten vorhanden sein. Die Einfuehrung ist in Englisch, es sind aber genuegend Muttersprachler dabei, die Fragen auch in Deutsch beantworten koennen.&lt;br /&gt;&lt;br /&gt;Ich freue mich auf den 28.!&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8909542667463743647-8577078552268631816?l=www.perl-uwe.de' alt='' /&gt;&lt;/div&gt;</content>
    <link rel="replies" type="application/atom+xml" href="http://www.perl-uwe.de/feeds/8577078552268631816/comments/default" title="Kommentare zum Post"/>
    <link rel="replies" type="text/html" href="http://www.perl-uwe.de/2012/01/2-jahre-hamburg-pm.html#comment-form" title="0 Kommentare"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8909542667463743647/posts/default/8577078552268631816"/>
    <link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8909542667463743647/posts/default/8577078552268631816"/>
    <link rel="alternate" type="text/html" href="http://www.perl-uwe.de/2012/01/2-jahre-hamburg-pm.html" title="2 Jahre Hamburg PM"/>
    <author>
      <name>Uwe Voelker</name>
      <uri>https://profiles.google.com/106319388693164629696</uri>
      <email>noreply@blogger.com</email>
      <gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif"/>
    </author>
    <thr:total>0</thr:total>
    <title>Perl-Uwe.de: 2 Jahre Hamburg PM</title>
  </entry>
  <entry>
    <title>lichtkind's blog: Abschrubben</title>
    <link rel="alternate" href="http://kephra-lk.livejournal.com/4938.html" type="text/html"/>
    <content type="html">Damit mein ich die Arbeit runterrei&amp;szlig;en. Ich bin etwas m&amp;uuml;de weil ich das geplante abarbeitete, daher gibt es wenig &amp;Uuml;berraschendes zu berichten, zumindest &amp;auml;u&amp;szlig;erlich. Die Rezension zur Taschenreferenz + &amp;quot;&lt;a href="http://www.hanser.de/buch.asp?isbn=978-3-446-41688-8&amp;amp;area=Computer" rel="nofollow"&gt;der Perl-Programmierer&lt;/a&gt;&amp;quot; sind fertig und erscheinen in ca 2 wochen, der &lt;a href="http://www.perl-zeitung.at/" rel="nofollow"&gt;Benchmarkartikel in der Perlzeitung&lt;/a&gt; schon letzte Woche, n&amp;auml;chste Woche auch der sechste teil (nr. 5) im &lt;a href="http://www.freiesmagazin.de/" rel="nofollow"&gt;freiesmagazin&lt;/a&gt;. Ja, die wiederkehrenden Pflichten k&amp;ouml;nnen eine M&amp;uuml;hle sein, aber Arbeit macht bekanntlicherweise frei, denn der M&amp;uuml;&amp;szlig;iggang beg&amp;uuml;nstigt die F&amp;auml;ulnis der Seele und nur &amp;Uuml;bung macht den Meister.&amp;nbsp; Die Spr&amp;uuml;che hat man oft geh&amp;ouml;rt doch sind sie Teilweise Relikte aus einer zeit als noch Handwerk &amp;uuml;berall war, alles repariert und ersetzt werden konnte, es weniger M&amp;uuml;ll gab, die Musik noch selbst gespielt wurde und das Essen eine wesentlich h&amp;ouml;here Qualit&amp;auml;t hatte. Ich sa&amp;szlig; in der Architekturvorlesung, als der Professor sagte das nach heutigem statischem Wissen einige Kirchen nicht stehen d&amp;uuml;rften. So viel zum Thema Fortschritt. Der Absatz ist komplett ohne Witzigkeit oder Ironie. Ich vermisse nur Kultur als etwas auf Wissen und K&amp;ouml;nnen basierendes, da&amp;szlig; als Gut durch Generationen weitergereicht wird. Das ist mehr als nur der Umstand, da&amp;szlig; den Dingen vom Flie&amp;szlig;band Gef&amp;uuml;hle und das individuelle fehlt. Echtes K&amp;ouml;nnen und Beherrschung seines Handwerks, darum wird es f&amp;uuml;r mich wohl auch 2012 gehen.&lt;br /&gt;&lt;br /&gt;Was nehm ich mir also vor f&amp;uuml;r 2012. Uuh 2012, die Mayakrieger werden aufwachen und sich einen Kaffe bestellen. Das Leben ist wunderbar und Probleme sind dazu da gel&amp;ouml;st zu werden. Wer was anderes behauptet ist Terrorist. Also 2012:&lt;br /&gt;&lt;br /&gt;* KephraXP soll benutzbarer Editor werden, zumindest das einfache editieren, einfacher Umgang mit git und hg, editieren von Dateien auf Servern, sich Informationen aller art (snippets, suchbegriffe, regexes,) f&amp;uuml;r mich merkt und all die Handgriffe abnimmt die das Artikelschreiben aufw&amp;auml;ndiger machen als n&amp;ouml;tig. mehr dazu in eigenem Post.&lt;br /&gt;&lt;br /&gt;* WxPerl: teile 9-12 des Tutorials erscheinen wohl dieses jahr in der foo, womit diese Serie auch abgeschlossen sein wird (soweit ich es jetzt &amp;Uuml;berblick.) Das Buch dazu will ich wenigstens zur H&amp;auml;lfte schreiben und einige kleinere Programm und Module will ich in der sparte sehen. Mit Dist::Zilla sollte es einfacher als bisher gehen und mit Tie::Wx::Widget hab ich meine erste saubere Distro gemacht.&lt;br /&gt;&lt;br /&gt;* App::Gui::Docular das ist eines der wxprogramme aber kann f&amp;uuml;r sehr viel mehr gut sein als nur wx, hat grosses Potential, aber eins nach dem anderen. Mi den graphischen Spielzeugen Spirograph und Harmonograph werd ich anfangen. die stell ich in den Namensraum &amp;quot;App&amp;quot; weil die mit Kommandozeilenparameter auch Ergebnis als Datei absetzen k&amp;ouml;nnen sollen.&lt;br /&gt;&lt;br /&gt;* Perl 6 grant, will ich bis zur YAPC abgeschlossen haben. ein kleines Projekt bei dem ich Perl 6 nutze w&amp;auml;re sch&amp;ouml;n.&lt;br /&gt;&lt;br /&gt;* und nat&amp;uuml;rlich einige Artikel, aber vielleicht nicht so viel, daf&amp;uuml;r mit mehr Vorlauf geschrieben. (R&amp;uuml;ckblickend w&amp;uuml;rde ich gerne so viel verbessern an den abgelieferten Sachen...) Einiges davon auch ausserhalb der Programmiererei, denn das ich kein Atheist bin ist kein Geheimnis. sagen wir mal ich bin Skeptiker, aber kein j&amp;auml;hzorniger, ungebildeter R&amp;uuml;pel wie einige der Jungs von der GWUP. Es gibt noch wichtigere Dinge als Software und meine erste Arbeit dazu kam ganz gut an.&lt;br /&gt;&lt;br /&gt;* da ich mich jetzt beinah t&amp;auml;glich ans piano setze sollte auch hier einiges mehr gehen in 2012. hab manchmal Ideen zu Melodien und eine Software in Perl mit der man Musik machen kann w&amp;auml;re perfekt. zum abspielen mag ich Traktor gerne, aber Reaktor ist mir zu gro&amp;szlig;. Vieleicht gibt es doch gutes open-source-Programm.</content>
    <category term="tutorial"/>
    <id>http://kephra-lk.livejournal.com/4938.html</id>
    <published>2012-01-04T21:19:05Z</published>
    <updated>2012-01-04T21:19:05Z</updated>
  </entry>
  <entry>
    
    <link rel="alternate" type="text/html" href="http://perl-howto.de/2011/12/perl-adventures-2011.html"/>
    <id>tag:perl-howto.de,2011://1.226</id>

    <published>2011-12-01T17:15:00Z</published>
    <updated>2011-12-01T19:40:37Z</updated>

    <summary> Es ist wieder so weit - Perl Adventskalender 2011 sind online: Dancer Advent Calendar - the Dancer web framework's calendar Perl Advent Calendar (perladvent.org) Catalyst Advent Calendar - the Catalyst web framework's calendar Perl6 Advent Calendar Via: PreshBlog: Perl...</summary>
    <author>
        <name>Thomas Fahle</name>
        <uri>http://www.thomas-fahle.de</uri>
    </author>
    
        <category term="101" scheme="http://www.sixapart.com/ns/types#category"/>
    
    <category term="catalyst" label="catalyst" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="dancer" label="dancer" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="perl" label="perl" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="perl6" label="perl6" scheme="http://www.sixapart.com/ns/types#tag"/>
    
    <content type="html" xml:lang="de" xml:base="http://perl-howto.de/">
        &lt;p&gt;
Es ist wieder so weit - Perl Adventskalender 2011 sind online: 
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://advent.perldancer.org/"&gt;Dancer Advent Calendar - the Dancer web framework's calendar&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://perladvent.org/2011/"&gt;Perl Advent Calendar (perladvent.org)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.catalystframework.org/calendar"&gt;Catalyst Advent Calendar - the Catalyst web framework's calendar&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://perl6advent.wordpress.com/"&gt;Perl6 Advent Calendar&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Via:&lt;/h2&gt;

&lt;p&gt;
PreshBlog:  &lt;a href="http://www.preshweb.co.uk/2011/12/perl-advent-calendars-for-2011/"&gt;Perl Advent Calendars for 2011&lt;/a&gt;
&lt;/p&gt;
        
    &lt;img src="http://feeds.feedburner.com/~r/PerlHowto/~4/EbwlwKuFNiQ" height="1" width="1"/&gt;</content>
<title>Perl HowTo: Perl Advent(ures) 2011</title></entry>
  <entry>
    
    <link rel="alternate" type="text/html" href="http://perl-howto.de/2011/11/perl-in-the-cloud-openshift-express-by-red-hat-installation-initialisierung-und-konfiguration.html"/>
    <id>tag:perl-howto.de,2011://1.225</id>

    <published>2011-11-24T11:22:45Z</published>
    <updated>2011-11-26T18:56:08Z</updated>

    <summary><![CDATA[ OpenShift by Red Hat soll die Entwicklung von Open-Source-Anwendungen f&uuml;r die Cloud vereinfachen. Dieser Plattform-as-a-Service stellt eine Infrastruktur f&uuml;r verschiedene Programmiersprachen und Web-Frameworks zur Verf&uuml;gung. Red Hat unterscheidet zwischen den Produktvarianten Express, Flex und Power. Die kostenlose Express Variante...]]></summary>
    <author>
        <name>Thomas Fahle</name>
        <uri>http://www.thomas-fahle.de</uri>
    </author>
    
        <category term="Cloud" scheme="http://www.sixapart.com/ns/types#category"/>
    
    <category term="perl" label="perl" scheme="http://www.sixapart.com/ns/types#tag"/>
    
    <content type="html" xml:lang="de" xml:base="http://perl-howto.de/">
        &lt;p&gt;
&lt;a href="https://openshift.redhat.com/app/"&gt;OpenShift by Red Hat&lt;/a&gt; soll die Entwicklung von Open-Source-Anwendungen f&amp;uuml;r die Cloud vereinfachen.
 Dieser &lt;a href="http://de.wikipedia.org/wiki/Platform_as_a_Service"&gt;Plattform-as-a-Service&lt;/a&gt; stellt eine Infrastruktur f&amp;uuml;r verschiedene Programmiersprachen und Web-Frameworks zur Verf&amp;uuml;gung. 
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://www.de.redhat.com/"&gt;Red Hat&lt;/a&gt; unterscheidet zwischen den Produktvarianten &lt;a href="https://openshift.redhat.com/app/express"&gt;Express&lt;/a&gt;, &lt;a href="https://openshift.redhat.com/app/flex"&gt;Flex&lt;/a&gt; und &lt;a href="https://openshift.redhat.com/app/power"&gt;Power&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
Die kostenlose Express Variante (&lt;a href="https://openshift.redhat.com/app/login"&gt;Registrierung erforderlich&lt;/a&gt;) erlaubt u.a. die Verwendung der dynamischen Programmiersprache &lt;a href="http://www.perl.org"&gt;Perl&lt;/a&gt; in Version 5.10.1, der Datenbanken &lt;a href="http://dev.mysql.com/"&gt;MySQL&lt;/a&gt; in Version 5.1 oder &lt;a href="http://www.sqlite.org/"&gt;SQLite&lt;/a&gt; in Version 3 und (ganz wichtig) die Installation von &lt;a href="http://www.cpan.org/"&gt;CPAN&lt;/a&gt;-&lt;a href="http://search.cpan.org/"&gt;Modulen&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
Die bekannten und beliebten Perl Web-Frameworks &lt;a href="http://perldancer.org/"&gt;Dancer&lt;/a&gt;, &lt;a href="http://mojolicio.us/"&gt;Mojolicious&lt;/a&gt; und &lt;a href="http://www.catalystframework.org/"&gt;Catalyst&lt;/a&gt; k&amp;ouml;nnen verwendet werden.
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;

&lt;h2&gt;Schritt f&amp;uuml;r Schritt&lt;/h2&gt;
&lt;p&gt;
Dieser Beitrag geht zuerst Schritt f&amp;uuml;r Schritt durch die Installation, Initialisierung und Konfiguration von OpenShift Express. Danach wird ein betont einfaches, aber n&amp;uuml;tzliches Perl-Programm erstellt und gezeigt, wie dieses in die Cloud ausgeliefert (deployed) wird. 
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;h2&gt;Registrierung&lt;/h2&gt;
&lt;p&gt;
Zur Verwendung von OpenShift Express ist eine &lt;a href="https://openshift.redhat.com/app/login"&gt;Registrierung&lt;/a&gt; mit einer g&amp;uuml;ltigen E-Mail-Adresse erfoderlich. Alternativ kann auch ein bestehender &lt;a href="http://rhn.redhat.com/"&gt;RHN-Account&lt;/a&gt; verwendet werden.
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;h2&gt;Installation der Client-Tools&lt;/h2&gt;
&lt;p&gt;
OpenShift funktioniert unter &lt;a href="https://www.redhat.com/openshift/kb/kb-e1000/installing-openshift-express-client-tools-on-non-rpm-based-systems"&gt;Mac OSX, Linux und Windows&lt;/a&gt; - f&amp;uuml;r diesen Beitrag verwende ich &lt;a href="http://www.centos.org/"&gt;CentOS 6&lt;/a&gt; (64-Bit in einer eigenen virtuellen Maschine).
&lt;/p&gt;
&lt;p&gt;
F&amp;uuml;r die Client-Tools bietet RedHat eine eigenes YUM-Repository an, das &lt;a href="https://openshift.redhat.com/app/express#quickstart"&gt;wie folgt installiert&lt;/a&gt; wird.
&lt;/p&gt;
&lt;pre&gt;
# wget https://openshift.redhat.com/app/repo/openshift.repo
# mv openshift.repo /etc/yum.repos.d
&lt;/pre&gt;
&lt;p&gt;
Damit alle Paket-Abh&amp;auml;nigkeiten aufgel&amp;ouml;st werden, musste ich auch die &lt;a href="http://fedoraproject.org/wiki/EPEL"&gt;EPEL&lt;/a&gt;- und &lt;a href="http://wiki.centos.org/AdditionalResources/Repositories/RPMForge"&gt;RPMForge&lt;/a&gt;-Repositories &lt;a href="http://wiki.centos.org/AdditionalResources/Repositories"&gt;hinzuf&amp;uuml;gen&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
Nun k&amp;ouml;nnen die Client-Tools installiert werden:
&lt;/p&gt;
&lt;pre&gt;
# yum install rhc
&lt;/pre&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;h2&gt;Initialisierung&lt;/h2&gt;
&lt;p&gt;
Alle Apps eines Users werden in einen eigenen Namensraum (Domain) installiert. Apps sind dann nach dem Schema &lt;i&gt;http://$app-$domain.rhcloud.com&lt;/i&gt; &amp;ouml;ffentlich erreichbar. Dazu gleich mehr.
&lt;/p&gt;
&lt;p&gt;
Das Kommando &lt;i&gt;rhc-create-domain&lt;/i&gt; erzeugt einen neuen Namensraum, die Konfigurationsdatei &lt;i&gt;express.conf&lt;/i&gt; und &lt;a href="http://de.wikipedia.org/wiki/Secure_Shell"&gt;SSH-Schl&amp;uuml;ssel&lt;/a&gt; (&lt;i&gt;libra_id_rsa&lt;/i&gt;) zur &lt;a href="http://git-scm.com/"&gt;Git&lt;/a&gt;-Authentifizierung.
&lt;/p&gt;
&lt;pre&gt;
$ rhc-create-domain -n yourdomain -l user@example.com
Password: &amp;lt;user password&gt;

Generating Openshift Express ssh key to /home/UserName/.ssh/libra_id_rsa
Generating public/private RSA key pair.
Created directory '/home/UserName/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/UserName/.ssh/libra_id_rsa.
Your public key has been saved in /home/UserName/.ssh/libra_id_rsa.pub.
.
.
Contacting https://openshift.redhat.com
Adding rhlogin to /home/UserName/.openshift/express.conf
Creation successful

You may now create an application.  Please make note of your local config file
in /home/UserName/.openshift/express.conf which has been created and populated for
you.
&lt;/pre&gt;
&lt;p&gt;
Jetzt noch Git (minimal) konfigurieren
&lt;/p&gt;
&lt;pre&gt;
$ git config --global user.name "Your Name"
$ git config --global user.email you@example.com
&lt;/pre&gt;
&lt;p&gt;
und dann kann endlich die erste App erstellt werden.
&lt;/p&gt;

&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;h2&gt;Appger&amp;uuml;st erzeugen&lt;/h2&gt;
&lt;p&gt;
Das Kommando &lt;i&gt;rhc-create-app &lt;/i&gt; erzeugt das Ger&amp;uuml;st der neuen App.  &amp;Uuml;ber die  Option &lt;i&gt;-a&lt;/i&gt; wird der Name der Applikation angegeben. Die Option &lt;i&gt;-t&lt;/i&gt; legt den Typ der Applikation, hier perl-5.10, fest. Typen werden in der &lt;a href="https://docs.redhat.com/docs/en-US/OpenShift_Express/1.0/html/User_Guide/index.html"&gt;Dokumentation&lt;/a&gt; auch gerne als &lt;i&gt;cartridge&lt;/i&gt; bezeichnet. 
&lt;/p&gt;
&lt;pre&gt;
$ rhc-create-app -a X1 -t perl-5.10 
Password: 

Attempting to create remote application space: X1
Now your new domain name is being propagated worldwide (this might take a minute)...
Pulling new repo down
Warning: Permanently added 'x1-thomasfahle.rhcloud.com,184.73.107.7' (RSA) to the list of known hosts.
Confirming application 'X1' is available
  Attempt # 1

Success!  Your application 'X1' is now published here:

      http://X1-thomasfahle.rhcloud.com/

The remote repository is located here:

    ssh://ce3eb6cc3b1942a2a61a76db6ff63274@X1-thomasfahle.rhcloud.com/~/git/X1.git/

To make changes to 'X1', commit to X1/.

Successfully created application: X1
&lt;/pre&gt;
&lt;p&gt;
Die neu erstellte Applikation mit dem Namen &lt;i&gt;X1&lt;/i&gt; innerhalb des Namensraumes &lt;i&gt;thomasfahle&lt;/i&gt; ist sofort unter der URL&lt;i&gt; http://x1-thomasfahle.rhcloud.com/&lt;/i&gt; erreichbar.
&lt;/p&gt;
&lt;span class="mt-enclosure mt-enclosure-image" style="display: inline;"&gt;&lt;img alt="Welcome-to-OpenShift-klein.png" src="http://perl-howto.de/assets/images/openshift/Welcome-to-OpenShift-klein.png" width="411" height="354" class="mt-image-center" style="text-align: center; display: block; margin: 0 auto 20px;" /&gt;&lt;/span&gt;
&lt;p&gt;
Wer lieber seine eigene Domain verwenden m&amp;ouml;chte und &amp;uuml;ber einen eigenen Nameserver verf&amp;uuml;gt, kann einen &lt;a href="https://www.redhat.com/openshift/faq/i-have-deployed-my-app-but-i-don%E2%80%99t-like-telling-people-to-visit-myapp-myusernamerhcloudcom-how-c"&gt;DNS Alias einrichten&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;h2&gt;Orientierung im Gel&amp;auml;nde&lt;/h2&gt;

&lt;p&gt;
Die neu erstellte Applikation befindet sich im Verzeichnis &lt;i&gt;$app&lt;/i&gt;, hier X1.
&lt;/p&gt;

&lt;pre&gt;
$ tree X1
X1
|-- deplist.txt
|-- libs
|-- misc
|-- perl
|   |-- health_check.pl
|   `-- index.pl
`-- README
&lt;/pre&gt;
&lt;p&gt;
Das Verzeichnis &lt;i&gt;perl&lt;/i&gt; ist die DocumentRoot der Webapp. Alle hier abgelegten Dateien sind &amp;ouml;ffentlich. Die Datei &lt;i&gt;index.pl&lt;/i&gt; dient als DirectoryIndex. 
&lt;/p&gt;
&lt;p&gt;
Die Datei &lt;i&gt;deplist.txt&lt;/i&gt; nimmt eine Liste der zu installierenden CPAN-Module auf, pro Zeile ein Modul ohne Versionsnummer.&lt;br /&gt;
&lt;a href="https://github.com/openshift/dancer-example/blob/master/deplist.txt"&gt;Beispiel&lt;/a&gt;: 
&lt;/p&gt;
&lt;pre&gt;
Test::Base
YAML
Dancer
Plack::Handler::Apache2
&lt;/pre&gt;
&lt;p&gt;
Das Verzeichnis &lt;i&gt;misc&lt;/i&gt; ist nicht &amp;ouml;ffentlich und kann f&amp;uuml;r eigene Zwecke genutzt werden.
&lt;/p&gt;
&lt;p&gt;
Das Verzeichnis &lt;i&gt;libs&lt;/i&gt; ist ebenfalls nicht &amp;ouml;ffentlich und dient als Speicherort f&amp;uuml;r eigene Module.
&lt;/p&gt;
&lt;p&gt;
Sinn und Zweck der Datei &lt;i&gt;health_check.pl&lt;/i&gt; ist mir nicht ganz klar geworden.  
&lt;/p&gt;
&lt;p&gt;
Weiterhin gibt es noch ein verstecktes Verzeichnis &lt;i&gt;.openshift&lt;/i&gt; zur Steuerung des Build-Prozesses. Dazu sp&amp;auml;ter mehr.
&lt;/p&gt;

&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;h2&gt;Das erste Programm: Umgebungsvariablen&lt;/h2&gt;
&lt;p&gt;
Einige Konfigurationseinstellungen, z.B. f&amp;uuml;r Datenbanken, sind als Umgebungsvariablen abgelegt.
&lt;/p&gt;
&lt;p&gt; Daher erstellen wir als erstes einfaches Beispiel keine Hallo-Welt-App, sondern eine n&amp;uuml;tzliche App, welche die Umgebungsvariablen anzeigt.
&lt;/p&gt;
&lt;p&gt;
Das Programm wird unter dem Namen &lt;i&gt;printenv.pl&lt;/i&gt; im Ordner &lt;i&gt;perl&lt;/i&gt; abgelegt.
&lt;/p&gt;
&lt;pre&gt;
#!/usr/bin/perl
&lt;span style="color: #8B008B; font-weight:bold;"&gt;use&lt;/span&gt; &lt;span style="color: #000000;"&gt;strict&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
&lt;span style="color: #8B008B; font-weight:bold;"&gt;use&lt;/span&gt; &lt;span style="color: #000000;"&gt;warnings&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #228B22;"&gt;#  printenv -- demo CGI program which just prints its environment&lt;/span&gt;
&lt;span style="color: #8B008B; font-weight:bold;"&gt;print&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;&amp;quot;Content-type: text/plain\n\n&amp;quot;&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;foreach&lt;/span&gt; &lt;span style="color: #8B008B; font-weight:bold;"&gt;my&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$key&lt;/span&gt; &lt;span style="color: #000000;"&gt;(&lt;/span&gt; &lt;span style="color: #8B008B; font-weight:bold;"&gt;sort&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt; &lt;span style="color: #8B008B; font-weight:bold;"&gt;keys&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt;&lt;span style="color: #00688B;"&gt;%ENV&lt;/span&gt;&lt;span style="color: #000000;"&gt;)&lt;/span&gt; &lt;span style="color: #000000;"&gt;)&lt;/span&gt; &lt;span style="color: #000000;"&gt;)&lt;/span&gt; &lt;span style="color: #000000;"&gt;{&lt;/span&gt;
    &lt;span style="color: #8B008B; font-weight:bold;"&gt;my&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$val&lt;/span&gt; = &lt;span style="color: #00688B;"&gt;$ENV&lt;/span&gt;{&lt;span style="color: #00688B;"&gt;$key&lt;/span&gt;}&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
    &lt;span style="color: #00688B;"&gt;$val&lt;/span&gt; =~ &lt;span style="color: #CD5555;"&gt;s|\n|\\n|g&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
    &lt;span style="color: #00688B;"&gt;$val&lt;/span&gt; =~ &lt;span style="color: #CD5555;"&gt;s|&amp;quot;|\\&amp;quot;|g&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
    &lt;span style="color: #8B008B; font-weight:bold;"&gt;print&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;qq~$key = $val\n~&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
&lt;span style="color: #000000;"&gt;}&lt;/span&gt;
&lt;span style="color: #8B008B; font-weight:bold;"&gt;exit&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;)&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
&lt;/pre&gt;
&lt;p&gt;
Zur Ver&amp;ouml;ffentlichung (Deployment) der App verwendet OpenShift &lt;a href="http://git-scm.com/"&gt;Git&lt;/a&gt;. Sobald die Datei hinzugef&amp;uuml;gt und commited wurde, kann diese per git push in die Cloud ausgeliefert werden.
&lt;/p&gt;
&lt;pre&gt;
$ git add printenv.pl
$ git commit -m 'Umgebungsvariablen App'
$ git push

Counting objects: 6, done.
Compressing objects: 100% (4/4), done.
Writing objects: 100% (4/4), 594 bytes, done.
Total 4 (delta 1), reused 0 (delta 0)
remote: Stopping application...
remote: Waiting for stop to finish
remote: Done
remote: Running .openshift/action_hooks/pre_build
remote: strict is up to date. (1.04)
remote: skipping F/FL/FLORA/perl-5.15.4.tar.gz
remote: Running .openshift/action_hooks/build
remote: Running .openshift/action_hooks/deploy
remote: Starting application...
remote: Done
remote: Running .openshift/action_hooks/post_deploy
To ssh://ce3eb6cc3b1942a2a61a76db6ff63274@X1-thomasfahle.rhcloud.com/~/git/X1.git/
   ee74341..e31f2ec  master -&gt; master
&lt;/pre&gt;
&lt;p&gt;
Das Programm ist nun unter der URL &lt;i&gt;http://x1-thomasfahle.rhcloud.com/printenv.pl&lt;/i&gt; erreichbar.
&lt;/p&gt;
&lt;p&gt;
&lt;b&gt;Hinweis:&lt;/b&gt; Alle Daten innerhalb des Git-Repositories werden dabei auf dem OpenShift Express Server zun&amp;auml;chst gel&amp;ouml;scht und dann neu eingespielt.
&lt;/p&gt;
&lt;p&gt;
&lt;b&gt;Hinweis:&lt;/b&gt; Da Umgebungsvariablen auch Benutzernamen und Passw&amp;ouml;rter enthalten k&amp;ouml;nnen, sollte dieses Programm &lt;b&gt;nicht&lt;/b&gt; auf dem Cloud-Server verbleiben.
&lt;/p&gt;
&lt;p&gt;
Zum Bau und zur Auslieferung der Applikation werden die Programme im Ordner &lt;i&gt;.openschift/action_hooks/&lt;/i&gt; ausgef&amp;uuml;hrt. Um sich die Umgebungsvariablen anzeigen zu lassen, gen&amp;uuml;gt es in die Datei &lt;i&gt;build&lt;/i&gt; die Anweisung &lt;i&gt;export&lt;/i&gt; einzuf&amp;uuml;gen. Dann werden die Umgebungsvariablen bei jedem push angezeigt. 
&lt;/p&gt;
&lt;pre&gt;
$ cat .openshift/action_hooks/build 
#!/bin/bash
# This is a simple build script and will be executed on your CI system if 
# available.  Otherwise it will execute while your application is stopped
# before the deploy step.  This script gets executed directly, so it
# could be python, php, ruby, etc.
export
&lt;/pre&gt;
&lt;p&gt;
Eigene Umgebungsvariablen k&amp;ouml;nnen derzeit nicht gesetzt werden.
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;h2&gt;Logfiles&lt;/h2&gt;
&lt;p&gt;
Das Kommando &lt;i&gt;rhc-tail-files&lt;/i&gt; erm&amp;ouml;glicht den Zugriff auf die Logdateien auf dem Cloud-Server. 
&lt;/p&gt;
&lt;pre&gt;
$ rhc-tail-files -a X1 
Password: 

Attempting to tail files: X1/logs/*
Use ctl + c to stop

==&gt; X1/logs/error_log-20111122-000000-EST &lt;==
[Tue Nov 22 16:43:18 2011] [notice] Apache/2.2.15 (Unix) mod_perl/2.0.4 Perl/v5.10.1 configured -- resuming normal operations

==&gt; X1/logs/access_log-20111122-000000-EST &lt;==
xx.xxx.xxx.IP - - [22/Nov/2011:16:47:04 -0500] "GET /printenv.pl HTTP/1.0" 200 2323 "-" "Mozilla/5.0 (X11; U; Linux i686; de; rv:1.9.2.24) Gecko/20111107 Ubuntu/10.04 (lucid) Firefox/3.6.24"
&lt;/pre&gt;
&lt;p&gt;
Der Zugriff auf die &lt;i&gt;error_log&lt;/i&gt; Dateien erleichert das Debuggen erheblich.
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;h2&gt;Snapshots&lt;/h2&gt;
&lt;p&gt;
Das Kommando &lt;i&gt;rhc-snapshot&lt;/i&gt; erstellt einen Snapshot der Applikation und liefert diesen als gezippte tar Datei zur&amp;uuml;: 
&lt;/p&gt;
&lt;pre&gt;
$ rhc-snapshot  -a X1 
Password: 

Pulling down a snapshot to X1.tar.gz

Stopping application...
Waiting for stop to finish
Done
Creating and sending tar.gz
Starting application...
Done
&lt;/pre&gt;
&lt;p&gt;
Wenn man die Datei X1.tar.gz auspackt, sieht man alle Verzeichnisse und Dateien der Applikation.
&lt;/p&gt;
&lt;pre&gt;
$ tar -xzvf X1.tar.gz
$ cd app-verzeichnis

$ tree
.
|-- git
|   `-- X1.git
|       |-- branches
|       |-- config
|       |-- description
|       |-- HEAD
|       |-- hooks
|       |   |-- applypatch-msg.sample
|       |   |-- commit-msg.sample
|       |   |-- post-commit.sample
|       |   |-- post-receive
|       |   |-- post-receive.sample
|       |   |-- post-update.sample
|       |   |-- pre-applypatch.sample
|       |   |-- pre-commit.sample
|       |   |-- prepare-commit-msg.sample
|       |   |-- pre-rebase.sample
|       |   |-- pre-receive
|       |   `-- update.sample
|       |-- info
|       |   |-- exclude
|       |   `-- refs
|       |-- objects
|       |   |-- 0a
|       |   |   `-- bed1546ab3d6aee5b42c68f57100f52949b4bf
|       |   |-- 10
|       |   |   `-- cd54466b8f66bb40d6c50ab5519bf7727e51dd
|       |   |-- 1d
|       |   |   `-- b60ffa4e6b41be6ed92a6a2b3343c70b301fb6
|       |   |-- 2f
|       |   |   `-- a0243ca6abb34233618e9ea809871be855a225
|       |   |-- 40
|       |   |   |-- 0b36608e5e4405636bf7394c546ec18de53252
|       |   |   `-- c24d558d8a1196d4170f56182b8f69fbe6741f
|       |   |-- 5e
|       |   |   `-- 1c48b299eb8c1fd204b69e520236d3a2a3217e
|       |   |-- 6a
|       |   |   `-- e37b40a1cd342e2661bdf06b65fc4731e1af1e
|       |   |-- 9b
|       |   |   `-- 594ba566f5036940fd00dfeca9cd38e51579a8
|       |   |-- a5
|       |   |   `-- 7d1f5806d714a998130b9517a4240de0c39fe3
|       |   |-- b5
|       |   |   `-- 3bde9fe6346b3d54d39b9d970308cc25080cbe
|       |   |-- c0
|       |   |   `-- df17bb0b3dbdb4da6c06ad6fe4e070e3061485
|       |   |-- c1
|       |   |   `-- d6344439cdc822df02c54bb39aabb5ccd4a7de
|       |   |-- d5
|       |   |   `-- 64d0bc3dd917926892c55e3706cc116d5b165e
|       |   |-- df
|       |   |   `-- 8d841a9e8c1afd175e0061bb7b762d708b0c58
|       |   |-- e3
|       |   |   `-- 1f2ec741b91b2d4ddc9500991cc660a8cf037d
|       |   |-- e6
|       |   |   `-- 9de29bb2d1d6434b8b29ae775ad8c2e48c5391
|       |   |-- ed
|       |   |   `-- 5eb993715da4af89ce517eedb2c3879994e10e
|       |   |-- ee
|       |   |   `-- 74341ac408153e9bfe02fe55669533ccdfdbba
|       |   |-- f1
|       |   |   `-- 25e7fa5f3603669e173695b284d170ddd7b62f
|       |   |-- info
|       |   |   `-- packs
|       |   `-- pack
|       |       |-- pack-e8aca9b5d216bb7c5a7ac884d5cdcb6c0a9faabe.idx
|       |       `-- pack-e8aca9b5d216bb7c5a7ac884d5cdcb6c0a9faabe.pack
|       |-- packed-refs
|       `-- refs
|           |-- heads
|           |   `-- master
|           `-- tags
`-- X1
    |-- ci
    |-- conf
    |   `-- magic -&gt; /etc/httpd/conf/magic
    |-- conf.d
    |-- &lt;b&gt;data&lt;/b&gt;
    |-- logs
    |   |-- access_log-20111122-000000-EST
    |   |-- access_log-20111123-000000-EST
    |   |-- error_log-20111122-000000-EST
    |   `-- error_log-20111123-000000-EST
    |-- modules -&gt; /usr/lib64/httpd/modules
    |-- perl5lib
    |-- repo -&gt; runtime/repo
    |-- run
    |-- runtime
    |   `-- repo
    |       |-- deplist.txt
    |       |-- libs
    |       |-- misc
    |       |-- perl
    |       |   |-- health_check.pl
    |       |   |-- index.pl
    |       |   `-- printenv.pl
    |       `-- README
    `-- tmp

45 directories, 53 files
&lt;/pre&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;h2&gt;Persistent Storage&lt;/h2&gt;
&lt;p&gt;
Wie oben bereits erw&amp;auml;hnt, werden bei der Auslieferung (git push) alle Dateien, die sich innerhalb des Git-Repositories befinden, auf dem Cloud-Server gel&amp;ouml;scht und neu eingespielt. 
&lt;/p&gt;
&lt;p&gt;
Persistente Daten, z.B. SQLite Dateien, m&amp;uuml;ssen daher ausserhalb des Git-Repositories auf dem Server aufbewahrt werden. Dazu stellt OpenShift Express den Ordner &lt;i&gt;data&lt;/i&gt; zur Verf&amp;uuml;gung. 
&lt;/p&gt;
&lt;p&gt;
Der Pfad zum Ordner &lt;i&gt;data&lt;/i&gt; kann aus der Umgebungsvariablen &lt;i&gt;OPENSHIFT_DATA_DIR&lt;/i&gt; &lt;a href="https://www.redhat.com/openshift/blogs/whats-new-in-openshift-express-august-2011"&gt;ermittelt&lt;/a&gt; werden.
&lt;/p&gt;
&lt;pre&gt;
#!/usr/bin/perl
&lt;span style="color: #8B008B; font-weight:bold;"&gt;use&lt;/span&gt; &lt;span style="color: #000000;"&gt;strict&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
&lt;span style="color: #8B008B; font-weight:bold;"&gt;use&lt;/span&gt; &lt;span style="color: #000000;"&gt;warnings&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;print&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;&amp;quot;Content-type: text/plain\n\n&amp;quot;&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;my&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$data_dir&lt;/span&gt; = &lt;span style="color: #00688B;"&gt;$ENV&lt;/span&gt;{&lt;span style="color: #000000;"&gt;OPENSHIFT_DATA_DIR&lt;/span&gt;}&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
&lt;span style="color: #8B008B; font-weight:bold;"&gt;my&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$file&lt;/span&gt; = &lt;span style="color: #CD5555;"&gt;&amp;#39;test.txt&amp;#39;&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;open&lt;/span&gt; &lt;span style="color: #000000;"&gt;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;OUT&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;&amp;quot;&amp;gt;&amp;quot;&lt;/span&gt; &lt;span style="color: #000000;"&gt;,&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;&amp;quot;$data_dir/$file&amp;quot;&lt;/span&gt; &lt;span style="color: #000000;"&gt;)&lt;/span&gt; &lt;span style="color: #8B008B; font-weight:bold;"&gt;or&lt;/span&gt; &lt;span style="color: #8B008B; font-weight:bold;"&gt;die&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$!&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;for&lt;/span&gt; &lt;span style="color: #000000;"&gt;(&lt;/span&gt; &lt;span style="color: #B452CD;"&gt;1&lt;/span&gt; .. &lt;span style="color: #B452CD;"&gt;10&lt;/span&gt; &lt;span style="color: #000000;"&gt;)&lt;/span&gt; &lt;span style="color: #000000;"&gt;{&lt;/span&gt;
        &lt;span style="color: #8B008B; font-weight:bold;"&gt;print&lt;/span&gt; &lt;span style="color: #00688B;"&gt;OUT&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;&amp;quot;$_\n&amp;quot;&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
&lt;span style="color: #000000;"&gt;}&lt;/span&gt;
&lt;span style="color: #8B008B; font-weight:bold;"&gt;close&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;OUT&lt;/span&gt;&lt;span style="color: #000000;"&gt;)&lt;/span&gt; &lt;span style="color: #8B008B; font-weight:bold;"&gt;or&lt;/span&gt; &lt;span style="color: #8B008B; font-weight:bold;"&gt;die&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$!&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
&lt;span style="color: #8B008B; font-weight:bold;"&gt;exit&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;)&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
&lt;/pre&gt;
&lt;p&gt;
Die im Ordner &lt;i&gt;data&lt;/i&gt; gespeicherten Daten lassen sich per &lt;i&gt;rhc-snapshot&lt;/i&gt; vom Cloud-Server holen. 
&lt;/p&gt;
&lt;pre&gt;
$ tree
.
|-- ci
|-- conf
|   `-- magic -&gt; /etc/httpd/conf/magic
|-- conf.d
|-- &lt;b&gt;data&lt;/b&gt;
|   `&lt;b&gt;-- test.txt&lt;/b&gt;
|-- logs
|   |-- access_log-20111122-000000-EST
|   |-- access_log-20111123-000000-EST
|   |-- error_log-20111122-000000-EST
|   `-- error_log-20111123-000000-EST
|-- modules -&gt; /usr/lib64/httpd/modules
|-- perl5lib
|-- repo -&gt; runtime/repo
|-- run
|-- runtime
|   `-- repo
|       |-- deplist.txt
|       |-- libs
|       |-- misc
|       |-- perl
|       |   |-- health_check.pl
|       |   |-- index.pl
|       |   |-- printenv.pl
|       |   |-- read.pl
|       |   `-- write.pl
|       `-- README
`-- tmp
&lt;/pre&gt;

&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;h2&gt;Siehe auch&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://openshift.redhat.com/app/"&gt;OpenShift by Red Hat&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://openshift.redhat.com/app/express"&gt;OpenShift Express&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.redhat.com/docs/en-US/OpenShift_Express/1.0/html/User_Guide/index.html"&gt;User Guide - Using OpenShift Express to manage your applications in the cloud&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.redhat.com/openshift/faq/"&gt;Frequently Asked Questions &gt; OpenShift FAQ&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.redhat.com/openshift/kb/kb-e1013-how-to-onboard-a-perl-application"&gt;OpenShift Knowledge Base - How to onboard a Perl application&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/openshift"&gt;OpenShift Beispiele auf GitHub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.redhat.com/openshift/kb/kb-e1014-how-to-deploy-the-perl-dancer-framework-on-openshift-express"&gt;OpenShift Knowledge Base - How to deploy the Perl Dancer framework on OpenShift Express&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/openshift/dancer-example"&gt;openshift / dancer-example&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.redhat.com/openshift/kb/kb-e1000/installing-openshift-express-client-tools-on-non-rpm-based-systems"&gt;OpenShift Knowledge Base - Installing OpenShift Express client tools on Mac OSX, Linux, and Windows&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;man 5 express.conf - configuration file for OpenShift Express&lt;/li&gt;
&lt;li&gt;man 1 rhc-create-domain - creates a new OpenShift Express domain namespace with a user&lt;/li&gt;
&lt;li&gt;man 1 rhc-create-app - creates a new hosted application at rhcloud.com&lt;/li&gt;
&lt;li&gt;man 1 rhc-tail-files - Tail files from remote running applications in real-time&lt;/li&gt;
&lt;li&gt;man 1 rhc-user-info - Displays information about a user on the rhcloud.com system&lt;/li&gt;
&lt;li&gt;man 1 rhc-chk - Diagnoses the connection between this client and the OpenShift servers&lt;/li&gt;
&lt;li&gt;man 1 rhc-ctl-app - Control an existing rhcloud.com application&lt;/li&gt;
&lt;li&gt;man 1 rhc-snapshot - Pulls down an application snapshot as gzipped tarfile&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.redhat.com/openshift/faq/i-have-deployed-my-app-but-i-don%E2%80%99t-like-telling-people-to-visit-myapp-myusernamerhcloudcom-how-c"&gt;OpenShift Knowledge Base - I have deployed my app, but I don&amp;#39;t like telling people to visit &amp;lt;my_app&gt;-&amp;lt;my_username&gt;.rhcloud.com. How can I set up my own domain name to point to my app?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.redhat.com/openshift/kb/kb-e1011-redirecting-your-server-to-openshift-express-with-modrewrite"&gt;OpenShift Knowledge Base - Redirecting your server to OpenShift Express with mod_rewrite&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linux-magazin.de/Heft-Abo/Ausgaben/2011/10/Open-Shift?category=0"&gt;Linux Magazin - Cloud-K&amp;uuml;che - Red Hat Open Shift: Plattform für Webentwickler und Hoster&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


        
    &lt;img src="http://feeds.feedburner.com/~r/PerlHowto/~4/tRqnG3EcsXI" height="1" width="1"/&gt;</content>
<title>Perl HowTo: Perl in the Cloud - OpenShift Express by Red Hat - Installation, Initialisierung und Konfiguration</title></entry>
  <entry>
    
    <link rel="alternate" type="text/html" href="http://perl-howto.de/2011/11/wwwgooglepagerank-google-pagerank-fur-websites-abfragen.html"/>
    <id>tag:perl-howto.de,2011://1.224</id>

    <published>2011-11-21T17:17:53Z</published>
    <updated>2011-11-21T17:38:54Z</updated>

    <summary><![CDATA[ WWW::Google::PageRank von Yuri Karaban ermittelt den Google Pagerank f&uuml;r Websites. &nbsp; Pagerank ermitteln: get() Die Methode get() liefert im skalaren Kontext den Pagerank, im Listenkontext den Pagerank und zus&auml;tzlich ein HTTP::Response Objekt zum Debuggen zur&uuml;ck. &nbsp; Beispiel: get() im...]]></summary>
    <author>
        <name>Thomas Fahle</name>
        <uri>http://www.thomas-fahle.de</uri>
    </author>
    
        <category term="LWP" scheme="http://www.sixapart.com/ns/types#category"/>
    
    <category term="perl" label="perl" scheme="http://www.sixapart.com/ns/types#tag"/>
    
    <content type="html" xml:lang="de" xml:base="http://perl-howto.de/">
        &lt;p&gt;
&lt;a href="http://search.cpan.org/perldoc?WWW::Google::PageRank"&gt;WWW::Google::PageRank&lt;/a&gt; von &lt;a href="http://search.cpan.org/~ykar/"&gt;Yuri Karaban&lt;/a&gt; ermittelt den &lt;a href="http://www.google.com/about/corporate/company/"&gt;Google &lt;/a&gt; &lt;a href="http://de.wikipedia.org/wiki/PageRank"&gt;Pagerank&lt;/a&gt; f&amp;uuml;r Websites.
&lt;/p&gt;

&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;

&lt;h2&gt;Pagerank ermitteln: get()&lt;/h2&gt;
&lt;p&gt;
Die Methode &lt;i&gt;get()&lt;/i&gt; liefert im &lt;b&gt;skalaren Kontext&lt;/b&gt; den Pagerank, im &lt;b&gt;Listenkontext&lt;/b&gt; den Pagerank und zus&amp;auml;tzlich ein &lt;a href="http://search.cpan.org/perldoc?HTTP::Response"&gt;HTTP::Response Objekt&lt;/a&gt; zum Debuggen zur&amp;uuml;ck.
&lt;/p&gt;

&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;

&lt;h3&gt;Beispiel: get() im skalaren Kontext&lt;/h3&gt;
&lt;pre&gt;
#!/usr/bin/perl
&lt;span style="color: #8B008B; font-weight:bold;"&gt;use&lt;/span&gt; &lt;span style="color: #000000;"&gt;strict&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
&lt;span style="color: #8B008B; font-weight:bold;"&gt;use&lt;/span&gt; &lt;span style="color: #000000;"&gt;warnings&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;use&lt;/span&gt; &lt;span style="color: #000000;"&gt;WWW::Google::PageRank&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;my&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$pr&lt;/span&gt; = &lt;span style="color: #000000;"&gt;WWW::Google::PageRank&lt;/span&gt;&lt;span style="color: #000000;"&gt;-&amp;gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt; &lt;span style="color: #000000;"&gt;host&lt;/span&gt; &lt;span style="color: #000000;"&gt;=&amp;gt;&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;&amp;#39;toolbarqueries.google.de&amp;#39;&lt;/span&gt; &lt;span style="color: #000000;"&gt;)&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;my&lt;/span&gt; &lt;span style="color: #00688B;"&gt;@urls&lt;/span&gt; = &lt;span style="color: #CD5555;"&gt;qw!&lt;/span&gt;
  &lt;span style="color: #CD5555;"&gt;http://perl-howto.de&lt;/span&gt;
  &lt;span style="color: #CD5555;"&gt;http://yahoo.de&lt;/span&gt;
  &lt;span style="color: #CD5555;"&gt;http://web.de&lt;/span&gt;
  &lt;span style="color: #CD5555;"&gt;!&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;foreach&lt;/span&gt; &lt;span style="color: #8B008B; font-weight:bold;"&gt;my&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$url&lt;/span&gt; &lt;span style="color: #000000;"&gt;(&lt;/span&gt;&lt;span style="color: #00688B;"&gt;@urls&lt;/span&gt;&lt;span style="color: #000000;"&gt;)&lt;/span&gt; &lt;span style="color: #000000;"&gt;{&lt;/span&gt;
    &lt;span style="color: #8B008B; font-weight:bold;"&gt;print&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;&amp;quot;URL: $url &amp;quot;&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;/span&gt; &lt;span style="color: #8B008B; font-weight:bold;"&gt;scalar&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$pr&lt;/span&gt;&lt;span style="color: #00688B;"&gt;-&amp;gt;get&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt;&lt;span style="color: #00688B;"&gt;$url&lt;/span&gt;&lt;span style="color: #000000;"&gt;)&lt;/span&gt; &lt;span style="color: #000000;"&gt;)&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;&amp;quot;\n&amp;quot;&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
&lt;span style="color: #000000;"&gt;}&lt;/span&gt;
&lt;/pre&gt;
&lt;p&gt;
Das Programm liefert folgende Ausgabe:
&lt;/p&gt;
&lt;pre&gt;
URL: http://perl-howto.de 4
URL: http://yahoo.de 8
URL: http://web.de 7
&lt;/pre&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;

&lt;h3&gt;Beispiel: get() im Listenkontext&lt;/h3&gt;

&lt;pre&gt;
#!/usr/bin/perl
&lt;span style="color: #8B008B; font-weight:bold;"&gt;use&lt;/span&gt; &lt;span style="color: #000000;"&gt;strict&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
&lt;span style="color: #8B008B; font-weight:bold;"&gt;use&lt;/span&gt; &lt;span style="color: #000000;"&gt;warnings&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;use&lt;/span&gt; &lt;span style="color: #000000;"&gt;WWW::Google::PageRank&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;my&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$pr&lt;/span&gt; = &lt;span style="color: #000000;"&gt;WWW::Google::PageRank&lt;/span&gt;&lt;span style="color: #000000;"&gt;-&amp;gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt; &lt;span style="color: #000000;"&gt;host&lt;/span&gt; &lt;span style="color: #000000;"&gt;=&amp;gt;&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;&amp;#39;toolbarqueries.google.de&amp;#39;&lt;/span&gt; &lt;span style="color: #000000;"&gt;)&lt;/span&gt;
  &lt;span style="color: #8B008B; font-weight:bold;"&gt;or&lt;/span&gt; &lt;span style="color: #8B008B; font-weight:bold;"&gt;die&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$!&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #8B008B; font-weight:bold;"&gt;my&lt;/span&gt; &lt;span style="color: #00688B;"&gt;@urls&lt;/span&gt; = &lt;span style="color: #CD5555;"&gt;qw!&lt;/span&gt;
  &lt;span style="color: #CD5555;"&gt;http://perl-howto.de&lt;/span&gt;
  &lt;span style="color: #CD5555;"&gt;http://yahoo.de&lt;/span&gt;
  &lt;span style="color: #CD5555;"&gt;http://web.de&lt;/span&gt;
  &lt;span style="color: #CD5555;"&gt;http://example.tld&lt;/span&gt;
  &lt;span style="color: #CD5555;"&gt;!&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

&lt;span style="color: #228B22;"&gt;# Debug&lt;/span&gt;
&lt;span style="color: #8B008B; font-weight:bold;"&gt;foreach&lt;/span&gt; &lt;span style="color: #8B008B; font-weight:bold;"&gt;my&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$url&lt;/span&gt; &lt;span style="color: #000000;"&gt;(&lt;/span&gt;&lt;span style="color: #00688B;"&gt;@urls&lt;/span&gt;&lt;span style="color: #000000;"&gt;)&lt;/span&gt; &lt;span style="color: #000000;"&gt;{&lt;/span&gt;
    &lt;span style="color: #8B008B; font-weight:bold;"&gt;print&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;&amp;quot;URL: $url &amp;quot;&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

    &lt;span style="color: #8B008B; font-weight:bold;"&gt;my&lt;/span&gt; &lt;span style="color: #000000;"&gt;(&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$pagerank&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$response&lt;/span&gt; &lt;span style="color: #000000;"&gt;)&lt;/span&gt; = &lt;span style="color: #00688B;"&gt;$pr&lt;/span&gt;&lt;span style="color: #00688B;"&gt;-&amp;gt;get&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt;&lt;span style="color: #00688B;"&gt;$url&lt;/span&gt;&lt;span style="color: #000000;"&gt;)&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;

    &lt;span style="color: #8B008B; font-weight:bold;"&gt;if&lt;/span&gt; &lt;span style="color: #000000;"&gt;(&lt;/span&gt; &lt;span style="color: #8B008B; font-weight:bold;"&gt;defined&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$pagerank&lt;/span&gt; &lt;span style="color: #000000;"&gt;)&lt;/span&gt; &lt;span style="color: #000000;"&gt;{&lt;/span&gt;
        &lt;span style="color: #8B008B; font-weight:bold;"&gt;print&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;&amp;quot;PageRank: $pagerank\n&amp;quot;&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
    &lt;span style="color: #000000;"&gt;}&lt;/span&gt;
    &lt;span style="color: #8B008B; font-weight:bold;"&gt;else&lt;/span&gt; &lt;span style="color: #000000;"&gt;{&lt;/span&gt;
        &lt;span style="color: #8B008B; font-weight:bold;"&gt;print&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;&amp;quot;Fehler: &amp;quot;&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$response&lt;/span&gt;&lt;span style="color: #00688B;"&gt;-&amp;gt;status_line&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;&amp;quot;\n&amp;quot;&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
        &lt;span style="color: #8B008B; font-weight:bold;"&gt;warn&lt;/span&gt; &lt;span style="color: #00688B;"&gt;$response&lt;/span&gt;&lt;span style="color: #00688B;"&gt;-&amp;gt;as_string&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;/span&gt; &lt;span style="color: #CD5555;"&gt;&amp;quot;\n&amp;quot;&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;/span&gt;
    &lt;span style="color: #000000;"&gt;}&lt;/span&gt;
&lt;span style="color: #000000;"&gt;}&lt;/span&gt;
&lt;/pre&gt;

&lt;p&gt;
Das Programm liefert folgende Ausgabe (die lange XML-Ausgabe des &lt;i&gt;as_string()&lt;/i&gt; habe ich weggelassen):
&lt;/p&gt;
&lt;pre&gt;
URL: http://perl-howto.de PageRank: 4
URL: http://yahoo.de PageRank: 8
URL: http://web.de PageRank: 7
URL: http://example.tld Fehler: 403 Forbidden
&lt;/pre&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;

&lt;h2&gt;Siehe auch:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://search.cpan.org/perldoc?WWW::Google::PageRank"&gt;WWW::Google::PageRank - Query google pagerank of page&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.perl-uwe.com/2010/12/day-5-check-your-google-pagerank-with.html"&gt;Perl-Uwe.com: Day 5: Check your Google PageRank with WWW::Google::PageRank &lt;/li&gt;
&lt;li&gt;&lt;a href="http://search.cpan.org/perldoc?LWP::UserAgent"&gt;LWP::UserAgent - Web user agent class&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://search.cpan.org/perldoc?HTTP::Response"&gt;HTTP::Response - HTTP style response message&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://perldoc.perl.org/perldata.html#List-value-constructors"&gt;Perldoc - List value constructors&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://search.cpan.org/perldoc?AnyEvent::Google::PageRank"&gt;AnyEvent::Google::PageRank - Non-blocking wrapper for WWW::Google::PageRank&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://search.cpan.org/perldoc?POE::Component::WWW::Google::PageRank"&gt;POE::Component::WWW::Google::PageRank - A non-blocking wrapper for WWW::Google::PageRank&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

        
    &lt;img src="http://feeds.feedburner.com/~r/PerlHowto/~4/Z82BEh6p4Lw" height="1" width="1"/&gt;</content>
<title>Perl HowTo: WWW::Google::PageRank - Google Pagerank für Websites abfragen</title></entry>
  <entry>
    <title>lichtkind's blog: Neue 5.14.1 Taschenreferenz</title>
    <link rel="alternate" href="http://kephra-lk.livejournal.com/4766.html" type="text/html"/>
    <content type="html">Auch wenns nach Nabelschau klingt, ich bin stolz auch nur Testleser der &lt;a href="http://shop.oreilly.com/product/0636920018476.do" rel="nofollow"&gt;Pocketref&lt;/a&gt; gewesen zu sein. Dabei gehts nicht um den Aufwand. Links &lt;a href="http://wiki.perl-community.de/Wissensbasis/PerlWebSites" rel="nofollow"&gt;pflege&lt;/a&gt; ich auch sonst. Und auch sonst waren es nur wenige Stunden &lt;a href="http://perldoc.perl.org/perl5140delta.html" rel="nofollow"&gt;perldoc&lt;/a&gt; lesen, was ich eh f&amp;uuml;r das Tutorial, das ich gerade schreibe, tun musste. Die Coremodule sind leider rausgefallen und neues Material kam sehr sparsam (mehr Details in der n&amp;auml;chsten $foo).&lt;br /&gt;&lt;br /&gt;Auf meinem ersten Perl Workshop 2005 in Dresden gewann ich in der Tombola die dritte (5.6 er) Version (die einzige mit der lustigen Einleitung von Larry). Und ich lernte damit quasi die Tiefen der Sprache. Johan war es auch der meinen CPAN - Account freischaltete (Synchronizit&amp;auml;t ?). Das einige meiner Vorschl&amp;auml;ge jetzt im Buch sind, seh ich als Schulterklopfen der alten B&amp;auml;rte. Und ich sehe mich nicht mehr als den Anf&amp;auml;nger :). Und wenn euch was juckt, macht mit. In der Perlgemeinschaft mitmachen ist manchmal einfacher als man meint.</content>
    <category term="dokumentation"/>
    <id>http://kephra-lk.livejournal.com/4766.html</id>
    <published>2011-11-19T00:04:18Z</published>
    <updated>2011-11-19T00:04:18Z</updated>
  </entry>
  <entry>
    
    <link rel="alternate" type="text/html" href="http://perl-howto.de/2011/11/flossweekly-episode-189-interview-mit-jeffrey-thalhammer-perlcritic.html"/>
    <id>tag:perl-howto.de,2011://1.223</id>

    <published>2011-11-14T21:00:00Z</published>
    <updated>2011-11-14T21:05:57Z</updated>

    <summary> Perl::Critic ist ein statischer Source Code Analyzer für Perl, der die Einhaltung der Perl Best Practices - Standards and Styles for Developing Maintainable Code, prüft. Twit.tv hat ein Interview mit Jeffrey Thalhammer, dem Erfinder von Perl::Critic veröffentlicht. Das Interview...</summary>
    <author>
        <name>Thomas Fahle</name>
        <uri>http://www.thomas-fahle.de</uri>
    </author>
    
        <category term="Talks" scheme="http://www.sixapart.com/ns/types#category"/>
    
    <category term="bestpractices" label="best practices" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="perl" label="perl" scheme="http://www.sixapart.com/ns/types#tag"/>
    
    <content type="html" xml:lang="de" xml:base="http://perl-howto.de/">
        &lt;p&gt;
&lt;a href="http://search.cpan.org/perldoc?Perl::Critic"&gt;Perl::Critic&lt;/a&gt; ist ein statischer Source Code Analyzer für &lt;a href="http://www.perl.org"&gt;Perl&lt;/a&gt;, der die Einhaltung der &lt;a href="http://shop.oreilly.com/product/9780596001735.do"&gt;Perl Best Practices&lt;/a&gt; - Standards and Styles for Developing Maintainable Code, prüft.
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://twit.tv/"&gt;Twit.tv&lt;/a&gt; hat ein &lt;a href="http://twit.tv/show/floss-weekly/189"&gt;Interview&lt;/a&gt; mit Jeffrey Thalhammer, dem Erfinder von &lt;a href="http://search.cpan.org/perldoc?Perl::Critic"&gt;Perl::Critic&lt;/a&gt;  veröffentlicht.
&lt;/p&gt;
&lt;p&gt;
Das Interview führt &lt;a href="http://www.stonehenge.com/merlyn/"&gt;Randal Schwartz&lt;/a&gt; zusammen mit &lt;a href="http://thesourceshow.org/"&gt;Aaron Newcomb&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
In dem sehenswerten Video gehen die drei auf die Hintergründe und die Geschichte von Perl::Critic ein, zeigen Beispiele für die Verwendung und finden mit Perl::Critic gleich ein paar Bugs.
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;h2&gt;Enjoy!&lt;/h2&gt;

&lt;iframe src="http://twit.tv/embed/10114" width="640" height="320" scrolling="no" marginwidth="0" marginheight="0" hspace="0" align="middle" frameborder="0"&gt;&lt;/iframe&gt;

&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;

&lt;h2&gt;Perl::Critic ausprobieren&lt;/h2&gt;
&lt;p&gt;
Wer Perl::Critic einfach mal ausprobieren möchte, kann eine Datei mit Perl Source Code auf der Website &lt;a href="http://www.perlcritic.org/"&gt;http://www.perlcritic.org/ (Some Ways Are Better Than Others)&lt;/a&gt; hochladen und prüfen lassen.
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;


&lt;h2&gt;Siehe auch:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://search.cpan.org/perldoc?Perl::Critic"&gt;Perl::Critic&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.perlcritic.org/"&gt;http://www.perlcritic.org/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://refcards.com/refcard/perl-best-practices-vromansj"&gt;Perl Best Practices Reference card&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.slideshare.net/joshua.mcadams/yapcna-2007-an-introduction-to-perl-critic"&gt;An introduction to PerlCritic&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.slideshare.net/joshua.mcadams/yapcna-2007-customizing-and-extending-perl-critic"&gt;Customizing and Extending PerlCritic&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://reneeb-perlblog.blogspot.com/2009/05/eigene-perlcritic-policies.html"&gt;Perl-Blog: eigene Perl::Critic Policies&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://damienlearnsperl.blogspot.com/2009/03/write-better-perl-with-perlcritic.html"&gt;Damien Learns Perl: Write better Perl with Perl::Critic&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;

&lt;h2&gt;Via:&lt;/h2&gt;
&lt;p&gt;
Perl-News: &lt;a href="http://perl-nachrichten.de/index.cgi/details/983"&gt;FLOSS-Weekly: Interview mit Jeffrey Thalhammer - Perl::Critic&lt;/a&gt;
&lt;/p&gt;
        
    &lt;img src="http://feeds.feedburner.com/~r/PerlHowto/~4/AtP5yfoqGpk" height="1" width="1"/&gt;</content>
<title>Perl HowTo: FLOSS-Weekly Episode 189: Interview mit Jeffrey Thalhammer - Perl::Critic</title></entry>
  <entry>
    <title>lichtkind's blog: Twin City Perl Workshop in Wien / Bratislava</title>
    <link rel="alternate" href="http://kephra-lk.livejournal.com/4541.html" type="text/html"/>
    <content type="html">... war ein kleiner aber sch&amp;ouml;ner. &lt;a href="http://www.perl-community.de/bat/poard/thread/16881" rel="nofollow"&gt;Das meiste dazu schrieb ich bereits&lt;/a&gt;. und dank wombats und der 29,- Spezialpreise der Bahn nicht mal teuer. die wiener sind wirklich ganz eigner haufen. das merkte man nicht nur zur YAPC 2007 die sehr gut gewesen sein soll. Bei diese Treffen gehts ja eh meist darum mal Leute zu treffen die in manchem einen besser verstehen k&amp;ouml;nnen als alles was einem sonst das Jahr &amp;uuml;ber begegnet.</content>
    <id>http://kephra-lk.livejournal.com/4541.html</id>
    <published>2011-11-07T23:31:05Z</published>
    <updated>2011-11-07T23:31:05Z</updated>
  </entry>
  <entry xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
    <id>tag:blogger.com,1999:blog-8909542667463743647.post-2270110797564286136</id>
    <published>2011-10-21T17:33:00.000+02:00</published>
    <updated>2011-10-21T17:33:13.249+02:00</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="Perlworkshop"/>
    <content type="html">Am letzten Tag standen folgende Vorträge auf dem Programm:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Perl in der Wolke&lt;/span&gt; (Denis Banovic)&lt;br /&gt;Denis zeigte Stackato (welches auf VMware CloudFoundry basiert) am Beispiel einer Dancer-Anwendung.&lt;span style="display: block;" id="formatbar_Buttons"&gt;&lt;span onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);" class=" down" style="display: block;" id="formatbar_CreateLink" title="Link"&gt;&lt;img src="http://www.blogger.com/img/blank.gif" alt="Link" class="gl_link" border="0" /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Captive::Portal - eine hochskalierende Hotspotlösung&lt;/span&gt; (Karl Gaissmaier)&lt;br /&gt;Interessanter Vortrag über "WLAN-Anmeldeseiten".&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Tanz!&lt;/span&gt; (Stefan "racke" Hornburg)&lt;br /&gt;Eine Einführung in Dancer (ein Webframework). Typisch sind die vielen exportierten Funktionen - man muß es halt mögen... &lt;a href="http://www.linuxia.de/talks/pws2011/"&gt;Folien&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Nach der Mittagspause standen auf dem Programm:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Perl vs. JavaScript - eine Differentialdiagnose&lt;/span&gt; (Rolf "LanX" Langsdorf)&lt;br /&gt;Rolf möchte Perl 5 nach JavaScript konvertieren. Im Vortrag ging er auf die Unterschiede (und Gemeinsamkeiten) der beiden Sprachen ein.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Deutsch oder Englisch? Über die Sprache in Perl-Modulen&lt;/span&gt; (Richard "Horshack" Lippmann)&lt;br /&gt;Ein sehr amüsanter Vortrag über das Dilemma verschiedensprachlicher Programmierer.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Bessere Dokumentation schreiben&lt;/span&gt; (Herbert "lichtkind" Breunung)&lt;br /&gt;"Programmieren ist wie ein Sturz die Treppe runter..."&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Qualitätsmanagement bei GeNUA&lt;/span&gt; (Steffen Ullrich)&lt;br /&gt;&lt;ul&gt;&lt;li&gt;kaum Unittests, vermehrt Livetests&lt;/li&gt;&lt;li&gt;Styleguide an Perl Best Practices orientiert&lt;/li&gt;&lt;li&gt;1,4 Mio. Zeilen Perl-Code&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Hg vs. Git&lt;/span&gt; (Herbert "lichtkind" Breunung)&lt;br /&gt;Eine Einführung in Versionskontrolle und ein Vergleich von Mercurial und Git.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Perl für Vortragende&lt;/span&gt; (Renee Bäcker)&lt;br /&gt;Renee verrät Damian Conway's Tricks für Live Demos.&lt;br /&gt;&lt;br /&gt;Damit enden drei schöne Tage. Vielen Dank an die Organisatoren. Eine gute Generalprobe für die YAPC::EU 2012.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8909542667463743647-2270110797564286136?l=www.perl-uwe.de' alt='' /&gt;&lt;/div&gt;</content>
    <link rel="replies" type="application/atom+xml" href="http://www.perl-uwe.de/feeds/2270110797564286136/comments/default" title="Kommentare zum Post"/>
    <link rel="replies" type="text/html" href="http://www.perl-uwe.de/2011/10/13-deutscher-perlworkshop-tag-3.html#comment-form" title="1 Kommentare"/>
    <link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8909542667463743647/posts/default/2270110797564286136"/>
    <link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8909542667463743647/posts/default/2270110797564286136"/>
    <link rel="alternate" type="text/html" href="http://www.perl-uwe.de/2011/10/13-deutscher-perlworkshop-tag-3.html" title="13. Deutscher Perlworkshop: Tag 3"/>
    <author>
      <name>Uwe Voelker</name>
      <uri>https://profiles.google.com/106319388693164629696</uri>
      <email>noreply@blogger.com</email>
      <gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif"/>
    </author>
    <thr:total>1</thr:total>
    <title>Perl-Uwe.de: 13. Deutscher Perlworkshop: Tag 3</title>
  </entry>
  <entry>
    <title>Perl im O'Reilly-Blog: Vorgestellt: Die Frankfurt Perl Mongers</title>
    <link rel="alternate" href="http://community.oreilly.de/blog/2011/10/13/vorgestellt-die-frankfurt-perl-mongers/" type="text/html"/>
    <content type="html">
      <div xmlns="http://www.w3.org/1999/xhtml">Usergroups bieten den direkten, persönlichen Austausch über Techie-Themen, oftmals in netter abendlicher Runde bei Vereinen, Firmen oder auch in Kneipen. Hier können Informatiker Gleichgesinnte treffen, sich bei Vorträgen weiterbilden oder sich über den Arbeitsalltag austauschen. Nicht zuletzt sind bereits einige Aufträge oder Stellen über Usergroup-Kontakte vergeben worden. O’Reilly unterstützt die Usergroups bereits seit vielen Jahren, [...]</div>
    </content>
    <category term="Technologie"/>
    <author>
      <name>Corina Pahrmann</name>
    </author>
    <id>http://community.oreilly.de/blog/?p=10750</id>
    <published>2011-10-13T13:20:30Z</published>
    <updated>2011-10-13T13:20:30Z</updated>
  </entry>
  <entry>
    <title>Perl im O'Reilly-Blog: Gut informiert in den Tag mit Perl</title>
    <link rel="alternate" href="http://community.oreilly.de/blog/2010/10/06/gut-informiert-in-den-tag-mit-perl/" type="text/html"/>
    <content type="html">
      <div xmlns="http://www.w3.org/1999/xhtml">Ein O’Reilly-Post am Morgen lässt den Tag gut beginnen. Deshalb zeige ich hier eine kleine Perl-Anwendung für Windows, mit der ich den Titel und einen kleinen Auszug des aktuellsten Posts hier im oreillyblog angezeigt bekomme. Die Anwendung besteht im Prinzip aus drei Teilen: 1. Der Teil für den Taskschedulereintrag 2. Der Teil, der den RSS-Feed [...]</div>
    </content>
    <category term="Gastbeiträge"/>
    <author>
      <name>Nathalie Pelz</name>
    </author>
    <id>http://community.oreilly.de/blog/?p=5676</id>
    <published>2010-10-06T12:49:09Z</published>
    <updated>2010-10-06T12:49:09Z</updated>
  </entry>
  <entry>
    
    <link rel="alternate" type="text/html" href="http://www.perl-blog.de/2010/08/async-dbi.html"/>
    <id>tag:www.perl-blog.de,2010://5.694</id>

    <published>2010-08-12T21:23:23Z</published>
    <updated>2010-08-12T21:26:13Z</updated>

    <summary>Mit PostgreSQL und DBI sowie DBD::Pg ist es möglich, SQL-Queries im Hintergrund asynchron laufen zu lassen – und währenddessen in Perl weitere Berechnungen anzustellen, anstatt nur auf die Daten zu warten. Insbesondere bei Multi-Core-CPUs oder einer Trennung von Datenbankserver und...</summary>
    <author>
        <name>Alvar Freude</name>
        <uri>http://alvar.a-blast.org/</uri>
    </author>
    
        <category term="Datenbanken" scheme="http://www.sixapart.com/ns/types#category"/>
    
        <category term="Performance-Optimierung" scheme="http://www.sixapart.com/ns/types#category"/>
    
        <category term="PostgreSQL" scheme="http://www.sixapart.com/ns/types#category"/>
    
    <category term="dbdpg" label="DBD::Pg" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="dbi" label="DBI" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="perl" label="Perl" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="postgresql" label="PostgreSQL" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="asynchron" label="asynchron" scheme="http://www.sixapart.com/ns/types#tag"/>
    
    <content type="html" xml:lang="de" xml:base="http://www.perl-blog.de/">
        <![CDATA[<p>Mit <a href="http://www.postgresql.org/">PostgreSQL</a> und <a class="ext" href="http://search.cpan.org/dist/DBI/DBI.pm">DBI</a> sowie <a class="ext" href="http://search.cpan.org/dist/DBD-Pg/Pg.pm">DBD::Pg</a> ist es möglich, SQL-Queries im Hintergrund asynchron laufen zu lassen – und währenddessen in Perl weitere Berechnungen anzustellen, anstatt nur auf die Daten zu warten. Insbesondere bei Multi-Core-CPUs oder einer Trennung von Datenbankserver und Anwendung ist dies eine sehr praktische Sache.</p>
<p>Und einfach ist es obendrein!</p>
<p>Bei dem jeweiligen Aufruf von <em>$dbh-&gt;do</em>, <em>$dbh-&gt;prepare</em> oder <em>$dbh-&gt;prepare_cached</em> muss nur das Attribut&nbsp;PG_ASYNC hinzugefügt werden. Besonders praktisch ist das bei INSERT und UPDATE Queries, wenn also keine Rückgabewerte ausgewertet werden müssen, da kann man im neuen Query einfach noch auf den Rest des alten warten:</p>
<pre>use DBD::Pg qw(:async);    # Async-Konstanten einbinden

# ... und später Query vorbereiten:

my $sth = $self-&gt;dbh-&gt;prepare( "INSERT INTO table ...", 
          { pg_async =&gt; PG_ASYNC + PG_OLDQUERY_WAIT } );

# ... und dann zum Beispiel in einer Schleife aufrufen
while ( my @parameter = calculate_next_insert() )
    {
    $sth-&gt;execute( @parameter );
    }

# ...

</pre>
<p>Wenn man also zwischen mehreren INSERT-Statements noch Eingabedaten berechnen muss, kann dies Zeit sparen. Vor weiteren Queries oder dem Commit sollte man dann noch mit $dbh-&gt;pg_result() auf das Ergebnis des letzten asynchronen Queries warten.</p>
<p>Mehr Beispiele und die Darstellung aller Features gibt es in der <a class="ext" href="http://search.cpan.org/dist/DBD-Pg/Pg.pm#Asynchronous_Queries">DBD::Pg Dokumentation</a>.</p>
<p>&nbsp;</p>]]>
        
    </content>
<title>Perl-Blog (Alvar Freude): Asynchrone Datenbankzugriffe im Hintergrund mit PostgreSQL und DBD::Pg</title></entry>
  <entry>
    <title>Perl im O'Reilly-Blog: 12. Deutscher Perl-Workshop in Schorndorf (bei Stuttgart) vom 07.-09. Juni 2010</title>
    <link rel="alternate" href="http://community.oreilly.de/blog/2010/06/04/12-deutscher-perl-workshop-in-schorndorf-bei-stuttgart-vom-07-09-juni-2010/" type="text/html"/>
    <content type="html">
      <div xmlns="http://www.w3.org/1999/xhtml">Der Deutsche Perl-Workshop vom 07.-09. Juni 2010 ist die jährliche Konferenz meist deutschsprachiger Anwender und Entwickler der Programmiersprache Perl. Veranstaltungsort ist wieder die Barbara-Künkelin-Halle in Schorndorf. Der Schwerpunkt des von der Deutscher Perl-Workshop GbR und der Wirtschaftsförderung Region Stuttgart GmbH veranstalteten Workshops ist „Modern Perl“. Dabei spielen zum Beispiel die Module Catalyst, Moose und DBIx::Class [...]</div>
    </content>
    <category term="Veranstaltungen"/>
    <author>
      <name>Tina Koch</name>
    </author>
    <id>http://community.oreilly.de/blog/?p=4633</id>
    <published>2010-06-04T06:34:02Z</published>
    <updated>2010-06-04T06:34:02Z</updated>
  </entry>
  <entry>
    <title>Perl-Programmieren.de: Blogs auf perl.org</title>
    <link rel="alternate" href="http://www.perl-programmieren.de/artikel/blogs-auf-perlorg" type="text/html"/>
    <content type="html">
      <div xmlns="http://www.w3.org/1999/xhtml"><p>Seit einigen Wochen gibt es auf perl.org auch eine Blog-Plattform für
Perl-Entwickler: <a href="http://blogs.perl.org">blogs.perl.org</a> wird von Dave Cross
and Aaron Crane betrieben und arbeitet auf Basis von Movable Type, einer
ausgereiften, in Perl geschriebenen Weblog-Software.</p>
<p><a href="http://www.perl-programmieren.de/artikel/blogs-auf-perlorg" target="_blank">Weiterlesen</a></p><img src="http://feeds.feedburner.com/~r/perlprogrammieren/~4/3eVIBj-ZNJY" height="1" width="1"/></div>
    </content>
    <category term="Website"/>
    <author>
      <name>jochen</name>
    </author>
    <id>25 at http://www.perl-programmieren.de</id>
    <published>2010-03-16T08:18:09Z</published>
    <updated>2010-03-16T08:18:09Z</updated>
  </entry>
  <entry>
    <title>Perl-Programmieren.de: Neuer Perl-Meisterkurs im April</title>
    <link rel="alternate" href="http://www.perl-programmieren.de/artikel/neuer-perl-meisterkurs-im-april" type="text/html"/>
    <content type="html">
      <div xmlns="http://www.w3.org/1999/xhtml"><p>Im April startet Freistil-Consulting einen neuen Perl-Meisterkurs. Das 10-wöchige Online-Seminar wendet sich insbesondere an Einsteiger in die Programmiersprache.</p>

<p>Im Perl-Meisterkurs lernen Sie jeden wichtigen Aspekt der Perl-Programmierung kennen, begleitet von einem erfahren Perl-Entwickler und -Trainer. Die Lerninhalte sind umfangreich, aber in handhabbare Abschnitte aufgeteilt.</p>
<p><a href="http://www.perl-programmieren.de/artikel/neuer-perl-meisterkurs-im-april" target="_blank">Weiterlesen</a></p><img src="http://feeds.feedburner.com/~r/perlprogrammieren/~4/MY1uxY7Lyr0" height="1" width="1"/></div>
    </content>
    <category term="kurs"/>
    <author>
      <name>webmaster</name>
    </author>
    <id>24 at http://www.perl-programmieren.de</id>
    <published>2010-03-02T15:33:36Z</published>
    <updated>2010-03-02T15:33:36Z</updated>
  </entry>
  <entry>
    
    <link rel="alternate" type="text/html" href="http://www.perl-blog.de/2010/02/pws-12-cfp.html"/>
    <id>tag:www.perl-blog.de,2010://5.581</id>

    <published>2010-02-17T20:42:23Z</published>
    <updated>2010-02-17T21:09:40Z</updated>

    <summary>Vom 7. bis 9. Juni 2010 findet der 12. Deutsche Perl-Workshop in Schorndorf bei Stuttgart statt. Zielgruppe des Workshops sind alle Perl-Anwender und die, die es werden wollen. Der Workshop steht und fällt mit den Vorträgen, die 5, 20 oder...</summary>
    <author>
        <name>Alvar Freude</name>
        <uri>http://alvar.a-blast.org/</uri>
    </author>
    
        <category term="Perl-Workshop" scheme="http://www.sixapart.com/ns/types#category"/>
    
        <category term="Termine" scheme="http://www.sixapart.com/ns/types#category"/>
    
        <category term="Veranstaltungen" scheme="http://www.sixapart.com/ns/types#category"/>
    
    <category term="modernperl" label="Modern Perl" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="pws" label="PWS" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="perl" label="Perl" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="perlworkshop" label="Perl-Workshop" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="schorndorf" label="Schorndorf" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="stuttgart" label="Stuttgart" scheme="http://www.sixapart.com/ns/types#tag"/>
    
    <content type="html" xml:lang="de" xml:base="http://www.perl-blog.de/">
        <![CDATA[<p>Vom 7. bis 9. Juni 2010 findet der <a class="ext" href="http://www.perl-workshop.de/de/">12. Deutsche Perl-Workshop</a> in Schorndorf bei Stuttgart statt. Zielgruppe des Workshops sind alle Perl-Anwender und die, die es werden wollen.</p>
<p>Der Workshop steht und fällt mit den Vorträgen, die 5, 20 oder 40 Minuten lang sein können.&nbsp;</p>
<p>Alle Themen, die mit Perl oder dem Perl-Umfeld, insbesondere dem Thema „Modern Perl“, zu tun haben, können als Vorträge für den Workshop interessant sein. Die Einreichungsfrist für Vorschläge wurde auf Freitag, den 05. März 2010 verlängert.&nbsp;</p>
<p>&nbsp;&nbsp;<a class="ext" href="http://conferences.yapceurope.org/gpw2010">http://conferences.yapceurope.org/gpw2010</a></p>
<p>Der Deutsche Perl-Workshop ist die jährliche Konferenz meist deutschsprachiger Anwender und Entwickler der dynamischen Open-Source-Programmiersprache Perl. Der Schwerpunkt des von der Deutscher Perl-Workshop GbR und der <a class="ext" href="http://www.region-stuttgart.de/">Wirtschaftsförderung Region Stuttgart</a> (WRS) verstaltelten Workshops ist „Modern Perl“. Dabei spielen zum Beispiel die Module Catalyst, Moose und DBIx::Class eine wichtige Rolle. Catalyst als sehr flexibles Webframework, Moose mit einer postmodernen Objektorientierung für Perl und DBIx::Class als Schicht zwischen Anwendung und Datenbanken.</p>]]>
        
    </content>
<title>Perl-Blog (Alvar Freude): Call for Papers: 12. Deutscher Perl-Workshop 2010: „Modern Perl“</title></entry>
  <entry>
    <title>Perl im O'Reilly-Blog: Spielen mit Perl – irgendwie…</title>
    <link rel="alternate" href="http://community.oreilly.de/blog/2009/12/10/spielen-mit-perl/" type="text/html"/>
    <content type="html">
      <div xmlns="http://www.w3.org/1999/xhtml">In diesem Beitrag unserer kleinen Perl-Reihe zeigt Renée Bäcker, wie Spielen noch mehr Spaß machen kann: Wenn man es nämlich automatisiert und so nebenbei noch die Automatisierungsmöglichkeiten von Perl erproben kann. Dann mal auf die Plätze, fertig, los: Nein, heute geht es nicht darum, Spiele mit Perl zu programmieren – darum kümmern sich andere. Ich [...]</div>
    </content>
    <category term="Gastbeiträge"/>
    <author>
      <name>Ariane Hesse</name>
    </author>
    <id>http://community.oreilly.de/blog/?p=3204</id>
    <published>2009-12-10T12:29:52Z</published>
    <updated>2009-12-10T12:29:52Z</updated>
  </entry>
  <entry>
    
    <link rel="alternate" type="text/html" href="http://www.perl-blog.de/2009/11/patch-proxy-fur-das-mt-twitter-plugin-ha.html"/>
    <id>tag:www.perl-blog.de,2009://5.545</id>

    <published>2009-11-27T18:44:56Z</published>
    <updated>2009-11-27T19:48:56Z</updated>

    <summary><![CDATA[So wie schon das Akismet-Plugin&nbsp;hat auch das Twitter-Plugin&nbsp;HashTag für Movable Type ein Proxy-Problem und ignoriert die MT-Systemeinstellung für Proxies. Auf diesem hier Server hat das Jail (das ist quasi eine virtuelle Maschine) aus Sicherheitsgründen nicht wirklich Internet-Zugriff, daher kommen auch...]]></summary>
    <author>
        <name>Alvar Freude</name>
        <uri>http://alvar.a-blast.org/</uri>
    </author>
    
        <category term="Movable Type Plugins" scheme="http://www.sixapart.com/ns/types#category"/>
    
    <category term="movabletype" label="Movable Type" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="movabletypeplugin" label="Movable Type Plugin" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="patch" label="Patch" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="twitter" label="Twitter" scheme="http://www.sixapart.com/ns/types#tag"/>
    
    <content type="html" xml:lang="de" xml:base="http://www.perl-blog.de/">
        <![CDATA[<p>So wie schon das <a href="http://www.perl-blog.de/2008/02/movable-type-akismet-plugin-un.html">Akismet-Plugin</a>&nbsp;hat auch das <a class="ext" href="http://www.composing-stick.net/projects/hashtag/">Twitter-Plugin&nbsp;HashTag</a> für <a class="ext" href="http://www.movabletype.org/">Movable Type</a> ein Proxy-Problem und ignoriert die MT-Systemeinstellung für Proxies. Auf diesem hier Server hat das <a class="ext" href="http://en.wikipedia.org/wiki/FreeBSD_jail">Jail</a> (das ist quasi eine virtuelle Maschine) aus Sicherheitsgründen nicht wirklich Internet-Zugriff, daher kommen auch keine Tweets nach draußen.</p>
<p>Also muss mal wieder ein Patch her, dann klappts auch mit dem Proxy; der Patch muss auf&nbsp;<em>plugins/HashTag/lib/HashTag/Plugin.pm</em> angewendet werden und passt zur aktuellen Beta-Version 2.5:</p>
<pre>--- original_Plugin.nopm.pm	2009-07-17 23:45:12.000000000 +0200
+++ Plugin.pm	2009-11-27 19:38:58.000000000 +0100
@@ -137,6 +137,10 @@
     require LWP::UserAgent;
 
     my $ua = LWP::UserAgent-&gt;new;
+    # set HTTP Proxy when set in config file (AF)
+    if (my $proxy = MT::ConfigMgr-&gt;instance-&gt;HTTPProxy) {
+        $ua-&gt;proxy('http', $proxy);
+    }
 
     $ua-&gt;credentials('twitter.com:80','Twitter API',$cfg-&gt;{tw_username} =&gt; $cfg-&gt;{tw_password},);
</pre>
<div><span style="font-size: small;">Mit dem Patch&nbsp; ließt das Plugin aus der passenden Konfigurations-Direktive&nbsp;<em>HTTPProxy</em>in mt-config.cgi die Angaben für den Proxy und setzt diese.</span></div>
<div><span style="font-size: x-small;"><span><br /></span></span></div>]]>
        
    </content>
<title>Perl-Blog (Alvar Freude): Patch: Proxy für das MT-Twitter-Plugin „HashTag“</title></entry>
  <entry>
    <title>Perl-Programmieren.de: Perl.org in neuem Gewand</title>
    <link rel="alternate" href="http://www.perl-programmieren.de/artikel/perlorg-neuem-gewand" type="text/html"/>
    <content type="html">
      <div xmlns="http://www.w3.org/1999/xhtml"><p>Vor kurzem wurde <a href="http://perl.org">Perl.org</a>, die Anlaufstelle für Perl-Entwickler aller Welt, einem Relaunch unterzogen und erstrahlt seither in einem neuen, modernen Layout.</p>

<p>Natürlich zählt der Inhalt mehr, aber für den Nutzungskomfort und die Außenwirkung des Portals ist das neue Layout auf jeden Fall ein wichtiger Schritt nach vorn.</p><img src="http://feeds.feedburner.com/~r/perlprogrammieren/~4/g_MotK-bc5E" height="1" width="1"/></div>
    </content>
    <category term="Website"/>
    <author>
      <name>jochen</name>
    </author>
    <id>23 at http://www.perl-programmieren.de</id>
    <published>2009-11-15T16:38:28Z</published>
    <updated>2009-11-15T16:38:28Z</updated>
  </entry>
  <entry>
    
    <link rel="alternate" type="text/html" href="http://www.perl-blog.de/2009/08/perl-5101-ist-da.html"/>
    <id>tag:www.perl-blog.de,2009://5.450</id>

    <published>2009-08-23T17:03:06Z</published>
    <updated>2009-08-23T17:03:59Z</updated>

    <summary><![CDATA[Die Version 10.1 von Perl 5 ist da! Eine Weile hat es gedauert, aber nun ist Perl 5.10.1 da, wie Renée berichtet.&nbsp; Sehr interessant scheint mir die dtrace Unterstützung, da gibt es sicherlich einiges zu experimentieren. Einige Änderungen am Smart-Match...]]></summary>
    <author>
        <name>Alvar Freude</name>
        <uri>http://alvar.a-blast.org/</uri>
    </author>
    
    <category term="perl" label="perl" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="perl5" label="perl5" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="perl6" label="perl6" scheme="http://www.sixapart.com/ns/types#tag"/>
    
    <content type="html" xml:lang="de" xml:base="http://www.perl-blog.de/">
        <![CDATA[<p>Die Version 10.1 von Perl 5 ist da!</p>
<p>Eine Weile hat es gedauert, aber nun ist Perl 5.10.1 da, <a class="ext" href="http://perl-nachrichten.de/index.cgi/details/554">wie Renée berichtet</a>.&nbsp;</p>
<p>Sehr interessant scheint mir die dtrace Unterstützung, da gibt es sicherlich einiges zu experimentieren. Einige Änderungen am Smart-Match sind nicht rückwärtskompatibel, ungewöhnlich für eine kleine Versionsänderung. Außerdem gibt es einige Performance-Optimierungen, Bugfixes sowie die üblichen Aktualisierungen der mitgelieferten Module. Siehe auch: <a class="ext" href="http://perl5.git.perl.org/perl.git/blob_plain/maint-5.10:/pod/perl5101delta.pod">alle Änderungen</a>.</p>
<p>Ach, und wenn ich schon dabei bin: Perl 6 kommt im nächsten Frühjahr. Perl 6 ist nicht der Nachfolger von Perl 5.10 (das wird Perl 5.12), sondern eine neue Sprache, <a class="ext" href="http://www.heise.de/newsticker/Perl-6-kommt-im-Fruehjahr-2010-zumindest-teilweise--/meldung/143183">erscheint im Frühjahr 2010</a>.&nbsp;</p>]]>
        
    </content>
<title>Perl-Blog (Alvar Freude): Perl 5.10.1 ist da</title></entry>
  <entry>
    <title>Perl-Programmieren.de: Perl-Meisterkurs 2009</title>
    <link rel="alternate" href="http://www.perl-programmieren.de/artikel/perl-meisterkurs-2009" type="text/html"/>
    <content type="html">
      <div xmlns="http://www.w3.org/1999/xhtml"><p>Am 5. Oktober 2009 startet <a href="http://www.freistil-consulting.de/">Freistil-Consulting</a> einen weiteren <a href="http://www.freistil-consulting.de/onlinetraining/perl-meisterkurs">Perl-Meisterkurs</a>. Das 10-wöchige Online-Seminar wendet sich insbesondere an Einsteiger in die Programmiersprache.</p>

<p>Im Perl-Meisterkurs lernen Sie jeden wichtigen Aspekt der Perl-Programmierung kennen, begleitet von einem erfahren Perl-Entwickler und -Trainer. Die Lerninhalte sind umfangreich, aber in handhabbare Abschnitte aufgeteilt.</p>
<p><a href="http://www.perl-programmieren.de/artikel/perl-meisterkurs-2009" target="_blank">Weiterlesen</a></p><img src="http://feeds.feedburner.com/~r/perlprogrammieren/~4/gZwoQ2_XJC4" height="1" width="1"/></div>
    </content>
    <category term="kurs"/>
    <author>
      <name>webmaster</name>
    </author>
    <id>22 at http://www.perl-programmieren.de</id>
    <published>2009-07-26T18:04:59Z</published>
    <updated>2009-07-26T18:04:59Z</updated>
  </entry>
  <entry>
    <title>Perl-Programmieren.de: Der Leyenfilter</title>
    <link rel="alternate" href="http://www.perl-programmieren.de/artikel/der-leyenfilter" type="text/html"/>
    <content type="html">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>...oder hieß das Laienfilter? Hab jetzt keine Zeit, nachzuschauen. Hier einfach der Link zu der <a href="http://www.aptgetupdate.de/2009/04/23/ohne-worte-der-leyenfilter/">neuen Software</a>, die das Internet sauberer macht. Sie ist nämlich in Perl geschrieben!</p>
        <img src="http://feeds.feedburner.com/~r/perlprogrammieren/~4/DGP-ibklmCY" height="1" width="1"/>
      </div>
    </content>
    <author>
      <name>webmaster</name>
    </author>
    <id>21 at http://www.perl-programmieren.de</id>
    <published>2009-04-26T20:30:08Z</published>
    <updated>2009-04-26T20:30:08Z</updated>
  </entry>
  <entry>
    
    <link rel="alternate" type="text/html" href="http://www.perl-blog.de/2009/03/eclipse-use-utf8-problem.html"/>
    <id>tag:www.perl-blog.de,2009://5.319</id>

    <published>2009-03-23T12:02:47Z</published>
    <updated>2009-03-23T12:02:37Z</updated>

    <summary>Mit use utf8; lässt sich im Perl-Code einschalten, dass alle im Source definierten Strings usw. als UTF-8 interpretiert werden. Dazu muss der Source natürlich auch in UTF-8 sein. Mit Eclipse bzw. dem EPIC Perl-Plugin und dessen Syntax-Check gibt es da...</summary>
    <author>
        <name>Alvar Freude</name>
        <uri>http://alvar.a-blast.org/</uri>
    </author>
    
        <category term="Diverses" scheme="http://www.sixapart.com/ns/types#category"/>
    
    <category term="epic" label="EPIC" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="eclipse" label="Eclipse" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="encoding" label="Encoding" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="mac" label="Mac" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="osx" label="OS X" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="perl" label="Perl" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="utf8" label="UTF-8" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="utf8" label="UTF8" scheme="http://www.sixapart.com/ns/types#tag"/>
    <category term="windows" label="Windows" scheme="http://www.sixapart.com/ns/types#tag"/>
    
    <content type="html" xml:lang="de" xml:base="http://www.perl-blog.de/">
        <![CDATA[<p>Mit use utf8; lässt sich im Perl-Code einschalten, dass alle im Source definierten Strings usw. als UTF-8 interpretiert werden. Dazu muss der Source natürlich auch in UTF-8 sein.</p>
<p>Mit Eclipse bzw. dem EPIC Perl-Plugin und dessen Syntax-Check gibt es da aber zumindest unter OS X und Windows ein Problem, es wird zum Beispiel die folgende Fehlermeldung angezeigt:</p>
<pre>   Malformed UTF-8 character (unexpected non-continuation byte 0x7a, 
   immediately after start byte 0xc4) at 210.text-converter.t line 23.</pre>
<p>Das liegt daran, dass Eclipse auch korrekt als UTF-8 gespeicherten Source im Standard-Encoding an Perl zum Syntaxcheck weiterreicht: das korrekte UTF-8 wird also in ein anderes Encoding gewandelt. Und das ist unter OS X das MacRoman aus alten Zeiten vor OS X – und das ist natürlich kein valides UTF-8!</p>
<h3>Abhilfe</h3>
<p>Korrekterweise sollte das Perl-Plugin die Datei natürlich im für die Datei eingestellten Zeichensatz weiterreichen. Also einfach gar nicht konvertieren. Bis das passiert kann man sich aber auch anders behelfen:</p>
<p>Man füge die folgende Zeile&nbsp;in der <em>eclipse.ini</em> ein:</p>
<pre>&nbsp;&nbsp;-Dfile.encoding=UTF-8</pre>
<p>Die eclipse.ini findet man unter OS X unter&nbsp;<em>Eclipse.app/Contents/MacOS</em>&nbsp;bzw.&nbsp;im Application Bundle von Eclipse (im Finder Rechtsklick, „Paketinhalt zeigen“) im gleichnamigen Ordner via Terminal.</p>
<p>Unter Windows ist die Datei vermutlich an einem vergleichbaren Ort.</p>
<p>Alternativ kann man Eclipse den Parameter beim Start via Kommandozeile auch manuell mitgeben.</p>
<p>&nbsp;</p>
<p>Als Nebenwirkung werden nun zum Syntaxcheck auch Dateien, die in Latin-1 codiert sind, für den Syntaxcheck nach UTF-8 gewandelt.</p>
<p>&nbsp;</p>]]>
        
    </content>
<title>Perl-Blog (Alvar Freude): Eclipse, Probleme mit use utf8 und Abhilfe</title></entry>
</feed>

