@ID_AA_Carmack you might get a kick out of the use of RL in this fairly simple air hockey system that our students have built. This zero-shot sim to real.
The AI feels "sneaky" in its gameplay.
The GitHub repo has in depth detail of the implementation.
I've been coding for 40 years. Here are the top 5 things I wish I knew when I started.
1. 90% of the job is debugging and fixing, not creating new code. Which is still fun if you're good at it.
I used to think programming was mostly writing fresh, clever stuff. In reality, most of your time is spent in other people's (or your own past self's) messy code, chasing down why something that "should" work doesn't. Get really good at debugging early. Learn assembly reading, call stacks, and kernel debuggers. It pays off hugely. The best engineers I saw were absolute magicians at this.
2. Manage complexity from day one (ie: don't write slop and "fix it later" if it goes somewhere).
Very early on, I'd hammer out code and refactor afterward. Big mistake. Now I start with clean, skeletal structure (minimalism first) and flesh it out carefully, with AI or not.
Messy code compounds and becomes unfixable. Upfront discipline on architecture, naming, and simplicity saves enormous pain later, especially in large systems like Windows.
3. Tools and processes matter more than you think
We suffered with basic diff/manual deltas instead of modern source control like Git. Branching, testing, and good tooling would have made porting and collaboration way smoother. Invest in your environment, automation, and reproducible builds early. Good tools amplify your output; bad ones (or none) drag everything down.
4. Understand the problem and existing code deeply before writing
Don't jump straight to coding. Map out the problem, study what's already there (you'll inherit a lot), and plan. Low-level knowledge (hardware quirks, alignment issues on different architectures like MIPS/Alpha) was crucial. Also: assert early and often. It forces clarity.
5. People, politics, and "the right tool for the job" beat pure tech arguments.
Brilliant engineers still argue endlessly. Sometimes it's about ego, not merit. Learn to spot the difference and "steer" the conversation rather than "winning" it.
Bonus from experience: Side projects like Task Manager (started at home because I wanted the tool) can become your biggest hits. Ship small, useful things often. If you're just starting, focus on fundamentals, patterns over syntax, and building resilience for the long haul. It's going to be a wild ride, but the fundamentals still matter.
And a few cool facts about the system.
* At full power the system can output above 4kW.
* To buffer the power supply we use a 163F capacitor.
* The RL algorithm outputs desired "trajectories" that are then passed onto a feed forward model (90%) and a feedback model (10%).
@dmitrygr@ruider92545@SciTechera I suggest you check out the statisitical model for puck colision restituion - available on GitHub - and then reconsider your statement. This is one out of probably a dozen modelling issues that will prevent you from running this system on your proposed hardware solution. G-day.
@SciTechera This was developed by mutiple groups of students in the Engineering Physics Project Lab at University of British Columbia. You can find some more "fascinating" projects on our feed.
Apparently workers in China have been creating “colleagues.skill” to distill their coworkers hoping to make them redundant hence saving themselves. In response someone has recently invented an “anti-distillation.skill” that has gone viral on GitHub.🤣
Only one chance in this lifetime…
Like watching sunset at the beach from the most foreign seat in the cosmos, I couldn’t resist a cell phone video of Earthset. You can hear the shutter on the Nikon as @Astro_Christina is hammering away on 3-shot brackets and capturing those exceptional Earthset photos through the 400mm lens. @AstroVicGlover was in window 3 watching with @Astro_Jeremy next to him.
I could barely see the Moon through the docking hatch window but the iPhone was the perfect size to catch the view…this is uncropped, uncut with 8x zoom which is quite comparable to the view of the human eye. Enjoy.
TienKung Ultra finished the full 21.0975 km in 1:15:00 — fully autonomous, zero human intervention. 🤖
No repeat win this time.
But it was easily one of the most striking robots on the course —
clean gait, stable motion, and the most human-like running form out there.
It took home the “Best Design” award,
and that actually says more than the podium this time.
Because this isn’t a marathon-only build.
TienKung Ultra is a general-purpose humanoid,
already moving toward real-world deployment.
And it didn’t show up alone.
Teams from Peking University, Fudan, HUST, BIT, Beihang, HKUST(GZ), TUM and more
were all building on the same TienKung platform.
That’s what an open ecosystem looks like —
shared hardware, shared stack, different solutions on top.
And just a day before, it took the Robot Warrior Challenge —
fully autonomous through obstacle tasks modeled on real-world rescue and hazardous operations.
That’s the part that matters.
This is no longer just about speed.
It’s about autonomy — and whether these systems can actually handle real environments.
That’s what future winners are going to look like.
Thank you Emiko and @ubcengineering for putting this video-tour together. :)
Auto-caption has mislabeled "our optical projects" to "our obstacle projects". Oh well.
In the age of generative LLMs "ephemeral software" is taking over.
From an antenna design or an Arduino solution to a telemetry dashboard or a spreadsheet analysis of financials. We won't save implementations to reuse. LLMs will create the functionality from scratch on demand.