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.”
News Reader
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.”
Joining Nextcloud
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.”
Focus
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 has been recognized with the World Summit Award Germany that selects and promotes local digital innovation improving society, aiming to contribute to the United Nations' agenda of sustainable development goals.
Nextcloud Hub 9 lets you stay connected. Discover new federation features, workflow automation, big design overhaul and much much more in your favourite open-source collaboration platform!
DIE ZEIT, a prominent German outlet, interviewed Nextcloud’s founder Frank Karlitschek for an article on Microsoft’s anti-competitive behaviour on the European office software market. Read for a recap of the article and the key takeaways.
MagentaCLOUD’s migration to Nextcloud in 2021 resulted in a fully equipped Online Storage with an integrated online office suite that further improves the user experience, flexibility and security for customers.
We bring you a major update to the Nextcloud AI Assistant, plus the news we work with several big hosting providers like IONOS and OVHcloud to bring AI-as-a-Service options to you!
Bechtle and Nextcloud announce today a complete managed collaboration platform for the public sector that requires no tender and can be deployed immediately.
Discover how to make the switch from ownCloud to Nextcloud. Our quick guide provides insights into the migration process, helping you make the transition smoothly.
Today, US-based file sync & share vendor Kiteworks announced their acquisition of ownCloud and Dracoon. Kiteworks points out that their customers now have access to their file-sharing application. It is to be expected they will not maintain 3 similar products, but customers will have to migrate to the US firms’ platform or look for another […]
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.
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 […]
On December 3rd, we invite you to the Nextcloud Enterprise Day Paris, Nextcloud's flagship event for professionals. The day will kick off with a keynote by our CEO and founder, Frank Karlitschek—a highlight where he will share our vision for the future of online collaboration, followed by a major announcement about Nextcloud Talk!
Maintenance updates 28.0.12, 29.0.9 and 30.0.2 for Nextcloud Hub 7, 8 and 9 respectively are here! Read an update summary and access full changelog on the website.
We save some cookies to count visitors and make the site easier to use. This doesn't leave our server and isn't to track you personally!
See our Privacy Policy for more information. Customize
Statistics cookies collect information anonymously and help us understand how our visitors use our website. We use cloud-hosted Matomo
Matomo
_pk_ses*: Counts the first visit of the user
_pk_id*: Helps not to double count the visits.
mtm_cookie_consent: Remembers that consent for storing and using cookies was given by the user.
_pk_ses*: 30 minutes
_pk_id*: 28 days
mtm_cookie_consent: 30 days