Brandon Dail

Brandon Dail

@brandondail.com

Staff Engineer at Discord working on Design Systems, Accessibility, Other Stuff™️ Collage & generative plotter artist 👋

5K followers404 following141 posts

Brandon Dail reposted

In my audits, reading the Performance profile is where people get stuck: the flame chart and waterfall look like noise at first I built an interactive guide to make them click, every figure is interactive, plus LCP, CLS, INP and the Insights panel perf.reviews/profile-guide #WebPerf #DevTools

perf.reviewsReading a Performance Profile: Field GuideAn interactive field guide to the Chrome DevTools Performance panel: waterfall, flame chart, LCP, CLS, INP, and the Insights panel.

It's a shame that generative image models have pursued realism so relentlessly. Reproducing training data is uninteresting and exploitative. The imperfections of early models were genuinely interesting, and will end up being the most artistically interesting artifact of all this in the long term

The above image was generated with mitsua-diffusion-one, which is a self-described low quality model that is trained exclusively on public domain/CC0 images. It's my favorite for both of those reasons.

I’m on sabbatical this month, and I’ve been using some of my time to dust off my plotter and get back into my art. This is a CMYK print that’s using a custom algorithm based on waves and circles to layer the colors. Stopped half way through because I liked the vibes ✨

Feels like strongly typed compile-to-JS languages like Reason deserve a resurgence with LLMs. Biggest barrier was learning the new language, which has been heavily reduced, and a fast and strict type system is very valuable for agents

Opening the WebSocket connection is trivial; we already did that in an inline <script>. Sending the identify message was harder and has deps on code that was in our main bundle. We fixed this by actually shipping more JS 👺 a smaller bundle that loads first with just the modules needed to identify.

Here's your friendly reminder that CSS selectors are global and evaluated RTL, so if you have selectors that are very broad like `.container > div` you might be impacting performance in a measurable way 🙈 Before and after profile of server switching after some selector optimizations in @discord.com

Brandon Dail reposted

Ex-farm worker here. We need to talk about this whole "But a living wage for farm workers would spike the cost of food!" thing. Not true AT ALL. Y'all don't understand how fast experienced farm workers are. The average tomato picker pulls 650lbs per hour. At $20/hr, that's $0.03/lb for labor.

we (@discord.com) rewrote our color token system to support these new themes, and its exciting 👀 in short: color tokens are defined using a constraint-based system where colors are defined with contrast ratios. change a base color and all affected tokens update in all themes, preserving contrast ✨

discord.comRevamped Overlay & Refreshed Desktop Give Game Time a BoostWe’re releasing a new and improved version of the Game Overlay, along with a refreshed desktop app so you can further customize Discord to your style.

for example, text-secondary here is defined in terms of a contrast ratio with a background token. This defines the color across all themes; no hand picked colors! that bg token is also defined using a contrast constraint. If anything in the constraint dep graph changes, it propagates automatically

Brandon Dail reposted

Replying to @seanmcarroll.bsky.social

In the meantime, as a reader: don’t trust any articles attributed to “staff,” and don’t trust any articles that don’t include quotes from scientists completely uninvolved in the original publication. Science is a gradual, meandering, back and forth process; sometimes we have to let it play out.

Brandon Dail reposted

Replying to @seanmcarroll.bsky.social

Which brings us to the scicomm point: we gotta get better at distinguishing between “here’s someone’s speculative idea that they just published” and “here’s a new discovery.” This is the former.

Brandon Dail reposted

What does it mean for something to be Turing complete? I answer this question, and more, through a series of fully interactive Turing machine simulations! Play, pause, step forwards and backwards, and even write your own Turing machine programs in my latest blog post. samwho.dev/turing-machi...

the worst part about being a parent is that even the most cookie-cutter, clichéd story can make you cry if it happens to be about kids or parenting it’s like a cheat code the world uses on you that you can’t disable

is there any existing research on what the best contrast ratio for readability is? WCAG gives a lower bound but there’s also such a thing as too much contrast so I’m curious if there’s been any formal studies on where the sweet spot is

I try to be as honest as I can with my kids, and sometimes that’s hard to reconcile with the fact that we as a society have decided to collectively lie about a magical, immortal old man who sees you when you’re sleeping and knows when you’re awake

opening our monorepo's VSCode workspace was totally killing my CPU with rg processes. It brought my M3 Max to a halt for like five minutes. Turns out it was the Tailwind extension I had installed for another project trying to find a tailwind.config.* file in our monorepo 🫠

One tension here is that current gen LLMs can have a ~high success rate for accurately predicting what a real answer would be (depending on your topic), so there’s undeniably some utility there but knowing when it’s NOT accurate is increasingly difficult which means you always need to be skeptical

This post is unavailable.

Working on our color system and a novel approach we've started exploring for colors is to define them in terms of constraints: instead of picking colors for every token/theme, you specify a reference color and contrast ratio. The system does the rest. this has a few cool advantages 👀

View full thread

It makes iterating on colors system-wide trivial; all you have to do is change the colors of the root token in your graph and that automatically propagates to all other color tokens and ensures they still meet your contrast requirements. Exploring a new themes goes from a O(tokens) task to O(1)

Enforcing contrast requirements also becomes trivial. You can specify a minimum contrast ratio for text and ensure that no new text tokens can be created that don't meet your contrast requirements on some set of background colors. Designers no longer have to manually check contrast ratios everywhere

Working on our color system and a novel approach we've started exploring for colors is to define them in terms of constraints: instead of picking colors for every token/theme, you specify a reference color and contrast ratio. The system does the rest. this has a few cool advantages 👀

For one, you can easily visualize the relationships like in the generated graph above. This is just a quick and simple graphviz output but you can get fancy and visualize this graph in interesting ways that can help you get insight into how your system is structured.