Christoper Alexander opens his book Timeless Way of Building, that in order to build with a timeless way, we first need to find the “quality without a name”.
What he is saying is that quality exists, it can be experienced and perceived, but it cannot be described by words. A town, place, or building that just feels good and natural.
You can spec that a door needs hinges and locks that function, but we all have experienced a wide range of very smoothly working, quality doors, and very janky working, bad quality...
This post appeared in issue #36 of my newsletter, Res Extensa, where I write about the intersection of product design, bottoms-up systems, innovation, and what we can learn from the history of technology. I’d love it if you subscribed.
With product design, constraints are your friend. Great products emerge from teams able to differentiate between control and noise factors: things they can control vs. things they can’t. Many teams are tempted to waste time worrying about things outside of their control.
In this example, the control factors are all the things we get to decide: Which quotes to include, whether the block has some header text or not, the language of the header text, the position of the name of each reviewer relative to their quote, whether to use just first name...
This is an interesting look into how an effective team works through the weeds of a product design review. I love how it shows the warts and complexities of even seemingly-simple flow of sending a batch email in an email client. So many little forking paths and specific details need direct thinking to shape a product that works well.
I recently was getting our Silhouette vinyl cutter back out, since Colette hasn’t used it in a while. The software for the thing is still ancient and janky — hard to believe anyone uses it at all.
But I found this new tool for creating vector-based designs for any kind of cutting machine — vinyl printers, CNCs, laser cutters. It looks like an excellent general tool for creating SVGs you can import into all manner of cutting machine proprietary applications.
Building products that address long-tail user needs (i.e. the wide variety of infrequent-but-sometimes-painful needs of specific users) requires somehow providing users an open-ended landscape to create a solution. It’s the promise of the entire “low-code” tool space. We want to create a playground with appropriate guardrails that lets users discover and build their own solutions. Since the tool-builder can’t possibly understand the intricate details of the long-tail of user problems, we want a solution to actually enable the emergence of solutions we didn’t predict or design for.
On my to-build list, I want to make some simple floating picture frames for a few canvasses we have in the house. Those are simple enough to build, but I also want to add reinforcement splines to the mitered corners, for both the structural support and as a design detail.
Using a few examples I found (especially this one from Woodcraft by Suman), I drew up this design that’ll allow it to be reusable, support using hold-down clamps, and stop blocks for batching out cuts. Jigs like this can make somewhat complex cuts dead simple and...
Don Norman’s The Design of Everyday Things is essential reading for anyone that creates products. I’ve been doing a re-read of the most recent edition myself.
I also ran across this excellent set of notes on the book from Elvis Chidera. A good Cliff’s Notes version if you want to get a sense for Norman’s main ideas.
Last week I picked up Scene and Structure on a recommendation I saw from Nat Eliason. I’ve seen him mention experimenting with writing fiction, which this book is about — the process of narrative structure, staging scenes, the balance between scenes and “sequels” to maintain coherence and tension through writing novels, which is the author’s background. I’ve thought about testing the waters with fiction writing, even if I never publish it anywhere. I think the NaNoWriMo happens in November, so maybe I’ll make a plan to give it...
Have you had that feeling of being several weeks into a project, and you find yourself wandering around, struggling to wrangle the scope back to what you thought it was when you started?
It’s an easy trap to fall into. It’s why I’m always thinking about ways to make targets smaller (or closer, if you’re thinking about real physical targets). The bigger and more ambitious you want to be with an objective, the more confidence you need to have that the objective is the right one. What happens often is we decide a project scope — a feature or product...
Ryan Singer shows his work through the process of shaping a new feature for a product he’s building. This is a great detailed example of a process following the Shape Up philosophy.
Looking over the virtual shoulder of someone’s process as they think through a problem from abstract → concrete is incredibly helpful at sparking ideas to help unstick my own projects. I like the nonlinearity here in his procedure. It doesn’t go unidirectionally from coarse to fine; along the way he’s using lower- or...
For the last few months I’ve been using Alexander Rink’s Roam CSS system, which he’s recently released out of beta. The Quattro theme he’s developed is excellent, a look that models the iA Writer app for macOS.
This system has a documented library of variables you can customize. I went in and made a few tweaks to mine for some colors and highlights here and there, but the base is awesome.
Tom MacWright with some ideas for cleaning up ever-creeping morass of web technology:
I think this combination would bring speed back, in a huge way. You could get a page on the screen in a fraction of the time of the web. The memory consumption could be tiny. It would be incredibly accessible, by default. You could make great-looking default stylesheets and share alternative user stylesheets. With dramatically limited scope, you could port it to all kinds of devices.
Basecamp’s Ryan Singer has been doing this solo podcast on a lot of his favored topics, centered around product design. But he also branches into adjacent, related areas of systems, research, user experiences, and more.
I like the solo format as a different approach to your standard conversation or interview shows. I’ve listened to a couple of these, and the best way to describe the content is somewhere between a Twitter thread and a blog post series. You get the good parts about the Twitter medium — the sort of unstructured, “thinking out loud” quality — with more space...
The low-code “market” isn’t really a market. Rather, I see it as an attribute of a software product, an implementation factor in how a product works. A product providing low-code capability says nothing about its intended value — it could be a product for sending emails, building automation rules, connecting APIs, or designing mobile forms.
What are termed “LCAP” (low-code application platform) software are often better described as “tools to build your own apps, without having to write all the code yourself.”
This post isn’t really about low-code as a marketplace descriptor, but about refining the nomenclature for...
The more I use Figma, the more convinced I become that their approach to design tooling is unique. The first impression I got slotted it mentally in with tools like Sketch, Moqups, and in some ways even Adobe Illustrator or Photoshop. Academically I knew it was “different” than using a true power tool like Photoshop, but the first impression back in 2017 was a lot closer to that than where I’d place it after spending time with it.
In this piece, Kevin Kwok dives deep on Figma’s product and business dynamics, getting at...
Learning to build again will take more than a resurgence of will, as Andreessen would have it. And the U.S. should think of bolder proposals than sensible but long-proposed tweaks to R&D policies, re-training programs and STEM education.
What the U.S. really needs to do is reconstitute its communities of engineering practice. That will require treating manufacturing work, even in low-margin goods, as fundamentally valuable. Technological sophisticates in Silicon Valley would be wise to...
Software has multiple dimensions of elements and affordances, but the spatial dimension is underutilized most software outside of the gaming world.
Designer John Palmer wrote this piece on how different types of applications could harness spatial relationships to improve I’m thinking and interacting.
Messaging apps are stacks of bubbles. Video calls are faces inside static rectangles. There are only so many degrees of freedom for users inside of these apps, which makes them simple to use. But this simplicity also strips away so much of the freedom we have during in-person interactions. You can type any message, but typing...
An online book covering all things typography. From composition and individual type elements to formatting and layout. This is one for the bookmarks to reference in design processes.
I’m liking so far the process of manually typing notes in Roam from highlights in my books. Something about it feels more efficient and leaves me with more meaningful, succinct notes. This could come in handy, though, if I want to pull all highlights directly from Readwise (which I’m still loving, use it every day).
An technical piece on restoring Alan Kay’s Xerox Alto he donated to Y Combinator. Amazing piece of technology history, and inspired so many future developments in computing — graphical user interfaces, WYSIWIG text editing, bitmapped graphics, the mouse, and Ethernet for connectivity.
As a keyboard shortcut user, I’m always on the hunt for ways to keep my hands on the keoard. Shortcut snippet tools like TextExpander are also catnip for speeding up typing. I’ve gotten used to many of the emoji shortcuts in Slack (the colon-based :thumbsup: type snippets), and this extension for Alfred extends this to the wider macOS environment. Pretty handy.
An interesting technical breakdown on how Figma built their multiplayer tech (the collaboration capability where you can see other users’ mouse cursors and highlights in the same document, in real time).
A fascinating paper. This research suggests the possibility that group-conforming versus individualistic cultures may have roots in diet and agricultural practices. From the abstract:
Cross-cultural psychologists have mostly contrasted East...
A thought-provoking post from Florent Crivello. Engineers’ continuously seek structure and organization assuming that it’s a proxy for efficiency. Here the author points out that with new tools enabling AI systems to design the most efficient way to construct things, you don’t get anything remotely like what a human would generate.
Bottoms-up systems like organically-spreading cities, evolved species, weather patterns, and the like don’t naturally form looking like an urban planner’s dream — they’re much messier (but often the most efficient).
Planners may make their maps look better when they use zoning to separate the city...
This is another one from the archives, written for the Fulcrum blog back in 2016.
Engineering is the art of building things within constraints. If you have no constraints, you aren’t really doing engineering. Whether it’s cost, time, attention, tools, or materials, you’ve always got constraints to work within when building things. Here’s an excerpt describing the challenge facing the engineer:
The crucial and unique task of the engineer is to identify, understand, and interpret the constraints on a design in order to produce a successful result. It is usually not enough...
This is a neat piece showing some of the process and iteration behind the Google design team’s work on the controller for their new gaming service, Stadia.
Olsson says the team went through “hundreds” of prototypes, some of which were more successful than others. One of the first steps included giving test subjects sculpting clay and letting them shape it to their tastes. The company then 3D scanned and photographed the models, most of which were, at Olsson puts it, “not so successful.”
Another prototype included a controller with a grid-shaped pattern on the front that allowed...
This is from 2007, but is still a very astute observation in how politicians and activists use rhetoric to signal rather than recommend a real, actionable way forward on issues:
The substance of a democracy is the specific mechanism that resolves policy conflicts. If all groups had the same preferred policies, there would be no need for democracy—we would automatically cooperate. The resolution process can be a direct majority vote, or an elected legislature, or even a voter-sensitive behavior of an artificial intelligence, but it has to be something. What does it...
I enjoyed this interview with author Ted Chiang. It covers his recent short story collection Exhalation: Stories with nice context and background on the ideas behind each one. I just finished the book last week, and would have to say that The Truth of Fact, the Truth of Feeling was my favorite. A story about the fallibility of memory and what it would be like if our memories were recorded...
An extension to the GeoJSON format for storing GPS track data, including timestamps. GPX has been long in the tooth for a long time, but it works and is supported by everything. This approach could have some legs if application developers are interested in a new, more efficient, way of doing things. I know I’d like to explore it for Fulcrum’s GPS-based video capability. Right now we do GPX and our own basic JSON format for storing the geo and elapsed time data to match up video frames with location. This could...
An RTIN mesh consists of only right-angle triangles, which makes it less precise than Delaunay-based TIN meshes, requiring more triangles to approximate the same surface. But RTIN has two significant advantages:
The algorithm generates a hierarchy of all approximations of varying precisions — after running it once, you can quickly retrieve a mesh...
This is a neat interactive tool to visualize distortion due to map projection using Tissot’s indicatrix, a mathematical model for calculating the amount of warp at different points:
Nicolas Auguste Tissot published his classic analysis on the distortion on maps in 1859 and 1881. The basic idea is that the intersection of any two lines on the Earth is represented on the flat map with an intersection at the same or a different angle. He proved that at almost every point on the Earth, there’s a right angle intersection...
Our design and marketing team put together this awesome shop for company-branded gear — some shirts, mugs, and other swag with product brands and other funstuff (I even got my own tribute). I’ll have to say that my personal favorite has to be Caleb’s custom Joy Divisionhomage:
Of course we’re not in the business of using this as a money-making venture. All of the proceeds from anything purchased here are...
Wireframing is a critical technique in product development. Most everyone in software does a good bit of it for communicating requirements to development teams and making iterative changes. For me, the process of wireframing is about figuring out what needs to be built as much as how. When we’re discussing new features or enhancements, rather than write specs or BDD stories or something like that, I go straight to a pen and paper or the iPad to sketch out options. You get a sense for how a UI needs to come together, and also for us visual thinkers, the new...
We just finished up a several-month’s-long effort updating the design and branding of Fulcrum, from the logo to typefaces, to web design and all. As happens with these things, it took longer than we wanted it to when we started, but I’m very pleased with the results.
Tim’s post here covers the background and approach we took to doing this refresh:
Sometimes it seems companies change their logos like people change their socks. Maybe they got a new marketing director who wanted to shake things up or a designer came up...
We’ve been doing prototyping over the last 6 months using Figma, a tool for building mockups and making them interactive for testing UX designs. This post from Caleb covers some basics in how it works with some great examples of what you can do with it.
Design is an iterative process that involves a continuous cycle of researching, designing, prototyping, and testing as well as communicating with stakeholders along the way.
This was a cool idea from cartographer Daniel Huffman. He live-streamed a walkthrough taking apart one of his map projects in Illustrator to see how he puts it all together.
I love this idea and am excited to see him do more like this down the road.
This talk on “generative AI” was interesting. One bit stuck out to me as really thought-provoking:
Dutch designers have created a system to 3D print functional things in-place, like this bridge concept. Imagine that you can place a machine, give it a feed of raw material input and cut it loose to generate something in physical space. As the presenter mentions at the end of the talk, moving from things that are “constructed” to ones that are “grown”.
The vast majority of features won’t bend the curve. These metrics are terrible, and the Next Feature Fallacy strikes because it’s easy to build new features that don’t target the important parts.
This certainly rings true for me from experience over the years. It turns out that a single feature itself is far from the main problem halting people part way into on-boarding with a product. This falls into the category of focusing on what we know how to do already, rather than what’s important to do. What’s...
For the Geo DC September 2012 meetup, I talked about our design process at Spatial Networks developing Fulcrum, and how we build highly-functional, easy-to-use mobile features for mapping work.