It’s a classic libre software contributor story: Someone uses a tool, and adds to it a missing feature they want. Nextcloud contributor Bernhard Posselt got started this way and became a central member of the Nextcloud community.
He is based in Austria, studied Software Engineering, programs mostly in Java (Spring), and tries to find time to learn Haskell and Rust. Next step: Diving into Idris.
Like many, the first libre software he remembers using is Firefox. Later, Beryl (renamed Compiz) got him interested in Linux, before Windows Vista slowdowns fully pushed him over the edge: “Been toying with it for a bit and migrated fully after my new 2000€ Sony Vaio Laptop proved unable to run Vista at appropriate speeds”, he said.
The last step from user to libre software contributor was a small one for Bernhard: “I think it was sometime back in 2010 and 2011, when I wanted to migrate away from Google. I ran ownCloud for calendar and contact sync, but a decent RSS reader was missing. I took to IRC to complain about it in their channel, took a look at the linked repo, made changes, sent way too many pull requests, and got rewarded push access.”
Like many libre software contributors, Bernhard got started as a student. At the time working on the Nextcloud News app as a student, to then take over development of the app as a volunteer for ownCloud a few months later. As a perfectionist, he quickly felt like the development model of, (in his own words) “writing templates with back-end code sprinkled in between”, made proper testing harder than it needed to be. Eventually a solution was found: “I started working on a basic dependency injection container, middleware, database layer and controllers, later integrated into ownCloud. I know, don’t reinvent the wheel, but Symfony was not trivial to integrate and would have broken things in its way.”
When asked about the most challenging aspects of his work on the Nextcloud App, Bernhard retorts unexpectedly. Communicating with users is something that cost him a lot of time and effort. “Communication over text is by far the biggest challenge, followed by the tech stack. The app itself is pretty popular so there are a lot of feature requests. I rejected a high number of them because they are out of scope (e.g. Twitter API integration, a Yahoo Pipelines like way to filter feeds). It is very hard to communicate via text only. You get several essays into explaining why feature X won’t be implemented in avoiding hurting feelings of ideas rejected. They also put work into writing the issue, so that’s understandable.”
A lesson learnt: Asking of a single volunteer contributor to implement many features can overwhelm. “Adding features actually makes it harder to change or improve an app. You have very strictly consider implementation, and shove off as much as you can into third party additions. People are very lazy, yet very demanding. Many feature requests fit the bill of being solved using the well documented plugin API. Ultimately no one did anything with it, not even ask questions. I know not everyone is a developer, but somehow that failed.”
He joined the inception of Nextcloud, mostly due to being uncomfortable with ownCloud’s business model. “It was widely known that ownCloud was funded by venture capital. These guys usually don’t think long term, and cash out after a few years once growth declines, selling their shares to the highest bidder. Worst case scenario the new owner would have gone fully closed source, or crippled the libre software version. We all know what happened when Sun was bought by Oracle.”
Unfortunately, Bernhard’s migration wasn’t as peaceful as one could wish: “I got various angry messages on IRC telling me that I wasn’t allowed to move the repo since it belonged to ownCloud Inc. asking me to take down my ‘Nextcloud News’ titled app from the ownCloud store. I realized then that Nextcloud could very likely be cut off from the store altogether”. To the contrary, this contributed to his motivation to join Nextcloud, where he made his presence felt by building the missing store he was kicked out of: “I prototyped something that worked in a few days with Django, and got the basic store up and running in a month.”
Now in a very demanding job, and sporting two small kids, he has less leftover time for contributions. Still he does his best to keep active in the community. Wishes for the future: “Currently the server does not yet support nightly channels, making it harder to get quick feedback. The Cron system has a few race conditions sometimes preventing the feed update from running after an upgrade. Sometimes I’m wondering if people think about error handling at all. As for distributing things over the App Store: Things should be “easy enough” to get going. The certificate is obviously a bit of a hurdle, but well documented and in hindsight a good decision.”
Having brought countless improvements to Nextcloud – he then helped update outdated developer documentation, and added an app scaffolding tool (ocdev) now integrated into the store – Bernhard now focuses on what he considers the most essential part of his contribution: “Since my time is now very limited, I unfortunately had to give up working on the News app and only maintain the store. If you want to see further development being done on News, please drop by our issue tracker.”
Nextcloud is on an international tour spreading the word of Nextcloud Hub 6 this October! Go to any of the following events to: Whether you’re in Germany, Italy, Latvia, Singapore or the UAE, we’re ready to share the latest of what Nextcloud has to offer nearest you. Open Source Week (OSW23) October 3-5, Rome, Italy […]
As part of Schleswig-Holstein's state digitization strategy, the state chancellery has announced they will work with Nextcloud to develop AI for working with government documents. This comes just after we announced the first private AI assistant last weekend with Hub 6. The German state already uses Nextcloud and their AI strategy aligns with our work on ethical, local AI technologies.
Our latest release supports a healthy meeting culture, introduces the Nextcloud Assistant and emphasizes user-centric design, transparency and user control. Thank you to our community! 💙 Nextcloud would not be the same without our dedicated, encouraging community. A huge thank you to the thousands of community members for making this release the best it can […]
Video calls and online chats are second nature for us at this point. Taking your work call virtually or communicating with your manager online can all be done from home and this style of working is generally accepted. However, what is not universally accepted is the fact that Big Tech firms are ambiguous about what […]
Over the last year, AI has become a popular topic. Some is hype, some is substance. Some is good, some is bad. We want to give you the good, not the bad, and ignore the hype! AI has a ton of opportunity – but also risk. So we put you in control – off by […]
Data Loss Prevention, or DLP, is an essential security tool for any business or organization. Since you never know when you may be at risk of a data breach, it’s important to adopt some form of DLP. A typical example are anti-virus scanners. Thanks to the new ICAP support, Nextcloud can now be made to […]
Just like that, the Nextcloud Conference has come to a close. It’s been an exciting weekend and we can’t wait to share it with you! Today was the second and final day of the conference and we hope it was a great experience for all who attended. If you missed it, sit back and relax […]