Nederlands, English
Donate to ASK-Solutions (the IRADIS Foundation), Watch our videos, Support us at Patreon
Logon

Synergos

Synergos is a historical project of ASK-Solutions. It grew out of BackPage and developed a free-software publishing system in which pages, structured data, images, products, ordering, payment handling and more interactive site structures were explored together.

Early Synergos releases were made available under the GNU General Public License version 2. Around 2008, the project moved to the GNU General Public License version 3. Synergos is no longer developed as the current publishing system, but the technical experience and lessons from the project later played an important role in the development of Nocterra.

Why Synergos existed

BackPage had demonstrated the value of generating websites from structured source material. Synergos grew from that foundation and explored how the same ideas could support more complex sites. It was used to consider pages, products, ordering, navigation, reuse of structured content and the relationship between publishing and practical activity.

The name Synergos reflected the idea of bringing publishing and practical exchange together. At the time, selling something online often began with publishing clear information about what had been made: a catalogue page, product description, photographs, prices, options, availability and contact details. The purchase itself could then continue by email, fax or a physical visit. Synergos explored that bridge between publishing information and enabling exchange. During the later development of Nocterra, the emphasis moved away from marketplace functions and more clearly towards maintainable, source-based publishing.

Publishing, products and ordering

Synergos explored a more interactive publishing model than BackPage. Where BackPage generated static pages from source files and GNU tools, Synergos moved structural data, page information, product information and images into an SQL database. It provided a login-based editing workflow in which pages and product information could be maintained through a web interface rather than only through source files and command-line generation.

The system also experimented with WYSIWYG page editing at a time when web-administered CMS tools were not yet widely available for small, practical websites. Most people still had to edit HTML directly, use desktop web-authoring software or rely on someone else to update pages, product descriptions, images and ordering information. TYPO3 existed, but was not easy to install, configure or use for the kind of practical publishing and catalogue work Synergos was trying to support.

Synergos was not merely a publishing experiment. It attempted to bring page editing, product presentation, ordering and payment together in one practical web-administered system. For its time, this was a serious attempt to make small-scale online publishing and sales easier to manage: publishing what had been made, maintaining the information, presenting images and options, receiving orders and connecting payment without rebuilding a separate workflow for every site.

The long-term maintenance burden became an increasing problem. Payment handling was not merely a one-off addition. PayPal, iDEAL and MrCash each required continuing integration work, and the Dutch iDEAL system was particularly demanding because banks had their own implementations. Keeping those payment paths working, tested and compatible therefore required increasing amounts of time that ASK-Solutions could also have devoted to other projects and objectives.

That experience later became important in the design of Nocterra. Synergos had demonstrated which functions could be brought together in one system, but also how much continuing maintenance responsibility this created. Nocterra carried forward lessons concerning structured publishing and maintainability, while payment handling, marketplace functions and webshop maintenance were deliberately left outside the normal CMS model.

Licence history

Synergos was released as free software. The early public releases used the GNU General Public License version 2, as BackPage had before it. Around 2008, Synergos moved to the GNU General Public License version 3.

The move from GPLv2 to GPLv3 fitted questions that had long been central within ASK-Solutions concerning knowledge, freedom, dependency and practical control. The four essential freedoms of free software — being able to run, study, share and modify software — give those questions a concrete meaning within software. For ASK-Solutions, it is not enough for those freedoms merely to exist as legal permissions on paper; they must remain usable in practice.

GPLv3 responded to problems that had become more visible after GPLv2, including Tivoization: distributing GPL-covered software in a device while technically preventing the user from running a modified version on that same device. This matters to ASK-Solutions because a formal freedom has little practical meaning when technical, legal or contractual restrictions prevent someone from actually exercising it. The move to GPLv3 therefore fitted the choice to make software not only available for study and sharing, but genuinely adaptable, reinstallable and usable under the control of the user.

Historical Synergos releases should be read together with the licence files included in those releases, particularly where restored archives contain material from different periods.

The Great Server Crash™ and the move to Nocterra

In 2019, after The Great Server Crash™, Synergos was not rebuilt as it had existed before. Instead, the useful ideas, experience and lessons from the project were carried forward into the development of a separate new project: Nocterra.

Nocterra brought source-based publishing firmly back into the publishing model and combined it with lessons learned from Synergos. The new project deliberately chose long-term control, privacy, security and accessibility, without a publicly accessible browser administration backend, telemetry or an open-core model as part of the normal CMS model.

Relationship with ASK-Solutions

Synergos is a historical project of ASK-Solutions. It gave concrete technical form to questions concerning knowledge, publishing, freedom and dependency: how can people publish and maintain information, present work, manage structured data and enable practical exchange without the whole system becoming incomprehensible or unmanageable?

Online publishing was becoming increasingly important for explaining projects, sharing knowledge, presenting creative and technical work and maintaining contact with others. Synergos explored how such functions could be brought together in one system through page editing, structured data, images, products, ordering and payment handling.

At the same time, the project made visible that more integrated functionality also creates a much larger and more fragile security and maintenance surface. Login screens, user accounts, passwords and other credentials, session management, uploads, WYSIWYG editing, database state, libraries, product and ordering data and payment integrations continuously processed information originating outside the system and therefore could not be trusted. All of those components had not only to continue functioning, but also to continue working together securely over long periods.

The choice of PHP also played an important role. Particularly in the versions Synergos had to deal with during its lifetime, PHP was a language that had grown organically and strongly incrementally, without all of its components having arisen from one consistent language and API design. Automatic type conversion, implicit behaviour, historical exceptions and mutually inconsistent function interfaces made certain classes of error easier to introduce and harder to identify early. Functions and interfaces also changed between versions in ways that could invalidate existing assumptions: argument order, accepted types, return values and other behaviour were not consistently designed or stable throughout the language. For software in which reliability and security around untrusted input were central, this meant that not only the application logic but also the characteristics and changing behaviour of the language itself required continuing attention.

The security risk did not lie solely in Synergos code either. PHP and its bundled extensions regularly had security problems and regressions during this period that required new releases. Problems could occur in areas such as memory management, input handling, sessions, filesystem restrictions, image functions or other built-in functionality on which applications depended. During some periods, security and bug-fix releases therefore followed one another rapidly. An application could be written carefully and still require renewed maintenance because the runtime, a standard function or a bundled library underneath it had to be replaced, or because behaviour changed between PHP versions. For a publicly accessible administration system involving authentication, uploads, sessions, user management, database operations and payment processing, that combination made PHP a particularly unsettled foundation for a system intended to maintain a high security margin over the long term.

Status

Synergos is a historical project of ASK-Solutions and is no longer developed as the current publishing system. Historical releases and other project material are preserved and restored where possible so that the software and its development remain documented.

The experience gained through Synergos later played an important role in the development of Nocterra. Both useful ideas and lessons concerning complexity, maintenance, security and dependency were reconsidered there. Their further development belongs to the current project Nocterra.

Do you have an old Synergos copy?

ASK-Solutions is trying to preserve historical Synergos material as part of the project history that led from BackPage to Nocterra. If you still have an old Synergos release, partial source archive, example site, patch, screenshot or related file, please contact the foundation.

Restored historical releases that are already available can be found on the Nocterra download page. Additional material may help complete the archive and document the project more accurately as a historical free-software and publishing-system artefact.

Where to go next