The fascination of programmer types with classical control and estimation topics is endlessly interesting as someone who studied control and estimation and hangs out here for interest in the programming. For me it was surprising to see that JEPA is a model predictive control algorithm it an almost literal sense; I guess I’m happy to have studied what I chose when I was 18.
I signed up for one of the first MOOCs ever, about self driving cars by Sebastian Thrun, and of course PID was part of the curriculum.
I think that PID hits a certain sweet spot between cleverness, ease of implementation and practical utility that makes it catnip for the typical programmer's mind.
I liked it so much that when we had to implement it, I downloaded an open source driving simulator to see it work there instead of the simpler python environment we were using.
> I think that PID hits a certain sweet spot between cleverness, ease of implementation and practical utility that makes it catnip for the typical programmer's mind.
It's easy to implement, but hard to tune.
PID controllers can be built from analog pneumatic components, and often are.[1] This predates computer control. The I term is called "Reset" and the D term is called "Rate" in classical control.
[1] https://control.com/textbook/closed-loop-control/pneumatic-p...
It’s very intuitively appealing. We like it at my university for teaching first years how to build a line following robot. It’s one of the first times you can get students to really get that “ah” moment when they realise what they can do with code—it can affect the real world!
Whatever happened to this guy?
Sounds like he made a bag with the first AI craze and retired.
This classic programming text book discusses computational analogs of the "signals" in signal-processing systems.
https://mitp-content-server.mit.edu/books/content/sectbyfn/b...
Yeah, kind of hilarious to me that this was posted here. I suppose if you’ve never encountered control systems at all before they are quite simple, elegant, and cool, but I’m surprised any technical person hasn’t come across them at some point.
I think CS degrees are a bit light on classical theory in the modern day. In Australia CS degrees are what they say on the tin, but in America it seems almost as if CS degrees are anywhere from cybernetics to pure software development
Interesting generalization; that’s almost the opposite of my experience.
A common hiring anecdote we share with people outside tech is literally: “A CS degree doesn’t teach you how to code.”
For me, ~25 years ago in the UC system, it was all math/science/theory-oriented. Some C++/Java that was introduced to get you through all that theory. Learning how to code/actual software engineering comes with practical experience.
My CS degree was a software engineering degree in a trench coat. I went back to give a guest lecture a decade later and the curriculum had changed to be more theory-focused.
(I am quite happy to have gotten the software engineering education.)
That hasn’t been my experience in the US, either personally or from talking to others who took CS degrees.
Keep in mind that plenty of people on HN and in the industry did not take CS degrees in college. We did learn about PIDs, if briefly.
I wouldn't underestimate the value of introductory submissions! Every topic is familiar to some users, no topic is familiar to all users, and let's not forget that newcomers, who still have everything to learn, are particularly welcome.
https://xkcd.com/1053/