Category Archives: Programming

Reflections on My Tech Career – Part 2

This is second and final part of the story of how my career as a software developer unfolded (part 1 is here). In this half I work at four different companies in the Seattle area, make my mark, and then … Continue reading

Posted in Bugs, Chromium, Floating Point, Investigative Reporting, Linux, Performance, Programming, Quadratic, Symbols, uiforetw, Unicycling, Xbox 360, xperf | Tagged , , , , , | 18 Comments

Reflections on My Tech Career – Part 1

I’ve been lucky enough to have had a successful career as a software developer. Spanning six companies and thirty-seven years I’ve had the opportunity to work on Elastic Reality, Xbox, Windows, Steam, Internet Explorer, dozens of games, and Chrome, and … Continue reading

Posted in Fractals, Programming | Tagged , , , | 8 Comments

Finding a VS Code Memory Leak

In 2021 I found a huge memory leak in VS code, totalling around 64 GB when I first saw it, but with no actual limit on how high it could go. I found this leak despite two obstacles that should … Continue reading

Posted in Bugs, Code Reliability, Debugging, Investigative Reporting, memory, Programming, Rants | Tagged , , , , | 17 Comments

What this blog is about

I’ve recently told a few people that I write, that I have a blog, and then I try to describe what I write about. I’m kinda proud of some of the stuff that I’ve covered here on randomascii over the … Continue reading

Posted in Fun, Investigative Reporting, Programming, Quadratic | Tagged | 1 Comment

32 MiB Working Sets on a 64 GiB machine

Memory is a relatively scarce resource on many consumer computers, so a feature to limit how much memory a process uses seems like a good idea, and Microsoft did indeed implement such a feature. However: They didn’t document this (!) … Continue reading

Posted in Computers and Internet, Investigative Reporting, memory, Performance, Programming, uiforetw, xperf | Tagged , , | 10 Comments

When Debug Symbols Get Large

TL;DR – upgrade your tools, including Visual Studio, windbg, and Windows Performance Toolkit, if you want to handle Chromium’s symbol files. Details: Death, taxes, and browser engines relentlessly growing – those are the three things that you can really be … Continue reading

Posted in Debugging, Programming, Symbols, uiforetw, xperf | Tagged , | 12 Comments

No Start Menu for You

I tend to launch most programs on my Windows 10 laptop by typing the <Win> key, then a few letters of the program name, and then hitting enter. On my powerful laptop (SSD and 32 GB of RAM) this process … Continue reading

Posted in Code Reliability, Debugging, Investigative Reporting, Performance, Programming, Rants, uiforetw, xperf | Tagged , , | 28 Comments

Determinism Bugs, Part Two, Kernel32.dll

It was literally the day after I cracked the __FILE__ determinism bug that I hit a completely different build determinism issue. I was asked to investigate why the Chrome build number reported for Chrome crashes on Windows 11 was lagging … Continue reading

Posted in Bugs, Chromium, Computers and Internet, Investigative Reporting, Programming, Symbols | Tagged , , | 19 Comments

Two Deterministic Build Bugs

‘Twas the week before Christmas and I ran across a deterministic-build bug. And then another one. One was in Chromium, and the other was in Microsoft Windows. It seemed like a weird coincidence so I thought I’d write about both … Continue reading

Posted in Bugs, Chromium, Computers and Internet, Debugging, Programming | Tagged , , | 14 Comments

Arranging Invisible Icons in Quadratic Time

Near the end of January I was pointed to a twitter thread where a Windows user with a powerful machine was hitting random hangs in explorer. Lots of unscientific theories were being proposed. I don’t generally do random analysis of … Continue reading

Posted in Investigative Reporting, Performance, Programming, Quadratic, Rants, Symbols | Tagged , | 21 Comments