News for hackers. Stuff that matters.
Re: by azhenley on Friday July 26, 2024 @06:47AM (#41077524)
I published a paper comparing navigation time with a canvas-based editor (Code Bubbles) vs. traditional tab-based editor (Eclipe) vs. a carousel-based editor (Patchworks, a tool I designed).

We found the canvas provided too much freedom.

https://austinhenley.com/pubs/Henley2014CHI_Patchworks.pdf

Re: by jacobsimon on Friday July 26, 2024 @08:04AM (#41077900)
This is cool - I haven’t really thought much about the spatial organization of my IDE before. Reflecting on it now, I realize I don’t even use the tabs in VS Code anymore because I have way too many files open. I just look at one file at a time, and when I need to switch I use Cmd-P to search or jump between recent files. Works well but requires me to keep the names of files/directories in my head all the time.
Re: by kalaksi on Friday July 26, 2024 @09:59AM (#41078727)
I mainly use ctrl-tab to switch between tabs for the same reason. Recently active tabs are first on the list so it's a fast way to switch between recent tabs. For not-recent tabs, I still don't use the tab bar but press ctrl-tab and then select a file using mouse in the ctrl-tab dialog (or just tabbing many times)
Re: by jacobsimon on Friday July 26, 2024 @12:17PM (#41079848)
Oh wow didn't know that existed. You should try cmd-p too! If you hold down Cmd and press P repeatedly, it acts like ctrl-tab, but you also have the option to search files at the top. I suppose you could remap it to ctrl-tab and then you'd get it for free.
Re: by jenscow on Friday July 26, 2024 @12:14PM (#41079817)
This is why I set a limit on the tabs in my IDE.
Re: by heresie-dabord on Friday July 26, 2024 @08:00AM (#41077873)
Tantalising research!

Is the source-code for the Patchwork editor publically available?

Re: by azhenley on Friday July 26, 2024 @09:15AM (#41078372)
My former PhD student has been porting it to VS Code.

https://github.com/CodeRibbon/CodeRibbon-Theia

Re: by fao_ on Friday July 26, 2024 @07:29AM (#41077719)
Interesting! Patchworks somewhat mirrors how I setup my Doom Emacs, with 4 - 6 panes of code, across multiple workspaces (which can be flipped between via SPC TAB (number)
Re: by fredamaral on Friday July 26, 2024 @07:01AM (#41077587)
amazing analysis. for me, either canvas- or carousel-based editor solves the mental issue of having to also load a significant amount of cognitive data all time you deal with very large codebases. (it also automatically require you to have a wide screen sufficient to make use of the tool properly).

only point here is to get used to deal with files on the horizontal, not vertically way of thinking, which is kind of rooted in the way we program first hello world.

Re: by Calzifer on Friday July 26, 2024 @09:07AM (#41078310)
> Based on our qualitative observations, participants’ long navigation times in Eclipse appeared largely due to time spent scrolling through files full of irrelevant code (as opposed to switching tabs), and failing to see the methods they wanted among that code.

> [...]

> Because users of Code Bubbles and Patchworks were able to open code at the granularity of methods, they had the advantage of never having to scroll through code to reach their navigation targets.

Have only read a bit of this paper but from this discussion over Eclipse it seem that the participants could be a lot more efficient if they used it more like an IDE than a multi-tab editor. Finding methods should be much less of an issue having an (alphabetically ordered) outline view.

Re: by akshaysg on Friday July 26, 2024 @09:28AM (#41078487)
This is super interesting. We have thought about having a grid vs a canvas, but decided to go with the canvas as we actually thought it was easier to navigate. I'd love to talk with you (I'll email you) if you're OK with that!