Dave W Plummer's banner
Dave W Plummer's profile picture

Dave W Plummer

@davepl1968103,675 subscribers

Hi! I'm Dave Plummer. You might remember me from such Windows components as Task Manager, Windows Pinball, Calc, ZIPFolders, Product Activation, etc. Cheers!

Shorts

MacBook on vacation + spare time == particle system!

MacBook on vacation + spare time == particle system!

18,124 views

More vacation particle system fun! Code at:

More vacation particle system fun! Code at:

12,234 views

I installed a UniFi camera at the end of my driveway to monitor for incoming vehicles. When the AI Key detects a vehicle, it labels it and plays a chime/alert over the house audio. This replaces the old "Infra Red Chamberlain Remote Relay" system pretty effectively! As long as it works in the dark, too...

I installed a UniFi camera at the end of my driveway to monitor for incoming vehicles. When the AI Key detects a vehicle, it labels it and plays a chime/alert over the house audio. This replaces the old "Infra Red Chamberlain Remote Relay" system pretty effectively! As long as it works in the dark, too...

210,378 views

I'm fortunate to have the means to buy the cheapest life insurance of all: - Professional Brake Jobs - Someone else puts up my Christmas lights - A contractor hangs my ceiling fan - Electricians are for anything over 48V I'm much too important and good-looking to die from some nonsense like stepping off a ladder...

I'm fortunate to have the means to buy the cheapest life insurance of all: - Professional Brake Jobs - Someone else puts up my Christmas lights - A contractor hangs my ceiling fan - Electricians are for anything over 48V I'm much too important and good-looking to die from some nonsense like stepping off a ladder...

50,024 views

I bought one of the Vector displays from the movie WAR GAMES, and here's how I brought it back to life and got it drawing again! ESP32, C++, Python! Code included.

I bought one of the Vector displays from the movie WAR GAMES, and here's how I brought it back to life and got it drawing again! ESP32, C++, Python! Code included.

79,876 views

"You're asking me how a watch works... for now, let's just keep an eye on the time." It's a great line because it's not really about watches. On the surface, she's asking for a detailed explanation of something really complex. His response is essentially: "The explanation is complicated, and understanding every mechanism isn't necessary right now. Focus on the outcome, not the internals." The watch metaphor works because everyone understands the difference between: - Knowing what time it is. - Knowing how a watch actually works. Most people can use a watch perfectly well without understanding gears, escapements, balance wheels, or quartz crystals. For young people, apprentices, junior engineers, new managers, or anyone entering a new field, there's a deeper lesson: - Expertise comes in layers When you're new, you often want the entire mental model immediately. You ask: - Why are we doing it this way? - What does every part do? - What are all the dependencies? - What happens under every possible condition? Those are good questions. But sometimes the answer would require six months of background knowledge to make sense. It's great to be curious, as long as sometimes you're willing to accept that the answer is "I can't explain it all to you right now." An experienced person may effectively be saying: "You're asking a valid question, but you're asking it several chapters before the book has introduced the necessary concepts." That can be hard when you're young and driven!

"You're asking me how a watch works... for now, let's just keep an eye on the time." It's a great line because it's not really about watches. On the surface, she's asking for a detailed explanation of something really complex. His response is essentially: "The explanation is complicated, and understanding every mechanism isn't necessary right now. Focus on the outcome, not the internals." The watch metaphor works because everyone understands the difference between: - Knowing what time it is. - Knowing how a watch actually works. Most people can use a watch perfectly well without understanding gears, escapements, balance wheels, or quartz crystals. For young people, apprentices, junior engineers, new managers, or anyone entering a new field, there's a deeper lesson: - Expertise comes in layers When you're new, you often want the entire mental model immediately. You ask: - Why are we doing it this way? - What does every part do? - What are all the dependencies? - What happens under every possible condition? Those are good questions. But sometimes the answer would require six months of background knowledge to make sense. It's great to be curious, as long as sometimes you're willing to accept that the answer is "I can't explain it all to you right now." An experienced person may effectively be saying: "You're asking a valid question, but you're asking it several chapters before the book has introduced the necessary concepts." That can be hard when you're young and driven!

24,292 views

You used to see these on the wall of every computer science lab, but I'd never written one... so I wrote one this morning! It's under 200 lines, code in the comments. And if you like these littlle code excursions, follow me, and I'll keep doing them!

You used to see these on the wall of every computer science lab, but I'd never written one... so I wrote one this morning! It's under 200 lines, code in the comments. And if you like these littlle code excursions, follow me, and I'll keep doing them!

77,817 views

I bet you've never noticed this ultra-cool but rather complicated "cone of prediction" at the center of Windows context menus? It allows the system to predict that you're aiming for a flyout. Well, that's because Windows (at least in the old days) didn't do any such fanciness. It just uses a timeout of 400ms, and it's always worked pretty well. It's even adjustable (SPI_SETMENUSHOWDELAY) these days, but used to just be 80% of your double-click speed setting. So the faster your reflexes were - per that setting, at least - the shorter your menu flyout allowance. No cone needed. ( I stole this from a Raymond Chen hockey card that I keep tucked up in my 50 Mission Cap ).

I bet you've never noticed this ultra-cool but rather complicated "cone of prediction" at the center of Windows context menus? It allows the system to predict that you're aiming for a flyout. Well, that's because Windows (at least in the old days) didn't do any such fanciness. It just uses a timeout of 400ms, and it's always worked pretty well. It's even adjustable (SPI_SETMENUSHOWDELAY) these days, but used to just be 80% of your double-click speed setting. So the faster your reflexes were - per that setting, at least - the shorter your menu flyout allowance. No cone needed. ( I stole this from a Raymond Chen hockey card that I keep tucked up in my 50 Mission Cap ).

45,254 views

My AI broke the world record on Tempest yesterday! But I still hold the human record :-) [on Extreme difficulty settings] Here's a little demo reel of the Tempest AI doing inference and training at the same time up on the hardest Tempest levels. This is all running on our Dell Technologies 7875 Workstation, with the 9995WX CPU handling 2000 fps of Tempest while the dual Blackwell RTX6000 GPUs do inference and training.

My AI broke the world record on Tempest yesterday! But I still hold the human record :-) [on Extreme difficulty settings] Here's a little demo reel of the Tempest AI doing inference and training at the same time up on the hardest Tempest levels. This is all running on our Dell Technologies 7875 Workstation, with the 9995WX CPU handling 2000 fps of Tempest while the dual Blackwell RTX6000 GPUs do inference and training.

37,406 views

There's no BASIC interpreter for 211BSD UNIX, so I wrote one this morning (with some codex help!). Code below! I targeted CBM BASIC v2 as the language reference, and it's reasonably close. This sample program runs nicely! 10 for a=0 to 100000 step .2 20 print tab(40+40*sin(a));"*" 25 sleep 1 30 next a The code runs on MacOS and 211BSD and probably Linux, too:

There's no BASIC interpreter for 211BSD UNIX, so I wrote one this morning (with some codex help!). Code below! I targeted CBM BASIC v2 as the language reference, and it's reasonably close. This sample program runs nicely! 10 for a=0 to 100000 step .2 20 print tab(40+40*sin(a));"*" 25 sleep 1 30 next a The code runs on MacOS and 211BSD and probably Linux, too:

43,694 views

All the Robotron you can eat at 10,000 frames per second on a 192-core Threadripper Dell 7875 with dual Blackwell RTX6000 GPUs and 196 GB of VRAM. Watch it live at

All the Robotron you can eat at 10,000 frames per second on a 192-core Threadripper Dell 7875 with dual Blackwell RTX6000 GPUs and 196 GB of VRAM. Watch it live at

20,512 views

Uh oh... that can't be good!

Uh oh... that can't be good!

55,306 views

A little video of the PDP-11/83 booted from the RA82...

A little video of the PDP-11/83 booted from the RA82...

32,475 views

This is the PDP-11/83 I've been working on... it's got a lot of pretty das blinkenlights! It's running 211BSD UNIX that I custom compiled to make it all work. I had to tweak the kernel's idle loop to get the display panel to work, as this setup uses fast PMI (private memory interface) between the RAM and CPU, so the panel can't see it happen unless you cheat a little! The dual floppy unit is wild... a single stepper motor moves the heads on BOTH drives at the same time, so they're like conjoined drives. The bus spans three chassis, which are the three grey boxes. So unlike a PC, you can just "add most slots" and keep going to your heart's content!

This is the PDP-11/83 I've been working on... it's got a lot of pretty das blinkenlights! It's running 211BSD UNIX that I custom compiled to make it all work. I had to tweak the kernel's idle loop to get the display panel to work, as this setup uses fast PMI (private memory interface) between the RAM and CPU, so the panel can't see it happen unless you cheat a little! The dual floppy unit is wild... a single stepper motor moves the heads on BOTH drives at the same time, so they're like conjoined drives. The bus spans three chassis, which are the three grey boxes. So unlike a PC, you can just "add most slots" and keep going to your heart's content!

43,343 views

This guy needed a soundtrack, so I added one...

This guy needed a soundtrack, so I added one...

22,439 views

Remember the Thinking Machines CM5 in the background of Jurassic Park? I wanted to copy the CM5 LED effect for my VAX, so I reached out to one of the original designers, Tamiko. He said that Thinking Machines' president, Sheryl Handler, had asked if the CM lights could be made to blink in a "Random and Pleasing manner". Apparently, Don Aronson wrote the R&P effect for the CM-2, but I'm still waiting to hear back from him! In the meantime, I did my best take based on what you see in the movie...

Remember the Thinking Machines CM5 in the background of Jurassic Park? I wanted to copy the CM5 LED effect for my VAX, so I reached out to one of the original designers, Tamiko. He said that Thinking Machines' president, Sheryl Handler, had asked if the CM lights could be made to blink in a "Random and Pleasing manner". Apparently, Don Aronson wrote the R&P effect for the CM-2, but I'm still waiting to hear back from him! In the meantime, I did my best take based on what you see in the movie...

27,696 views

Oh no... that's not good!

Oh no... that's not good!

25,280 views

New vs Old! Epyc 64-Core CPU vs DEC VAX! I like to compare weird things on an even playing field, and so I installed NetBSD 10.1 on both a VAX 4000-705A and on an Epyc 8534P, 64-core CPU with 128GB of RAM. The 1993 VAX runs at 112MHz (pretty fast for a VAX!) Then I set them both to building the NetBSD source tree. Epyc on the top, VAX on the bottom. And this VAX is at least 50x as fast as the original VAX 11/780!

New vs Old! Epyc 64-Core CPU vs DEC VAX! I like to compare weird things on an even playing field, and so I installed NetBSD 10.1 on both a VAX 4000-705A and on an Epyc 8534P, 64-core CPU with 128GB of RAM. The 1993 VAX runs at 112MHz (pretty fast for a VAX!) Then I set them both to building the NetBSD source tree. Epyc on the top, VAX on the bottom. And this VAX is at least 50x as fast as the original VAX 11/780!

21,590 views

My bench...

My bench...

15,239 views

Videos

davepl1968's profile picture

He was the multimillionaire software visionary that created the Zip file format still used almost universally to this day. And now, at the age of just 37, Phil Katz was dead. His life came to an inglorious ending in a lonely hotel room somewhere in Milwaukee County, Wisconsin. He had a home nearby, and the cops had been summoned to it at least once before when neighbors complained of odors, insects, and mice infesting the neighboring luxury apartments. Once inside, the police were confronted with knee-deep garbage, decaying food scraps, and much more. When they later found his lifeless body slumped against a nightstand in that dingy south side hotel room, he was still cradling an empty bottle of liquor. A half dozen similar bottles littered the room. He was completely alone now, having long since been estranged from his family and now virtually a stranger even to the employees of his own company. His body could no longer sustain the abuse from years of chronic alcoholism, and he died alone that night of acute pancreatic bleeding. The Dark History of Zip Files: you might already know that I wrote the Zip file support that's been in Windows for about 30 years... But I had nothing to do with the creation of the Zip format, which goes back to Phil Katz. This is his tragic and cautionary tale... as told by me. I never met Phil before he died. I'd like to think that before he started his descent into darkness, we'd have a lot to talk about.

Dave W Plummer

302,721 views • 1 month ago