News for hackers. Stuff that matters.

corysama

A Russian friend of mine who was very smart and very good at math clearly comes from what I call the throw your children down a well school of education. It goes like this: “Throw your children down a well. Any child that was not strong enough to climb out on their own was a waste of time anyway.”
I’ve seen the same explanation used for why static and functional languages took off more in Europe while dynamic and object oriented languages took off more in America: American research labs could afford more expensive computers that could handle more runtime overhead. The shining example of this being Xerox PARC with their Alto computer specifically designed to run Smalltalk like a computer from 10 years in the future.
Re:The first wired XR glasses powered by Android XR on Thursday October 29, 2026 @02:34PM (#50293815)
Re:I still teach OpenGL ES 3.0 on Tuesday October 27, 2026 @11:54AM (#50261163)
I have been working for a while on a tutorial based on 4.6. When I get close to a first release, I’ll have to ask you for a review :)

My take is that older versions of GL feel nicer to teach to beginner programmers because they have so many specific functions to do each specific thing. You can have a lot of verbose, step-by-step instruction. But, much of what you have to convey is understanding of a convoluted interface to a hidden state machine. And, the one-step-at-a-time nature of the old interfaces build bad habits that don’t scale when you get serious.

With 4.6 we can get Direct State Access, Programmable Vertex Pulling and MultidrawIndirect. With that we can move the complexity from “lots of functions to manipulate a state machine” to a few functions that strongly resemble using malloc and memcpy to work with arrays of structs. That’s not trivial. But, it should be extremely familiar. It’s visible, flexible, scalable, and it sets you up to move on to Vulkan after you’ve learned the essentials of 3D rendering.

Several Amiga/DOS era games used a similar system for image compression.
Motivation doesn't replace working for 60 hours. It causes working for 60 hours.
I’m a cheerleader for the Khanmigo AI tutor effort. But, apparently so far they are discovering that the hard part is getting the kids motivated to actually ask the AI any questions.

3Blue1Brown does an amazing job of making math interesting to learn in itself. As opposed to the hundreds of millions of kids told “You just have to learn it or you’ll be dumb. Keep up or you’ll fall behind forever. Go!”

The vid calls out explicitly that math education is a primarily a motivation problem and I agree. One way or another, we need a lot more focus on that.

Re:macOS 15.8.2 Breaks OpenGL on Sunday October 18, 2026 @07:20PM (#50146511)
Someone could write an OpenGL layer directly on Metal. There have been a few incomplete starts at that.

Meanwhile, writing an OpenGL-on-Vulkan layer has been a plan for deprecating/simplifying driver support for OpenGL for quite a while now. Might as well focus efforts on that.

Re:Teal – A statically-typed dialect of Lua on Sunday October 18, 2026 @12:06PM (#50142291)
Being light in every sense of the word is a primary feature of the language.

Lua is great for high-level control of a program written in C/C++. When setting that up, I’ve often appreciated that I could removed features like file I/O from the Lua standard library and the rest keeps on trucking.

Lua is terrible for writing programs by itself. People keep trying to make it happen. But, for anything non-trivial, it’s a fool’s errand.

Re:macOS 15.8.2 Breaks OpenGL on Sunday October 18, 2026 @11:57AM (#50142208)
Seems like a good time to mention that LunarG’s Vulkan-on-Metal wrapper reached Vulkan 1.4 conformance recently.

https://www.lunarg.com/the-state-of-vulkan-on-apple-oct-2026...

Now we need Mesa’s OpenGL-on-Vulkan to be production-ready when running on KosmicKrisp

https://docs.mesa3d.org/drivers/zink.html

Re:I Love Software Rendering on Friday October 16, 2026 @12:15PM (#50120284)
Shoutout to https://www.jagregory.com/abrash-black-book/

The tech specifics covered have been out of use for decades. But, it's still a very fun read about thinking through the process of optimization.

Re:Has AI Tells on Wednesday October 14, 2026 @02:03PM (#50092128)
Supposedly, SlopShape https://arxiv.org/abs/2609.15369 can ID not just human vs bot but which bot via structural patterns in the writing.

Next we need a "Verbose useless content" detector and we'll be set up to GAN the whole internet into https://xkcd.com/810/ "Mission Accomplished".

Re:AI is mass decompiling games. That's both awesome and scary on Wednesday October 14, 2026 @12:24PM (#50090261)
Now go remake the Sim City SNES version on the GBA. Astra can apparently make GBA games out of the box. https://www.spritefusion.com/blog/making-a-game-boy-advance-...
Re:Show HN: PS2 games statically recompiled to WebAssembly on Monday October 12, 2026 @12:04PM (#50058394)
Power efficiency.
Re:LLMs may have immensely helped my RSI on Tuesday October 06, 2026 @08:58PM (#49986513)
Long ago I worked on a project where the whole team was so productive I gave myself cubital tunnel from typing so fast for so long. I'd feel needle jabs in my forearms randomly. Like while standing around. Doctor recommended surgery.

Avoiding surgery involved months of finger stretches, forearm massage, 2 keyboards and 2 mice at different elevations, typing with my hands hanging slack like a zombie. It worked. But, even typing this out 20 years later I can still feel the RSI hiding in the shadows. Since then I've avoided RSI by spending 10x more time thinking about code than typing it.

All that is setup for: There have been many times recently where I've thought "I know exactly what I want this code to look like. But, damn. That's going to be a lot of keypresses..." The effort is nothing. Risking nerve damage is the concern.

In those cases I have been thrilled be able to tell AI exactly what to make, how to refactor it, how to clean it up, clean it up more, yet more, still not done. All in less than 10% of the keypresses that would have been required to type it by hand.

Re:Vibecoding isn't as fun as writing code by hand on Tuesday October 06, 2026 @05:01PM (#49984088)
I write a lot of C++. A long time ago, I learned the basics of writing assembly. Even though I haven't written much assembly, it still helped me a lot over the years. I understand how it works. I can read the assembly output of my compiler and judge how well my C++ translates to machine actions. I can debug individual assembly instructions when stuff isn't going as planned or the C++ is not available.

I write a lot of high-performance code. To do that, I had to learn the details of how devices (drives/NICs/GPUs) work, how buses (PCI) works, how RAM, CPU caches, instruction pipelining work. Now I know how to structure data flow to work well with the machine instead of against it.

I write a lot of APIs. In doing that, I had to learn the hard way about how different API trade-offs drive client decisions. How to foresee problems in the future stemming from interfaces I'm writing now. How to argue with clients to get them what they need in the long term and not just want they want for the next milestone.

At all of these levels, I had to learn how each level works by doing it. By trying it lots of different ways. And, by optimizing it all the way down from "More productive client discussions" to "More performant assembly instructions" :P

Now whenever I do vibe-code, it's because I know exactly what I want and I can get AI to type it faster and with less RSI (carpal tunnel). Or, I know I want to prototype a few options rapidly before committing to implementing one design for realz. In neither of these cases am I telling the AI "Make it performant and easy to use." Because I know how I want to structure the code to make it performant. And, I know how to set up the API to make it easy to use. So, I'm telling the AI how to structure the data flow and how to set up the API. Because, if I didn't, I'd just be generating a big ball of noisy mud that's neat to gawk at, but has no long-term value.

So, what should you learn? You need to learn how the stuff you are interested in actually works under the hood by experimenting with it manually. Not just "Hey chat, make it work somehow..." You need to focus on architecture and systems thinking because otherwise you won't know how to prevent AI from holding your hand deep into a maze neither of you can escape from. And, you should be spending the majority of your tokens on step-by-step refactoring, never one-shotting. One-shotting is for AI tech demos. Not for learning or production.

Re:Vibecoding isn't as fun as writing code by hand on Tuesday October 06, 2026 @02:26PM (#49982211)
Greybeard coder here. There are two separate problems you get to solve. 1) If AI writes your code, you didn't learn anything about the code. 2) If you don't use AI, you won't learn how to use AI. You need to learn how stuff works and how to code well. And, you can't do that passively. If you didn't type it with your own fingers, you didn't learn it. And, that includes learning "How to use AI?"

You want to learn web dev? Start typing HTML and JS. You want to learn how to use AI? Start typing specs and prompts. You'll need to learn both. But, you can't learn web dev by typing specs and prompts.

You can learn using AI as a research assistant, a tutor, a reviewer, a critic. You can use it to bang out quick tools, prototypes, deal with the hassles that are not your focus at the moment. But, whatever you are trying to learn, you need to do the actual implementation manually. There is no such thing as passive learning.

Re:The Effect of CRTs on Pixel Art on Monday September 21, 2026 @11:28AM (#49788540)
The 12” TV that I played SNES on had convenient brightness/tint/sharpness dials. Depending on my mood I’d turn sharpness all the way up for hard pixels or all the way down for a free Gaussian sampling filter ;)
Not a surprise. Now the fun works starts: Deriving semantics from psuedo-assembly.
Re:Nvidia announces native GPU programming in Rust on Friday September 18, 2026 @03:32PM (#49759074)
When I started what you did was nothing but set up DMA streams to set registers. DMA sets registers, hardware reacts by rasterizing triangles.

In the GeForce3 era, the registers got complicated enough they resembled tiny "pixel shaders", but under the hood it was still a small struct held in registers. Vertex shaders were 1 to 128 asm instructions executed strictly linearly.

In the G80 era we got "general purpose shaders." But, they still depend heavily on the fix function pipeline for their dispatch/scheduling and I/O.

These days, everything is basically a dressed-up compute shader. The shared-memory SRAM is front-and-center in your attention. Dispatch and scheduling are manual and complicated. GPUs are transitioning into tensor evaluators.

So, maybe today we can start considering talking about planning committee meetings about stability. But, what I've observed is that this has been a request for a few decades now. And, in hindsight it would not have worked out in the past. Moving forward, maybe it would work out OK today for a while. But, I don't see the rate of change in GPUs slowing down any time soon. Wouldn't be surprised if we're racing towards some Cerebras + Tensor Cores + FPGA near future.

Re:Nvidia announces native GPU programming in Rust on Thursday September 17, 2026 @12:27PM (#49743125)
I've been programming GPUs since the PlayStation1. The way they work under the hood has changed fundamentally maybe 4 times in that span.

I can't compare it to changes I've seen in CPU architecture since then. Maybe like: Compare the NES with its 6502 and per-cartridge mappers vs. a IBM 386 PC. Now repeat that shift 2 or 3 more times.

Re:Steam Frame starts at $1059 on Monday September 14, 2026 @04:28PM (#49703454)
But, now you can play through the second half in VR https://www.youtube.com/watch?v=wXho2LdD1qo

A flood of VR mods for popular games have been coming out lately.

Re:LG responds to TV spying allegations on Saturday September 12, 2026 @05:53PM (#49677593)
That's not necessary. If a service has access to the raw audio of a show, it can fingerprint each second of that audio in a way that can be matched in a tiny amount of computation even for a recording in a noisy environment.

That can't recognize what you say. But, it can ID where you are in a specific show out of zillions of hours of shows.

Re:LG responds to TV spying allegations on Saturday September 12, 2026 @05:47PM (#49677540)
I know a guy who made a Shazam-like phone app that can listen to a few seconds of noisy audio and make a fingerprint that can be used to quickly ID those specific few seconds out of a pre-fingerprinted archive of an enormous amount of audio (zillions of hours of TV). Making the fingerprint requires a tiny amount of very smart code (in C with no dependencies). But, the fingerprint is not useful for understanding audio that's not in the archive.
Roughly how old was your nephew when he started using MakeCode?
Re:Logo Programming Language on Friday September 11, 2026 @10:36AM (#49659202)
Logo was my introduction to programming. Working on a 1 MHz Commodore64, my masterpiece was a fireworks show that was animated by the fact that the individual drawing commands were so slow you could watch them play out.

So, draw a curve from the ground to the sky. Draw some explosion shape. Change pen color to the sky color. Draw the curve and the explosion again to erase them. Change pen color and start the next firework.

Re:>10x More Efficient Pretraining on Thursday September 10, 2026 @04:58PM (#49650085)
You just need to work your way down to a deeper layer in the https://en.wikipedia.org/wiki/Matrioshka_brain Not the deepest layer. Humans would fry instantly there. But, the warm glow of the third layer down upon the fourth is quite pleasant.
Re:iPhone Duo on Wednesday September 09, 2026 @04:12PM (#49633493)
> Who is like, "damn I wish I had a tablet that I could fold up and still barely fit in my pocket"?

Me. I get why people like small phones. But, I've have the iPhone Jumbo Huge edition for a long time now. I use my phone as a pocket tablet 10X more than as a phone.

Older »