tbfleming / jscut

In-browser CAM package
http://jscut.org
GNU General Public License v3.0
295 stars 136 forks source link

Progressively disclose windows #11

Open peteruithoven opened 9 years ago

peteruithoven commented 9 years ago

Let's start with the fact that I think your tool is great. I'm involved with a Fablab for years and this is what I and the visitors have been waiting for. I want to do some small ui improvement suggestions through the issue queue, let me know if that's not okay. I've done the same to help improve VisiCut, which is opensource lasercut control software. See for example: https://github.com/t-oster/VisiCut/issues/71

One thing that's very important with these kind tools is Progressive disclosure. The basic idea is that you only disclosure complexity when it's appropriate, in a progressive way. This keeps it simple for beginners while still have all the tools for powerusers.

A very simple way to implement this in jscut would be to have some less used windows (like Curve To Line Conversion and Gcode Conversion) closed by default. You can even implement some kind of more / less functionality. A quick example: window-editing

tbfleming commented 9 years ago

The issue queue is a good place for UI suggestions.

I agree with some progressive disclosure, but it will need some additional reorganization to work well. e.g. "Make all mm" and "Make all inch" are probably frequently used. The offsets in Gcode Conversion helped solve frequent "my machine is going the wrong way" questions. I'm uneasy with More/Less; it reminds me of the endless chain of dialogs Microsoft keeps piling on.

peteruithoven commented 9 years ago

I understand the hesitation, it's very easy to fall into a simple/advanced pitfall.

peteruithoven commented 9 years ago

I do want to clarify why it won't be like Windows, because it's a foldout system. Beginners start with a few options and powerusers can have everything on their screen. We could even store these as preferences in localSettings.