The idea is very simple, the image speaks for itself: a cloth-hanger-wire frame with a screen cut out from vacuum bag.
Step 1: Bend the wire, hang the screen
How you want it to cover the flash is up to you. I bent it into two arms so I can hang the diffusing material in front of the flash.
Important: try to bend the wire along the side of the flash hot shoe. Because the wire's plastic coat will eventually come off, you don't want to short-circuit the pins on the hot shoe base. In my case, the inner pins are lower than the surrounding, I just had to make sure the wire is straight and not curve down to touch the inner pins when I slide it in.
Canon (D)SLR: on the Rebel XT, I found a tiny switch on the right edge of the hot shoe to detect external flash. If I slide my diffuser frame in, the built-in flash won't fire. I had to bend the frame around the switch, it's less sturdy but good enough (unfortunately, I returned the camera without taking a picture of the modified diffuser frame to show here).
My Nikon D40 doesn't have any switch around the edge of hot shoe so there is no problem.
I tried different materials, keeping in mind that I need something that diffuses the light evenly, blocks least light, and is durable. Printing paper blocks too much light, while with tissue paper, you will need to bring a whole box for replacement.
The material I'm using is from a vacuum bag. Because the air has to flow through it, its transparency is somewhat equivalent to tissue paper, but it is super durable (much better than printing paper).
I folded a flap on the screen and tape it so that it's attached to the frame and the whole thing can fold flat in my bag. You might want to tape something reflective to the frame to save some light and prevent you from being blinded by the bounced flash.
Well, it's a small idea, nothing much to talk about.