In an unlikely twist of events, here's an actual idea, like I intended to be posting.
I have a consumer digital camera, but I hate the glare of the flash when I take an indoor photo at a family event. So I usually either find a bit of white paper or a spoon and hold it in front of the flash to bounce the flash off the ceiling or a wall behind me. This has its downsides; you look silly, you flash whoever's behind you, it's cumbersome (particularly when shooting vertically) and it doesn't work whenever there's a dark or far away wall or ceiling.
So I thought it would be good to have a little diffuser I could attach to my camera. But a little piece of plastic would waste a lot of the light by sending it out the sides, more so the larger the diffuser. And so that it actually improves the shot, I'd like the diffuser to be a reasonable size (A6?). So how about using 2 bounces? Firstly, a bounce in front of the flash to redirect it upwards, and then a second above the flash to bounce it forwards. If both of those were made of some kind of semi-diffusing reflector, like shiny paper, or had a bumpy surface like crinkled tin foil, then the light would be diffused without too much loss. I could also just use the first reflector to bounce of the wall or ceiling.
Optimizing the solution
What shape should the two reflectors be? If the first was concave it could focus the flash onto the second reflector, or even (via a paraboloid) create a fairly narrow beam. The second reflector would need to again diffuse the light to create the most diffuse source it could. So could we throw two surfaces of nodes and a light source into an optimising algorithm and see what answer it comes up with? The constraints would be to maximise diffuseness of the resulting light (so a given point in the field of view would be uniformly lit from as wide an angle as possible), minimise size, maximise the intensity within the field of view, etc.