A realization that this leaves out something essential Nothing so fundamental lies in the realm of concern to us aggregate humans, where the need is, now, for the study of real complexity, not idealized simplicity. In every field except high-energy physics on one hand, and cosmology on the other, one hears the same. The immense understanding that has come from digging deeper to atomic explanations has been followed by a realization that this leaves out something essential. In its rapid advance, science has had to ignore the fact that a whole is more than the sum of its parts. Matter versus Materials: A Historical View knowledgecomplexityholism
Measured by the number of its features A primary cause of complexity is that software vendors uncritically adopt almost any feature that users want. Any incompatibility with the original system concept is either ignored or passes unrecognized, which renders the design more complicated and its use more cumbersome. When a system's power is measured by the number of its features, quantity becomes more important than quality. Every new release must offer additional features, even if some don't add functionality. Niklaus Wirth, A Plea for Lean Software featuresqualitycomplexity
Features and complexity Niklaus Wirth of Pascal fame wrote a famous paper in 1995 called A Plea for Lean Software. His take is that “a primary cause for the complexity is that software vendors uncritically adopt almost any feature that users want”, and “when a system’s power is measured by the number of its features, quantity becomes more important than quality”. Ben Hoyt, The small web is beautiful benhoyt.com A Plea for Lean SoftwareSpeed is a featureRequirements proliferation featurescomplexity
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. Christopher Alexander, The Timeless Way of Building The right overlapEach element performs many functions complexity
The kind of problem a city is Dr. Weaver lists three stages of development in the history of scientific thought: (1) ability to deal with problems of simplicity; (2) ability to deal with problems of disorganized complexity; and (3) ability to deal with problems of organized complexity. The history of modern thought about cities is unfortunately very different from the history of modern thought about the life sciences. The theorists of conventional modern city planning have consistently mistaken cities as problems of simplicity and of disorganized complexity, and have tried to analyze and treat them thus. Jane Jacobs, The Death and Life of Great American Cities Order Out of ChaosOrder Without Design problemscitiescomplexity
The difficulty of designing complexity Designers, limited as they must be by the capacity of the mind to form intuitively accessible structures, cannot achieve the complexity of the semilattice in a single mental act. The mind has an overwhelming predisposition to see trees wherever it looks and cannot escape the tree conception. Experiments suggest strongly that people have an underlying tendency, when faced by a complex organization, to reorganize it mentally in terms of non-overlapping units. The complexity of the semilattice is replaced by the simpler and more easily grasped tree form. Christopher Alexander, A City Is Not a Tree complexityintuitiondesign
Structural complexity The idea of overlap, ambiguity, multiplicity of aspect, and the semilattice are not less orderly than the right tree, but more so. They represent a thicker, tougher, more subtle and more complex view of structure. Christopher Alexander, A City Is Not a Tree structurecomplexity
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. Dan Klyn, What Good Means complexitysoftware
Notes on the Legibility War An Article by David R. MacIver notebook.drmaciver.com The basic idea of legibility is that the act of making something comprehensible enough to control is itself an act that shapes the thing to be controlled, often with far greater consequences than the control itself. This is because it removes complexity that is deemed as irrelevant that makes it harder to control, and that complexity may be in some way essential to the health of the system. controlsystemscomplexitylegibility
The return of fancy tools An Article by Tom MacWright macwright.com Technology 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 complexitysimplicitytoolssoftwaretechnologynotetaking
On the other side of complexity A Quote "I would not give a fig for the simplicity this side of complexity, but I would give my life for the simplicity on the other side of complexity." — Oliver Wendell Holmes Jr. Don't Rush to Simplicity simplicitycomplexity
Brilliant Hardware in the Valley of the Software Slump An Article by Craig Mod craigmod.com It begins with craftPenn StationEdgesThe business case for craft
It begins with craft Something strange is happening in the world of software: It’s slowly getting worse. Not all software, but a lot of it. It’s becoming more sluggish, less responsive, and subtly less reliable than it was a few years ago. In some ways this is hyperbole. Objectively, we’ve never been able to do so much, so easily with our smartphones and laptops and tablets. We’ve never pushed more data between more places more readily. But while the insidious “worseness” I mention falls only in part on the engineering side of things, it falls harder on the more subjective, craft side of things, making it all the more worrisome. Why should we care about this? Because the majority of our waking hours take place within the confines of applications. A truth recently amplified by the covid pandemic. And I believe software used by millions (if not billions) has a moral duty to elevate the emotional and intellectual qualities of its users. That elevation begins with craft. Apps Getting Worse performancecraftsoftware
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. softwaretransportation
Edges Hardware has literal and metaphorical edges — it must be fully complete and largely bug free to ship. Software? It’s far more amorphous, like mist. Patches can be endlessly pushed. It never ends. Faulty hardware can destroy a company. Faulty software can be patched. The butterfly keyboard debacle may never be lived down. Even as I type on this improved Magic Keyboard, I can’t help but wonder: Did they really test this thing? I had three butterfly keyboards die on me, twice in the field. Not fun. Hardware failures live long in the mind.
The business case for craft macOS software that adheres to craft — Things or Carbon Copy Cloner or BBEdit or Sublime Text (which, despite not being “native native” feels so solid and so responsive you’re willing to overlook its quirks) or Bear or Alfred or iA Writer or Keynote (arguably one of the best pieces of macOS software of all time) or anything by Panic, heck, even Terminal or Quicken (which, against all rational expectations is just a joy to use)5 — exists in troves, the existence of such proves to the Slacks or Twitters or Adobes of the world that it’s not impossible nor rare to produce craft-oriented software in service to user fluency, and still make a profit. In fact, there’s a business case to be made for being craft- and fluency-focused. We’ve seen entire companies with business models that could be summarized as “Bloat-Free X” emerge in recent years. Affinity is bloat-free Adobe. Install Adobe Creative Cloud on your laptop and marvel at the no fewer than a dozen processes whirling around in the background for unknown purposes. It’s no surprise Affinity Photo and Publisher and Designer have taken off. Sketch’s main feature for many years was simply: Not Adobe. And the web! When you care — when you really give a shit — the web is awe inspiring. I still can’t believe Figma is web-native (also born from the Not Adobe camp). That an application can feel so powerful, so fast, so well-crafted and be fully web-based should be a kind of lighthouse-archetype for all other sites lost in a sea of complexity and muck and unnecessary frameworks. More profitable and a better buy craftbusinesswww