Jim Huang (@jserv) profile picture

"A hacker, a lecturer, a father" // Adjunct faculty at @NCKU_official

Taipei/Tainan, Taiwan
Joined June 2007
Photo by Jim Huang (@jserv)Photo by Jim Huang (@jserv)Photo by Jim Huang (@jserv)Photo by Jim Huang (@jserv)Photo by Jim Huang (@jserv)Photo by Jim Huang (@jserv)Photo by Jim Huang (@jserv)Photo by Jim Huang (@jserv)Photo by Jim Huang (@jserv)Photo by Jim Huang (@jserv)
The Linux Kernel Module Programming Guide (#LKMPG) got 5000+ stars on GitHub. Thank all the contributors and promoters. We are moving forward to Linux v6.x support. Rust LKM examples will appear later. github.com/sysprog21/lkmpg
6
111
1
436
Jim Huang retweeted
2
32
767
Jim Huang retweeted
Decades ago, people tried to formally verify code. Essentially, you prove that the code is correct using math. It was an approach promoted by people like Dijkstra, who observed that “program testing can be used to show the presence of bugs, but never to show their absence” (1970). It did not work. It was too difficult. You can do it for a function, maybe a small piece of code… but for anything useful, it was just too much work, and the result was too weak. Classic examples include the seL4 microkernel, about 8,700 lines of C requiring ~200,000 lines of Isabelle proof and roughly 20 person-years of verification effort. But times are changing. So it appears that we can formally verify code these days. Or, at least, there is now a ton of startups and academic initiatives that say it is possible and maybe practical. Take your C code, have your AI prove that it is a correct implementation of the specification. Among other things, it would prove that the code is correct with respect to memory usage, but that’s the least of what it could do. The most obvious application is cryptography and anything that must be unbreakable. Have your AI prove that the system cannot be hacked. You should not get too excited. These will remain mathematical models. They have to make assumptions all over. But I am pretty excited about what this could enable. I'd love to have more formal analysis of my code. In fact, I have a few projects in mind right now, to formally verify heuristics that I have been using. Recent examples of startups: •&Truth (launched Oct 2026, ~$70M seed): Building a “universal verification machine” for any language. •Harmonic (Aristotle): Announced support (late Oct 2026) for formal verification of C software and Verilog hardware.
36
33
8
422
47,141
Jim Huang retweeted
x86 formal verification is coming! The (first?) published machine-checked proof of a security property for the end-to-end execution of a Linux process running an x86 binary statically linked against glibc. And we believe it scales! A joint research project with @zellic_io 🧵👇
28
91
24
770
67,675
Jim Huang retweeted
In January 1992, computer science professor Andrew Tanenbaum started a famous Usenet argument with 22-year-old Linus Torvalds. His post was titled "LINUX is obsolete." Tanenbaum argued that Linux's monolithic kernel was a fundamental design mistake. He even told Torvalds: "Be thankful you are not my student. You would not get a high grade for such a design." 34 years later, every single machine on the TOP500 supercomputer list runs Linux. Not bad for an obsolete student project.
84
105
34
1,678
118,323
Claude Codeを使って64ビットRISC-VのCPUコアを設計し1か月でFPGAボード上でのLinux起動に成功しました。アーキテクチャはRV64GCで、L1/L2キャッシュ、MMU、BTB、FPU、JTAG/cJTAGデバッガなどを備えています。詳しくは github.com/munetomo-maruyama…
15
128
10
811
28,476
Jim Huang retweeted
In 1998, Brian Kernighan wanted a regular expression engine small enough to fit on one page of a programming book. Rob Pike went to his office and came back an hour or two later with roughly 30 lines of C. It supported ^, $, ., and *, using little more than pointers and recursion. Kernighan later featured it in Beautiful Code.
44
215
16
2,264
92,460
Jim Huang retweeted
TornadoVM 8.0.0 is out 🌪️ After 10 years: thank you, Graal. Java kernels are now compiled by TC, our own pure-Java compiler to CUDA, OpenCL and Metal. • AOT ready • No JVMCI • Now Apache 2.0 • Your code doesn't change 👉 tornadovm.org/blogs/tornadov… #OpenSource #Java #AI #GPU
8
25
7
120
7,085
Jim Huang retweeted
25 years ago today, we introduced the iPod. 1,000 songs in your pocket. A small team. An unforgiving deadline. We had months to bring the hardware, software, and music experience together. Proud of what we built and that it means so much to people still today. A device that has been woven in many ways into our lives. People have filled their iPods with road trips, breakups, workouts, special occasions with family and friends. How cool that the iPod has become part of culture and our stories. 25 years, it’s hard to believe! Celebrating the team that made it happen today 👏 @StevenLevy was there from the start @WIRED wired.com/story/im-still-con…
62
274
26
2,202
138,739
Small announcement: ✅ formal-git As an experiment, over the last 2 months we've modelled ~30% of Git in Lean 4, making heavy use of coding agents, and proved >8000 theorems of varying usefulness about the implementation. In the process of doing this we've uncovered >100 potential defects in Git v2.55, at least two of which may constitute security vulnerabilities. We've also built a DRT (differential random testing) harness and the biggest corpus of relevant pinned differential test cases for Git implementations with >10k unique tests at the moment. We've used the test cases to test our own small internal implementation of Git in TypeScript. The next step will be to differentially test all notable public Git implementations against this corpus of tests to help improve their correctness and security 🫡 We'll be reaching out to library maintainers in due course. If you have a Git implementation you'd like us to help you test, please reach out and let me know. We'll open-source all this eventually, after potential security issues that were uncovered are responsibly disclosed and fixed.
39
66
10
551
25,252
Jim Huang retweeted
1995: PHP is dead, learn ColdFusion 2002: PHP is dead, learn ASP​.net 2003: PHP is dead, learn Django 2004: PHP is dead, learn Ruby on Rails 2010: PHP is dead, learn Flask 2011: PHP is dead, learn AngularJS 2016: PHP is dead, learn Next.js 2022: PHP is dead, learn Solidity 2026: The NSA is advising that you turn off PHP
Effective Immediately, all organizations using PHP for their systems are advised to be prepared for an update addressing two critical vulnerabilities. PHP is widely used for web applications. These vulnerabilities often provide a direct path to the server's file system or database. If an immediate update is not feasible, it is recommend that organizations take the system offline until it can be fully mitigated. NSA will follow up shortly with more specific guidance.
94
654
54
4,742
380,633
Jim Huang retweeted
I just solved "Robotics Engineering" education with Opus 5.5 + /colorfigures skill no need to spend $1000+ on a starter kit to learn what a resistor does, just visit my interactive site: • 13 real boards: Arduino Uno, L298N, Raspberry Pi 5... • build part by part: pick & place, reflow, solder, plug in • break them on purpose: reversed caps pop, chips smoke, LEDs burn out send the skill to your Claude: > april-zhu.com/colorfigures try it free, no sign-up ↓
103
852
33
6,576
243,237
Developers night 😭
19
33
4
442
15,153
Jim Huang retweeted
this was the future we were promised
181
2,116
67
23,681
308,712
Jim Huang retweeted
In 1994, software was dead. People told me programming was for nerds and that I should become a doctor or a lawyer instead. In 2004, software was dead. People told me that someone from India would take my job for $5/hour. In 2014, software was dead. People told me that no-code was going to kill every job and doom my career. In 2024, software was dead with Devin, Windsurf, Copilot, and OpenAI o1. We kill software every 10 years, and yet the demand for good Software Engineers has never been higher.
323
514
78
4,804
289,113
Abstract vs Full Paper
36
1,122
107
8,446
195,724
2.2 megabytes in 1966
23
215
21
1,163
18,771
着いたよ!
1
30
5
208
7,091
Jim Huang retweeted
Replying to @wholemars
The operational risk isn't "nobody reads it" — it's "nobody can verify it." Once the corpus exceeds what a human can load into working memory, correctness has to shift from review to verification: formal specs, property-based tests, fuzzing, model checkers. The lever that keeps safety intact while code scales past human readability is the verification toolchain (KLEE, CBMC, Frama-C, liquid types, TLA+). The teams that ship unreadable code without burning down production aren't the ones with bigger teams — they're the ones that replaced "a human read this diff" with a proof or a failing property. Everything else is just hoping the blind spot didn't overlap the edge case.
1
135
soon the entire world will be running on code that nobody has read
218
244
52
4,153
493,197