Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Rethinking the User Interface Paradigm of Integrated Development Environments

Rethinking the User Interface Paradigm of Integrated Development Environments

Scheduled Pinned Locked Moved The Lounge
designquestion
39 Posts 25 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • K Kevin McFarlane

    Code Bubbles[^] "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." There's also an 8 min. video. Not sure what to make of it at this stage but looks intriguing - or not?

    Kevin

    M Offline
    M Offline
    Marc Clifton
    wrote on last edited by
    #11

    I did something like that years ago on, of all platforms, a C-64! To me, it makes a heck of a lot more sense, but I would take it even further, making "bubbles" (in their jargon), of the UI, the model, the DB schema, the bindings, the business logic, plug-ins, etc. The whole concept of an only-text-based IDE is so obsolete, in my mind, I suffer pains coding that way. The problem is, just re-doing the features of a text-based UI as a mere component to my grander view of what I want is itself a daunting task, not to mention integrating a debugger and other tools. Marc

    1 Reply Last reply
    0
    • K Kevin McFarlane

      Code Bubbles[^] "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." There's also an 8 min. video. Not sure what to make of it at this stage but looks intriguing - or not?

      Kevin

      D Offline
      D Offline
      Douglas Troy
      wrote on last edited by
      #12

      This is actually a repost from a while back, but I'm going to make the same comment I made then ... This reminds me of FoxPro's Code Snippets, and no good ever came from that design.


      :..::. Douglas H. Troy ::..
      Bad Astronomy |VCF|wxWidgets|WTL

      1 Reply Last reply
      0
      • K Kevin McFarlane

        Code Bubbles[^] "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." There's also an 8 min. video. Not sure what to make of it at this stage but looks intriguing - or not?

        Kevin

        A Offline
        A Offline
        Anthony Mushrow
        wrote on last edited by
        #13

        Honestly, I'd be happy if I could just drag one of my many open source files to the second monitor so that I can see it while I work in some other files. But no, if I want to do that I have to squeeze them in together inside VS itself.

        My current favourite word is: Smooth!

        -SK Genius

        M A J 3 Replies Last reply
        0
        • A Anthony Mushrow

          Honestly, I'd be happy if I could just drag one of my many open source files to the second monitor so that I can see it while I work in some other files. But no, if I want to do that I have to squeeze them in together inside VS itself.

          My current favourite word is: Smooth!

          -SK Genius

          M Offline
          M Offline
          Marc Clifton
          wrote on last edited by
          #14

          SK Genius wrote:

          But no, if I want to do that I have to squeeze them in together inside VS itself.

          There's a variety of simple editors you could throw the code into, like Notepad++. Or even another instance of VS! Marc

          S J 2 Replies Last reply
          0
          • M Marc Clifton

            SK Genius wrote:

            But no, if I want to do that I have to squeeze them in together inside VS itself.

            There's a variety of simple editors you could throw the code into, like Notepad++. Or even another instance of VS! Marc

            S Offline
            S Offline
            Shog9 0
            wrote on last edited by
            #15

            ...At which point, why bother with an IDE...

            1 Reply Last reply
            0
            • K Kevin McFarlane

              Code Bubbles[^] "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." There's also an 8 min. video. Not sure what to make of it at this stage but looks intriguing - or not?

              Kevin

              L Offline
              L Offline
              Luc Pattyn
              wrote on last edited by
              #16

              No thanks. Object orientation is the key, not a huge whiteboard with lots of code snippets and arrows. All I ever wanted is: - powerful search facilities; - arbitrary text coloring, so you can see all occurences of a word at a glance. No bubbles. :)

              Luc Pattyn [Forum Guidelines] [Why QA sucks] [My Articles]


              Prolific encyclopedia fixture proof-reader browser patron addict?
              We all depend on the beast below.


              1 Reply Last reply
              0
              • K Kevin McFarlane

                Code Bubbles[^] "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." There's also an 8 min. video. Not sure what to make of it at this stage but looks intriguing - or not?

                Kevin

                P Offline
                P Offline
                peterchen
                wrote on last edited by
                #17

                Repost :rolleyes: As said before, I'd love to play with it - because I find the entity-centric navigation and display seriously lacking from today's IDE's. I like the "Area Nav Bar" at the top seems a good idea - looks well thought-out. However: Does it scale to real projects with a million LOC? Still, even if this implementation doesn't succeed, it provides fresh impulses for IDE's.

                Agh! Reality! My Archnemesis![^]
                | FoldWithUs! | sighist | µLaunch - program launcher for server core and hyper-v server.

                1 Reply Last reply
                0
                • A Anthony Mushrow

                  Honestly, I'd be happy if I could just drag one of my many open source files to the second monitor so that I can see it while I work in some other files. But no, if I want to do that I have to squeeze them in together inside VS itself.

                  My current favourite word is: Smooth!

                  -SK Genius

                  A Offline
                  A Offline
                  AspDotNetDev
                  wrote on last edited by
                  #18

                  SK Genius wrote:

                  Honestly, I'd be happy if I could just drag one of my many open source files to the second monitor

                  You can do that with VS2010.

                  [Forum Guidelines]

                  D 1 Reply Last reply
                  0
                  • K Kevin McFarlane

                    Code Bubbles[^] "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." There's also an 8 min. video. Not sure what to make of it at this stage but looks intriguing - or not?

                    Kevin

                    J Offline
                    J Offline
                    Joe Woodbury
                    wrote on last edited by
                    #19

                    The weird notion that files (and even directories) are bad keeps trickling into academic proposals. It's baffling. You have to organize and store your data somehow and files turn out to be a pretty darn good way to do it. A big problem with this proposal is that it assumes a tighter coupling between objects and a primacy of objects themselves that simply doesn't exist in the real world. It is very academic in this regard--that the algorithm and objectness is everything. Except they're not. Most functioning code is housekeeping tedium not easily encapsulated into neat little bubbles. It's all been done before and failed. (Another problem with this kind of thing is that it makes objects too important; the developer ends up spending time creating fancy, rich objects and forgets to actually make them do something useful. When the developer finally does get around to making them do something useful, they inevitably discover that half their fancy class isn't used and the other half doesn't fit the real world requirements very well, if at all. Been there, done that.)

                    P 1 Reply Last reply
                    0
                    • K Kevin McFarlane

                      Code Bubbles[^] "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." There's also an 8 min. video. Not sure what to make of it at this stage but looks intriguing - or not?

                      Kevin

                      A Offline
                      A Offline
                      Andrew Rissing
                      wrote on last edited by
                      #20

                      VH1's Popup Video meets Visual Studio...

                      1 Reply Last reply
                      0
                      • A AspDotNetDev

                        SK Genius wrote:

                        Honestly, I'd be happy if I could just drag one of my many open source files to the second monitor

                        You can do that with VS2010.

                        [Forum Guidelines]

                        D Offline
                        D Offline
                        Dan Neely
                        wrote on last edited by
                        #21

                        aspdotnetdev wrote:

                        SK Genius wrote:

                        Honestly, I'd be happy if I could just drag one of my many open source files to the second monitor

                        You can do that with VS2010.

                        Interesting. Are there any demo videos of that around; I'm curious how well it works in practice.

                        3x12=36 2x12=24 1x12=12 0x12=18

                        A M 2 Replies Last reply
                        0
                        • M Marc Clifton

                          SK Genius wrote:

                          But no, if I want to do that I have to squeeze them in together inside VS itself.

                          There's a variety of simple editors you could throw the code into, like Notepad++. Or even another instance of VS! Marc

                          J Offline
                          J Offline
                          John M Drescher
                          wrote on last edited by
                          #22

                          I do that often using Notepad++ in the second monitor.

                          John

                          1 Reply Last reply
                          0
                          • D Dan Neely

                            aspdotnetdev wrote:

                            SK Genius wrote:

                            Honestly, I'd be happy if I could just drag one of my many open source files to the second monitor

                            You can do that with VS2010.

                            Interesting. Are there any demo videos of that around; I'm curious how well it works in practice.

                            3x12=36 2x12=24 1x12=12 0x12=18

                            A Offline
                            A Offline
                            AspDotNetDev
                            wrote on last edited by
                            #23

                            Haha, a demo video of putting a tab on a second monitor? Seems a bit focused of a topic to have a demo video on, don't you think?

                            [Forum Guidelines]

                            D 1 Reply Last reply
                            0
                            • J Joe Woodbury

                              The weird notion that files (and even directories) are bad keeps trickling into academic proposals. It's baffling. You have to organize and store your data somehow and files turn out to be a pretty darn good way to do it. A big problem with this proposal is that it assumes a tighter coupling between objects and a primacy of objects themselves that simply doesn't exist in the real world. It is very academic in this regard--that the algorithm and objectness is everything. Except they're not. Most functioning code is housekeeping tedium not easily encapsulated into neat little bubbles. It's all been done before and failed. (Another problem with this kind of thing is that it makes objects too important; the developer ends up spending time creating fancy, rich objects and forgets to actually make them do something useful. When the developer finally does get around to making them do something useful, they inevitably discover that half their fancy class isn't used and the other half doesn't fit the real world requirements very well, if at all. Been there, done that.)

                              P Offline
                              P Offline
                              Phil Martin
                              wrote on last edited by
                              #24

                              Joe Woodbury wrote:

                              The weird notion that files (and even directories) are bad keeps trickling into academic proposals. It's baffling. You have to organize and store your data somehow and files turn out to be a pretty darn good way to do it.

                              I don't find it that baffling. The major use I have for directories and file names is a useful way of describing to other humans where a particular piece of code is. All the legacy systems I've worked on, the directory and file naming conventions have become so arcane after 5 or years they are irrelevant and are more a hindrance than a help. I don't call that pretty darn good. It may just be the best way we have though. What I want from the concept displayed is to make it easier to move away from forcing people to use classes. I find that so much less useful these days. What I would find useful though is being able to display and format code the way _I_ like that doesn't screw up source code history or other people's work. Make the tools reponsible for organising code into a history sensible way and let me look at it how I want. I was to show all the methods that take a particular parameter, or anything with a TODO in it. I want to see code comments in rich text, not plain text. and most of all, I want it all to place nice with source code control. I don't necessarily need separate bubbles. If it all appeared in one flat window, that's find by me. Just organise the code for me so I don't have to care so much any more.

                              J 1 Reply Last reply
                              0
                              • P Phil Martin

                                Joe Woodbury wrote:

                                The weird notion that files (and even directories) are bad keeps trickling into academic proposals. It's baffling. You have to organize and store your data somehow and files turn out to be a pretty darn good way to do it.

                                I don't find it that baffling. The major use I have for directories and file names is a useful way of describing to other humans where a particular piece of code is. All the legacy systems I've worked on, the directory and file naming conventions have become so arcane after 5 or years they are irrelevant and are more a hindrance than a help. I don't call that pretty darn good. It may just be the best way we have though. What I want from the concept displayed is to make it easier to move away from forcing people to use classes. I find that so much less useful these days. What I would find useful though is being able to display and format code the way _I_ like that doesn't screw up source code history or other people's work. Make the tools reponsible for organising code into a history sensible way and let me look at it how I want. I was to show all the methods that take a particular parameter, or anything with a TODO in it. I want to see code comments in rich text, not plain text. and most of all, I want it all to place nice with source code control. I don't necessarily need separate bubbles. If it all appeared in one flat window, that's find by me. Just organise the code for me so I don't have to care so much any more.

                                J Offline
                                J Offline
                                Joe Woodbury
                                wrote on last edited by
                                #25

                                Because someone uses a tool wrong does not invalidate the tool. Moreover, it doesn't make an alternate tool automatically better. I'm not saying files are perfect, but once you glean through the alternatives, it holds up pretty well.

                                Phil Martin... wrote:

                                Make the tools reponsible for organising code into a history sensible way and let me look at it how I want.

                                The problem being that how you want must be divined and I know of no program capable of that. It's a bit like asking that a database simple reflect your desires. I do agree with the rich text idea; it's something I've proposed for years along with automatic formatting (especially as of late since my team lead uses a formatting style I have never seen elsewhere.) As for looking at code from a class perspective, it already exists. I've tried such tools and found they worked very poorly for how I program.

                                P 2 Replies Last reply
                                0
                                • J Joe Woodbury

                                  Because someone uses a tool wrong does not invalidate the tool. Moreover, it doesn't make an alternate tool automatically better. I'm not saying files are perfect, but once you glean through the alternatives, it holds up pretty well.

                                  Phil Martin... wrote:

                                  Make the tools reponsible for organising code into a history sensible way and let me look at it how I want.

                                  The problem being that how you want must be divined and I know of no program capable of that. It's a bit like asking that a database simple reflect your desires. I do agree with the rich text idea; it's something I've proposed for years along with automatic formatting (especially as of late since my team lead uses a formatting style I have never seen elsewhere.) As for looking at code from a class perspective, it already exists. I've tried such tools and found they worked very poorly for how I program.

                                  P Offline
                                  P Offline
                                  Phil Martin
                                  wrote on last edited by
                                  #26

                                  Joe Woodbury wrote:

                                  I'm not saying files are perfect, but once you glean through the alternatives, it holds up pretty well.

                                  Thats my dilemma right there. Files aren't prefect, I find them really really annoying. But they are absolutely the best option right now. It's not going to stop me wanting something better though :)

                                  Joe Woodbury wrote:

                                  The problem being that how you want must be divined

                                  I didn't say I wanted the software to mystically guess what I want, I want to be able to _tell_ it what I want. Your database analogy is perfect. Some people want the tables displayed this way, people want it other ways. I want that, but for code. Why should I be limited at looking at a set of functions in the order they are written? why not alphabeticaly? or not by date modified, why not by some other system? Why do I have to see them all. I view tour desire for automatic formatting as a subset of the bigger picture. You should be able to view the code in a way that makes sense to you, and when making changes shouldn't adversely effect the other users. That is one of the things that databases did for us.

                                  Joe Woodbury wrote:

                                  As for looking at code from a class perspective, it already exists. I've tried such tools and found they worked very poorly for how I program.

                                  I've had the exact same experience. Class focused editors are AWFUL. Blechy blech.

                                  P 1 Reply Last reply
                                  0
                                  • P Phil Martin

                                    Joe Woodbury wrote:

                                    I'm not saying files are perfect, but once you glean through the alternatives, it holds up pretty well.

                                    Thats my dilemma right there. Files aren't prefect, I find them really really annoying. But they are absolutely the best option right now. It's not going to stop me wanting something better though :)

                                    Joe Woodbury wrote:

                                    The problem being that how you want must be divined

                                    I didn't say I wanted the software to mystically guess what I want, I want to be able to _tell_ it what I want. Your database analogy is perfect. Some people want the tables displayed this way, people want it other ways. I want that, but for code. Why should I be limited at looking at a set of functions in the order they are written? why not alphabeticaly? or not by date modified, why not by some other system? Why do I have to see them all. I view tour desire for automatic formatting as a subset of the bigger picture. You should be able to view the code in a way that makes sense to you, and when making changes shouldn't adversely effect the other users. That is one of the things that databases did for us.

                                    Joe Woodbury wrote:

                                    As for looking at code from a class perspective, it already exists. I've tried such tools and found they worked very poorly for how I program.

                                    I've had the exact same experience. Class focused editors are AWFUL. Blechy blech.

                                    P Offline
                                    P Offline
                                    Phil Martin
                                    wrote on last edited by
                                    #27

                                    Wow, I just re-read my post, and oh my, I sound like a whiny teenager. I want this, I want that, I want my bottle, I want my lolly. Sorry! I think I'm getting crotchety in my old age.

                                    1 Reply Last reply
                                    0
                                    • J Joe Woodbury

                                      Because someone uses a tool wrong does not invalidate the tool. Moreover, it doesn't make an alternate tool automatically better. I'm not saying files are perfect, but once you glean through the alternatives, it holds up pretty well.

                                      Phil Martin... wrote:

                                      Make the tools reponsible for organising code into a history sensible way and let me look at it how I want.

                                      The problem being that how you want must be divined and I know of no program capable of that. It's a bit like asking that a database simple reflect your desires. I do agree with the rich text idea; it's something I've proposed for years along with automatic formatting (especially as of late since my team lead uses a formatting style I have never seen elsewhere.) As for looking at code from a class perspective, it already exists. I've tried such tools and found they worked very poorly for how I program.

                                      P Offline
                                      P Offline
                                      Phil Martin
                                      wrote on last edited by
                                      #28

                                      Joe Woodbury wrote:

                                      Because someone uses a tool wrong does not invalidate the tool.

                                      You really got me thinking with that. Because I know you're dead right, but something was missing. Because someone uses a tool wrong does not invalidate the tool, however if it is not possible to use a tool right, I think the tool is fundamentally flawed. That is my opinion on folder organisation for software development. I've not seen a folder organisation be useful for more than a couple of years. I don't know why, but at that point it stops being useful beyond a starting point for searching for code. Do I have a better implementation? no. Do I have better ideas? maybe, but probably not. Just because I can't think of something better doesn't mean the original tool is any good.

                                      Joe Woodbury wrote:

                                      Moreover, it doesn't make an alternate tool automatically better.

                                      Absolutely true - but it should never stop anyone from looking for better tools. I've done my fair share of renovation work, and finding better tools is always a good thing.

                                      1 Reply Last reply
                                      0
                                      • A AspDotNetDev

                                        Haha, a demo video of putting a tab on a second monitor? Seems a bit focused of a topic to have a demo video on, don't you think?

                                        [Forum Guidelines]

                                        D Offline
                                        D Offline
                                        Dan Neely
                                        wrote on last edited by
                                        #29

                                        And how many other obvious and trivial features has MS broken in this release?

                                        3x12=36 2x12=24 1x12=12 0x12=18

                                        1 Reply Last reply
                                        0
                                        • J Jim Crafton

                                          Kevin McFarlane wrote:

                                          You can drag stuff back in view I think and it's supposed to be able to elide text.

                                          That's part of my issue with this kind of thing. At the moment, writing code is generally typing stuff into an editor, it's based around text entry (for better or worse). Switching one hand to a mouse to reposition things quickly gets irritating, since it slows down your work flow. If something like this could be incorporated with a keyboard based work flow (using the mouse would be optional, just like it is when editing text), then you might have something interesting.

                                          ¡El diablo está en mis pantalones! ¡Mire, mire! SELECT * FROM User WHERE Clue > 0 0 rows returned Save an Orange - Use the VCF! Personal 3D projects Just Say No to Web 2 Point Blow

                                          M Offline
                                          M Offline
                                          Mark J Miller
                                          wrote on last edited by
                                          #30

                                          Not sure what to think of this either, but from watching the video it seems like keyboard-only navigation is supported. I'm not sure what the zoom shortcut is, but I imagine the flow is : 1) typing.... 2) hit zoom key 3) each bubble has a key assigned to it, just hit the key associated with the bubble you want I would hope there would be shortcuts for things like goto definition and find references as well, like there is in visual studio

                                          Code responsibly: OWASP.org Mark's blog: www.developMENTALmadness.com Bill Cosby - "A word to the wise ain't necessary - it's the stupid ones that need the advice."

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups