Pengutronix has been to FrOSCon at the University of Applied Sciences Bonn-Rhein-Sieg. This year we had a booth where we presented our Open Source activities and were able to contribute three talks. A booth at an Open Source conference like FrOSCon always opens doors to a lot of interesting conversations with new faces, old friends and colleagues.
This blog post will tell our story from the beginning…
This year six Pengutronix colleagues took the opportunity to visit FrOSCon 14. We arrived on Friday afternoon. We voted that we would build up our booth on Saturday morning (and to get up a little earlier). That gave us the evening to get some food and local beer.
St. Augustin was giving us the cold shoulder and welcomed us with lots of rain. But hey, we did not travel there for the landscape anyway.
Saturday started like the Friday ended – without rain (yay!) but with even more food. Our small hotel presented us an overwhelming breakfast.
We went to the venue and started to decorate our booth. This year we brought two demos:
The 4-Video Demo is an oldie in our zoo of demos. This is an in-flight entertainment system build around an NXP i.MX6 generously provided by a customer. In this demo four videos are played back simultaneously using the hardware decoder in the CPU.
Since hardware like this flies on real planes, it is a great showcase for what open source systems allow you to do:
- The demo is 100% open source – there is no vendor proprietary driver or software in this system. This gives us full control over the system and allows us to address bugs in every subsystem as they emerge. There is no need to wait for weeks for a silicon manufacturer to take a look at your support case!
- All software is up to date. Since we are using the mainline versions of the software, we usually have no or only little patches in our BSP. That makes updating especially easy.
Flamingo – Static site generator
FrOSCon is the first time we present the Flamingo static site generator to the public. A static site generator is a piece of software that converts input files like reStructured text or Markdown into a website. Since all needed files are generated during build, there is no need for a CMS – the only software needed is a webserver like Apache2 or nginx.
Flamingo has been used to build this website for about a year now. Florian also did a talk the next day about Flamingo and the decisions that lead us to build our own static site generator.
Talk: Build your own phone system with Asterisk
In the afternoon Florian and Chris told the story of how they got to build the new phone system for Pengutronix using Asterisk and Django.
Last year we decided that it's time to replace our Alcatel OmniPCX-based phone system with something more modern. We needed more DECT phones, DECT on multiple sites, and we wanted a nicer management interface (Windows XP VMs with a GUI-based tool are so 2000s!).
Florian and Chris built their phone system around an Asterisk as call router and a Django application for the user interface and the configuration.
In the talk they presented how they built an unconventional interface between Asterisk and the Python world.
Day one started with a surprise: The tram that should bring us to the venue was canceled. We called it a blessing in disguise and took the chance to take a short (3 km) walk instead. At least the sun was shining and we still had plenty of time to arrive for Marie's and Florian's talks.
Talk: Management tools in open source development
Marie talked about how she implemented a new business process manual at Pengutronix.
In her talk Marie showed us that she deliberately used hacker-compatible tools like
- Git for version control,
- Sphinx for document management,
- and Jenkins for continuous testing and continuous deployment.
This way she wanted to lower the barriers for all other employees to participate in the development of the process manual and thus make it a useful tool for the daily work in our company.
Marie encouraged the audience to choose the tools that fit the employees best – even if they are unconventional for that particular use case.
Talk: Why flamingos are the better pelicans
At the same time as Marie held her talk, Florian was talking about the reasons that made him start to develop Flamingo.
Florian started with a brief tour through the history of pengutronix.de. In the early 2000s we started with a WML-based website. We used that technology until just a few years ago: With a new corporate design we launched a new website based on the static site generator Pelican.
It took Florian quite some effort until our website looked the way we wanted. But in the end it worked somehow… We weren't able to update to newer Pelican versions – but it's just generating a static site. Thus this is, at least, not a security concern.
Just a few years later we wanted to launch a new website based on the same software stack. After a short evaluation we came to the conclusion that this was not feasible using the Pelican-based system. The idea to build Flaming was born.
Wrapping it up
FrOSCon 14 has been a great conference. It brings together a good mix of developers, users and newbies and it provides everybody a welcoming and safe environment.
I am always pleased to see how such an event is organized and carried out by so many caring volunteers. And I really appreciate the professionalism, efficiency and kindness all the trades show during the event.
In ein paar Stunden beginnt die 18. FrOSCon an der Hochschule Bonn-Rhein-Sieg. Pengutronix ist wieder mit einem kleinen Team vor Ort. An einem der Partner-Stände zeigen wir wieder einige unserer Aktivitäten in der Open Source Community. Dafür bringen wir unseren labgrid Demonstrator und die FPGA Demo mit.
Django ist Pengutronix' Framework der Wahl für Software zur Abwicklung unserer Geschäftsprozesse. Diese internen Werkzeuge bieten zudem auch immer die Gelegenheit neuere Entwicklungen im Django-Universum auszuprobieren.
Nach der Corona-Pause finden am 11.+12.03.2023 die Chemnitzer Linux-Tage in diesem Jahr wieder vor Ort statt, und das Pengutronix Team ist mit acht (!) Vorträgen im Programm vertreten.