Situated software

Last updated: Wednesday, 10 July 2024

Software applications intentionally designed for the needs, practices, and local social or cultural contexts of particular communities of practice, rather than a broader, more generic set of “users”. Personalised, localised, often created by the community who’s using it. After Clay Shirky.

Not just customisation or configuration; instead, this is about deeply embedding the applications within the lived experiences, workflows, and social dynamics of the target community from the outset

“Design for dozens.”

Situated software isn’t a technological strategy so much as an attitude about closeness of fit between software and its group of users, and a refusal to embrace scale, generality or completeness as unqualified virtues. — Clay Shirky, “Situated Software” (2004)

One of my students mentioned building a web application for his mother, a schoolteacher, to keep track of her class. If you were working alone, unpaid, and in your spare time, there’s no way you could make an application that would satisfy the general and complete needs of schoolteachers everywhere. You could make one for your mom, though. — Clay Shirky, “Situated Software” (2004)

The software can be spun up to serve a temporary purpose and need not be maintained long-term.

The idea that software should be built for many users, or last for many years, are cultural assumptions not required by the software itself. — Clay Shirky, “Situated Software” (2004)

Opportunistic software development; creating new software systems by reusing and combining existing components that were not originally designed to work together? Ah-hoc, leaning on modular components.

  • [?] How might situated software approaches evolve or integrate with emerging technologies like low-code/no-code platforms or AI-assisted development? See, for example, Geoffrey Litt’s work on “malleable software” in an age of LLMs1
  • [?] How can situated software be made more maintainable, forkable, adaptable to changing needs? Is the short-term, disposable nature of situated software always a virtue?
  • [?] What patterns, frameworks, or best practices emerge for developing successful situated software? How can it be pursued in a sustainable, ethical way?
  • [?] What risks or ethical considerations (e.g., digital divides, power dynamics) should be accounted for when adopting situated software approaches?

  • [&] See also: minor technologies, user innovation, and convivial tools?
  1. ‘I think it’s likely that soon all computer users will have the ability to develop small software tools from scratch, and to describe modifications they’d like made to software they’re already using.’ (Litt 2023) ⤴︎