---
title: design
canonical: https://fjpaz.net/links/design/
markdown: https://fjpaz.net/links/design.md
---

# design

## 1. [omar.website](https://fjpaz.net/links/design/50989449/) · arena:50989449 *[private block]*

[Against recognition](https://omar.website/posts/against-recognition/) · omar.website

## 2. [Brian Jacobson](https://fjpaz.net/links/design/43684947/) · [arena:43684947](https://www.are.na/block/43684947)

**Brian Jacobson**

By: [Justin Liang](https://www.are.na/justin-liang)

One example of an element in Half-Life 2 that damaged our game, was in Ravenholm we added the behavior where the phys-cannon could punt zombies which would cause them to flinch and do a little bit of damage, on the theory that more interaction was better.

What ended up happening was a bunch of our early playtesters, including Gabe [Newell], just ran around non-stop punting the zombies and completely missing the fact that they could pick up saw blades or propane canisters and use those, which were much more fun ways of killing zombies as we knew at the time since we'd already done those elements.

So as a result, we decided that element was hurting our game and removed it.

## 3. Pair

### 3a. [@joodalooped](https://fjpaz.net/links/design/51534972/) · arena:51534972 *[private block]*

**judah** [@joodalooped](https://x.com/joodalooped) · [Oct 2, 2026](https://x.com/joodalooped/status/2105907897469481036)

thread of novel features and/or design details on https://joodaloop.com

\1) mobile gestures

a. double tap to open search
b. two finger tap to switch color mode
c. two finger hold to switch style

![video](https://media.fjpaz.net/posts/x-2105907897469481036/2105907897469481036-0-poster.display.1edc2833.webp) *[video]*

> `@joodalooped` ([Oct 1, 2026](https://x.com/joodalooped/status/2105625846933512652))
> i will probably create a thread to show off all the design details later, but for now i just want to make an announcement and declaration 
>
> https://joodaloop.com/riffs/joodaloop-v4.7

---

[Oct 2, 2026](https://x.com/joodalooped/status/2105908942417309746)

\2) sticky headings for the blog 

makes it possible to quickly find a post since your eyes just have to focus on one spot while scrolling quickly 

it’s a middle ground between collapsing every post by default (needs a click to open) and just showing full posts (hard to scan)

![video](https://media.fjpaz.net/posts/x-2105907897469481036/2105908942417309746-0-poster.display.40459663.webp) *[video]*

---

[Oct 2, 2026](https://x.com/joodalooped/status/2105911880858693665)

\3) <kbd> element styling

i think they’re very cute, and they’re also wrapped in a <no-wrap> custom element that prevents them from breaking across new lines

(note that while the “K” uses the current active font, the Command symbol needs to fall back to the system font)

![photo](https://media.fjpaz.net/posts/x-2105907897469481036/2105911880858693665-0.display.06a991e6.webp)

---

[Oct 2, 2026](https://x.com/joodalooped/status/2105914217396355102)

\4) instant page loads and link styling

probably the most important feature — my site downloads itself to your browser and loads pages from there (immediately and in all network conditions)

internal links are styled differently than external ones to reflect this

![video](https://media.fjpaz.net/posts/x-2105907897469481036/2105914217396355102-0-poster.display.46ca3f9c.webp) *[video]*

---

[Oct 2, 2026](https://x.com/joodalooped/status/2105917201723375762)

\5) the Evergreen page

it replaces my Writing page (since my site has more writing than just long-form and notes) and is one long hand-written document instead of a plain list of titles 

so i can contextualise topics and posts however i like

![photo](https://media.fjpaz.net/posts/x-2105907897469481036/2105917201723375762-0.display.657d58ef.webp)

![photo](https://media.fjpaz.net/posts/x-2105907897469481036/2105917201723375762-1.display.3bf9b08d.webp)

![photo](https://media.fjpaz.net/posts/x-2105907897469481036/2105917201723375762-2.display.0ddbd148.webp)

![photo](https://media.fjpaz.net/posts/x-2105907897469481036/2105917201723375762-3.display.7d061d0c.webp)

---

[Oct 2, 2026](https://x.com/joodalooped/status/2105917506355651045)

\6) custom list styling

![photo](https://media.fjpaz.net/posts/x-2105907897469481036/2105917506355651045-0.display.425d2bcf.webp)

---

[Oct 2, 2026](https://x.com/joodalooped/status/2105919631915675983)

\7) using the BNCE (bounce) font variant for headings 

when you switch the site to the handwritten style, page titles get a messier look

![video](https://media.fjpaz.net/posts/x-2105907897469481036/2105919631915675983-0-poster.display.d1fa8095.webp) *[video]*

---

[Oct 2, 2026](https://x.com/joodalooped/status/2105919943585984984)

\8) info panel + backlinks

every post gets one, but i’m particularly proud of how it shows off the slug for the page, because i’m careful to pick short, memorable ones

![photo](https://media.fjpaz.net/posts/x-2105907897469481036/2105919943585984984-0.display.0ac0207d.webp)

---

[Oct 2, 2026](https://x.com/joodalooped/status/2105921522686976379)

\9) my very minimal collapsible elements

closed vs. open

![photo](https://media.fjpaz.net/posts/x-2105907897469481036/2105921522686976379-0.display.a88c7265.webp)

![photo](https://media.fjpaz.net/posts/x-2105907897469481036/2105921522686976379-1.display.b0562169.webp)

---

[Oct 2, 2026](https://x.com/joodalooped/status/2105922654536634562)

\10) the Chat style for blockquotes

a custom design for representing conversations that happen as a series of short messages

![photo](https://media.fjpaz.net/posts/x-2105907897469481036/2105922654536634562-0.display.a3b0dbd3.webp)

Capture: [capture.json](https://fjpaz.net/posts/x-2105907897469481036/capture.json)

### 3b. [@joodalooped](https://fjpaz.net/links/design/51554998/) · [arena:51554998](https://www.are.na/block/51554998)

**judah** [@joodalooped](https://x.com/joodalooped) · [Jul 4, 2026](https://x.com/joodalooped/status/2073386639175655471)

ok Twitter has some ridiculously good pointer handling behaviour re. tweets on the timeline 

you can click tweets to open them, but when you select text it doesn't open the tweet even thought you're pressing it with the mouse

 so you can, yknow, actually copy the text

(1/N)

![video](https://media.fjpaz.net/posts/x-2073386639175655471/2073386639175655471-0-poster.display.c224fa6d.webp) *[video]*

---

[Jul 4, 2026](https://x.com/joodalooped/status/2073388834604409275)

once you've selected text, you can click anywhere on the selected text to unselect, and it *still* won't navigate away

so you can undo your selection or start re-selecting 

and this works *across* tweets!

(2/N)

![video](https://media.fjpaz.net/posts/x-2073386639175655471/2073388834604409275-0-poster.display.c386fc69.webp) *[video]*

---

[Jul 4, 2026](https://x.com/joodalooped/status/2073391642762219611)

and if you click outside of selected text, it does open the tweet as it would normally

there's a tradeoff between "don't require a double click to open a tweet" and "clicking when there's selected text should always *only* unselect it"

(3/N)

![video](https://media.fjpaz.net/posts/x-2073386639175655471/2073391642762219611-0-poster.display.e56d94b5.webp) *[video]*

---

[Jul 4, 2026](https://x.com/joodalooped/status/2073393051113083048)

even more interesting, if you select some text, then reduce your selection to zero characters, it turns it back into a regular "open tweet" click

this (and the detail in the next tweet) makes it feel like custom text selection of some kind? i'm not sure

(4/N)

![video](https://media.fjpaz.net/posts/x-2073386639175655471/2073393051113083048-0-poster.display.49dccaf9.webp) *[video]*

---

[Jul 4, 2026](https://x.com/joodalooped/status/2073394277783363738)

here, i click outside of the tweet's text box (but still within the clickable area) and no text is selected when i move my mouse around! 

browser default is to select the text

and when i come back to the tweet i started on, it reads as a click on that tweet and opens it

(5/N)

![video](https://media.fjpaz.net/posts/x-2073386639175655471/2073394277783363738-0-poster.display.9af88548.webp) *[video]*

---

[Jul 4, 2026](https://x.com/joodalooped/status/2073396290315309368)

more evidence of custom selection: press down, select text, then hit Select All (Cmd/CTRL + A)

this is how regular pages do it, the selection changes to include all text, moving your mouse then selects everything from the *top* of the page to your pointer 

(6/N)

![video](https://media.fjpaz.net/posts/x-2073386639175655471/2073396290315309368-0-poster.display.eed33eae.webp) *[video]*

---

[Jul 4, 2026](https://x.com/joodalooped/status/2073398545164747158)

but with Twitter, pointer movement after Select All stops at the *first* mouse movement, which means that they do:

\- custom text selection when within a tweet's text
\- return control to the browser on Select All
\- back to custom as soon the mouse moves within a tweet

(7/N)

![video](https://media.fjpaz.net/posts/x-2073386639175655471/2073398545164747158-0-poster.display.a4f9d8f2.webp) *[video]*

---

[Jul 4, 2026](https://x.com/joodalooped/status/2073400943643963887)

but it's inconsistent and weird!

here, it allows the bottom one to freely select *until* the mouse enters the top one, then it locks selection there

once it's locked, bringing the mouse back to the tweet it started on and releasing it...triggers a navigation click???

(8/N)

![video](https://media.fjpaz.net/posts/x-2073386639175655471/2073400943643963887-0-poster.display.77700683.webp) *[video]*

---

[Jul 4, 2026](https://x.com/joodalooped/status/2073405132507869205)

but despite that, it's impressive how the selection handling plays well with all the browser default selection mechanisms  

here i select text with the keyboard and it still unselects on click without opening the tweet

(9/N)

![video](https://media.fjpaz.net/posts/x-2073386639175655471/2073405132507869205-0-poster.display.8cd26144.webp) *[video]*

---

[Jul 4, 2026](https://x.com/joodalooped/status/2073411391734829324)

and finally, there's a delay between selecting text and that selection disabling the click to navigate functionality

if i select text and clock on it quickly, it counts as a navigation click instead of a deselect one

not sure if this is intentional or inherent slowness

(10/10)

![video](https://media.fjpaz.net/posts/x-2073386639175655471/2073411391734829324-0-poster.display.4f087c2d.webp) *[video]*

Capture: [capture.json](https://fjpaz.net/posts/x-2073386639175655471/capture.json)

## 4. [@thesephist](https://fjpaz.net/links/design/43173258/) · arena:43173258 *[private block]*

**Linus** [@thesephist](https://x.com/thesephist) · [Jan 31, 2026](https://x.com/thesephist/status/2017455662452691261)

In a well-engineered codebase, writing code is an effective way to plan and design; in such contexts it may be the quickest way to explore a design space.

Said another way, well-written code makes moving around in the program's design space efficient for the programmer.

---

[Jan 31, 2026](https://x.com/thesephist/status/2017456107598295299)

In this light, it's more useful to evaluate code by how well it circumscribes the space of possible future evolutions of the program, rather than how well it accomplishes its current job alone. Of course, this requires human, organizational, domain context beyond the spec.

---

[Jan 31, 2026](https://x.com/thesephist/status/2017456475090587860)

A codebase together with a chosen code editor (defined broadly) is thus a user interface for navigating an abstract space of programs. It's much more like a design tool than a word processor in this way.

---

[Jan 31, 2026](https://x.com/thesephist/status/2017457142081397214)

The job of the modern programmer is adopting and evolving the toolset (the codebase together with the editor) in service of their responsibility to efficiently and confidently guide their users through this complex space. It's about movement and navigation.

Capture: [capture.json](https://fjpaz.net/posts/x-2017455662452691261/capture.json)

## 5. [Lorusso, What Design Can't Do](https://fjpaz.net/links/design/33133018/) · [arena:33133018](https://www.are.na/block/33133018)

**Lorusso, What Design Can't Do**

By: [leslie liu](https://www.are.na/leslie-liu)

“In a way, it is the very idea of design as an abstract and autonomous entity that is put into question: there is no Design, but designed artefacts, systems and processes, both material and immaterial; there are multiple influencing forces at play, and, in the middle of it all, there are designers, stuck between the grand project of modernity and the ‘smol’ tactics of everyday life.” (34–35)

“Who is more prone to this sentiment [of design disillusionment/disillusioning]? Design disillusion is the ‘feel’ of those who have access neither to the reassurance of the centre nor to the effervescence of the margin, those who feel stuck in some sort of pseudo-cultural, semi-professional suburbia.” (38–39)

“Specialisms have detached themselves from products to become a sort of shared attitude and a common set of cultural and methodological references. More than with the things that they do, designers identify with the sensitivity they adopt when they do those very things. To a certain extent, the contemporary designer is a designer without qualities.” (46)

“We need to relativise these notions [of who a designer is] to be able to see how, and if, they still lead to status. Excellence has always been the rhetorical instrument of a winning elite. But in order to understand elitist aspirations, we need to picture a kind of designer who is not so much part of an elite. This designer is not taken into account by design literature, which mostly focuses on promoting and strengthening the field. I will call this figure the everyday designer.” (48)

“While the image of the design star is intrinsically iconic, that of the everyday designer is admittedly rather blurry, but its function is clear: to avoid exceptionalism.” (50)

“Graphic design is a diluted practice, one in which professionals have to put increasing effort to assert their expertise to clients and society at large. Graphic design is where the necessity of radical openness becomes most obvious, since it’s also where the pro/amateur binary abruptly collapses. Graphic design, one of those “rather inchoate professions” in and around design, might even show the general trajectory of professions.” (51)
“... I propose to see graphic design as the widest of the orders [as defined by design theorist Richard Buchanan in 1995, of which the other three are industrial, interaction, environment], as it is more affected by technical, cultural and methodological democratisation: it is spread more diffusely” (51) “across society” (52).
“Marco Petroni argues that “[t]oo often in the world of design the harshness of the real is accepted only when translated or rendered imaginative.” ... Ultimately, design is terrified by what it is unable to change. It must systematically repress any manifestation of its impotence.” (63) — constant reinventions, redesigns of “design” itself, in pedagogy/education, in industry.

## 6. Pair

### 6a. [@AREdotNA](https://fjpaz.net/links/design/50743033/) · arena:50743033 *[private block]*

**Are.na** [@AREdotNA](https://x.com/AREdotNA) · [Sep 24, 2026](https://x.com/AREdotNA/status/2103161529965437039)

exactly why we have an api! 

we might not ever implement this ourselves (for...reasons) but that doesn't mean someone else can't!

let 1000 use cases bloom

> `@jackiehluo` ([Sep 23, 2026](https://x.com/jackiehluo/status/2102776632780231099))
> i made an @AREdotNA chrome extension that shows you the "likeliest homes" for the link you're saving
>
> i have hundreds of channels and sometimes forget when i already made one for a topic or what i named it, so now @typesafeai shows good recs
>
> to install: https://chromewebstore.google.com/detail/bdckhkfflbdbkceplpaonfihppnahoek?utm_source=item-share-cb
>
> ![photo](https://media.fjpaz.net/posts/x-2103161529965437039/2102776632780231099-0.display.ec1b2e6e.webp)
>
> ![photo](https://media.fjpaz.net/posts/x-2103161529965437039/2102776632780231099-1.display.aa1628fd.webp)
>
> ![photo](https://media.fjpaz.net/posts/x-2103161529965437039/2102776632780231099-2.display.86d27e4c.webp)
>
> ![photo](https://media.fjpaz.net/posts/x-2103161529965437039/2102776632780231099-3.display.7c6a04b4.webp)

Capture: [capture.json](https://fjpaz.net/posts/x-2103161529965437039/capture.json)

### 6b. [@AREdotNA](https://fjpaz.net/links/design/50741957/) · arena:50741957 *[private block]*

**Are.na** [@AREdotNA](https://x.com/AREdotNA) · [Sep 24, 2026](https://x.com/AREdotNA/status/2103156508296949970)

this is our favorite kind of improvement, the kind that one might never even notice (but is actually extremely luxurious)

> [`@AREdotNA`](https://x.com/AREdotNA/status/2103155233270444340)
> niche, but amazing: the best implementation of scroll restoration we've ever had has just deployed to the web app.
>
> observe the deep rabbit hole traversal and subsequent backing out of, all with each channel's scroll position maintained...
>
> ![video](https://media.fjpaz.net/posts/x-2103156508296949970/2103155233270444340-0-poster.display.9bb5c2bd.webp) *[video]*

Capture: [capture.json](https://fjpaz.net/posts/x-2103156508296949970/capture.json)

## 7. [djmicrobeads.substack.com](https://fjpaz.net/links/design/47683462/) · arena:47683462 *[private block]*

[I made a camera app in a few hours which made me see the world differently](https://djmicrobeads.substack.com/p/i-made-a-camera-app-in-a-few-hours?manualredirect=) · djmicrobeads.substack.com
