What Would Be in a New AOSA?

Posted

My desktop background says “no new projects” but that doesn’t mean I can’t dream. It has been twelve years since we published the first two volumnes of The Architecture of Open Source Applications: if someone was going to put together a sequel with chapter-length descriptions of the architectures of open source projects that have risen to prominence since then, what would you want it to include? Candidates so far include:

  1. Alpine.js
  2. Audacity and/or VLC
  3. dagster and/or Metaflow
  4. Dash
  5. deno
  6. Discourse
  7. duckdb
  8. DVC
  9. Flask and/or FastAPI
  10. Gleam
  11. Haiku and/or SerenityOS
  12. htmx
  13. Immich
  14. Istio
  15. Jellyfin
  16. Kafka
  17. Kubernetes
  18. Mastodon
  19. Nushell
  20. OpenTelemetry
  21. Plausible
  22. Polars
  23. PyTorch and/or tensorflow
  24. ruff
  25. Tauri
  26. Visual Studio Code
  27. Svelte and/or Vue.js

Two things stand out for me:

  1. There’s a definite bias toward Python in this list, and a lamentable lack of distributed/fault-tolerant projects. Both are reflections of my biases and those of my acquaintances.

  2. I think this would be a great collection, but I’m just as interested in a book on the architecture of open source organizations. People talk about “the” open source community, but in practice we are hundreds or thousands of intersecting collections of people who have evolved many different ways to organize ourselves. I would love to read a collection of case studies of those different models, including commercial ones. (Full disclore: my current employer is an open-core company.)

I don’t think I’ll ever put either book together, but as with the original volumes, I think that assembling this would be a great project for a graduate class in software architecture. If you’re interested, please reach out.