Alpine City Sprint 2025 report
February 10 - 14, 2025 in Innsbruck, Austria.
Once again, an Alpine City Sprint has come to an end—an event we will all look back on fondly.
Hack ’n’Dine Award
This year, the sprint was held under the theme "Hack 'n' Dine", and we had the pleasure of awarding the winner of Hack 'n' Dine their certification. The democratic vote among the attending Plonistas was a close race between Johannes Raggam and Peter Holzer, with Johannes Raggam ultimately emerging as the winner, followed closely by Peter Holzer and Philip Bauer.
The criteria for Hack 'n' Dine were simple: hacking during dinner at an official Plone event. As a result, nominees were not limited to those attending the Alpine City Sprint itself. To verify participation, Christine searched for evidence in Plone Flickr photos and also accepted nominations from attendees who could provide witness testimony confirming that nominees met the criteria. Candidates were selected for nomination using ney and aye.
All nominees received a certificate, with those present at the event receiving their certificates and badges in person. Those unable to attend will receive their certificates and this year’s Alpine City Sprint sticker by mail. The time frame for proof photos ranged from the Plone Conference in Bristol 2014 to the Alpine City Sprint 2025.
Nominees:
(alphabetical order)
Meet the Plone Community – A Special Evening at the University of Innsbruck
We had the opportunity to make a strong impression at the University of Innsbruck on Tuesday evening, February 11, 2025. Under the theme "Meet the Plone Community," we were invited by ZID and the Department of Computer Science to the brand-new Agnes Heller building as a shining example of a well-functioning open-source community.
I would like to thank the Plonistas who prepared and delivered 14 lightning talks on Plone and the community. The talks ranged from technical overviews of Plone, Zope, and Volto to community-focused discussions such as "What is a Sprint?", "How It All Began", and "How Our Community Works."
We were warmly welcomed by Prof. Justus Piater (Institute of Computer Science), and the evening concluded with presentations from Matthias Weiler (ZID) and Melanie Bartos (University of Innsbruck Public Relations Office), who shared their experiences with open source—particularly Mastodon.
The discussions at the buffet were lively, touching on topics like open source, community building, Plone, and Mastodon. As seasoned open-source enthusiasts, it was refreshing to see interest in the philosophy behind open source—not just its cost benefits. It was a pleasure to share our experiences and inspire the next generation in promoting open social media.
A huge thank you to Alexander Pilz from Syslab for generously sponsoring this event!
Alpine City Sprint as a Strategic Sprint
Before anyone asks why the Alpine City Sprint is considered a strategic sprint, I’d like to share some highlights from the work, discussions, decisions, and successes of this year’s event.
A major breakthrough was achieved during the complete Classic UI Team meeting at the Alpine City Sprint, which saw nearly the entire team in-person, with one member joining remotely. Together, they made significant progress in brainstorming PLIPs, focusing on Classic UI, tooling, deployment, and backend improvements.
Release Managers from Plone and Zope, along with members of the testing, admin, and infrastructure teams, attended the event to discuss and work on key topics essential for maintaining the foundation of the Plone development community, enabling others to build and innovate on top of Plone.
The process of bootstrapping a Plone project, developing with Plone, and then performing simple deployments with Docker Swarm, as well as more complex deployments using Kubernetes, was well-covered. However, it still requires further attention and refinement in future strategic sprints.
We had a successful regional outreach with the "Meet The Plone Community" event, attracting around 30 highly engaged attendees, bringing the total to 50 participants. The concept of organizing an evening with local FOSS communities and/or universities to introduce Plone and showcase the regional FOSS network appears to be an effective marketing strategy.
ClassicUI Template Migration & Modernization
- Significant progress in moving templates to plone.app.layout, simplifying Plone’s Classic UI structure. This includes efforts to even more split application logic and template logic, making the logic better reusable in plone.restapi
- Packages with improvements are
plone.locking,
,
plone.app.contentrulesplone.app.workflow
, andplone.app.linkintegrity
. - Cleanup and refactoring of legacy templates for consistency. Migration efforts ensured smooth transitions and documentation updates.
- Fixes on
z3c.jbot
to allow deprecation of templates.
ClassicUI UI Enhancements
- Fixes and improvements to
contentbrowser
, resolving modal redirection issues and UI inconsistencies. - Enhancements in Storybook for better UI component documentation and testing.
- Migration of
patternslib
from Webpack to Vite, improving performance and maintainability. - Work on modernizing form tabbing in Classic UI, improving user experience (proposal state).
- Focus on UI-related fixes and component migration.
Infrastructure and Packaging
- plone.meta, Infrastructure and deployment improvements were a key focus area.
- Enhancements to Jenkins pipelines and GitHub Actions workflows, improving test reliability.
- Adoption of native namespace packages (PEP 420) to clean up package management. This needed fixes in some buildout related add-ons before starting with it.
- Plone AI (Admin and Infrastructure) team related tasks.
- Improvements in coredev workflows, particularly around Python version handling.
Deployment and Development
- Progress on cookieplone/cookieplone-templates, focusing on a ClassicUI only variant and on more flexible storage options, like ZEO.
- Bugfixing in cookieplone-templates and overhaul of the documentation for cookieplone.
- Starting discussion on optimizations for Backend/ClassicUI containers through
cookieplone
andcookiecutters
. - Improvements in Kubernetes tooling (
cdk8s-plone
), including better documentation and testing strategies. - Documentation and refinements for the Plone emergency user system.
- Enhancements in and release of mxmake.
- Discussion about our usage of pre-commit.
- Backend enhancements and package refactoring were actively pursued.
PLIP & Community Contributions
- Possible ClassicUI PLIPs brainstorming sessions covering Classic UI, backend, and deployment strategies. Adding a temporary project board with the results to be sorted.
- Discussions and PLIP proposals helped to shape future Plone development.
- Enhancements to timezone support PLIP for plone.app.event and Volto.
- Initial groundwork for several Plone 6.2 improvements.
- Modernization discussions for
plonecli
to streamline add-on development.
Other Notable Work
- Lots of reviews and merges of open pull requests on Github.
- Work on collective.outputfilter.socialmediaconsent.
- Contributions to yafowil.
- Experiments to use devcontainers with Plone in VSCode
Thanks to the participants
None of this progress would have been possible without the dedication of the 23 participants (three of them remote). A huge thank you to everyone who contributed their time, expertise, and enthusiasm. We also appreciate the companies and organizations that supported their employees in attending the sprint. Special thanks to the Plone Foundation for sponsoring the venue, coffee, and snacks, and to Syslab for providing beverages and catering during the Meet The Plone Community event.
This sprint has been a significant step forward to set the stage for Plone 6.2 and beyond.
There is still a lot of work ahead of us, and we hope to see you all again next time! 🚀
More images from the Alpine City Sprint can be found on flickr.