Live data from Hacker News

New IDE: code bubbles

cs.brown.edu

71–80 of 226 posts

Re: New IDE: code bubbles

#73
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!

If only there was some combinator for sequencing computations... then you could write:

   foo >>= bar >>= baz >>= quux
and there would never be a NullPointerException, because the >>= function could react appropriately when null was encountered!

Re: New IDE: code bubbles

#74

I see how useful it could be, but I wonder if it would be good for me. So far I've tried to run in exactly the opposite direction: 1. not using mouse at all 2. concentrating on what needs to be done to what object ... not where I'm a heavy Vim user, so I'm relying on ctags / incremental searching / positions stack for a lot of work. This goes exactly the other way - click your way through to the point you want to get…

The thing that makes Vim Vim is just that its modal and has keyboard access for everything. You can get as fast on this as Vim if the right model is applied to the keyboard. Just look at Vimperator.

Re: New IDE: code bubbles

#75

Neat concept, the problem I see immediately as it assumes I am coding in Java. This would be fine if you worked in only one language. I work in several languages within an average day.

Hopefully the interface points are well-defined enough that you wouldn't need a view like this over the entire set of projects.

Re: New IDE: code bubbles

#76
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!

And thus, the Maybe monad was born.

Re: New IDE: code bubbles

#77
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!

You'd be starting the 'Pohl foundation for old programmers' from the proceeds before long, I gather.

Code like that is really common, and, unfortunately, so are blank 'catch' sections.

Re: New IDE: code bubbles

#78
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!

You know what's even better? When someone who writes that style of code (in C++, no less!) knows that one of the intermediate values could be null, so they use a set of macros involving setjmp and longjmp, and trap SIGFPE, all to implement a fragile sort of try/catch for null de-references.

Clever? Insane? Horribly un-portable and prone to breakage depending on compiler, libc, and OS versions? All of the above!

(And yes, I have seen this coding style used in multiple projects at a major corporation. It was a favorite of a coder-turned manager, which means it tended to sneak in on any project he supervised.)

Re: New IDE: code bubbles

#79
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…

> 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.

Yes, that was something bugged me for a long time so I wrote an Emacs package to fix it. http://breadcrumbemacs.sourceforge.net/

Re: New IDE: code bubbles

#80

I have an unfinished project where I was attempting something similar - I am going to throw it up on google code now and I guess put up a demo in case anyone is interested in the code. It's all just simple javascript/jquery proof of concept. You can see it here http://www.churchofturing.com/dragedit/dragedit.html and google code is http://dragedit.googlecode.com

Nice stuff! I just played around with it for a bit and it seems you have the basis of something interesting there, now for an application!
Post reply on HN