-->
My journey with the web spans over two decades, reflecting the evolution of publishing technologies and workflows. Here’s a technical look back at the tools, formats, and lessons learned.
Back in the late 20th century, my company tasked me with creating their first website. I learned HTML from scratch and wrote pages directly in Windows Notepad. Before moving to CMS-based approaches, I experimented with HTML generators such as Dreamweaver. While these tools allowed for visual editing, I quickly found them clumsy and difficult to use for tracking changes, especially when multiple versions or edits were involved.
The site was eventually published in a frames-based version, a common approach at the time despite usability limitations. Knowing the nitty-gritty details of HTML and HTTP requests laid the foundation for making informed technical decisions later — including using modern AI-assisted tools wisely to maximize performance and efficiency.
For personal projects, I used SPIP to manage blog posts. Later, I built multiple sites — both personal and for non-profits — using WordPress. Its flexibility, plugin ecosystem, and ease of collaboration made it ideal for small teams or organizations with limited technical resources.
In professional settings, I shifted from general web pages to structured content. I first published DocBook content, then moved to DITA, using the DITA-OT toolkit to generate web output. Later, I used the Oxygen XML Editor to manage and publish structured content. Structured authoring separates content, presentation, and metadata, enabling more consistent, maintainable documentation.
At another company, I published documentation websites using Python Sphinx, generating static HTML from reStructuredText sources.
Currently, at Unity, I use Markdown, edited either in Visual Studio Code or Emacs, which is then rendered into HTML pages. Moving away from CMSes, using version control systems such as Subversion and later Git was critical for managing changes, enabling collaboration, and maintaining a reliable history of content. This workflow emphasizes simplicity, version control, and maintainability while giving full control over the final output.
When advising a non-profit considering a move from Drupal to a Symfony-based custom site, I recommended downgrading to WordPress to maximize collaboration. Later, a developer suggested a headless CMS approach with Astro + WordPress. I proposed going further: abandoning the CMS entirely and relying on Markdown + GitHub + Astro, a lightweight, modern, and fully controllable workflow.
Looking back, my web journey mirrors broader trends in web publishing: