[Ktechlab-devel] A few more ideas

P Zoltan zoltan.padrah at gmail.com
Tue Jul 1 16:16:30 UTC 2008



   Hi everybody,

  I've been reading this list for only a few months. I'd like to share a  
few ideas about the project.

A. Site:

  First of all, my idea is that if the project can attract more people, the  
faster will get things done. For this, I think, it should be made easiest  
as possible for the people to join and help this project. The website  
would be the place where the community around this project is gathered.

  The biggest problem with the site is the static html part, with the big,  
empty "TODO" pages. Especially the "Get invlolved page". People might  
thing that this project is totally abandoned.

  Things that could be useful:

- documentation and guides: not only end-user docs, but also stuff like  
"how to start hacking on ktechlab"; from where can I get the 'big picture'  
of the project's souce code organisation and working? Also: what kind of  
tools are used to manage the source code?

- a forum: for some people it's easier to use a forum than to join the  
mailing list. Thus a forum is usually more ordered than a mailing list.

- bugtracker: there is a bugtracker on sourceforge, but I guess nobody  
uses it.

  Another question is: if someone would want to submit patches for  
ktechlab, where to submit it?


B. Technical part:

  About the greatest tehnical problem:
   A solution could be to implement the new parts with subcircuits, as it  
is done in SPICE. For each new part, the following would be needed:
    - the symbol and the possible interactive parts of the symbol  
(switches, scroll bars, buttons, maybe other stuff)
    - the equivalent subcircuit of the new part; the interactive elements  
could be modeled by a variable (for instance, the value of a scroll).
    - the parameters of the new part.
    For these to work, an intensive parametrisation is needed -- for  
example, we should be able to set the value of a resistance not only to 5k  
ohms, but also to A*B +C, where A,B,C are paremeters of a part / circuit.

    In this way only a minimal set of components should be implemented in  
C++ code, all the others could be drawn and stored in an xml file. I guess  
that would be easier to manage for everybody. The drawback of this  
implementation is the increased number of elments in the circuit -- if you  
see 10 elements in the circuit, actually there might be 20-30.

    For the digital part, VHDL and Verilog could be also used to implement  
components, and then reuse them.

    About the implementation: the base parts are mostly done; as far as I  
remember, a subcircuit stuff also exists; what needs to be implemented is  
the adding / removal of the part parameters and the evaluation of  
mathematic expressions.


  On long therm, a very important thing would be to make/keep the code base  
of the project maintainable.


    Zoltan
 




More information about the Ktechlab-devel mailing list