"Code bubbles" - a prototype IDE

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
13 messages Options
Reply | Threaded
Open this post in threaded view
|

"Code bubbles" - a prototype IDE

Frank Shearar-3
Again, projects moving towards viewing small chunks of code/data
(whether method, class definition, variables in a stack frame, etc).
Familiar stuff, and maybe food for thought for alternative code
browsers.

http://www.andrewbragdon.com/codebubbles_site.asp

Overview
Developers spend significant time reading and navigating code
fragments spread across multiple locations. The file-based nature of
contemporary IDEs makes it prohibitively difficult to create and
maintain a simultaneous view of such fragments. We propose a novel
user interface metaphor for code understanding and maintanence based
on collections of lightweight, editable fragments called bubbles,
which form concurrently visible working sets.

The essential goal of this project is to make it easier for developers
to see many fragments of code (or other information) at once without
having to navigate back and forth. Each of these fragments is shown in
a bubble.

A bubble is a fully editable and interactive view of a fragment such
as a method or collection of member variables. Bubbles, in contrast to
windows, have minimal border decoration, avoid clipping their contents
by using automatic code reflow and elision, and do not overlap but
instead push each other out of the way. Bubbles exist in a large,
pannable 2-D virtual space where a cluster of bubbles comprises a
concurrently visible working set. Bubbles support a lightweight
grouping mechanism, and further support connections between them.

A quantitative user study indicates that Code Bubbles increased
performance significantly for two controlled code understanding tasks.
A qualitative user study with 23 professional developers indicates
substantial interest and enthusiasm for the approach, despite the
radical departure from what developers are used to.

Reply | Threaded
Open this post in threaded view
|

Re: "Code bubbles" - a prototype IDE

timrowledge
Hilarious. Decades of reading whines from people about how they want to be able to edit Smalltalk code in emacs or other insane editors and now the dead-code-in-files people want to have method browsers - and they think it's a novel idea.

/tim
{insert witticism here}
Reply | Threaded
Open this post in threaded view
|

Re: "Code bubbles" - a prototype IDE

marcel.taeumel (old)
In reply to this post by Frank Shearar-3
Although not obvious from a first visual impression, this is more recent:

http://cs.brown.edu/~spr/codebubbles/

And here is the code:

http://sourceforge.net/projects/codebubbles/

Best,
Marcel
Reply | Threaded
Open this post in threaded view
|

Re: "Code bubbles" - a prototype IDE

marcel.taeumel (old)
And most of the development team went to Microsoft and implemented DebuggerCanvas for Visual Studio:

http://visualstudiogallery.msdn.microsoft.com/4a979842-b9aa-4adf-bfef-83bd428a0acb

Best,
Marcel
Reply | Threaded
Open this post in threaded view
|

Re: "Code bubbles" - a prototype IDE

Frank Shearar-3
If I remember, I'll try out the DebuggerCanvas next week. Annoyingly
it requires the enormously expensive Ultimate edition.

Now you _can_ look at these kinds of developments and cry into one's
sandwich that one's been saying all this for only 30 years, or one can
realise that it usually takes 30 years for ideas to actually start
being applied. More importantly, we can take inspiration from the new
forms of mutations, and improve our own stuff, if applicable.

frank



On 30 August 2014 11:39, Marcel Taeumel
<[hidden email]> wrote:

> And most of the development team went to Microsoft and implemented
> DebuggerCanvas for Visual Studio:
>
> http://visualstudiogallery.msdn.microsoft.com/4a979842-b9aa-4adf-bfef-83bd428a0acb
>
> Best,
> Marcel
>
>
>
> --
> View this message in context: http://forum.world.st/Code-bubbles-a-prototype-IDE-tp4775442p4775447.html
> Sent from the Squeak - Dev mailing list archive at Nabble.com.
>

Reply | Threaded
Open this post in threaded view
|

Re: "Code bubbles" - a prototype IDE

Sean P. DeNigris
Administrator
Frank Shearar-3 wrote
one can
realise that it usually takes 30 years for ideas to actually start
being applied
+100. Very insightful and powerful. This is just the way the new ideas work. Alan Kay said something that I'll have to paraphrase because I can't find the quote that the stages of acceptance of a blue plane idea - first they laugh at it, then they get angry, and then they say it was their idea the whole time.
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: "Code bubbles" - a prototype IDE

Chris Muller-3
On Sat, Aug 30, 2014 at 8:42 AM, Sean P. DeNigris <[hidden email]> wrote:
> Frank Shearar-3 wrote
>> one can
>> realise that it usually takes 30 years for ideas to actually start
>> being applied
>
> +100. Very insightful and powerful. This is just the way the new ideas work.

-100.  This is not a new idea, and the way they implemented it is not
powerful because the amount of screen real-estate consumed makes it
cumbersome and leads to information overload.

In fact, many years ago, I tried doing exactly this in Squeak for a
couple of days.  SystemWindows are just Morphs, and the Connectors
package allows any Morphs to be connected.  I made something where
spawning additional browsers would connect to the browser they spawned
from.  It was "neato" at first but, as I said, usability and
productivity was not there because it took up a lot of screen space
and was cumbersome.

The beautiful thing about Squeak is how it achieves most or all of the
*use-cases* presented in the video in much simpler and efficient ways.
To wit, the whole goal of Code Bubbles is the same goal of the Tracing
Messages Browser, except the TMB is like a Ferrari where Code Bubbles
is more like pretty flowers -- nice to look at but not letting the
developer "go fast" because of the real-estate issue.  TMB presents
*Traces* (e.g., just the method names without the code), so I can have
10 separate Traces on the screen, (e.g., 10 windows) but you ain't
gonna do that with Code Bubbles..  :)

Another thing I do often is duplicate browsers to set them off to the
side, or change the browser color to red (via its window menu) to
indicate a "Bug" needing fixed in that browser..  Sure, I don't have a
the pretty giant lady-bug icon but, functionally, its just as useful.

Squeak leverages the power of TSTTCPW to the max, that's what I love about it.

> Alan Kay said something that I'll have to paraphrase because I can't find
> the quote that the stages of acceptance of a blue plane idea - first they
> laugh at it, then they get angry, and then they say it was their idea the
> whole time.

Alan would never consider Code Bubbles a blue-plane idea...

Reply | Threaded
Open this post in threaded view
|

Re: "Code bubbles" - a prototype IDE

Chris Muller-3
In reply to this post by Sean P. DeNigris
Another funny thing:  The way the Code Bubbles auto-size reminds me of
my Smart Splitters, which I love.   :-)

On Sat, Aug 30, 2014 at 8:42 AM, Sean P. DeNigris <[hidden email]> wrote:

> Frank Shearar-3 wrote
>> one can
>> realise that it usually takes 30 years for ideas to actually start
>> being applied
>
> +100. Very insightful and powerful. This is just the way the new ideas work.
> Alan Kay said something that I'll have to paraphrase because I can't find
> the quote that the stages of acceptance of a blue plane idea - first they
> laugh at it, then they get angry, and then they say it was their idea the
> whole time.
>
>
>
> -----
> Cheers,
> Sean
> --
> View this message in context: http://forum.world.st/Code-bubbles-a-prototype-IDE-tp4775442p4775459.html
> Sent from the Squeak - Dev mailing list archive at Nabble.com.
>

Reply | Threaded
Open this post in threaded view
|

Re: "Code bubbles" - a prototype IDE

Sean P. DeNigris
Administrator
In reply to this post by Chris Muller-3
Chris Muller-3 wrote
On Sat, Aug 30, 2014 at 8:42 AM, Sean P. DeNigris <[hidden email]> wrote:
> Frank Shearar-3 wrote
>> one can
>> realise that it usually takes 30 years for ideas to actually start
>> being applied
>
> +100. Very insightful and powerful. This is just the way the new ideas work.

-100.  This is not a new idea, and...
Alan would never consider Code Bubbles a blue-plane idea...
Let's recap... Frank suggested that instead of being jealous that people are (perhaps badly) reinventing/implementing ideas that some of us have known about for decades, that we realize that this is exactly how adoption of blue plane ideas (e.g the Dynabook) always look - sloppy fits and starts for 100+ years. *Frank's suggestion* (I resisted making that all caps ;)) was the insightful and powerful idea. It gets us nowhere to yell into a volcano. And I think we can let Alan speak for himself.
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: "Code bubbles" - a prototype IDE

marcel.taeumel (old)
In reply to this post by Frank Shearar-3
The Code Bubbles UI is not file-centric anymore. Fine, just like in Smalltalk tools. But for the rest, there are not many similarities. If you compare those *bubbles* against Smalltalk System Browser windows, the bubbles just win considering screen real estate. :)

Could you elaborate on other things in Code Bubbles that you would credit Smalltalk environments for being the first who did it? :)

Best,
Marcel
Reply | Threaded
Open this post in threaded view
|

Re: "Code bubbles" - a prototype IDE

Frank Shearar-3
On 2 September 2014 13:33, Marcel Taeumel
<[hidden email]> wrote:
> The Code Bubbles UI is not file-centric anymore. Fine, just like in Smalltalk
> tools. But for the rest, there are not many similarities. If you compare
> those *bubbles* against Smalltalk System Browser windows, the bubbles just
> win considering screen real estate. :)
>
> Could you elaborate on other things in Code Bubbles that you would credit
> Smalltalk environments for being the first who did it? :)

I don't particularly care who did things first. What I care about is
stealing shiny baubles from people who've done the hard work of
thinking things through. And so I raised the topic here so that those
who know better than me can pick through the bits and let us know
which parts are worth stealing.

frank

> Best,
> Marcel

Reply | Threaded
Open this post in threaded view
|

Re: "Code bubbles" - a prototype IDE

marcel.taeumel (old)
Where do these bubbles come from?

Best,
Marcel
Reply | Threaded
Open this post in threaded view
|

Re: "Code bubbles" - a prototype IDE

blake watson
On Tue, Sep 9, 2014 at 12:46 AM, Marcel Taeumel <[hidden email]> wrote:
Where do these bubbles come from?
 
The cloud, probably.
 
The good thing about this, it seems to me, is that the flow of improvement might come back our way.