Notes from the Frankfurt Perl Workshop 2026

Tags:

We did the almost-annual unconference, this time at the Saalbau Bornheim. The attendance was expectedly low at 5 persons, one person joining us from Amsterdam and one person joining us from Darmstadt, the rest being Frankfurt.pm regulars.

None of us had prepared anything in a presentation format, with slides, but we had a lot to talk about regarding the use of LLMs and what that means for the economy and also for us personally. I spoke a lot about how I don't see that the AI frontier labs can ever recoup the money they've pledged on datacenters. We also mused about why Chinese labs are giving away their models and also why Mark Zuckerberg is doing the same with Llama-2 and Llama-3. We concluded that this is their strategic approach to prevent a hegemony by the other two frontier labs.

Tech-wise, we looked at some approaches to LLMs. I showed my (yet) unpublished skeleton files for Perl modules and Mojolicious applications. I've found that giving LLMs like GLM-5.3 files to work from tends to prod the model to produce code close to that style. Since I prefer that style to other styles, I've found this approach very successful.

In addition, we also looked at how superpowers works and that a good side benefit of using it is that you get some test files written by the LLM already. We all found that creating test files is a good use of LLMs. Since the code in test files is disposable and if the test file is written in a too complex way, you can just delete it or rewrite it without consequences on the main code.

My main comparison was between the two approaches I'd used for writing two applications. One application was an extractor that creates CalDAV entries from a picture of an event poster. I had created that script using GLM-5.3 as a one-shot without superpowers. The resulting code worked, and used GLM-4.6V to parse the image and create the .ics output. The resulting code also was very icky to work with, spending far more lines on various configurability I would never use and precautions against missing tools that would never be missing.

The other application was a web frontend to the pi agent, to make it more convenient for me to use LLMs. Using the browser allows me to create fancy widgets to display the status of the test suite and also submit screenshots to the LLM for reference. I created this frontend using a relatively detailed list of features and also described which functionality should be implemented in what file, providing structure to the LLM. This approach resulted in much better and much more maintainable code than the one-shot leaving the LLM to implement things all on its own.

For lunch, we went to a new Chinese-style place with handmade noodles. I had a reasonably priced beef soup with handmade noodles. It was very spicy but otherwise good.

After lunch, we discussed the use of Perl to tie together some tools for language and speech analysis. We looked at how different Chinese is from other languages, and how different Cantonese and Mandarin are.