A diversity within its unity The vital power of an imaginative work demands a diversity within its unity; and the stronger the diversity, the more massive the unity. Dorothy Sayers, The Mind of the Maker diversity
The heat death of design Losing the design diversity means falling into a singular narrative of how design must be done, which grants unfair and self-reinforcing advantage to the mainstream while discouraging, stifling, or even punishing the idiosyncratic designers who bring unorthodox but remarkably innovative processes to the table. The true opportunity cost is the diverse future that humanity can no longer access. A future without diversity is fundamentally stagnant: imagine designs so standardized that you can’t tell them apart. While every design is guaranteed to be good, none will be great. New designs are marginally better than previous ones with the rate of improvement eventually approaching zero. We have reached the heat death of design. Chuánqí Sun, The vanishing designer diversity
Obsessed with absolute numbers Modernist planning was obsessed with absolute numbers, including the minimum dimensions of rooms, open space per capita, and the one-size-fits-all head counts of neighborhood units. This was often pegged at five to seven thousand and was used as a formula for determining the distribution of schools, shops, sports fields, and other facilities. The failure of such planning is not in its effort to be comprehensive or to equalize access to necessary facilities. It is, rather, the attempt to rationalize choice on the basis of a homogeneous set of subjects, a fixed grammar of opportunities, a remorseless segregation of uses, and a scientistic faith in technical analysis and organization that simply excludes diversity, eccentricity, nonconforming beauty, and choice. The utopian nightmare. Michael Sorkin, 20 Minutes in Manhattan Desired qualities of lightPredicted Mean Vote planningmetricsdiversity
The number of ways in which things work The importance of diversity is not so much the number of elements in a system; rather it is the number of functional connections between these elements. It is not the number of things, but the number of ways in which things work. Bill Mollison, Introduction to Permaculture diversityconnectionnetworkssystems
Exuberant diversity in a city's streets To generate exuberant diversity in a city’s streets and districts, four conditions are indispensable: The district, and indeed as many of its internal parts as possible, must serve more than one primary function; preferably more than two. These must insure the presence of people who go outdoors on different schedules and are in the place for different purposes, but who are able to use many facilities in common. Most blocks must be short; that is, streets and opportunities to turn corners must be frequent. The district must mingle buildings that vary in age and condition, including a good proportion of old ones so that they vary in the economic yield they must produce. This mingling must be fairly close-grained. There must be a sufficiently dense concentration of people, for whatever purposes they may be there. This includes dense concentration in the case of people who are there because of residence. Jane Jacobs, The Death and Life of Great American Cities diversitystreets
The small web is beautiful An Essay by Ben Hoyt benhoyt.com I believe that small websites are compelling aesthetically, but are also important to help us resist selling our souls to large tech companies. In this essay I present a vision for the “small web” as well as the small software and architectures that power it. Why aim small?Features and complexitySolving the problem of software bloatRaw size isn't enough Rediscovering the Small Web wwwmicrosites
Why aim small? Why aim small in this era of fast computers with plenty of RAM? A number of reasons, but the ones that are most important to me are: Fewer moving parts. It’s easier to create more robust systems and to fix things when they do go wrong. Small software is faster. Fewer bits to download and clog your computer’s memory. Reduced power consumption. This is important on a “save the planet” scale, but also on the very local scale of increasing the battery life of your phone and laptop. The light, frugal aesthetic. That’s personal, I know, but as you’ll see, I’m not alone. performancesystemsconservation
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”. A Plea for Lean SoftwareSpeed is a featureRequirements proliferation featurescomplexity
Solving the problem of software bloat But instead of just complaining, how do we actually solve this problem? Concretely, I think we need to start doing the following: Care about size: this sounds obvious, but things only change when people think they’re important. Measure: both your executable’s size, and your program’s memory usage. You may want to measure over time, and make it a blocking issue if the measurements grow more than x% in a release. Or you could hold a memory-reduction sprint every so often. Language: choose a language that has a chance. Remove: cut down your feature set. Aim for a small number of high-quality features. My car can’t fly or float, and that’s okay – it drives well. Say no to new features: unless they really fit your philosophy, or add more than they cost over the lifetime of your project. Dependencies: understand the size and complexity of each dependency you pull in. Use only built-in libraries if you can.
Raw size isn't enough A few months ago there was a sequence of posts to Hacker News about various “clubs” you could post your small website on: the 1MB Club, 512KB Club, 250KB Club, and even the 10KB Club. I think those are a fun indicator of renewed interested in minimalism, but I will say that raw size isn’t enough – a 2KB site with no real content isn’t much good, and a page with 512KB of very slow JavaScript is worse than a snappy site with 4MB of well-chosen images. ...[Instead, it's about] an “ethos of small”. It’s caring about the users of your site: that your pages download fast, are easy to read, have interesting content, and don’t load scads of JavaScript for Google or Facebook’s trackers. minimalismcontentsize