the feature was clearly the idea of someone who never did PCB layout in his life
This. This is the core problem in many, if not most applications.
When I create tools, or help others create better tools, observing and learning how people do it is the very first step. It is crucial. Then, if you have an user interface specialist or someone with enough analytical and observational skills, you can examine the process, and find ways to make it more efficient. Then, you design the interfaces needed for humans to efficiently do what they need to do, leaving enough extensibility so that you can enhance the tool when you get real world data on how it works, what works well, and what needs more effort.
Then you write the code. This works, but it takes a lot more time and effort than just writing out some software that can be marketed for the purpose.
It also kinda sorta explains why free/open source software can have so odd/crude interfaces. The developers create them for their own needs, their own use cases, and they often have learned the way to do it on their own, and may be far from the most efficient known workflows – but it works for them, and learning anything new is a chore that may not prove worth the effort, so...
I guess here is the difference between programming, computer science, and software engineering, eh?