Read more about the new default menu file , that
is probably the biggest UI change we had in pcb-rnd so far.
1. Dislike it as a user?
If you don't like it as a user, you have the option to use a custom
menu file (e.g. the old menu file). But this will make your life harder on
the long run:
- you will need to maintain your menu file as new features appear
- makes communication with others harder; e.g. when you are reporting bugs
with a recipe, you can't assume anybody else uses your menu file so you
will need to reproduce them using the default menu file or have to
translate in your bugreport; or when you are reading documentation, you
will find references only to the default key bindings and menu file so you
will need to translate to your own
2. Whether our existing users will be unhappy with the switch
- I am worried too, but I've been planning and promoting this switch for
some time and basically this is the last moment we can do it (we are
getting into RPM based distros, we are releasing 2.0.0, our number of
installations is constantly growing - delaying the switch more would only
affect more users)
- so far, from our hard-core power user team I got generally positive
feedback, so as far as I could sample it, our users like the change
- we did have a poll about this before I started and that showed the same:
more voters agreed with the change than opposed it
- once you have more than 5 users, it's impossible to make decisions that
everybody agrees with. It is important to not do things that everybody
hates, but we shouldn't block progress just because of our old habits.
(And I am saying this while still struggling with panning - still clicking
the wrong mouse button 2+ days after the switchover, lol)
3. How new users will learn it
- the original modifier based single-stroke setup became a hell to learn;
it was probably easy when PCB had 20 key combinations, but with 100+, it's
just a mess. And we literally ran out of keys. Which finger do you bite:
remove some strange "nobody knows what it is for" binding and make the 4
users of that feature rage or not add key bindings for important new
features and make new users wonder why the least used/important features
have key bindings instead?
- I spent some time looking around in other EDA tools in the past few
years, for various reasons. The multi-key approach is not unique to
pcb-rnd. As far as I can tell protel/autotrax and altium both use the same
concept. So our target audience is either already familiar with this, or
generally have no problem learning it.
- I also figured that aside of the new wave of mainly web2.0 based stuff
targeting the arduino crowd, every single EDA (and generally CAD) package
has a "non-standard" UI in one way or another. Our target audience is
advanced UNIX hackers, not windows/web2.0 users. We code for engineers,
not secretaries, we don't need to copy the UI of excel. So I am not
worried that meeting new concepts will scare them. I was more worried
about meeting a "historical mess that accumulated over decades and we are
too weak to fix it" kind of menu would drive them away.
4. How geda/pcb users will switch
I think who haven't switched from geda/pcb so far will not ever switch.
We'll have the 5th anniversary of pcb-rnd this year. If 5 years was not
enough, 10 or 20 won't be either. I think they most probably won't switch
unless geda/pcb dies and they are forced to switch because of bit rot a
few years after that
- if that happens, I expect majority of them will be two kind of
switchers: those who realize they need to learn something new and will use
this opportunity to learn something super-popular at that time (e.g. kicad
today) for the sake of "everyone uses that so it must be good"; and those
who hope to get something that's 100% geda/pcb just under a different
name, so they can go on doing their thing without learning anything new.
pcb-rnd is neither of those, so they will need to re-learn the tool
anyway. The menu system doesn't make much difference in this.
- I think during the years I promoted pcb-rnd on geda-user@, I made one
thing clear: pcb-rnd improves a lot over the original code base, which
also means differing a lot. This inevitable means the later you switch
from geda/pcb to pcb-rnd, the further we got, thus the steeper the
learning curve is. The only way to avoid this would be to avoid UI changes
and stand still, preserve 2011, waiting for everyone to switch before we
start coding. That's not our strategy since 2016, and when that was
our strategy for three years, the same people didn't switch either -
that strategy didn't work. So in short: who haven't switched so far are
most probably not our target audience, so I am not worried whether they
will find the menu change making their (non-happening) switch harder.
- geda/gschem uses a similar system of keys, and geda/pcb has little
practical use without gschem so I am sure geda users are familiar with the
concept; the only hassle for them will be learning the actual key combos.
- I do not have exact statistics, and the geda-user@ mailing list is
really hard to search. If my memory doesn't fail, I've seen many emails
requesting geda/pcb to learn gschem-like multi-stroke key bindings and
only a very few that asked gschem to switch to alt+ctrl+shift keys. Which
seems to support our direction even among our non-users.