Sign in

Tom Van Cutsem

@tvcutsem.bsky.social
103 followers 84 following 56 posts

Computer scientist | Professor at KU Leuven | views are my own

PostsRepliesMedia
Tom Van Cutsem @tvcutsem.bsky.social · 15/09/2026
I also appreciate that they give the audience the full context that Erich Gamma (vscode's creator) already made a name for himself long before this project as one of the co-authors of the Design Patterns book. That book teaches you the essence of OOP: how to design flexible, extensible software.
300
Tom Van Cutsem @tvcutsem.bsky.social · 15/09/2026
I never thought I'd be glued to my screen watching a documentary on... an IDE!? Great docu on visual studio code: www.youtube.com/watch?v=kHL3...
youtube.com
The Story of VS Code | Official Documentary
YouTube video by Visual Studio Code
110
Tom Van Cutsem @tvcutsem.bsky.social · 02/09/2026
Full write-up, including some take-home lessons for educators: tvcutsem.github.io/raftviz-post
tvcutsem.github.io
RaftViz: visualizing Raft for the classroom · Invokedynamic | Tom Van Cutsem's blog
Tom Van Cutsem's blog
000
Tom Van Cutsem @tvcutsem.bsky.social · 02/09/2026
The other half of the story: I wrote zero of the ~6,000 lines of code. All agent-generated (mostly Claude Opus), spec-driven, tests from phase one, Playwright-based end-to-end smoke tests promoted out of the agent's own visual checks.
tvcutsem.github.io
RaftViz: visualizing Raft for the classroom · Invokedynamic | Tom Van Cutsem's blog
Tom Van Cutsem's blog
110
Tom Van Cutsem @tvcutsem.bsky.social · 02/09/2026
After a series of scripted scenes, students arrive in a free-play sandbox: they can click a node to crash it, drag between two nodes to partition them, and inject client commands.
100
Tom Van Cutsem @tvcutsem.bsky.social · 02/09/2026
Nothing in the viz is faked for effect. The scenes are driven by a line-by-line transliteration of @martin.kleppmann.com 's (very readable) pseudocode of the original algorithm into JavaScript.
100
Tom Van Cutsem @tvcutsem.bsky.social · 02/09/2026
Enter RaftViz: an interactive visualization of the Raft algorithm where every animated event is wired to the exact line of pseudocode that produced it. It is live for anyone to play with at: tvcutsem.github.io/raftviz
tvcutsem.github.io
RaftViz
100
Tom Van Cutsem @tvcutsem.bsky.social · 02/09/2026
Consensus is where my Distributed Systems students' eyes glaze over. They nod along to a Raft animation, then stare at slide 6 of pseudocode like it's a different subject. The translation between the two is the hard part — and I left it entirely to them. So I fixed that. 🧵
110
Tom Van Cutsem @tvcutsem.bsky.social · 02/09/2026
New blog post landed: tvcutsem.github.io/raftviz-post
tvcutsem.github.io
RaftViz: visualizing Raft for the classroom · Invokedynamic | Tom Van Cutsem's blog
Tom Van Cutsem's blog
1112
Tom Van Cutsem @tvcutsem.bsky.social · 15/07/2026
4) In prep of this redesign I spent a good hour with Claude to ensure I could build the site locally - after having outsoured this to github-pages for the last ~8 years. Local builds alllowed the agent to 'close the loop' and iterate on its design faster.
010
Tom Van Cutsem @tvcutsem.bsky.social · 15/07/2026
3) Git saved the day: not only did its branching enable parallel development - I also hit my usage limits halfway (obviously - who doesn't?) but Claude was able to pick up the pieces of its sub-agents after inspecting partial work and git diffs.
100
Tom Van Cutsem @tvcutsem.bsky.social · 15/07/2026
2) I did not just ask for 1 redesign, I asked for three, then picked the one I liked most but cherry-picked good features from the other two. I explicitly asked to develop each in a separate branch, so all three designs were developed in parallel and could be served simultaneously.
100
Tom Van Cutsem @tvcutsem.bsky.social · 15/07/2026
Lessons learned: 1) Jekyll (or any other static site generator) is a perfect match to modern AI tools: both content and style are accessible as plain text. Claude grokked the codebase - easily.
200
Tom Van Cutsem @tvcutsem.bsky.social · 15/07/2026
Claude's PR: github.com/tvcutsem/tvc...
github.com
New site theme: Warm Academic by tvcutsem · Pull Request #1 · tvcutsem/tvcutsem.github.io
Summary Complete restyle of the blog to the Warm Academic theme — professional, minimal, content-first. Selected from three candidate designs after local review. Look & feel Warm paper backgro...
100
Tom Van Cutsem @tvcutsem.bsky.social · 15/07/2026
I (finally) modernized my personal blog: tvcutsem.github.io This was done literally overnight with Claude's help over a cup of evening tea (Keemun Congou - fwiw) and morning coffee (long black). Joking aside: I am impressed - either saved me a full week of work or an expensive web designer bill
tvcutsem.github.io
Invokedynamic | Tom Van Cutsem's blog
Tom Van Cutsem's blog
110
Tom Van Cutsem @tvcutsem.bsky.social · 09/07/2026
In the news today: the latest research from my PhD student Weihong Wang on exposing hidden privacy risks with the use of browser-extension crypto wallets. A great read if you're even remotely interested in #web3 #crypto and #privacy nieuws.kuleuven.be/en/content/2...
nieuws.kuleuven.be
KU Leuven researchers expose hidden privacy risks in crypto wallets
crypto wallets Researchers from DistriNet, KU Leuven’s computer security research group, have uncovered hidden privacy risks in popular crypto wallets used as browser extensions. They analysed 85 wide...
000
Tom Van Cutsem @tvcutsem.bsky.social · 02/04/2026
Full write-up: tvcutsem.github.io/ai-python-ty... tl;dr — Python builds AI. TypeScript is what AI will use to "get things done"
020
Tom Van Cutsem @tvcutsem.bsky.social · 02/04/2026
The security model is compelling too. Projects like IronCurtain expose high-level APIs to agent code, so that when it makes calls like `gmail.sendEmail({to: "bob"})` instead of making raw HTTP requests, the host can enforce semantic policy. It's basically object capabilities, applied to AI.
200
Tom Van Cutsem @tvcutsem.bsky.social · 02/04/2026
Results: 98-99% fewer tokens, better composability, and the type-checker validates the agent's code before it runs.
100
Tom Van Cutsem @tvcutsem.bsky.social · 02/04/2026
Cloudflare and Anthropic are converging on "Code Mode": instead of LLMs issuing tool calls one at a time, the LLM writes a TypeScript program against a typed host API, executed in a JS sandbox.
110
Tom Van Cutsem @tvcutsem.bsky.social · 02/04/2026
Why TypeScript? Not because TS is "better" than Python, but rather because of a quirk of JavaScript's history: the language has zero built-in powers. No file I/O, no network. Everything comes from the host environment. Browser → Node → and now: AI agent harnesses.
110
Tom Van Cutsem @tvcutsem.bsky.social · 02/04/2026
"AI was built in Python. But the code AI agents write will increasingly be TypeScript." That's the tagline of my latest post: tvcutsem.github.io/ai-python-ty...
tvcutsem.github.io
Invokedynamic | Tom Van Cutsem's blog
110
Tom Van Cutsem @tvcutsem.bsky.social · 01/04/2026
In any case, it's great to see so much continued activity in the area of JS engines. Healthy competition is good for the ecosystem!
000
Tom Van Cutsem @tvcutsem.bsky.social · 01/04/2026
Judging from Github activity, both engines seem to be under active development with a roughly equal-sized pool of contributors. Here's their 'star' history. Bun is the younger project but seems to be gaining traction faster.
100
Tom Van Cutsem @tvcutsem.bsky.social · 01/04/2026
Both Deno and Bun support TypeScript source files natively, and they both integrate common devtools such as build system, package manager and test runner into the core.
110
Tom Van Cutsem @tvcutsem.bsky.social · 01/04/2026
Bun is written in the comparatively less well known Zig programming language, and it embeds JavaScriptCore, the JS engine of Apple/Safari. bun.com
100
Tom Van Cutsem @tvcutsem.bsky.social · 01/04/2026
Deno is created by the same person that built the original node: Ryan Dahl. It's a Rust-based project wrapping Google/Chrome's V8 JS engine. A good chunk of its stdlib is written in Typescript. deno.com
110
Tom Van Cutsem @tvcutsem.bsky.social · 01/04/2026
Today I was doing some research on standalone Javascript runtimes. The OG in this space is of course node.js. The two contenders for the 'modern alternative' to node seem to be Deno and Bun.
200
Tom Van Cutsem @tvcutsem.bsky.social · 23/03/2026
IT Industry professional in Europe? Come to Leuven, Belgium this summer, join the SecAppDev course to plug your brain into everything application security, and you won't regret that you did. This year, a special focus on (how could it not be) AI security.
000
Tom Van Cutsem @tvcutsem.bsky.social · 19/03/2026
AI is a huge force multiplier, but only if you have fundamentals to steer it and review it well. That’s exactly why CS education still matters (arguably more than ever). #AI #VibeCoding #CSedu #SoftwareEngineering
011
Tom Van Cutsem @tvcutsem.bsky.social · 19/03/2026
Main takeaway: low-stakes vibe coding is great for prototyping, but it’s not the same as real software engineering.
100
Tom Van Cutsem @tvcutsem.bsky.social · 19/03/2026
Just published a short write-up of a fun experiment: I vibe-coded a Boids simulation with AI copilots in about 30 minutes. I built it for CS outreach, then documented what worked, what surprised me, and what I got wrong. tvcutsem.github.io/vibe-coding-...
tvcutsem.github.io
Invokedynamic | Tom Van Cutsem's blog
210
Tom Van Cutsem @tvcutsem.bsky.social · 06/12/2025
A few days late, but still: happy 30th ann, JavaScript! Here's a good write-up of the origin story. In my uni class I always remind students of Crock's genius quote: JS is not Java, it's "a Lisp in C's clothing" arstechnica.com/gadgets/2025...
arstechnica.com
In 1995, a Netscape employee wrote a hack in 10 days that now runs the Internet
Thirty years later, JavaScript is the glue that holds the interactive web together, warts and all.
000
Tom Van Cutsem @tvcutsem.bsky.social · 26/11/2025
010
Tom Van Cutsem @tvcutsem.bsky.social · 26/11/2025
Glad to be in Ghent at the ICP meetup. Giving a talk on Self-sovereign Apps, and the research ongoing in my group on developing scalable Wasm-based smart contracts
110
Tom Van Cutsem @tvcutsem.bsky.social · 17/11/2025
✔️ Paper/Poster Submission Deadline: 7 Jan 2026 ✔️ Acceptance Notification: 18 Mar 2026 ✔️ Conference: June 1-5 2026 (Brisbane, Australia)
000
Tom Van Cutsem @tvcutsem.bsky.social · 17/11/2025
I'm serving on the #ICBC 2026 PC, IEEE's flagship conference on Blockchain and cryptocurrency focused research. Consider submitting a paper if you’re working in this area. Full CFP at icbc2026.ieee-icbc.org
icbc2026.ieee-icbc.org
IEEE ICBC 2026 | IEEE International Conference on Blockchain and Cryptocurrency (ICBC) 2026
110
Tom Van Cutsem @tvcutsem.bsky.social · 19/07/2025
There’s a tool called Lavamoat that can load your deps in an isolated environment, and auto-generate a policy file to regulate per-dependency access to powerful globals. See lavamoat.github.io
lavamoat.github.io
LavaMoat
Secure your JavaScript with LavaMoat.
021
Tom Van Cutsem @tvcutsem.bsky.social · 15/07/2025
Weihong will present our paper on this new protocol at IEEE #ICDCS 2025 in Glasgow next Monday. For a high-level overview of our work, read my blog: 👉 tvcutsem.github.io/2025/07/parp... #blockchain #web3 #research
tvcutsem.github.io
Invokedynamic | Tom Van Cutsem's blog
010
Tom Van Cutsem @tvcutsem.bsky.social · 15/07/2025
To address this, we designed a new RPC protocol that enables interaction with permissionless blockchains in a way that remains truly depermissioned — without sacrificing data integrity or accountability, two issues that often arise when relying on anonymous public RPC endpoints.
tvcutsem.github.io
Invokedynamic | Tom Van Cutsem's blog
100
Tom Van Cutsem @tvcutsem.bsky.social · 15/07/2025
One of our key findings is that, despite the “permissionless” nature of most major blockchain networks, access to them is often highly permissioned in practice. Due to both technical and economic constraints, access is typically funneled through centralized gatekeepers.
tvcutsem.github.io
Invokedynamic | Tom Van Cutsem's blog
100
Tom Van Cutsem @tvcutsem.bsky.social · 15/07/2025
🔬 Research update: Depermissioning Web3’s Serving Layer Over the past few months, my PhD student Weihong Wang and I have been exploring challenges in Web3’s “serving layer” — the infrastructure responsible for making blockchain data accessible to decentralized applications (dapps).
tvcutsem.github.io
Invokedynamic | Tom Van Cutsem's blog
100
Tom Van Cutsem @tvcutsem.bsky.social · 09/07/2025
Worth a read: Erik Meijer's latest piece in ACM Queue. He introduces a PL with an interesting mix of natural language instructions, logic variables and Excel-like formulas to let end-users generate readable and verifiable calculations. queue.acm.org/detail.cfm?i...
queue.acm.org
Unleashing the Power of End-User Programmable AI - ACM Queue
010
Tom Van Cutsem @tvcutsem.bsky.social · 03/07/2025
And obviously humans value clarity in responses ;-) Also, for code and math in particular, one can make the LLM's answers partly verifiable (run the code, check the proof, etc.)
010
Tom Van Cutsem @tvcutsem.bsky.social · 03/07/2025
I believe part of it is the RLHF (reinforcement learning with human feedback) - modern LLMs are not only trained to predict the next word in a dataset, they're also trained by producing multiple responses to questions and let humans rank the outputs based on their preference.
120
Tom Van Cutsem @tvcutsem.bsky.social · 03/07/2025
So, despite all the flaws and limitations of LLM use in general, for math/coding, I couldn't help but be reminded of Jobs's quote. What do you call a rickety bicycle that usually gets you to where you want to be, but sometimes breaks down unexpectedly? Velocipedes for the mind? :-)
100
Tom Van Cutsem @tvcutsem.bsky.social · 03/07/2025
Steve Jobs once famously called computers "bicycles for the mind". The last few days I've been coding and reviewing math problems with the help of recent LLMs, and the clarity with which they lay out coding & math problems is really staggering.
100
Tom Van Cutsem @tvcutsem.bsky.social · 24/06/2025
And no, he's not hyping AI or making silly predictions such as "nobody will need to write code anymore". It's a nuanced opinion from somebody who saw the power of deep learning coming long before most others did.
000
Tom Van Cutsem @tvcutsem.bsky.social · 24/06/2025
I can highly HIGHLY recommend watching Karpathy's latest talk on "Software 3.0" (software in the era of AI) - it's a treasure trove of insightful analogies, and full of good advice on how to build modern apps with AI integration www.youtube.com/watch?v=LCEm...
youtube.com
Andrej Karpathy: Software Is Changing (Again)
YouTube video by Y Combinator
100
Tom Van Cutsem @tvcutsem.bsky.social · 20/06/2025
My 12yo son had to write an essay on the future of AI for school. When asked what would be the hardest job to get replaced by AI in the future, he answered: Parenting. Love it.
020