“Design” is now “Product” An Article by Dorian Taylor dorian.substack.com Design has very little to do with what tools or methodologies you use, or what your job title is, or what you have a degree in, or even anything like “creativity”; design is about your relationship to constraints. Rather: to what extent are you defining constraints rather than just obeying them? Design is about taking a universe of possibilities and converging onto exactly one outcome. Being handed a set of constraints which you treat like immutable laws of physics (because many of them are) and solving within that envelope is what engineering is. To wit: what most designers are doing most of the time is actually a form of engineering, and engineers are always doing at least some design. This is because genuine design—the power to define constraints—is a privileged political position within an organization, and not everybody can occupy it. In other words, the “seat at the table” comes first. Design is Steve Jobs infamously dropping an iPod prototype into his fish tank, pointing at the bubbles coming out and yelling at his staff to make it thinner. It doesn’t matter what your title is; Jobs is the designer in that scenario. Steve Jobs designengineeringconstraints
Navigation by shibboleth An Article by Dorian Taylor doriantaylor.com The inverse-chronological colly on the front page is exactly what I didn’t want to end up with. I have tried my damnedest to keep everything on this site as temporally neutral as I can make it. I even intentionally leave the dates off the documents. Temporality only matters if you’ve already read everything and you want to see what’s new or changed, like if you’ve subscribed to a feed. Which is exactly what that is on the front page. Reverse chronology bias bloggingtime
Skeleton, Organs, Circulation, Sinew, Skin An Article by Dorian Taylor I’m concerned with how I witness the work of user experience practitioners getting treated: like it’s just a set of motions toward a product’s all-important implementation, and one that we try to compress, due to its ostensible superfluity. Once the implementation is finished, the UX work appears to usually get discarded. Tracing the answer backThe UX coral reef ux
Design System as Style Manual With Web Characteristics An Article by Dorian Taylor doriantaylor.com In my opinion, what makes a designer competent is precisely their ability to credibly justify their conclusions. If you can’t do this as a designer—no matter how successful your results are—then neither I nor anybody else can tell if you aren’t just picking things at random. What I am proposing, then, is no less than to make a designer’s entire line of reasoning a matter of permanent record. On the surface is the familiar set of prescriptions, components, examples and tutorials, like you would expect out of any such artifact. Attached to every element, though, is a little button that says Why? You click it, and it tells you. The proximate explanation will probably not be very satisfying, so you click on the next Why? until you get to the end, at which point you are either satisfied with the explanation, or you aren’t. The Design of Design decisionsdesignsystemsstyle
On the "Building" of Software and Websites An Essay by Dorian Taylor doriantaylor.com I’m beginning to suspect that software, and more conspicuously the Web, is fundamentally the wrong shape for the archetype of the construction project. You are agreeing to make a ThingThe Thing-deadline calculusTrees and graphsContent as value The Battle for the Life and Beauty of the EarthHofstadter's Law softwarebuildingwwwconstruction
Agile as Trauma An Essay by Dorian Taylor doriantaylor.com The Agile Manifesto is an immune response on the part of programmers to bad management. Many a corner officeIntramural brownie pointsFeature factories agilemanagement
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