I think Code Bubbles opens up ideas for the whole GUI desktop metaphor, not just programming.
Much of what we do is hierarchical. Imagine writing a project document. Does it have headings? Subheadings? Imagine building the Table of Contents (ToC), then clicking on each heading/subheading to get a separate window where you put the content. You could have multiple subsections open at the same time, in different bubbles. You can always split-screen a modern word processor to accomplish the same thing, but I'd like to be able to move the parts out to separate windows so I can arrange them the way I want, instead of just relying on the app to "tile" the sub-windows for me. Code-Bubbles-as-desktop would allow that.
Imagine that you are working, collaboratively, on that document. You click a subhead in the ToC and start working on it. Someone else clicks on another one and starts working on it. You can use traditional locking to avoid having someone else mess with what you're doing and vice versa. Yes, I know about EtherPad. I've used it. It drives me nuts.
I've been thinking about doing a wiki-based document/program composition system, where you create headings in the main document, each of them links to the actual content for those headings. Different parts would come up in different windows, which you could arrange as you see fit. Code-Bubbles-as-desktop is, arguably, a more elegant solution.
Obviously, this can be done with programming, as a program is little more than a complex, very precise document, with an extremely nit-picky target audience. Programs are, typically, extremely hierarchical. As it stands, when I'm programing, I'm using either Vim or Eclipse. Both of them have the ability to "collapse" sections of code I'm not looking at, giving me a mix of high-level overview and actual code. The same would be accomplished in Code Bubbles by having one bubble showing your method definitions and other bubbles containing the method contents. All of them would be "woven" back together before feeding it to the compiler.
Also, when I'm programming, I typically "flesh out" a method or function by putting in high-level pseudocode in comments, then going through and filling in the program code which implements each piece of pseudocode. Those pseudocode comments could provide the ToC pieces, which would open bubbles to hold the actual code. The system would need to "weave" the pieces together into the main document. That would work, regardless of what programming language you are using.
Is my interest in Literate Programming coming through clearly enough?
Let's take this to the next level. You are using a tablet or netbook. You have a lot less screen real estate to work with. Oh, gee, look at that; the bubbles are all relatively small. Use the "context bar" across the top to find the bubble you're looking for and the bubble can take over the screen. Now, you have a way to compose documents (including programs) which works on smaller, size-constrained devices.
It's probably wishful thinking, but I'm thinking this could be a significant new paradigm, not just for programming but for the whole GUI. I would certainly use it.