inconsistencies
there a many commands that have similar input strategies, but behave different.
(of course - because they where developed at a different time, by different person, in a different context… but this makes it hard to teach)
_blendSrf vs _bridge
blendSrf will finish selection of first edge as soon as it is closed
bridge will need an enter / space to finish first edge selection.
bridge behaves different on pre-selection (you can select both edges) …
_extrudeCrv vs. _offset vs _box (and some more)
_extrudeCrv reacts on mouse position even for a pure keyboard input.
_offset does not finish without mouseclick
_box and _rectangle allow a pure +/- keyboard input (which is great)
_railrevolve vs _sweep1
_railrevolves asks for shape first, then for rail (the command is call railrevolve, not revolveAlongRail)
_sweep1/2 ask for rail first
commands while active / while dialog poped up allow different level of interaction with viewport / c-planes / layers / nested calls of other commands
… and a lot more…
nerdyness / tec background vs. direct access / result orientation
at some level rhino demands a lot of technical background - a great example are all the join, weld, merge stitch align… commands depending on type / technical detail. (It would be great to have a single _smartGlue command).
… on the other hand rhino now removes self-intersections for _revolve or gives an error for selfintersections of _extrudeCrv or does not allow to _insertPoint (or _insertEdge ?) on a subD in smooth mode.
I don t have a final answer for this challenge between those different approaches - but I think a lot of energy in the learning path is sucked by distinguishing between commands / workflows where you need a lot of expert knowledge vs. commands where most stuff is decided by Rhino.
constraints
I would love to see sketches / constraints, not (only) for a technical reason but to be able to teach this concept. My students must also be enabled to switch to other CAD software fast - for example if they get hired by a company that does not use Rhino.