Slashdot Mirror


Code Bubbles — Rethinking the IDE's User Interface

kang327 writes "As Java developers we are used to the familiar file-based user interface that is used by all of the major IDEs. A team at Brown University has developed an IDE for Java called Code Bubbles that makes a fairly radical departure from current IDEs — it is based on fragments instead of files. The idea is that you can see many different pieces of code at once. Fragments can form groups, have automatic layout assistance, wrap long lines based on syntax, and exist in a virtual workspace that you can pan. A video shows reading and editing code, opening different kinds of info such as Javadocs, bug reports and notes, annotating and sharing workspaces, and debugging with bubbles. They report on several user studies that show the system increases performance for the tasks studied, and also that professional developers were enthusiastic about using it. There is also a Beta that you can sign up for."

3 of 198 comments (clear)

  1. Sounds like Smalltalk's code browser. by Anonymous Coward · · Score: 5, Insightful

    Welcome to the 1970s. Squeak is one of the better implementations these days.

  2. Re:bubbles = isolation by Anonymous Coward · · Score: 5, Insightful

    Initially, the idea of "code bubbles" sounds intuitive -- isolated, self-contained, easily testable pieces of code, with well-defined inputs and outputs. Then you could build a complex program by stringing these bubbles together (in theory, anyway).

    Perhaps we could call such a pieces of code "functions" instead.

  3. Re:bubbles = isolation by l3v1 · · Score: 5, Insightful

    isolated, self-contained, easily testable pieces of code

    And I'd add small and short to that list. There's no way this bubble concept would be useable with code fragments longer than a few lines, and even those need to be short since wrapping would destroy the usability of the whole thing. Also, in the sample video, when they had to scroll the screen because of the many bubbles, well, there it became a lost cause for me. Realistically, from code dealing with more than helloworlds that I've seen and written, this thing would be a real dealbreaker. I can't think how so much fragmentation can help you in the long run. Having self-contained small pieces of code that do one thing - that is useful -, I'd say those are hard to find. Managing tens of thousands of lines of code this way, I'd go crazy very quickly.

    --
    I am putting myself to the fullest possible use, which is all I can think that any conscious entity can ever hope to do.