On Wed, Sep 10, 2014 at 06:54:13PM +0100, Tim Hutt wrote: > 1. Good software has a manual. Great software doesn't need one.
OK, then try set correctly some FPGA timing constraint without reading the manual:D Even with all the good explanatory drawing you'll get nowhere without the underlying theory :P Office suites are more or less similar to each other (because they do the same things and actually copy one from another). EDA (and CADs in general) are radically different both in capability and how they do things... in some you have padstacks, in others flexible layers, in some the footprint is tied to the component, in others there is a distinct annotation step; there are netclasses, DRC rules, someone has DRC rules *between* netclasses... Zuken has a component for each fscking resistor value in each tolerance in each package so they can boast millions of component in the library. Word processors have margins/bold/italic/underline *all of them*. LaTeX doesn't :D Ok, that's not fair, it's more like saying "write a program in Pascal without reading the instructions"... > 2. Even complex software like CAD and EDA can be made so usable it rarely > requires a manual. Solidworks is a great example. They have clearly put a > lot of effort into making it user friendly. Something is user friendly only if there is a standard and conventional way of doing things. For office suites for example, that's the one explained in the ECDL books... what if you have a word processors which is *not* based on the ECDL style? (Wordperfect comes to the mind, but it's not *so* different... yet is the only program which can format correctly on italian legal paper). However you *fail* the exam if to cut you use shift-del or the right click menu instead of doing menu/edit/cut. I don't know if that's a good thing... User expectations are also somewhat different sometimes... mainframe users are used to scroll with F7/F8 (it's a long story). We had to do javascript to make the browser scroll with these keys. Too bad that you couldn't intercept the right control key alone (it's the enter key for these people). And user codes must always be of no more than 12 numeric digits (no letters) since *everyone* used to note them on the desk calculator :D In the same way if you take an autocad user and give him, say, ME10 (I forgot the name it has these days) he wouldn't even know how to draw a line... in fact the so called 'user friendly' cad programs are usually autocad clones (because many users expects that kind of interface, *not* because autocad is intuitive...) > 3. You *can* learn well-designed programs by clicking around in the > interface. It's what most people do (obligatory: https://xkcd.com/627/ ) OK; do a click interface for all the features of emacs. I dare you :D Easier: take all the commands of an HP-48 calculator. It's something like 4MB of software. Even if there are menus (and lot of them) they had to put a catalog (CAT key:D) for finding stuff (and it's actually one of the best way to use it... the best one is creating your own menu); by the way to make the HP-49 more 'user friendly' they made it start in algebraic mode; *everyone* as first thing asked how to put it in RPN. If you can learn all of them this way then there is too much UI or too few features, IMHO. Or it's completely broken like LabView :D > b) Qt "WhatsThis?" buttons. They are better than tooltips IMO because > they are obviously there, and they more strongly suggest that the developer > has actually written something useful (not something like "The mangler > button. If clicked it activates the mangler. See help for more."). Something like the big buttons I talked about. It's documentation after all. > Signpost, when you first run Kicad. There could be periodic different hints > (and an option to disable them altogether of course). Do you know someone that actually reads them? :D I think that for starting up the best way would be some hands-on tutorial, working on some prepared file... the inkscape one are cute too (they did the tutorial in the program itself... so you have a page with like, some example circles and a space aside to practice drawing circles and instructions above explaining the procedure. In the same way we could make something like a board with a pair of components and text beside explaining how to draw tracks and such. The full details are of course still in the manual (see section # for complete rules and so on). -- Lorenzo Marcantonio Logos Srl _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : [email protected] Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp

