X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com Date: Sat, 15 Dec 2012 05:16:38 +0100 (CET) X-X-Sender: igor2 AT igor2priv To: geda-user AT delorie DOT com X-Debug: to=geda-user AT delorie DOT com from="gedau AT igor2 DOT repo DOT hu" From: gedau AT igor2 DOT repo DOT hu Subject: Re: [geda-user] Find rat lines In-Reply-To: <95896B46-44E5-40BA-AB8F-2A81E6073CAD@noqsi.com> Message-ID: References: <20121204183305 DOT 6b04c0dc AT jive DOT levalinux DOT org> <20121208112649 DOT 388a9d22 AT jive DOT levalinux DOT org> <1355011808 DOT 19390 DOT 8 DOT camel AT localhost> <1355188647 DOT 12937 DOT 14 DOT camel AT localhost> <201212140010 DOT qBE0ABjV023762 AT envy DOT delorie DOT com> <172CCAAB-0423-43EF-8A04-5A9961F1D5B9 AT noqsi DOT com> <201212140122 DOT qBE1MoKM019255 AT envy DOT delorie DOT com> <5AA18F19-2EA9-4E7D-9378-F768D8E1E5DD AT jump-ing DOT de> <50CB5D82 DOT 8060507 AT jump-ing DOT de> <201212141820 DOT qBEIKQDN005665 AT envy DOT delorie DOT com> <43147C45-75A5-4393-AB07-AFBFD7BD09BA AT noqsi DOT com> <95896B46-44E5-40BA-AB8F-2A81E6073CAD AT noqsi DOT com> User-Agent: Alpine 2.00 (DEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Reply-To: geda-user AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: geda-user AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Fri, 14 Dec 2012, John Doty wrote: > On Dec 14, 2012, at 4:18 PM, Britton Kerin wrote: > >> I find this really surprising, since for me pcb was the simple part of gEDA >> to learn. It was the combination of figuring out which attributes had to >> be set in gschem, how symbols and footprints connected together, and how >> the whole arrangement was propagated into pcb that was painful. > > But gschem is so easy to understand. Everything is accessible. Select a symbol, Hs, and you can see its construction down to the level of individual primitives. Primitives are simple things, pretty easy to understand. Modify any attribute. Add new attributes. Draw lines, text, whatever. Encapsulate arbitrary complexity in a symbol with hierarchy. Make it work for you. By the way, I have similar experience as Britton Kerin. I agree with John that the foundation of gschem is simple, but there are a lot of other things on top of gschem which make things more complicated. Understanding symbols and attributes was easy, but implications are not (heavy vs. light symbols, what do you need to do to get a heavy symbol off of VCC, 3 different attributes per pin, side effects of multiple components with the same refdes, slotting, the :1 for net names, etc). I still learn new side effects of attributes of combination of attributes even after using gschem for more than 6 years. Last time I tried spice simulation for the first time and while doing so learned new implications of attributes (not spice but geda related properties). I fully undertsand John's preference for strong foundation, I prefer that too; a minimal number of simple features from which the user can build whatever he wants. However, it doesn't always result in easier-to-learn tools, and PCB vs. gschem/gaf is a good example, at least in my case of some users. There are examples of all combinations of foundation vs. earning curve. Also, what one finds such an elegant minimalistic foundation and what one finds a hack may differ from user to user. One of my favorite examples is how awk handles function arguments: once you understand the calling convention (especially if you understand the stack), it's trivial and elegant. A simple trick solves the problem of variable number of arguments, optionally with default values (with some limitation) and local variables. Without introducing new syntax. Others, especially from OOP world find this an ugly hack and prefer to have an explicit syntax for each feature they find distinct. Just my offtopic 2 cents. Regards, Tibor