Skip to content

thousandyears/garden

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 

Repository files navigation

Thousand Years Garden Manifesto

Futures worth wanting cannot be developed, implemented or delivered. They can only be gardened, nurtured or cultivated.

Let us hope that our age may go down in history for its waking up to sustainability and its dependance on diversity. The link between diversity and survival seems no longer possible to ignore: In nature, loss of diversity is punished by collapsing ecosystems, extinctions of species and failing immune systems. In economy, failing to diversify leads to monopolies, market crashes, and outdated business models. Lack of diversity in political representation and popular opinion paves the way to intolerance, oppression and the many forms of discrimination.

Alas, for all the awareness, we find diversity difficult because it requires a preference for the majority of everybody over the majority of the mainstream. We may be keenly interested in diversity as a prerequisite of innovation and adaptability, but not quite enough to trade our way of life for it.

Discrimination, whether according to race, class or gender, teaches us particularly bitter historical lessons about the role of language in the loss of diversity. When a dominant system of values imposes its taxonomy on everyone, everyone loses out in the long run, often with disastrous consequences. We find it poignant today when we learn that the oppressed are sometimes unable to even think for themselves in their own terms, let alone openly express their opinion and values. Only, rather than this being a historical malady, safely tucked away in the annals of time, it is much more likely that we lack the perspective to see ourselves unwittingly participating in modern forms of the same ancient disasters.

Software engineering suffused in a corporate culture worries about "development", "implementation", and "delivery". This is not the native language of engineering, or design, or data analysis, or quality assurance... These terms assume the necessity of "signing off" every investment of thought, time and effort and depict a unidirectional flow of "requirements" that largely coincides with the directed acyclic graph of the org chart. When we then think of our daily work in such terms, we find "signing off" to be the most natural fact of working life.

At the same time, corporate culture celebrates creativity and innovation as predicates of agile adaptation to the ever-faster changing horizon of opportunities and challenges. Only, businesses invariably find their investments in fostering a culture of innovation unsustainable, yielding short-term results at best. This should not be that surprising given the widespread and chronic loss of diversity brought about by the colonising top-down perspective, values and terminology. As before, everyone loses out.

We may think of the org chart as a dependency tree – "dependency" being another charged and somewhat ambivalent term in the language of commercial software development. It is a relationship we enter into when it is enabling, and then regret when it becomes a "blocker". Of course, org chart according to line management is only one view of a network of collegial relationships. We need different org charts for different purposes, such as those that cast project funding and departmental views on the organisation. Of course, the privileged few org charts that we typically see tend to be also the charts of privilege. They tend to closely reflect our ideas about career progression and contribution metrics.

Yet, the higher we climb on this career ladder, the greater the distance between our ideas and their ultimate expression. When we "require" a product feature to be designed or implemented, we are in fact expressing a dependance on our colleagues to implement our ideas. And so, in the typical case, the underlying assumption that "signing off" is the only possible mode of organisation leads to loss of self-expression for all: Those that "require" do not express their ideas themselves, and those that "implement" do not express their own ideas. This becomes ever more frustrating and depressing with each additional degree of separation between an idea and its expression.

Are there any alternatives? Are there feasible modes of organisation where one only ever signs off one's own work? If there were, we could be looking forward to a range of very desirable implications:

  • Unprecedented velocity through decoupling and parallelism.
  • Ever-decreasing cost and risk of change and experimentation.
  • Ever-increasing expertise across all domains.
  • Exponential growth of composable solutions.
  • Ownership by definition.
  • Innovation everywhere and everywhen.
  • Centres of excellence and talent magnets.

Thousand Years is a sanctuary for the visions of sustainable organisational cultures where the purpose of everyday work is to empower others to express their domains of interest and expertise as independently as possible – especially from ourselves.

This simple motto is in fact an invitation to reimagine the meaning of both independence and dependance for our time, such that diversity is allowed to emerge bottom up from the constituent relationships, because nothing short of self-regenerating diversity is sustainable. In the way of prior art, we can borrow some intuitions from parenting where the ultimate goal is precisely the child's independence – especially from the parents themselves. The parent forever endeavours to provide a developmental environment wherein the child is empowered to vigorously explore their own identity and become themselves – at their own pace, on their own terms. The child would most especially not benefit from the "privilege" of having to "sign off" each and every morsel of parental effort.

Implement someone's requirements and you expressed their ideas for one day. Avail them of affordances to express their own ideas, and you free them for a lifetime.

Notice also what happens to efficiency when it is no longer measured against requirements. The "sign off" logic is forever anxious that no work is ever done unless required in advance. In contrast, when we are presented with new colours for our palette of expressions we are much more likely to say, "the more the merrier", whether or not they precede "requirements". Investing into an expanding repertoire nurtures an essential repleteness within an organisation, allowing it to adapt to the challenges of the day with ever greater degrees of freedom.

When such a business encounters an opportunity or a threat, it can respond in real time by drawing from the wealth of its existing repertoire, rather than merely formulating requirements it hopes would still be relevant by the time they are implemented. This is efficiency of an altogether higher order. Just by decoupling the release timelines of features and capabilities we arrive at "Agile Squared". Eventually, by adopting these gardening principles at every node of the collegial network we can look forward to "Agile Raised to the Power of People", which is what Agile was always meant to be, before it got SCRUMbled.

Then again, even if we are in no doubt that such futures are desirable, it is not immediately clear how we may plausibly get from here to there. The world we know is made in the image of the org chart and the initiatives that stray eventually gravitate back into the fold. For all the overt investment in innovation and diversity across the industrial world, there is an understandable degree of frustration with the results that are yet to prove themselves sustainable. Special people, doing special things at special events does not seem to penetrate the reality of daily practice. Neither diversity nor innovation can be usefully sprinkled on top of existing structures. Plastering a bandaid over an already festering wound does not help all that much.

Evangelising the values of diversity and innovation, however, can be powerfully complemented by carefully architected affordances that tip the scales of opportunities and risks in favour of nurturing diversity and innovation as an integral part of "business as usual". This is similar in spirit to office space architecture that aims to encourage collaborative behaviour. Only, the architectures we have in mind must be more radically pliable and continue to evolve indefinitely.

Rather than software development then, we focus on the gardening of environments, tools and practices replete with affordances that:

  1. empower the experts to exercise their domain skill with greater autonomy and expressivity than ever
  2. whilst yielding gardening affordances in their turn.

In place of inevitably reckless top-down decisions (however well meaning our intentions may be), we recommend the gentle persuasions of irresistible affordances.

Here, for example, is how such affordances could play out for UI design – let's call it Algorithmic Design: The moment an algorithmic designer makes her final edit and says, “That's it! I'm happy with that!”, that design is production ready on all platforms. If and when that design will be used depends on other people, like UX designers, business analysts, product owners as well as end users, but its creation does not depend on any of them. The algorithmic designer is surrounded by dozens of simulated and real devices that represent the diversity of user states and hardware that she is designing for. As she edits her design system, all the devices update in realtime. Her "sculpting clay” is not a Sketch or a Photoshop file, but directly the app that she is designing. The feedback she gets is real and at the timescale of spellchecking, rather than the industry standard of send-'em-pictures-and-forget.

This decoupling of the design system from the engineering leads to a dramatic lowering of the cost and risk of design innovation and the proliferation of alternative UI components and themes. This growing UI palette in turn then helps to remind us of the enormous value of UX design as a distinct skill set. For, it is only when there is a rich palette of readily available UI that UX designers can respond to the diverse user needs with the nuance their job description was always the promise of.

Notice the recursion. In a sense, the engineer is working on an editor that the UI designer is using to work on an editor that the UX designer is using to work on an editor that the business analyst is using... and so on... all the way to the end user, who is similarly empowered to continuously express their preferences. Each in their turn are thus empowered to explore their own identity and become themselves, at their own pace, on their own terms.

Implementation-wise, this focus on human creativity and evolving communal identities resonates with a number of areas of cutting edge development, such as knowledge graphs, symbolic regression and explainable AI, as well as distributed ledgers, decentralised applications and federated learning.

So how can we start gardening today, working our way up to such practices as Algorithmic Design?

The painful history of discrimination teaches us that we are unlikely to get very far with "monolingual" corporate cultures and colonising taxonomies. Yet, diversity is a quality of systems, not chaos. It depends on the presence of rich and subtle forms of communication. It describes a network of couplings with open-ended and evolving degrees of freedom, not a collection of isolated islands. Diversity is romantic. It is a romance of social responsibility and personal freedom that transcends the political spectrum of left and right. It is a romantic appreciation of life, where I am so much, much, much more in the context of billions of other souls. I can conceive of, feel and hope for so much more than I ever could without them. I only become more of myself by helping others to pursue their own otherwise.

To start gardening today, then, we need languages that can express diversity. With this in mind we have begun with the following foundational open source technologies that encourage ontology-led development:

  • Lexicon: A specification for shared indefinitely evolving languages that nurture diversity of dialects by enticing contributions from the native speakers of each domain of expertise in an organisation.
  • MindFlare: A lexicon editor.