Technical insights and software architecture

Deep dives into PHP development, Horde Framework evolution and practical software engineering. Focused on real-world solutions for complex technical challenges. “Always close to the source”.

Core Topics

PHP, Horde Framework, authentication systems, composer workflows and modern development practices.

Long-form Analysis

Comprehensive technical articles exploring architectural decisions, migration strategies and lessons learned from real projects.

Code & Community

Open source contributions, framework development and sharing knowledge with the PHP developer community.

Category: horde

  • What’s new in Maintaina Horde: Status 3/2021

    CalDAV and CardDAV now run off SabreDAV 4 rather than SabreDAV 2 We now support both the Composer installer versions 1 and 2. Nothing still depends on the PEAR protocol. The Horde Icalendar Library now supports vCard 4. Still, importing/exporting vCard 4 or using it in CardDAV in the addressbook App Turba is not yet…

  • Maintaina Horde: Q&A

    by

    in

    There’s sometimes a little confusion about that. Let’s answer common questions. What is Maintaina Horde? Horde is a long-living email and groupware solution. It’s free & open source and owned by Horde LLC.Maintaina Horde is a fork from the official horde repository adding / improving code. It started out as a proof of concept but…

  • DAVx5 CalDAV may break with Unicode symbols in Horde/Kronolith syncs.

    If you get user complaints about broken CalDAV syncs with Horde, there’s many places to look at. In one particular instance, an event was created from travelling app Transportr into the stock android Calendar app. Through the DAVx5 sync app, the user wanted to push these events to Horde’s SabreDAV interface – and from there,…

  • Horde Development Review: October 2020

    October was a very busy month in Horde development, even though a lot of things happened under the hood and cannot be accessed right now. A decision was made that Horde RPC will default to json-rpc and deprecate xmlrpc in upcoming releases, maybe already dropping xmlrpc in Horde 6. PHP8 will remove xmlrpc from the…

  • Heads Up: Cannot login as horde admin anymore?

    Please be careful: Horde has introduced a new default setting $conf[‘auth’][‘lowercase’] which acts like the auth hook used to do. This might lead to issues when your default admin account is named “Administrator”. It is actually a very useful setting. It ensures that any prefs and other profiles also work with case-insensitive backends regardless of…

  • PEAR down – Taking Horde to Composer

    Since Horde 4, the Horde ecosystem heavily relied on the PEAR infrastructure. Sadly, this infrastructure is in bad health. It’s time to add alternatives. Everybody has noticed the recent PEAR break-in. A security breach has been found on the http://pear.php.net webserver, with a tainted go-pear.phar discovered. The PEAR website itself has been disabled until a…

  • horde trustr – A new horde CA app step by step

    Trustr is my current project to create a simple certificate management app. I decided that it is just about the right scope to demonstrate a few things about application development in Horde 5. I have not made any research if the name is already occupied by some other software. Should any problems arise, please contact…

  • Horde_Rdo Many to Many relations and Horde DB Migrator

    by

    in

    Many to Many relations btween to object types or table rows are usually saved to a database using a third table. For example, if every server can have multiple services and each service can run on multiple computers, we need a third table to store the relations: server table: server_id | server_name 1 | hoellenhund.internal.company.com…

  • Horde Recipe: Storing the last login language

    by

    in

    A simple Horde Hook to store the last chosen login value in a user preference. You can use this for example to determine in which language automatic messages by cron job or daemon should be sent. // // APPLICATION AUTHENTICATED HOOK: See above for format. public function appauthenticated() { global $language; global $prefs; if ($language)…

  • Horde starts Crowdfunding for IMP Multi-Account feature: Funded after a week

    Michael Slusarz of Horde LLC started a crowdfunding experiment: He offered a 3000 $ project at crowdtilt.com to back up development of the IMP multi-account feature. Multi-Account support allows users to manage multiple mail boxes within one horde account. The feature is meant to replace Horde 3’s fetchmail feature which has not been ported for…