135 private links
Every image a computer shows you, whether it's a game, a film effect, a map or the text you're reading right now, ends up as a grid of colored dots. This book is about how those dots get their colors.
We start with the simplest thing there is: setting one dot. From there we draw lines, fill shapes, mix colors, and then step into 3D, building a complete renderer from scratch in plain JavaScript, followed by a ray tracer and a path tracer that follows light the way physics says it really behaves. Only when every stage is familiar do we hand the work to the GPU, the specialized chip built to do exactly what you've just written, millions of times faster. The next parts chase the path tracer's realism in real time and bring things to life with animation and simulation. The last part covers the techniques behind today's real-time renderers, from temporal antialiasing and clustered lights to volumes, ray tracing in compute shaders, and scenes learned from photographs.
This past year, OpenAI, Anthropic, and other labs have announced breakthroughs on numerous long-standing mathematical problems, in some cases pushing well beyond what researchers expected current systems to be capable of — including resolving one of the famous Millennium Prize problems. But in classic Silicon Valley style, AI labs are moving fast and breaking things, barreling through the discipline with all the grace of a runaway bulldozer. Results that might normally have been celebrated have instead sparked backlash. AI labs say they are learning from earlier mistakes. Whether those promises bear fruit remains to be seen.
Something shifted over the last year or so, and it's been hard to put into words.
Open a PR on a popular repo today and observe what happens. Within seconds, a bot leaves an AI review summarizing your own change back to you. Another bot posts a preview deployment. Another posts a "walkthrough" with a sequence diagram nobody asked for. Sometimes a fourth shows up to respond to the third. By the time a human actually looks at it, the thread is a wall of generated text, and the real conversation (the human part) is buried somewhere in the middle.
The details vary, but the shape is the same: maintainers are no longer just deciding whether a contribution is good, they’re deciding whether they can afford to find out.
There are not many computer file formats I would trust to still be readable fifty years from now, but plain text is one of them. That may sound like faint praise. A text file cannot embed a spreadsheet, preserve elaborate page layouts, run a presentation, or provide many of the conveniences we expect from modern applications. What it does instead is store text in one of the simplest and most widely understood forms in computing, and that simplicity is a large part of why it has lasted.
Ansi.md is my brain dump for creating modern command line apps. My intent is to gradually expand this guide with hard-won tricks, recommended apps and homegrown tools.
You have to split your code so numerically intense parallel routines are offloaded to the GPU and serial work remains on the CPUs. The GPU is a distinct device, and you have to move data back and forth between these devices. The latter takes energy, the former takes money. Perhaps with GenAI coding assistants, this hybrid computing model can be made easier to implement.
Stop for one second and ask yourself a simple question. Where do your words come from?
When you speak, what comes first, the idea or the word? Do you first feel a thought inside you, and only after that go searching for the right word to wrap around it? I think we all do. The word is never the start. The word is just the skin. The idea, the consciousness, is the thing sitting under it.
Now ask the same question about an LLM. For an LLM, it is exactly the opposite. And I think this one small difference explains almost everything about where we are heading.
- User wants to do X.
- User doesn't know how to do X, but thinks they can fumble their way to a solution if they can just manage to do Y.
- User doesn't know how to do Y either.
- User asks for help with Y.
- Others try to help user with Y, but are confused because Y seems like a strange problem to want to solve.
- After much interaction and wasted time, it finally becomes clear that the user really wants help with X, and that Y wasn't even a suitable solution for X.
We show you colors. You recreate them from memory. Challenge friends to beat your score. It's harder than you think. Play free at dialed.gg.
Weekend at Bernie’s showed that a good chunk of the most-depended-on open source packages are dead, and there are a lot of different ways for a project to end up that way.