Software & Digital Products
A late change in requirements is a competitive advantage
Make the change easy
Software often feels inevitable
Growing in the correct way
It begins with craft
So insufficiently palimpsestic
Spatial software references
- Nototo
A great painting has to be better than it has to be
This sounds like a paradox, but a great painting has to be better than it has to be. For example, when Leonardo painted the portrait of Ginevra de Benci in the National Gallery, he put a juniper bush behind her head. In it he carefully painted each individual leaf. Many painters might have thought, this is just something to put in the background to frame her head. No one will look that closely at it.
Not Leonardo. How hard he worked on part of a painting didn't depend at all on how closely he expected anyone to look at it. He was like Michael Jordan. Relentless.
Relentlessness wins because, in the aggregate, unseen details become visible. When people walk by the portrait of Ginevra de Benci, their attention is often immediately arrested by it, even before they look at the label and notice that it says Leonardo da Vinci. All those unseen details combine to produce something that's just stunning, like a thousand barely audible voices all singing in tune.
Great software, likewise, requires a fanatical devotion to beauty. If you look inside good software, you find that parts no one is ever supposed to see are beautiful too.
That which requires caring
Today's real world of technology is characterized by the dominance of prescriptive technologies.
The temptation to design more or less everything according to prescriptive and broken-up technologies is so strong that it is even applied to those tasks that should be conducted in a holistic way. Any tasks that require caring, whether for people or nature, any tasks that require immediate feedback and adjustment, are best done holistically. Such tasks cannot be planed, coordinated, and controlled the way prescriptive tasks must be.
Prescriptive technologies eliminate the occasions for decision-making and judgment in general and especially for the making of principled decisions. Any goal of the technology is incorporated a priori in the design and is not negotiable.
Jacked in
In digital design, products and services are frequently imagined and implemented placelessly: as if the consumer were jacked into The Matrix, and considering this product or that product from among an infinite set of choices at an infinitely-provisioned mercantile. The things we make are good, by this way of reasoning, if they fit the market’s demand.
Losing meaning
The people who’ve proven that they can make very good individual products with the radical focus of a spotlight seem to be pushed ever further from making good ecosystems.
Products are being made “consistent” with the application of so-called “design patterns,” and rather than bringing coherence to these various touch-points, the painting-on of interface standards and interaction patterns did something far less valuable.
Rote consistency, in the way many seem to be going about it (Material Design being just one example), is at odds with making things be good. It simplifies what needs to remain complex.
Always, when simplification is underway, meaning is being lost.
Penn Station
In the same way that physical architecture can affect a mind, so too can software. Slower, less reliable software is like Penn Station: Sure, you can catch a transfer from one train to another but the dreary lowness of the place, the lack of sunlight or sensible wayfinding will make you feel like a rat, truculent and worthless, and worse: You’ll acclimate to that feeling and accept it as a norm.
The Design of Design
A Book by Frederick P. Brooks, Jr.Visualizing Algorithms
An Article by Mike BostockManifesto for Agile Software Development
A DefinitionWe are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left more.
Stop Drawing Dead Fish
A Talk by Bret VictorThe Future of Programming
A Talk by Bret VictorDesign Links & Learning
A Blog by Nick TrombleyCollections of articles, links, and other material from around the web, relevant to software design and engineering.
Ensuring Excellence
An Article by Marty Cagan…in so many of the best product companies there is an additional dimension that goes beyond individual empowered product teams, and even goes beyond achieving business results.
It has to do with ensuring a level of what I’ll refer to here as “excellence” although that is clearly a very ambiguous term.
Over the years, this concept has been referred to by many different names, always necessarily vague, but all striving to convey the same thing: “desirability,” “aha moments,” “wow factor,” “magic experiences,” or “customer delight,” to list just a few.
The concept is that an effective product that achieves results is critical, but sometimes we want to go even beyond that, to provide something special.
Maybe it’s because we believe this is needed to achieve the necessary value. Maybe it’s because the company has built its brand on inspiring customers.
Often this dimension shows up most clearly in product design, where functional, usable but uninspiring designs can often achieve our business results, but great design can propel us into this realm of the inspiring.
On online collaboration and our obligations as makers of software
An Essay by Baldur BjarnasonIs it the notetaking system that’s helping you think more clearly? Or is it the act of writing that forces you to clarify your thoughts?
Is it the complex interlinked web of notes that helps you get new ideas? Or is it all the reading you’re doing to fill that notetaking app bucket?
Is all of this notetaking work making you smarter? Or is it just indirectly forcing you into deliberate, goalless practice?
In Search of Organic Software
An Article by Pirijan KetheswaranTwo different kinds of farms can grow vegetables. One is a factory farm built for scale, and the other takes the time to grow more expensive but healthier plants without pesticides.
Will everyone appreciate the difference? Of course not, but the latter plants are labelled ‘organic’ to give us the information and the choice, so that those of us who do care can make better decisions.
So maybe we should have ‘organic’ software as well, made by companies that:
- Are not funded in such a way where the primary obligation of the company is to 🎡 chase funding rounds or get acquired (so bootstrapping, crowdfunding, grants, and angel investment are okay)
- Have a clear pricing page
- Disclose their sources of funding and sources of revenue
Reflections on Software Performance
An Article by Nelson Elhage- Performance is a feature
- Performance changes how users use software
- Performance needs effort throughout a project’s lifecycle
- Architecture strongly impacts performance
- Performance isn’t just about hot spots
- Performant foundations simplify architecture
…we underrate performance when designing and building software. We have become accustomed to casually giving up factors of two or ten or more with our choices of tools and libraries, without asking if the benefits are worth it.
Undoing the Toxic Dogmatism of Digital Design
An Essay by Lisa Angela- Design educators and industry leaders have never reached a consensus about what comprises a “good enough” foundational education for digital design.
- We do not properly retire methods (or ways of conducting them) that have been shown to be ineffective.
- Design team seniority levels are meaningless.
- We’ve collectively lost the safety (and subsequently the desire) to explore and fail.
- We afford well-known design leaders too much power to dictate how design is discussed and conducted.
- We have no ethical standards.
- Inclusive design and accessibility are afterthoughts — both in design education and in practice.
The things that you’re meant to do
A Quote by Josh WardleI used to work in Silicon Valley, and I’m aware of the things that, especially with games, you’re meant to do with people’s attention. You’re trying to capture as much of people’s attention as you can. So that involves things like endless play, or sending them push notifications, or asking them for sign-up information.
And philosophically, I enjoy doing the opposite of all those things, doing all the things that you are not meant to do, which I think has bizarrely had this effect where the game feels really human and just enjoyable. And that really resonates with where we’re at right now in the world and with COVID, and then also we’re trying to figure out, what is tech? What has tech become? I think that really resonates with people, and no ads—well, no monetization. People ask me a lot about these things, and it was like, I was literally just making a game for my partner, and I made some decisions that we would like.
I don’t believe in Zoom fatigue
An Article by Matt WebbIt’s not Zoom fatigue, it’s Zoom whiplash.
It’s a hunch. I can’t prove this.
The trick to get around this is to move smoothly up and down the gradient of social interaction intensity, never dropping below a basic floor of presence: the sense that there are other people in the same place as you.
Instead of having two modes, “in a call” and “on my own,” we need to think about multiple ways of being together which, minimally, could be:
- In a video call
- In an anteroom to a video call, hearing the sound of others
- In a doc together
- On my desktop but with the sense that colleagues are around
And the job of the designer is to ensure that their software ensures the existence of these different contexts, instead of having the binary on-a-call/not-on-a-call, and to design the transitions between them.
Spatial Software
An Article by John PalmerScales of cities, scales of software
An Article by Linus the SephistAmerican cities seem like a product of industrial processes where older European cities seem like a product of human processes. This is because most American cities were built after and alongside the car and the industrial revolution – the design of cities took into account what was easily possible, and that guided the shape and scale of everything.
Software has similar analogues. There are software codebases that feel much more industrially generated than hand written, and they’re usually written in automation-rich environments fitting into frameworks and other orchestrating code.
…But despite the availability of cars, I still much prefer the scale and ambiance of European, human-scale cities, because ultimately cities are places humans must inhabit and understand. In the same way, I still much prefer the scale and ambiance of hand-written codebases even in the presence of heavy programming tooling, because ultimately codebases are places humans must inhabit.
Driving engineers to an arbitrary date is a value destroying mistake
An Article by Gandalf HudlowWhat happens when you apply date pressure to software engineers working on high value software projects? The engineers will focus on delivering Something™ by the Date™! This fatal flaw results in delivery of a Something™ full of chaos and features that nobody really wants or needs.
How can we develop transformative tools for thought?
A Research Paper by Andy Matuschak & Michael NielsenConventional tech industry product practice will not produce deep enough subject matter insights to create transformative tools for thought.
...The aspiration is for any team serious about making transformative tools for thought. It’s to create a culture that combines the best parts of modern product practice with the best parts of the (very different) modern research culture. You need the insight-through-making loop to operate, whereby deep, original insights about the subject feed back to change and improve the system, and changes to the system result in deep, original insights about the subject.
Software Engineering as a Craft
An Article by Thomas WilsonThe decreasingly tangible product of code, i.e. that all we have are files on a hard-drive, may make it easy to forget that writing software produces a thing. If you produce a wonky chair or an overly long fork, it’s easy to see the quality of work was not great. By calling for a perception of software as a craft, we fight against that ability to forget or not notice the final quality of the product. You could watch two software engineers with different levels of experience, or in different domains, and it wouldn’t necessarily be so easy to guess which is which, at least from a distance.
So maybe there is something to be said for the value of software as a craft, for sometimes focusing on the practice of making better, or at least different, software just for the sake of it.
Why Scrum is killing your product
An Article by Henry LathamDeadlines are bullshit
An ArticleIn software development deadlines are a necessary evil. It is important to understand when they are necessary, and it is important to understand why they are evil.
- External vs. internal deadlines
- Why are internal deadlines evil?
- Engineers who love their work
Software developers have stopped caring about reliability
An Article by Drew DeVaultOf all the principles of software engineering which has fallen by the wayside in the modern “move fast and break things” mentality of assholes modern software developers, reliability is perhaps the most neglected, along with its cousin, robustness. Almost all software that users encounter in
$CURRENTYEAR
is straight-up broken, and often badly.The Rise Of User-Hostile Software
An Essay by Den DelimarskyWe are truly living in an era of user-hostile software, and when I say “user-hostile” I mean it as “software that doesn’t really care about the needs of the user but rather about the needs of the developer.”
I personally do not know anyone who asked for an online account requirement before they can use a keyboard; however, some product lead somewhere decided that it’s important to better “understand the customer” and “maximize marketing reach” through some weekly “Hey, we have a new keyboard!” newsletter.
Minimum Awesome Product
An Article by Carlos BeneytoUsers are accustomed to a minimum of quality, and they expect that of all new products.
If our product does not [meet basic expectations of quality], people will automatically believe that it is a bad product and they will not take it seriously. It is not what they expect.
Hence my suggestion that the MVP has died and the MAP: Minimum Awesome Product was born.
Traditional companies are losing because they mismanage software engineers
An Article by Emma WattersonInnovation is messy, and frankly Anti-Steve [Jobs] can’t figure out why you wouldn’t just tell people the right thing to build and skip all the trial and error that comes with innovation. Anti-Steve and his board of directors that keep him in place fundamentally believe that they know what needs to be built. Or at least that they can hire the messiah that will come down off the mountain and tell everyone what to build. There is no such messiah.
Research, empathy, simplicity, speed
An Article by Matthew StrömAs Nosrat provides a simple list of essential ingredients for any great meal, can we describe a simple list of essential components for digital products?
Here are four elements that I believe are the foundation of great digital products: Research, Empathy, Simplicity and Speed.
Craft and Material in Digital Design
An ArticleProduct Design Resources
A Reference Work by Brandon DornThings I‘ve read, people I‘ve tried to learn from, and things I‘ve done to become a better designer. This is an idiosyncratic list reflecting what has helped me along the way, rather than an exhaustive list of design classics.
Though the list leans toward theory — principles are more durable than technique — I offer a few ideas further down about how to practice design. It also leans toward information design, because the task of presenting rich, dense information in an accessible way is ultimately the task of any digital product.
Functional Prototyping. A Missed Opportunity in Web Design
An Essay by Chuánqí SunPrototyping allows engineers in various industries to “fail fast, fail cheap”, “select the best from the pool”, and “bring in the reality”.
Apps Getting Worse
An Article by Tim BrayToo often, a popular consumer app unexpectedly gets worse: Some combination of harder to use, missing features, and slower. At a time in history where software is significantly eating the world, this is nonsensical. It’s also damaging to the lives of the people who depend on these products.
...Maybe we ought to start promoting PMs who are willing to stand pat for an occasional release or three. Maybe we ought to fire all the consumer-product PMs. Maybe we ought to start including realistic customer-retraining-cost estimates in our product planning process.
We need to stop breaking the software people use. Everyone deserves better.
Feature parity
An ArticleWhilst Feature Parity often sounds like a reasonable proposition, we have learnt the hard way that people greatly underestimate the effort required, and thus misjudge the choice between this and the other alternatives. For example even just defining the 'as is' scope can be a huge effort, especially for legacy systems that have become core to the business.
Most legacy systems have 'bloated' over time, with many features unused by users (50% according to a 2014 Standish Group report) as new features have been added without the old ones being removed. Workarounds for past bugs and limitations have become 'must have' requirements for current business processes, with the way users work defined as much by the limitations of legacy as anything else. Rebuilding these features is not only waste it also represents a missed opportunity to build what is actually needed today. These systems were often defined 10 or 20 years ago within the constraints of previous generations of technology, it very rarely makes sense to replicate them 'as is'.
The return of fancy tools
An Article by Tom MacWrightTechnology is seeing a little return to complexity. Dreamweaver gave way to hand-coding websites, which is now leading into Webflow, which is a lot like Dreamweaver. Evernote give way to minimal Markdown notes, which are now becoming Notion, Coda, or Craft. Visual Studio was “disrupted” by Sublime Text and TextMate, which are now getting replaced by Visual Studio Code. JIRA was replaced by GitHub issues, which is getting outmoded by Linear. The pendulum swings back and forth, which isn’t a bad thing
On Design Engineering: I think I might be a design engineer...
An Article by Trys MudfordDesign engineering is the name for the discipline that finesses the overlap between design and engineering to speed delivery and idea validation. From prototyping to production-ready code, this function fast-tracks design decisions, mitigates risk, and establishes UI code quality. The design engineer’s work encapsulates the systems, workflows, and technology that empower designers and engineers to collaborate most effectively to optimise product development and innovation.
— Natalya ShelburneWebsites are not living rooms and other lessons for information architecture
An Essay by Sarah R. BarrettWhile there is a lot that IA can learn from actual architecture or city planning, websites aren’t buildings or cities, and they don’t have to work like them. Instead, they should be designed according to the same principles that people’s brains expect from physical experiences.
Software that nobody wants
An Article by Gandalf HudlowFinding value is the result of enabling individual and group-level discovery attempts. It's not the result of everyone following one leader's gut.
What just happened is a new software product/feature was created that no customer wanted. This happens way too often. In fact, most hyper important software projects that must be done by date certain or else, have deep flaws that cause some variation of this phenomenon, flaws that include:
- Not wanted - Company specified a solution to a problem that customers don't actually have
- No Rarity - Company is pursuing an iKnockoff of existing products. The market already has two scaled competitors with working solutions, customers naturally spend budget on products that are already successful to avoid risk
- Incorrect Packaging - Customers need a website, but the company created an iOS app instead
- Incorrect Pricing - Customers need SaaS pricing, but the company created a shrink wrapped, on-premise solution with CapEx and maintenance agreements instead
Guidebook: Graphical User Interface Gallery
A WebsiteGuidebook is a website dedicated to preserving and showcasing Graphical User Interfaces, as well as various materials related to them.
A Mindful Mobile OS
An Article by Clo S.I read and loved Potential's "iOS 15, Humane" proposition. Published earlier in June by co-founders Welf and Oliver, it tackles how iOS could help us better protect our attention.
As a designer who cares about and writes about digital wellness, I'm profoundly aligned with their suggestions.
- Persuasive design
- Disclosure requirement
- From infinite feeds to pages
- Was this time well spent?
- Regret tax
- Conditions of use
Clues for software design in how we sketch maps of cities
An Article by Matt WebbGiven there’s an explosion in software to accrete and organise knowledge, is the page model really the best approach?
Perhaps the building blocks shouldn’t be pages or blocks, but
neighbourhoods
roads
rooms and doors
landmarks.Or rather, as a knowledge base or wiki develops, it should - just like a real city - encourage its users to gravitate towards these different fundamental elements. A page that starts to function a little bit like a road should transform into a slick navigation element, available on all its linked pages. A page which is functioning like a landmark should start being visible from two hops away.
Fast Software, the Best Software
An Essay by Craig ModI love fast software. That is, software speedy both in function and interface. Software with minimal to no lag between wanting to activate or manipulate something and the thing happening. Lightness.
Software that’s speedy usually means it’s focused. Like a good tool, it often means that it’s simple, but that’s not necessarily true. Speed in software is probably the most valuable, least valued asset. To me, speedy software is the difference between an application smoothly integrating into your life, and one called upon with great reluctance. Fastness in software is like great margins in a book — makes you smile without necessarily knowing why.
A Plea for Lean Software
An Essay by Niklaus WirthSoftware's girth has surpassed its functionality, largely because hardware advances make this possible. The way to streamline software lies in disciplined methodologies and a return to the essentials.
Speed is a feature
An Article by Nikita ProkopovMillions of programs have that unfulfilled potential of becoming your second nature, something you don’t even think about when interacting with. They’re waiting to be enabled to “click”. Speed is a feature.
The Great Divide
An Article by Chris CoyierOn one side, an army of developers whose interests, responsibilities, and skill sets are heavily revolved around JavaScript.
On the other, an army of developers whose interests, responsibilities, and skill sets are focused on other areas of the front end, like HTML, CSS, design, interaction, patterns, accessibility, etc.
The care and feeding of software engineers (or, why engineers are grumpy)
An Article by Nicholas ZakasWe do say “no” very quickly, not just to designs, but to everything. That led me into thinking about the psychology of software engineers and what makes us the way we are.
Web Brutalism, seamfulness, and notion
An Essay by Brandon DornHow a tool for sensemaking reconciles two distinct software design ideologies.
- Seamful vs. seamless
- Reveling in infrastructure
- The brilliance of notion
- How our understanding is working
Dear Microsoft
An EssayWe realized a few years ago that the value of switching to Slack was so obvious and the advantages so overwhelming that every business would be using Slack, or “something just like it,” within the decade. It’s validating to see you’ve come around to the same way of thinking. And even though — being honest here — it’s a little scary, we know it will bring a better future forward faster.
However, all this is harder than it looks. So, as you set out to build “something just like it,” we want to give you some friendly advice.
How Microsoft crushed Slack
An Article...and why the era of worker-centered work tools may be over.
Technical debt as a lack of understanding
An Article by Dave Rupert"If you develop a program for a long period of time by only adding features but never reorganizing it to reflect your understanding of those features, then eventually that program simply does not contain any understanding and all efforts to work on it take longer and longer.” — Ward Cunningham
People expect technology to suck because it actually sucks
An Article by Nikita ProkopovI decided to record every broken interaction I had during one day.
If I decided to invest time into thinning this list down, I could theoretically...reduce this list from 27 down to 24. At least 24 annoyances per day I have to live with. That’s the world WE ALL are living in now. Welcome.
Why Software is Slow and Shitty
An Article by Pirijan KetheswaranPlanning doesn't make for better software
A Fragment by Robin RendleMy own time in a Silicon Valley startup has proved this much to be true; planning doesn’t make for better software. In fact today our design systems team doesn’t have sprints, we don’t have tickets or a daily standup. Each day we come to work, figure out what’s the most important thing that we could be doing, and then we—gasp!—actually do it.
Watching so many other teams slowly flail about whilst they plan for quarter 3.2 of subplan A, whilst our team produces more work in a week than they all do combined in a quarter has been shocking to me.
After four years of working in a large startup, I know what I always assumed was true: you don’t need a plan to make a beautiful thing. You really don’t. In fact, there’s a point where overplanning can be a signal of inexperience and fear and bullshit. The scrum board and the sprints and the inane meetings each and every day are not how you build another Super Mario 64.
Instead all you have to do is hire smart people, trust them to do their best work, and then get the hell out of their way.
Figma's Engineering Values: Craftsmanship
An ArticleCraftsmanship is about thoughtfulness and care in the work we do. It means being deliberate about what we build and how possible it will be to maintain and extend in the future. A solution that will require revisiting in a month — because it’s not scaling, because it has a ton of bugs, because it doesn’t support all the use cases it needs to — is not useful to us and ultimately will generate pain for our users.
What we trade off by living this value is (sometimes) day-to-day speed. It’s easy to imagine an engineering team that emphasizes moving fast over keeping things stable and bug-free -- like a team building a product that isn’t responsible for important user data and doesn’t support anyone’s livelihood. But given the role the Figma product plays in the lives of our users, we feel it’s worth it to ensure we hold a high quality bar for them. And in the long run, being thoughtful about how we build often reduces the complexity of ongoing development and new features regardless.
On the "Building" of Software and Websites
An Essay by Dorian TaylorI’m beginning to suspect that software, and more conspicuously the Web, is fundamentally the wrong shape for the archetype of the construction project.
Yagni
A Definition by Martin FowlerYagni originally is an acronym that stands for "You Aren't Gonna Need It". It is a mantra from Extreme Programming that's often used generally in agile software teams. It's a statement that some capability we presume our software needs in the future should not be built now because "you aren't gonna need it".
The State of Agile Software in 2018
A Talk by Martin FowlerOn the surface, the world of agile software development is bright, since it is now mainstream. But the reality is troubling, because much of what is done is faux-agile, disregarding agile's values and principles. The three main challenges we should focus on are: fighting the Agile Industrial Complex and its habit of imposing process upon teams, raising the importance of technical excellence, and organizing our teams around products (rather than projects).
Product vs. Feature Teams
An Article by Marty CaganThis article is certain to upset many people.
Silicon Valley Product Group
A Website by Marty CaganThe best companies go about building great products differently. Silicon Valley Product Group (SVPG) was created to share lessons learned and best practices about how to build innovative products customers love
Like, just a post complaining that screens should be better
An Article by Matt WebbIt’s been 19 years since Pixar released Monsters, Inc. with all that CGI hair. Where are my hairy icons? Ones that get all long and knotted as the notifications number goes up.
Why can’t I feel my phone? I found that paper from 2010 (when I was complaining about keyboards) about using precision electrostatics to make artificial textures on touchscreens.
I should be able to run my thumb over my phone while it’s in my pocket and feel bumps for apps that want my attention. Touching an active element should feel rough. A scrollbar should *slip. Imagine the accessibility gains. But honestly I don’t even care if it’s useful: 1.5 billion smartphone screens are manufactured every year. For that number, I expect bells. I expect whistles.
The Timeless Way of Building
- Mind of no mind
- The quality without a name
- An objective matter
- Bitterness
- The most precious thing we ever have
Mind of no mind
To you, mind of no mind, in whom the timeless way was born.
The quality without a name
There is a central quality which is the root criterion of life and spirit in a man, a town, a building, or a wilderness. This quality is objective and precise, but it cannot be named.
There are words we use to describe this quality:
alive
whole
comfortable
free
exact
egoless
eternalBut in spite of every effort to give this quality a name, there is no single name which captures it.
An objective matter
We have been taught that there is no objective difference between good buildings and bad, good towns and bad.
The fact is that the difference between a good building and a bad building, between a good town and a bad town, is an objective matter. It is the difference between health and sickness, wholeness and divided ness, self-maintenance and self-destruction. In a world which is healthy, whole, alive, and self-maintaining, people themselves can be alive and self-creating. In a world which is unwholesome and self-destroying, people cannot be alive: they will inevitably themselves be self-destroying, and miserable.
Bitterness
The quality which has no name includes these simpler, sweeter qualities. But it is so ordinary as well, that it somehow reminds us of the passing of our own life.
It is a slightly bitter quality.
The most precious thing we ever have
In our lives, this quality without a name is the most precious thing we ever have.
And I am free to the extent I have this quality in me.
When our forces are resolved
When a person’s forces are resolved, it makes us feel at home, because we know, by some sixth sense, that there are not other unexpected forces lurking underground. He acts according to the nature of the situations he is in, without distorting them. There are no guiding images in his behavior, no hidden forces; he is simply free. And so, we feel relaxed and peaceful in his company.
Each of us knows from experience the feeling which this quality creates in us.
And for this reason, each one of us can also recognize this quality when it occurs in buildings.
Patterns of life
If I consider my life honestly, I see that it is governed by a certain very small number of patterns of events which I take part in over and over again.
Being in bed, having a shower, having breakfast in the kitchen, sitting in my study writing, walking in the garden, cooking and eating our common lunch at my office with my friends, going to the movies, taking my family to eat at a restaurant, having a drink at a friend’s house, driving on the freeway, going to bed again. There are a few more.
There are surprisingly few of these patterns of events in any one person’s way of life, perhaps no more than a dozen.
When I see how few of them there are, I begin to understand what huge effect these few patterns have on my life, on my capacity to live. If these few patterns are good for me, I can live well. If they are bad for me, I can’t.
Fabric
And finally, the things which seem like elements dissolve, and leave a fabric of relationships behind, which is the stuff that actually repeats itself, and gives the structure to a building or a town.
They are the atoms of our man-made universe
Further, each pattern in the space has a pattern of events associated with it. We realize then that it is just the patterns of events in space which are repeating, and nothing else. Nothing of any importance happens in a building or a town except what is defined within the patterns which repeat themselves.
Each building gets its character from just the patterns which keep on repeating there.
Each neighborhood is defined, too, in everything that matters, by the patterns which keep on repeating there.
Forces of conflict
A pattern which prevents us from resolving our conflicting forces leaves us almost perpetually in a state of tension.
For, if we live in a world where work is separated from family life, or where courtyards turn us away, or where windows are merely holes in the wall, we experience the stress of these inner and conflicting forces constantly. We can never come to rest. We are living then, in a world so made, so patterned, that we cannot, by any stratagem, defeat the tension, solve the problem, or resolve the conflict. In this kind of world the conflicts do not go away. They stay within us, nagging, tense…The build-up of stress, however minor, stays within us. We live in a state of heightened alertness, higher stress, more adrenaline, all the time.
The multiplicity of living patterns
The more living patterns there are in a thing—a room, a building, or a town—the more it comes to life as an entirety, the more it glows, the more it has this self-maintaining fire, which is the quality without a name.
To fly past each other
In our own lives, we have the quality without a name when we are most intense, most happy, most wholehearted.
This comes about when we allow the forces we experience to run freely in us, to fly past each other, when we are able to allow our forces to escape the locked-in conflict which oppresses us.
But this freedom, this limpidity, occurs in us most easily when we are in a world whose patterns also let their forces loose. Just as we are free when our own forces run most freely within us, so the places we are in are also free when their own forces themselves run free, and are themselves resolved.
The quality without a name in us, our liveliness, our thirst for life, depends directly on the patterns in the world, and the extent to which they have this quality themselves.
Patterns which live, release this quality in us.
But they release this quality in us, essentially because they have it in themselves.When a building has this fire
And when a building has this fire, then it becomes a part of nature. Like ocean waves, or blades of grass, its parts are governed by the endless play of repetition and variety, created in the presence of the fact that all things pass. This is the quality itself.
Modularity
One of the most pervasive features of these buildings is the fact that they are “modular.” They are full of identical concrete blocks, identical rooms, identical houses, identical apartments in identical apartment buildings. The idea that a building can - and ought - to be made of modular units is one of the most pervasive assumptions of twentieth-century architecture.
Nature is never modular. Nature is full of almost similar units (waves, raindrops, blades of grass) - but though the units of one kind are all alike in their broad structure, no two are ever alike in detail.
The same broad features keep recurring over and over again. And yet, in their detailed appearance these broad features are never twice the same.
It is going to pass
The character of nature can’t arise without the presence and the consciousness of death.
When we make our own attempt to create nature in the world around us, and succeed, we cannot escape the fact that we are going to die. This quality, when it is reached, in human things, is always sad; it makes us sad; and we can even say that any place where a man tries to make the quality, and be like nature, cannot be true, unless we can feel the slight presence of this haunting sadness there, because we know at the same time we enjoy it, that it is going to pass.
The gate
To reach the quality without a name we must build a living pattern language as a gate.
The patience of a craftsman
Here there is no mastery of unnameable creative processes, only the patience of a craftsman, chipping away slowly; the mastery of what is made does not lie in the depths of some impenetrable ego; it lies, instead, in the simple mastery of the steps in the process, and in the definition of these steps.
An infinite variety
The people can shape buildings for themselves, and have done it for centuries, by using languages which I call pattern languages. A pattern language gives each person who uses it, the power to create an infinite variety of new and unique buildings, just as his ordinary language gives him the power to create an infinite variety of sentences.
Each pattern is a rule
Each pattern is a rule which describes what you have to do to generate the entity which it defines. It is a three-part rule, which expresses a relation between a certain context, a problem, and a solution.
There is an imperative aspect to the pattern. The pattern solves a problem. It is not merely “a” pattern, which one might or might not use on a hillside. It is a desirable pattern; and for a person who wants to farm a hillside, and prevent it from erosion, he must create this pattern, in order to maintain a stable and healthy world. In this sense, the pattern not only tells him how to create the pattern of terracing, if he wants to; it also tells him that it is essential for him to do so, in certain particular contexts, and that he must create this pattern there.
It is in this sense that the system of patterns forms a language.
The network of connections
Each pattern depends both on the smaller patterns it contains, and on the larger patterns within which is is contained. Each pattern sits at the center of a network of connections which connect it to certain other patterns that help to complete it. It is the network of these connections between patterns which creates the language.
The grammar of the language
An ordinary language like English is a system which allows us to create an infinite variety of one-dimensional combinations of words, called sentences. A pattern language is a system which allows its users to create an infinite variety of those three-dimensional combinations of patterns which we call buildings, gardens, towns.
It tells us which arrangements of words are legitimate sentences, in a given situation, and which are not. And, furthermore, which arrangements of words make sense in any given situation, and which ones don’t. It narrows down the total possible arrangements of words which would make sense in any given situation.
Second, it actually gives us a system which allows us to produce these sentences which make sense. So, it not only defined the sentences which make sense in a given situation; it also gives us the apparatus we need to create these sentences. It is, in other words, a generative system, which allows us to generate sentences that are appropriate to any given situation.
Rules of thumb
Of course, these patterns do not come only from the work of architects or planners.
Architects are responsible for no more than perhaps 5 percent of all the buildings in the world. Most buildings, streets, shops, offices, rooms, kitchens, cafes, factories, gas stations, freeways, bridges… which give the world its form, come from an entirely different source.
They come from the work of thousands of different people. Each of them builds by following some rules of thumb. And all these rules of thumb - or patterns - are part of larger systems which are languages. Every person has a pattern language in his mind. This is true of any great creative artist, as of the humblest builder.
At the moment when a person is faced with an act of design, he does not have time to think about it from scratch. Even when a person seems to “go back to the basic problem,” he is still always combining patterns that are already in his mind.
It is only because a person has a pattern language in his mind, that he can be creative when he builds. The rules of English make you creative because they save you from having to bother with meaningless combinations of words. A pattern language does the same.
Ordinariness
We have a habit of thinking that the deepest insights, the most mystical, and spiritual insights, are somehow less ordinary than most things - that they are extraordinary.
In fact, the opposite is true: the most mystical, most religious, most wonderful – these are not less ordinary than most things – they are more ordinary than most things. And it is because they are so ordinary, indeed, that they strike to the core.
A genetic process
The mere use of pattern languages alone does not ensure that people can make places live.
The fact is, that the creation of a town, and the creation of the individual buildings in a town, is fundamentally a genetic process. So long as the people of society are separated from the language which is being used to shape their buildings, the buildings cannot be alive.
Discovering patterns
In order to discover patterns which are alive we must always start with observation.
Try to discover some property which is common to all the solutions which feel good, and missing from all the ones which don’t feel good.
Knowledge of the problem then helps shed light on the invariant which solves the problem.
Sometimes we find our way to this invariant by starting with a set of positive examples.
At other times, we may discover the invariant by starting from the negative examples, and resolving them.
Occasionally, we do not start from concrete observation at all, but build up the invariant by purely abstract argument.How things ought to be
It is hard to give up preconceptions of what things “ought to be,” and recognize things as they really are.
You must make the language first
It is the structure and content of the language which determine the design. The individual buildings which you make will live, or not, according to the depth and wholeness of the language which you use to make them with.
One you have it, this language is general. If it has the power to make a single building which lives, it can be used a thousand times, to make a thousand buildings live.
It must constantly be re-created
A language is a living language only when each person in society, or in the town, has his own version of this language.
To reach this deeper state, in which each person has a pattern language in his mind as an expression of his attitude to life, we cannot expect people just to copy patterns from a book. A living language must constantly be re-created in each person’s mind. As he modifies his language, and improves it, depends it, throughout his life - he does it, always, by creating, and improving rules which he invents.
Once people share a language in this way, the language will begin evolving of its own accord. The language will evolve, because it can evolve piecemeal, one pattern at a time. As people exchange ideas about the environment, and exchange patterns, the overall inventory of patterns in the pattern pool keeps changing.
Of course, this evolution will never end.
Repair
Within the larger language, it is impossible for any act not to help repair the larger whole. It is impossible for any act of building to remain an isolated act: it always becomes a portion of the flux of acts which is helping to maintain the whole.
Even the laying of a brick, to mend a wall, will not only be used to mend that wall, but will be used to help repair the seat, the terrace, or the fireplace which that wall helps to form.
The process of unfolding
The sequence of the patterns for a design - as generated by the language - is therefore the key to that design.
The process of unfolding goes step by step, one pattern at a time.
Chopped and disfigured
The details of a building cannot be made alive when they are made from modular parts
If the builder wants to build the room from modular four-foot panels, he must change the size of the rooms, and change their shape, to fit his panels.
In such a building system, it is impossible for a person to create a plan which reflects the larger subtleties of site or plan. Each plan will always be chopped and disfigured to make it fit the building details.
To make the building live, its patterns must be generated on the site, so that each one takes its own shape according to its context.
Until we leave the gate behind
And yet the timeless way is not complete, and will not fully generate the quality without a name, until we leave the gate behind.
Indeed this ageless character has nothing, in the end, to do with languages. The language, and the processes which stem from it, merely release the fundamental order which is native to us. They do not teach us, they only remind us of what we know already, and of what we shall discover time and time again, when we give up our ideas and opinions, and do exactly what emerges from ourselves.
At this final stage, the patterns are no longer important: the patterns have taught you to be receptive to what is real. It is the gate which leads you to the state of mind, in which you live so close to your own heart that you no longer need a language.
This is the final lesson of the timeless way.