On Saturday I had time to attempt some GPIO stuff with the pi. I set up an LED to light up on the breadboard, and it failed, even when I tried connecting it directly to the power rails, not even using a GPIO pin. I also found out that my multimeter needs a new battery, so I wasn't even able to diagnose what was wrong.
On Sunday I had time to take it into the Makerspace, where there are working multimeters. Everything seemed to be wired up properly on the Pi Wedge, so it was baffling why things weren't working. Then I had an "aha!" moment: I had forgotten that on my breadboard, the power rails are split. If you look in the picture attached, you can see the red and blue lines down the sides are not continuous. Instead, there is a break in the middle (right next to the light glare on the left side, and partially obscured by the red wire on the right side). The power rail does not extend across that break. This allows this breadboard to have four independent power rails, if needed, but it can be confusing. In this case, I was connecting the Pi to the power rail in the lower right, but trying to use the power rail in the upper right.
The board in the photo is configured to light the LED using the GPIO pin labeled G18 on the wedge. When I set the pin high, the LED goes on. When I set it low, it goes off. Progress!
I also tested that I could see when an input pin went high or low, using the 24-button keyboard I built a couple of years ago (I just wired connected up enough for a single button to work).
I'm not doing any GPIO from Ruby yet, but that's the next step: Getting a blinking light, then making a very expensive button operated light switch.