Live data from Hacker News

New IDE: code bubbles

cs.brown.edu

61–70 of 226 posts

Re: New IDE: code bubbles

#61

Earlier quoted context omitted.

Programming hasn't been about files for a long time now. That's the reason that we have IDEs in the first place, and why I cringe when people talk about writing code in a text editor. Any IDE worth its salt will do all the things in that video, except for the little draggable bubbles.

IDE's can be neat, but plenty of people seem to use them as crutches to keep on walking through minefields of APIs. Since the IDE remembers all your parameter sequences and types there is also less incentive for developers of APIs to think ahead of time and plan their interface so it is consistent and easy to remember.

I'd like to have a dollar for every time I've seen a NullPointerException on some line that was constructed by someone who loves the list of methods that automagically pops up for the dot operator:

  foo.bar().baz().qux()
...Grrrrr!

Re: New IDE: code bubbles

#62
post #9

I feel like the response has been fairly lukewarm, but to me this is some really nice (dare I say game-changing) stuff. Mindmap + IDE = great. Why? I have written in a variety of languages, and my number one complaint, whether it be with eclipse, textmate, vim, emacs, whatever, is the clumsiness of going from one file to another and then back to the original. Further, outside of actual development, when debugging, I…

[deleted]

Re: New IDE: code bubbles

#63
post #9

I feel like the response has been fairly lukewarm, but to me this is some really nice (dare I say game-changing) stuff. Mindmap + IDE = great. Why? I have written in a variety of languages, and my number one complaint, whether it be with eclipse, textmate, vim, emacs, whatever, is the clumsiness of going from one file to another and then back to the original. Further, outside of actual development, when debugging, I…

Without downplaying the possible effect of the presented technology, you really should not need to poke through to find stuff or use the mouse to move around...

Vim (or Emacs) along with ctags == awesome. Go to any definition, open file if it was not yet open. Buffer stacks, split windows.

Re: New IDE: code bubbles

#64
post #36

Earlier quoted context omitted.

I'm thinking this won't work so well for dynamic languages. The demo video is using a Java project.

Because not declaring the type of variables makes code not work with bubbles?

I think that because not having typing information makes it more difficult for the IDE to help you out.

Re: New IDE: code bubbles

#65
post #60

Earlier quoted context omitted.

Because not declaring the type of variables makes code not work with bubbles?

The demo is relying heavily on code navigation features that are only available to static language IDEs such as "Open Declaration", "Find All References", code completion, navigating object hierarchies, code outlines, inline docs, and other fancy code traversal techniques.

Take a look at Squeak. The Smalltalk folks have been doing this for a long time with the GUI utilities. SLIME is another dynamic environment that knows and can tell You much about itself.

Re: New IDE: code bubbles

#67
I'd like to see a mini map view, like in StarCraft, where you could select an area to instantly pan to that set of bubbles.

edit: ohh the top bar acts like that. Kinda cool. Very biased against vertical scrolling, which might be bad for certain kinds of files.

Re: New IDE: code bubbles

#68
post #61

Earlier quoted context omitted.

IDE's can be neat, but plenty of people seem to use them as crutches to keep on walking through minefields of APIs. Since the IDE remembers all your parameter sequences and types there is also less incentive for developers of APIs to think ahead of time and plan their interface so it is consistent and easy to remember.

I'd like to have a dollar for every time I've seen a NullPointerException on some line that was constructed by someone who loves the list of methods that automagically pops up for the dot operator: foo.bar().baz().qux() ...Grrrrr!

Try catching a block that does that is actually less code than a long set of conditionals. Granted it's basically saying:

  if (foo != null) if (bar.bar() != null) if (foo.bar().baz() != null) {
  ...
  worked = true;
  }
  if (false == worked ) {/*to do*/}
But, staying on the happy path until you can demo something is often useful. I think the problem is how you transition from demo to production worthy code.

Re: New IDE: code bubbles

#69

I'd like to see a mini map view, like in StarCraft, where you could select an area to instantly pan to that set of bubbles. edit: ohh the top bar acts like that. Kinda cool. Very biased against vertical scrolling, which might be bad for certain kinds of files.

It has a mini map on the top of the screen.

Re: New IDE: code bubbles

#70
post #60

Earlier quoted context omitted.

Because not declaring the type of variables makes code not work with bubbles?

The demo is relying heavily on code navigation features that are only available to static language IDEs such as "Open Declaration", "Find All References", code completion, navigating object hierarchies, code outlines, inline docs, and other fancy code traversal techniques.

These things are possible in dynamic languages with static analysis, it's just not as easy. (Oh, and if you write code that's unreadable, then the static analysis fails. But most people don't do that.)
Post reply on HN