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

    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
                                • 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
                                  Jason Christian
                                  wrote on last edited by
                                  #31

                                  Freakin' awesome. I love the idea - if only they had it for C#. Everyone else posting seems to either hate the idea or think it only applies at a small scale, but for me, I'm constantly moving around my source file - up to the properties, down to some methods, etc. This would allow me to create bubbles of the sections I'm working on so I can just focus on those areas, without all the scrolling navigation. And while it would require some screen real estate, high resolution monitors are fairly cheap these days (just picked up a 25" monitor for <$200), and are well worth it for the productivity increase (bubbles or no bubbles). As to the complaints about large methods not fitting in the bubbles - large methods are generally frowned upon in the OO world anyway, aren't they?

                                  K 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

                                    M Offline
                                    M Offline
                                    Michael J Collins
                                    wrote on last edited by
                                    #32

                                    I couldn't watch more than a minute of that video. The guys voice felt like satan licking my brain. But I do like the idea. My brain kinda works that way, so I can see that helping with development, especially on large projects.

                                    Michael J. Collins

                                    1 Reply Last reply
                                    0
                                    • J Jason Christian

                                      Freakin' awesome. I love the idea - if only they had it for C#. Everyone else posting seems to either hate the idea or think it only applies at a small scale, but for me, I'm constantly moving around my source file - up to the properties, down to some methods, etc. This would allow me to create bubbles of the sections I'm working on so I can just focus on those areas, without all the scrolling navigation. And while it would require some screen real estate, high resolution monitors are fairly cheap these days (just picked up a 25" monitor for <$200), and are well worth it for the productivity increase (bubbles or no bubbles). As to the complaints about large methods not fitting in the bubbles - large methods are generally frowned upon in the OO world anyway, aren't they?

                                      K Offline
                                      K Offline
                                      Kevin McFarlane
                                      wrote on last edited by
                                      #33

                                      I think it's one of those tools where I would have to try it and see how I got on. I could imagine that there would be some scenarios at least where this would be useful, even if not a complete replacement for the IDE as it exists right now.

                                      Kevin

                                      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

                                        M Offline
                                        M Offline
                                        Mark Miller
                                        wrote on last edited by
                                        #34

                                        Dan Neely wrote:

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

                                        There is a video that demonstrates multi-monitor support - as well as can be demostrated in a video w/o using a camcorder. http://msdn.microsoft.com/en-us/vstudio/ee958386.aspx[^] This video demonstrates several of the new IDE enhancements provided by Visual Studio 2010, including Intellisense Completion Mode, Highlight References, Quick Search (and Navigate To), Generate From Usage, Zoom Box Selection, Call Hierarchy, Search Breakpoints, Thread Windows grouping & searching, and Multi-monitor support. The multi-monitor demo starts at ~11:40 into the video, but the entire video is worth watching, imho.

                                        Sincerely, -Mark mamiller@rhsnet.org

                                        1 Reply Last reply
                                        0
                                        • T TheGreatAndPowerfulOz

                                          looks interesting, and I'd have to try to use it for a while in "real life" to judge accurately. But, my first impression is that it would get to be a pain to use and would cause a lot of "spaghetti-code" and coding of methods with too-short of lines. Plus a lot of screen real estate is devoted to the white-space between the bubbles and the "bubble" borders. Not a good use of screen real estate. Still an intriguing idea.

                                          Fight Big Government:
                                          http://obamacareclassaction.com/
                                          http://obamacaretruth.org/

                                          R Offline
                                          R Offline
                                          Richard Osafo
                                          wrote on last edited by
                                          #35

                                          I agree. the best way is to use it in an actual development. Hope it works as well as it looks.

                                          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