The Curious Engineer

All blogs / Windows internals

Tech Notes

neugierig.org/software/blog

Windows internalsDev tools / editors / IDEsRustEmulation

Posts
101 from 1 Apr 2011 to 22 Oct 2026
Posting
monthly (9 in the last year)
Kind
personal blog
Feed
https://neugierig.org/software/blog/atom.xml

2026 9

  1. Converting YouTube performances to albums
  2. Theseus: DOS support and AI disassembly
  3. The guess and check pattern
  4. Computing graph dominators
  5. Jujutsu tutorial
  6. Theseus: translating win32 to wasm
  7. Theseus unpacking
  8. Theseus, a static Windows emulator
  9. The smallest build system

2025 9

  1. Access logging in 2025
  2. Account disasters
  3. Understanding Jujutsu bookmarks
  4. diff --stat for binary files
  5. retrowin32, split into pieces
  6. Unpacking packed executables
  7. Rust trait object layout
  8. Medium data and small data
  9. Tech vocabulary

2024 9

  1. The Jujutsu version control system
  2. retrowin32: redoing syscalls
  3. retrowin32, two years in
  4. ICFP 2024 programming contest
  5. retrowin32: Threading in two ways
  6. Cross compiling C/Rust to win32, again
  7. Moving data from Rust to JS
  8. retrowin32: Minesweeper and the four month bug
  9. Cross compiling Rust to win32

2023 13

  1. retrowin32's third x86 emulator
  2. retrowin32, the blog series
  3. Emulating x86 on x64 on aarch64
  4. The dominator tree of a dependency graph
  5. Quick hacks on GitHub Pages
  6. Finally getting two's complement
  7. retrowin32: async, DLL loading, tracing execution, and Zig
  8. Crinkler packing
  9. Polymorphic shellcode
  10. retrowin32 progress report
  11. Solving an advent of code problem using a compiler
  12. Emulating win32
  13. Two surprises in browser crashes

2022 10

  1. A simple stack for today's web hacks
  2. Chrome, 10 years later
  3. Mini EV
  4. retrowin32, a win32 emulator
  5. Blog software
  6. Taking a break
  7. WebAssembly and C++
  8. Notes on WebAssembly
  9. n2: revisiting Ninja
  10. Rethinking errors, warnings, and lints

2021 1

  1. Leaving Google

2020 4

  1. Scaling TypeScript compilation
  2. The Success and Failure of Ninja
  3. Oblique Questions
  4. California Exit

2019 2

  1. Interfaces generally belong with users
  2. JavaScript minification

2018 2

  1. TypeScript at Google
  2. Why not add an option for that?

2016 5

  1. TypeScript nullable types
  2. Adventures in terminal emulators
  3. TypeScript's type-independent output
  4. Microsoft BUILD conference
  5. Revisiting TypeScript

2015 6

  1. Random software: gocairo
  2. Random software: Blizzard parser
  3. Arch Linux on a ASUS Zenbook UX305
  4. Sabbatical, 2
  5. Recovering without a reflog
  6. Notes on celiac disease

2014 6

  1. Embedding the current revision in your product's binary
  2. Pocket mini
  3. The Anti-Dashboard Manifesto
  4. Informal statistics
  5. Links in a single page app
  6. React, JSX, and CoffeeScript

2013 5

  1. Big companies, small companies
  2. SPDY setup
  3. The zen of monads
  4. Making
  5. No posts / jelly no puzzle

2012 6

  1. Gyp, Ninja, and shared object TOCs
  2. Instant backtraces in C/C++
  3. New project
  4. Adventures in heap profiling
  5. notes about Chromium, the browser better known as Google Chrome
  6. Sabbatical

2011 13

  1. Linux on a G4 Mac Mini
  2. Nonblocking disk IO
  3. Return by value
  4. Graphics stack
  5. Animation
  6. Arch for Debian users
  7. Why not Haskell?
  8. Quoting
  9. New blog format
  10. Platform of the future
  11. Some things I've learned about memory
  12. An update on Ninja
  13. Complexity is the enemy

Undated 1

  1. the archive