Index: trunk/doc/developer/archive/20160101_cschem.html =================================================================== --- trunk/doc/developer/archive/20160101_cschem.html (nonexistent) +++ trunk/doc/developer/archive/20160101_cschem.html (revision 5637) @@ -0,0 +1,68 @@ + + +

pcb-rnd devlog

+ +

cschem

+ +Cschem is a project I plan to start within the next few years. It's goals +and some design concepts are similar to gschem's and geda's, while it +also breaks some traditions in order to fix shortcomings in the design of geda. It's +named after gschem, not after geda, to emphasize that the editor needs to +be connected more to the rest of the system (see details later). +

+Some concepts cschem will try to follow (marking with * where there's major +difference to geda): +

+ + +

+There are a lot of open questions: +

+ Index: trunk/doc/developer/archive/design_proc.html =================================================================== --- trunk/doc/developer/archive/design_proc.html (nonexistent) +++ trunk/doc/developer/archive/design_proc.html (revision 5637) @@ -0,0 +1,132 @@ + + +

sch-rnd - design process

+ +

Terminology

+ + + +

Design document edition process

+ + +

+The process is public and is done on the cschem mailing list and in cschem svn. + +

+A graphical representation from a contributor's point of view: +

+ +

+A succesful contribution moves along the green lines, first from top down +then fed back to the design proc and moves from left to right reaching +the implementation. Actions among the red lines won't affect or change cschem. + +

The debate

+The debate must be constructive and limited to the scope of the current +section as much as possible. Users should: + +

+In other words, the debate should first focus more on what needs to +be solved than how exactly it is solved. If a contributor doesn't +like an implementation proposal, (s)he should provide use cases +to prove the implementation proposal is weak. An alternative +implementation proposal should try to handle all (or at least most) +use cases. +

+Cschem is a complex system - suggestions and demands will contradict each other +or the availabel programmer resources or project goals. In such situations +a decision has to be made, which inevitably leads to valuing some ideas, +suggestions or demands higher than others or even ignoring some requests. +Although the sheer crowd behind a given suggestion matters, the decision +process is not democtratic: the final word is Igor2's. + + +

Policies

+ +

+In case of contradiction (e.g. between use cases), we need to +differentiate between the priority of use cases. There are +abstract, generic policies that may help in that. + +

Index: trunk/doc/developer/archive/howto_contrib.html =================================================================== --- trunk/doc/developer/archive/howto_contrib.html (nonexistent) +++ trunk/doc/developer/archive/howto_contrib.html (revision 5637) @@ -0,0 +1,48 @@ + + +

sch-rnd - howto contribute

+ +Any contribution is valuable. However, any contribution costs too, not +just for the contributor but for the community: the time to read it, test +it, maintain it, etc. In the best contribution the cost/benefit ratio is +strongly biased toward the benefit. This howto gives a few pointers how +this cost/benefit ratio could be improved. + + + +

Do's

Dont's

+ +
+
    +
  • focus: if the current design process is about aspect foo, please don't + write long essays on how aspect bar is affected unless it's absolutely + necessary to understand how foo is affected. +
  • split things up; if there are 4 sections of a design doc you have + comments about, please start 4 separate thread for them. +
  • proper referencing; if your comment is about a specific section, use + the section label (e.g. "{des1:4}") for reference. If the whole mail + or thread is about such a section, best put the reference in the subsect. +
  • concentrate on what problem we need to solve, not on which + technology is used in the solution; e.g. "we want this part to + be user scriptable" is a good consideration; "we want this part + to be written in lua" is a bad one. +
  • Generally speaking: distinguish between design and implementation details. + Focus on the design. +
+ + +
+
    +
  • Avoid sending a single huge mail commenting every second line of a + chapter: that will be very hard to handle for everyone else. + Avoid writing verbose, especially about "background information"; + please try to keep text as short as possible. +
  • Please don't get stuck on an implementation detail; it's impossible + to design cschem to 100% match everybody's preference on every little + detail. If it matches only 70%, please live with it for now, if the + design is strong, it will be easy to provide alternatives later. +
  • Do not hijack threads; if you want to steer the discussion in another + direction, it's okay to reply to a mail in a thread, but please do + change the topic so people know it's a new (sub)thread. +
+
Index: trunk/doc/developer/archive/proc.svg =================================================================== --- trunk/doc/developer/archive/proc.svg (nonexistent) +++ trunk/doc/developer/archive/proc.svg (revision 5637) @@ -0,0 +1,154 @@ + + + + + + +process + + +design + +design document + + +code + +code + + +design->code + + +implementation + + +contrib + +YOUR +contribution: +suggestions +ideas + + +design->contrib + + +read the spec; +run the model +in your head + + +happy + +(happy) +end + + +code->happy + + + + +start + +start + + +start->design + + +download +the spec + + +diff + +sieve +change- +suggestions +ideas + + +contrib->diff + + +send mail +to list + + +edit + +translate the +change suggestion into +an svn commit + + +diff:w->edit + + +explicit +suggestions + + +devnull + +thank you, +was a nice reading + + +diff:e->devnull + + +anything else + + +invis1 + + +diff:s->invis1 + + +edit:w->design:w + + +svn +commit + + +notify + +change notification +on the mailing list +within 24 hours + + +edit->notify + + + + +nonot + +(no notification) + + +devnull->nonot + + + + +end + +end + + +nonot->end + + + + + Index: trunk/doc/developer/archive/src/Makefile =================================================================== --- trunk/doc/developer/archive/src/Makefile (nonexistent) +++ trunk/doc/developer/archive/src/Makefile (revision 5637) @@ -0,0 +1,4 @@ +all: ../proc.svg + +../proc.svg: proc.dot + dot -Tsvg proc.dot > ../proc.svg Index: trunk/doc/developer/archive/src/proc.dot =================================================================== --- trunk/doc/developer/archive/src/proc.dot (nonexistent) +++ trunk/doc/developer/archive/src/proc.dot (revision 5637) @@ -0,0 +1,33 @@ +digraph process { + + { + rank=same + design [shape=box label="design document"] + code [shape=box label="code"] + happy [label="(happy)\nend" style=rounded shape=box] + } + + start [label="start" style=rounded shape=box] + contrib [label="YOUR\ncontribution:\nsuggestions\nideas" color=lightgreen style=filled] + diff [shape=diamond label="sieve\nchange-\nsuggestions\nideas"] + edit [shape=box label="translate the\nchange suggestion into\nan svn commit"] + notify [shape=box label="change notification\non the mailing list\nwithin 24 hours"] + devnull [shape=box label="thank you,\nwas a nice reading"] + nonot [shape=box label="(no notification)"] + end [label="end" style=rounded shape=box] + invis1 [width=2 style=invisible] + + start -> design [label="download\nthe spec" weight=100 color=green] + design -> contrib [label="read the spec;\nrun the model\nin your head" weight=100 color=green] + design -> code [label="implementation" color=green] + code -> happy [color=green] + contrib -> diff [label="send mail\nto list" weight=100 color=green] + diff -> edit [weight=20 label="explicit\nsuggestions" tailport=w color=green] + diff -> devnull [weight=20 label="anything else" tailport=e color=red] + edit -> design [label="svn\ncommit" headport=w tailport=w color=green] + edit -> notify + devnull -> nonot [color=red] + nonot -> end [color=red] + diff -> invis1 [weight=1000 tailport=s style=invisible arrowhead=none] + +} Index: trunk/doc/plans/proc.svg =================================================================== --- trunk/doc/plans/proc.svg (revision 5636) +++ trunk/doc/plans/proc.svg (nonexistent) @@ -1,154 +0,0 @@ - - - - - - -process - - -design - -design document - - -code - -code - - -design->code - - -implementation - - -contrib - -YOUR -contribution: -suggestions -ideas - - -design->contrib - - -read the spec; -run the model -in your head - - -happy - -(happy) -end - - -code->happy - - - - -start - -start - - -start->design - - -download -the spec - - -diff - -sieve -change- -suggestions -ideas - - -contrib->diff - - -send mail -to list - - -edit - -translate the -change suggestion into -an svn commit - - -diff:w->edit - - -explicit -suggestions - - -devnull - -thank you, -was a nice reading - - -diff:e->devnull - - -anything else - - -invis1 - - -diff:s->invis1 - - -edit:w->design:w - - -svn -commit - - -notify - -change notification -on the mailing list -within 24 hours - - -edit->notify - - - - -nonot - -(no notification) - - -devnull->nonot - - - - -end - -end - - -nonot->end - - - - - Index: trunk/doc/plans/design_proc.html =================================================================== --- trunk/doc/plans/design_proc.html (revision 5636) +++ trunk/doc/plans/design_proc.html (nonexistent) @@ -1,132 +0,0 @@ - - -

sch-rnd - design process

- -

Terminology

- - - -

Design document edition process

- - -

-The process is public and is done on the cschem mailing list and in cschem svn. - -

-A graphical representation from a contributor's point of view: -

- -

-A succesful contribution moves along the green lines, first from top down -then fed back to the design proc and moves from left to right reaching -the implementation. Actions among the red lines won't affect or change cschem. - -

The debate

-The debate must be constructive and limited to the scope of the current -section as much as possible. Users should: - -

-In other words, the debate should first focus more on what needs to -be solved than how exactly it is solved. If a contributor doesn't -like an implementation proposal, (s)he should provide use cases -to prove the implementation proposal is weak. An alternative -implementation proposal should try to handle all (or at least most) -use cases. -

-Cschem is a complex system - suggestions and demands will contradict each other -or the availabel programmer resources or project goals. In such situations -a decision has to be made, which inevitably leads to valuing some ideas, -suggestions or demands higher than others or even ignoring some requests. -Although the sheer crowd behind a given suggestion matters, the decision -process is not democtratic: the final word is Igor2's. - - -

Policies

- -

-In case of contradiction (e.g. between use cases), we need to -differentiate between the priority of use cases. There are -abstract, generic policies that may help in that. - -

Index: trunk/doc/plans/20160101_cschem.html =================================================================== --- trunk/doc/plans/20160101_cschem.html (revision 5636) +++ trunk/doc/plans/20160101_cschem.html (nonexistent) @@ -1,68 +0,0 @@ - - -

pcb-rnd devlog

- -

cschem

- -Cschem is a project I plan to start within the next few years. It's goals -and some design concepts are similar to gschem's and geda's, while it -also breaks some traditions in order to fix shortcomings in the design of geda. It's -named after gschem, not after geda, to emphasize that the editor needs to -be connected more to the rest of the system (see details later). -

-Some concepts cschem will try to follow (marking with * where there's major -difference to geda): -

- - -

-There are a lot of open questions: -

- Index: trunk/doc/plans/src/proc.dot =================================================================== --- trunk/doc/plans/src/proc.dot (revision 5636) +++ trunk/doc/plans/src/proc.dot (nonexistent) @@ -1,33 +0,0 @@ -digraph process { - - { - rank=same - design [shape=box label="design document"] - code [shape=box label="code"] - happy [label="(happy)\nend" style=rounded shape=box] - } - - start [label="start" style=rounded shape=box] - contrib [label="YOUR\ncontribution:\nsuggestions\nideas" color=lightgreen style=filled] - diff [shape=diamond label="sieve\nchange-\nsuggestions\nideas"] - edit [shape=box label="translate the\nchange suggestion into\nan svn commit"] - notify [shape=box label="change notification\non the mailing list\nwithin 24 hours"] - devnull [shape=box label="thank you,\nwas a nice reading"] - nonot [shape=box label="(no notification)"] - end [label="end" style=rounded shape=box] - invis1 [width=2 style=invisible] - - start -> design [label="download\nthe spec" weight=100 color=green] - design -> contrib [label="read the spec;\nrun the model\nin your head" weight=100 color=green] - design -> code [label="implementation" color=green] - code -> happy [color=green] - contrib -> diff [label="send mail\nto list" weight=100 color=green] - diff -> edit [weight=20 label="explicit\nsuggestions" tailport=w color=green] - diff -> devnull [weight=20 label="anything else" tailport=e color=red] - edit -> design [label="svn\ncommit" headport=w tailport=w color=green] - edit -> notify - devnull -> nonot [color=red] - nonot -> end [color=red] - diff -> invis1 [weight=1000 tailport=s style=invisible arrowhead=none] - -} Index: trunk/doc/plans/src/Makefile =================================================================== --- trunk/doc/plans/src/Makefile (revision 5636) +++ trunk/doc/plans/src/Makefile (nonexistent) @@ -1,4 +0,0 @@ -all: ../proc.svg - -../proc.svg: proc.dot - dot -Tsvg proc.dot > ../proc.svg Index: trunk/doc/plans/howto_contrib.html =================================================================== --- trunk/doc/plans/howto_contrib.html (revision 5636) +++ trunk/doc/plans/howto_contrib.html (nonexistent) @@ -1,48 +0,0 @@ - - -

sch-rnd - howto contribute

- -Any contribution is valuable. However, any contribution costs too, not -just for the contributor but for the community: the time to read it, test -it, maintain it, etc. In the best contribution the cost/benefit ratio is -strongly biased toward the benefit. This howto gives a few pointers how -this cost/benefit ratio could be improved. - - - -

Do's

Dont's

- -
-
    -
  • focus: if the current design process is about aspect foo, please don't - write long essays on how aspect bar is affected unless it's absolutely - necessary to understand how foo is affected. -
  • split things up; if there are 4 sections of a design doc you have - comments about, please start 4 separate thread for them. -
  • proper referencing; if your comment is about a specific section, use - the section label (e.g. "{des1:4}") for reference. If the whole mail - or thread is about such a section, best put the reference in the subsect. -
  • concentrate on what problem we need to solve, not on which - technology is used in the solution; e.g. "we want this part to - be user scriptable" is a good consideration; "we want this part - to be written in lua" is a bad one. -
  • Generally speaking: distinguish between design and implementation details. - Focus on the design. -
- - -
-
    -
  • Avoid sending a single huge mail commenting every second line of a - chapter: that will be very hard to handle for everyone else. - Avoid writing verbose, especially about "background information"; - please try to keep text as short as possible. -
  • Please don't get stuck on an implementation detail; it's impossible - to design cschem to 100% match everybody's preference on every little - detail. If it matches only 70%, please live with it for now, if the - design is strong, it will be easy to provide alternatives later. -
  • Do not hijack threads; if you want to steer the discussion in another - direction, it's okay to reply to a mail in a thread, but please do - change the topic so people know it's a new (sub)thread. -
-