Andy Ingram's Avatar

Andy Ingram

@andrewingram

CEO of naming things. React and GraphQL since before they were CV fodder. “an encyclopaedic knowledge of web development". Manifesting code at Watershed.

473
Followers
217
Following
374
Posts
05.07.2023
Joined
Posts Following

Latest posts by Andy Ingram @andrewingram

I think there's prior art in other languages, but I couldn't find anything like this for JavaScript/TypeScript. It's the kind of thing that a few months ago i'd have thought of - but dismissed as too much work to try, now it exists after a few evenings of prompting on a $20/month ChatGPT plan.

05.03.2026 01:08 👍 1 🔁 0 💬 0 📌 0

Motivation was that agents are good at SQL, so what if we expose a SQL interface to let agents to get exactly what they need in a token efficient way?

There's some similarities to GraphQL too, i.e a user-centric facade over your data.

cc @simonwillison.net (I think you'll find it interesting)

05.03.2026 01:07 👍 3 🔁 0 💬 1 📌 0
sqlql playground

I've been prompting into existence this thing that lets you expose a public SQL interface over your datasources, including other SQL databases.

Query playground (schema editing is still a bit rough): sqlql.andrewingram.workers.dev?view=query

Repo (unstable API): github.com/AndrewIngram...

05.03.2026 01:04 👍 0 🔁 0 💬 1 📌 0

I also like to say something about the map not being the territory. A map is a useful tool to get where want to go, but you can lose it, or take a different route, and still end up in the right place.

So the KRs are your day to day tool to keep you on track, not sub objectives.

16.02.2026 20:14 👍 2 🔁 0 💬 1 📌 0

It does look it has a mechanism for supporting wrappers, eg “WrappedTab”, which is the main reason why you’d want a composition-based API in this scenario

11.02.2026 11:43 👍 1 🔁 0 💬 1 📌 0

*we’re

30.01.2026 18:38 👍 0 🔁 0 💬 1 📌 0

Whilst where here, it’s also never been particularly clear to me why non- reactive dependencies are only for effects, not other things which take dependency arrays like useMemo and useCallback

30.01.2026 18:38 👍 0 🔁 0 💬 1 📌 0

Sometimes there are perf reasons to have things defined outside of the body of a component, but at least put them immediately before it, rather than in some dumping ground corner of the file.

30.01.2026 18:23 👍 1 🔁 0 💬 0 📌 0

fragments, styles, component props

30.01.2026 18:20 👍 1 🔁 0 💬 1 📌 0

Some engineers are allergic to co-location, and I find that challenging

30.01.2026 11:48 👍 1 🔁 0 💬 1 📌 0

A lot of UI state should be derived from the URL (path and query strings), but that derivation should happen at the root of your component tree so that the bulk of your components are agnostic to it -- otherwise you impair their reusability.

23.01.2026 14:38 👍 2 🔁 0 💬 0 📌 0

It seems weird to call it out unless there's something that leverages that convention, like how the rule of hooks and devtools build off the use* one.

21.01.2026 15:14 👍 0 🔁 0 💬 1 📌 0
Preview
useTransition – React The library for web and native user interfaces

Does anyone know know why this action naming convention exists? react.dev/reference/re... @danabra.mov @acemarke.dev

21.01.2026 14:50 👍 1 🔁 0 💬 2 📌 0

The actual score wasn’t that significant though, and varies widely between credit checking firms. We set our cutoff as low as we could whilst still being cautious, most of our decisions were based on other factors

14.01.2026 17:14 👍 1 🔁 0 💬 0 📌 0

Makes sense. I used to work for a small loan lender and we only needed to do soft credit searches. Though in the UK most of the rules exist to protect consumers — ie stop you taking out loans that would ultimately worsen your financial position.

14.01.2026 17:12 👍 1 🔁 0 💬 2 📌 0

Is there an equivalent of the UK's soft credit searches?

14.01.2026 14:22 👍 0 🔁 0 💬 2 📌 0

I've found a Chrome-only bug in anchor-positioning (it works as expected in Firefox and Safari), who do I talk to? is it @una.im ?

14.01.2026 13:22 👍 0 🔁 0 💬 0 📌 0

Mine included all the Dungeon Crawler Carl books, which are somewhat lengthy

01.01.2026 23:06 👍 1 🔁 0 💬 1 📌 0

idk how people do over 50. I read every night and ever commute and only made it to 48. Maybe I need to read shorter books.

01.01.2026 22:48 👍 0 🔁 0 💬 1 📌 0

Yeah, there’s a big list of technical cleanup we have to get through before we can even entertain use of the compiler, but our build times are so bad that adding in the compiler in its current state is such a non-starter that we’re not even going to spend time evaluating it.

30.12.2025 17:42 👍 2 🔁 0 💬 0 📌 0

Truly the template against which all future Ubisoft games were designed

28.12.2025 22:48 👍 3 🔁 0 💬 0 📌 0

The limitations of anchor postioning likely make a lot of sense in terms of not making it possible to crash browsers, but are frustrating because I can’t find a way to do the cool stuff I want to do — like having a line connecting an span in the main content area to an area in a sticky sidebar.

22.12.2025 02:56 👍 0 🔁 0 💬 0 📌 0

Not sure of the benefits in real world terms, but having transitions align to rendering frames might make things seem smoother? Like how stable frame pacing makes videogames feel better to play.

21.12.2025 16:04 👍 1 🔁 0 💬 1 📌 0

Annoyingly you can't use anchor positioning in scroll-margin or scroll-padding, so if you want to account for a sticky header with internal links on a page you still seem to be stuck with magic numbers.

21.12.2025 14:56 👍 0 🔁 0 💬 0 📌 0

Has anyone ever gone with a convention of defining their CSS animation duration in terms of frames rather than absolute duration?

e.g calc(16ms * 8)

cc @jhey.dev maybe?

21.12.2025 12:41 👍 3 🔁 0 💬 1 📌 0

Which chair was it?

I’m the only one at the office who doesn’t use an Aeron because it was causing excruciating lower back pain for me. At home I just replaced a pretty decent Steelcase Leap with the LiberNovo Omni, which is crazy comfortable.

18.12.2025 18:33 👍 0 🔁 0 💬 0 📌 0

Hm, also seems like you can't really use a sticky element as an anchor, it seems to just use the static position rather than the sticky one.

18.12.2025 15:03 👍 0 🔁 0 💬 0 📌 0

I suppose it's not really related to anchor positioning except to say that I was trying to see if I could make a better version of position sticky using it (spoiler: I couldn't)

18.12.2025 14:44 👍 0 🔁 0 💬 1 📌 0

cc @una.im @jakearchibald.com in case any of y'all are aware of existing conversations about this?

18.12.2025 14:44 👍 0 🔁 0 💬 1 📌 0

A missed opportunity that's potentially loosely related to the design of CSS anchor positioning is the ability to do "position: sticky" but without the annoying constraints about parent elements

If you don't have full control over document structure it's super restrictive

18.12.2025 14:44 👍 0 🔁 0 💬 1 📌 0