This morning startet with a debugging session. Denis Banovic demonstrated the elegance and ease in which Devel::hdb can get used to debug a running app inside a browser.
The next two talks were held by Ralf Peine who showed his Perl Open Report Framework. In his first talk he demonstrated the typical usage for generating reports from possible huge amounts of data. The framework consists of several decoupled parts getting coordinated by a mediator. In his next talk he mentioned many patterns and idioms he used inside his software.
Jürgen Peters demonstrated some Haskel features by live hacking a couple of functions doing recursive or list-prcessing work. He raised errors by mis-typing types for demonstrating the type-checking capabilities of the Haskel compiler. His conclusion was that compile-time checking is of high value which lives in contrast to the dynamic nature of Perl.
The final talk before the lunch break was held by Steffen Ullrich. In this talk he explained the technical background for using TLS with various protocols as well as the problems that some implementing Modules had and sometimes still have.
After Lunch, Johann Rolschewski demonstrated Catmandu, the Perl data toolkit. Catmandu contains abstractions for data import, transformation, storage and manipulation. This enables a developer to focus on the data instead of technical details.
Next was Hernert Breunung talking about GCL, his DSL build on top of WxPerl for creating GUI applications much easier than using WxPerl directly.
Stefan Hornburg talked about Dancer and DBIx::Class and demonstrated his work on a Table Editor based on a REST interface implemented with Dancer and forwarding REST operations to Resources accessable via a given DBIx::Class Schema. Inside the browser an interface based on angular.js is issuing all REST Requests via Ajax calls. The aim is to get a tool comparable to PhpMyAdmin.
Matt S. Trout was talking about Devops Logique. The amusing part at the beginning of his talk compared several programming languages and their strengths or weaknesses. Getting back to system configuration he admired Prolog and its backtracking capabilities for edge cases which sometimes fail when using conventional approaches. Finally he presented his idea of a configuration tool based on a ruleset and explained the steps taken inside the machinery. A strong complain against puppet is that it "stamps over an existing configuration" instead of triggering a ticket. Looks like we can look forward to get a great configuration tool.
Lars Dieckow gave his amusing talk about "removing the uppercase (ß) == SS hack in unicode".
Herbert Breunung gave a talk entitled "Complete Programming". His suggestion for an order was to start with generating Documentation followed by a Prototype. Finally Code is written and Tests come last. The reason for doing tests last in his oppinion is to prevent double coding due to changes during coding.