/ domm

I hack Perl for fun and profit

Follow me on twitter!
Atom Icom ... on Atom!
12.08.2017: Things I learned at the European Perl Conference 2017 in Amsterdam
04.08.2017: What I expect from a Web Framework
13.07.2017: Using a DarkPAN with Carton
02.01.2017: Vienna.pm Meeting dates for 2017 (as calculated by Perl 6)
23.12.2016: Announcing Plack::Middleware::PrettyException
13.09.2016: Too dumb for TCP
04.09.2016: Alpine Perl Workshop 2016

On 2nd and 3rd September Vienna.pm and Swiss Perl mongers hosted the first Alpine Perl Workshop in Innsbruck, Austria.

Day 1

The conference started with an interesting and fun talk by brian d foy on the terse history of the Schwartzian Transform.

Next was Bradley Anderson who released the Turducken. I assume if he'd anticipated that the Turducken would turn out to be the unofficial motto for the conference, he'd never introduced us to this classic US dish.

Sawyer X told us via random assortments of Puzzles about his life in the fast lane, which boiled down a very wise piece of life advice: Don't be an asshole.

Thomas Eisenbock then presented the architecture his company used to handle some extreme high loads when implementing an online game for the German TV show "Tatort". It involved microservices, token based auth, and of course Perl (in the form of Mojolicous).

Then I hurried through my How to write an API endpoint in 2016 talk. Spoiler: Don't write code in the controller, embrace the Fat Model!

After lunch in the mensa, Liz gave a short intro on how to release your own Perl 6 module, which was followed by a 2h hackathon / hands-on tutorial in an extra room. While I did not manage to actually start working on a module, I got some good hints. If I manage to finish this write-up fast enough, I might put those tips to good use on the train ride back to Vienna.

Thomas took the stage again to present a more technical view on their Tatort game, which also included a good introduction to the concepts of multitasking, parallel and asynchron techniques.

Maroš Kollár introduced us to The Art of Moose Meta Programming. As I attended Liz' tutorial for a bit, I only got the first few slides, where I at least learned that Moose means "Massive Object Oriented Stacktrace Emitter".

Lee Johnson then showed us how to battle a legacy schema with DBIx::Class where he once again proved the power of DBIx::Class, but also told people to not use DBIx::Class as the Model of an application (similar to what I said in my API talk)

Racke continued the theme by showing us how to use DBIx::Class effectively. Among other things, there are plugins that make rather powerful subqueries easy-ish in DBIx::Class. I still prefer to write complex queries as raw SQL and either pack those queries into a view (which than can be used like a regular ResultSet), or just fall back to plain old DBI.

Raw SQL was featured a lot in my next talk on 9 PostgreSQL features I wish I learned earlier.

Next we had a slot of lightning talks:

In the evening we met for the Social Event sponsored by booking.com. We spend a few hours in the courtyard of the Fischerhäusl with delicious food and one drink or the other. Different to Cluj, there was no dancing!

Day 2

The second day started with a short hiccup, as the university was locked down for the weekend, and the key we got did not open the main locks. So while the orgas were busy trying to find someone with the right key, the rest of the attendees spend a nice half hour in the sunshine outside the venue, with real nice view on the surrounding mountains.

Due to some other orga work, I missed most of Sayers talk on Perl 5.24 and the Zen of Motorcycle Maintenance, but I'm sure it was excellent.

Maroš is using Google Protocol Buffers for some sinister purposes involving pencil sharpeners shaped like cats (yet another image that will haunt the attendees forever).

Nicholas Clark was up next telling us what would have happened if Camelia didn't flap her wings. Besides being a fun and interesting talk, it also showed us that Nicholas can never use enough laptops and shirts on stage.

brian d foy had a rather math-heavy talk on Excellent Numbers, which I unfortunately had to leave after being introduced to twitter as a logging tool to sort out a problem with my hotel booking.

I was back in time to still get some of the pizza we had ordered for lunch.

Nine then did a very motivating talk on the great team Perl 5 and Perl 6 make: Inline::Perl5 basically removes all excuses one might have to not use Perl 6. And even though it was not mentioned, I could feel a rather strong presence of the Turducken...

Karl Brodowsky had another math-y talk showing us why computers calculate wrong, but that they tend to get it right if one uses Perl 6 to tell them what to do.

The Java vs Perl death match hosted by Bradley turned out to be more of a walk on the beach, but also showing some of the misconceptions each language has of the other.

Lee was up again, this time showing off some rather nice git bits that make using the best VCS even nicer.

Axel Beckert encouraged us to use Travis CI with out Perl based projects hosted on github. Seems rather easy to setup, so I'll give it a try soon.

The last proper talk was by Jozef Kutej, who not only teached us about the rather big number of possible combination of ice and roller skates, but also about 2B from scratch using Perl.

brain d foy had the honor of the doing the last lightning talk, where he showed us some cool features upcoming in Perl 5.28.

After lots of tearful goodbyes the few Perl hackers remaining in Innsbruck went for some delicious Nepalese food (neither ospeaTURDUCKENkidovithumosem nor emvulpebaglapenpacrospaswal was served) and some more drinks later.


You can find links to most / all slides on the conference website


I would like to thank


We haven't decided yet if we want to do another Alpine Perl Workshop, but are considering it. What do you think? Would you attend another Alpine Perl Workshop? Maybe in Bregenz? Liechtenstein? In a ski resort?

Comments (via senph)

26.08.2016: Things I learned at the European Perl Conference 2016 in Cluj
26.07.2016: App::TimeTracker::Command::TellSlack
18.06.2016: Announcing Plack::App::ServiceStatus