On Feb 7, 2008 7:07 PM, al davis <
ad151@xxxxxxxxxxxxxxxx> wrote:
On Thursday 07 February 2008, Newell Jensen wrote:
> So would you be the main "overseer" for the Project Manager
> or only if it dealt in some way with xgsch2pcb?
As Peter said, that is between you and all of us.
> Who would be
> the main design architect for this
You!!!
Well said. I like it when people get to the point.
To do it right, it is a very difficult project. Several others
have tried and failed. What is needed is a framework that can
be expanded as the system grows. If you design it around the
tools we have now, it will fail. We need it designed around
the "vapor" tools we don't have yet, and what is in the works
and not released yet.
I already thought of this and I totally agree.
It's not just schematic and board layout! We have simulation,
both analog and digital. On the fringes, there are people
working on synthesis, electromagnetic simulation of boards,
static timing analysis. Another step away there are a bunch of
tools that are not really gEDA but are available now as
free/open-source.
A good project manager will accomodate all this. I think it
means you need to start from scratch.
Yes, you are probably right.
> and has anyone come up
> with a design for how they want the work flow to be
> abstracted?
No.
> If not, was the student supposed to come up with
> this?
Yes. We will help you, or at least try.
That is good, I will definitely need it.
There has been some debate about it, but no decisions. The
decisions are made by the person doing the work. The rest of
us can express an opinion, but the real decision is yours.
> I am willing to start looking at the source of the
> different projects and seeing how to interface them but if
> someone has already done a lot of the brain work on this
> already and /or there is a set preference among the gEDA user
> base to have it a certain way, that would be useful
> information.
I think most people here agree that it must remain extremely
flexible. Give users a choice of how to work, and what tools
to use or not use. It should be able to really support the
tools, not just a subset of the features. Then think of what
it would take to make it suitable for undergraduates.
The best architecture would be one that allows others to make
extensions. It is probably easiest if you use an interpreted
language. Speed is not a factor, so there is no need for a
compiled language. Writing in an interpreted language makes it
easier to extend, and to distribute experimental modules.
The only real requirement that might restrict your choice of
language is licensing and portability. The whole set of tools,
including compilers, etc. must be truly free, and easily
available on multiple platforms.
I will use Python and PyGTK. Its supported on all the major platforms that I know of and is perfect for all of this.
> The first main step is to figure out a design
> that would be worth while with most of the kinks thought out.
> Since this was already a proposed project for GSoC 2007 has
> this part been worked on by anyone? Thanks.
No, but even if it has, you have no obligation to use it.
If you can come up with a design that can be extended to do all
this, that will be more than anyone else has been able to do
with this. That will be plenty for a summer. The extensions
can come later.
I am going to do some brainstorming about some possible plans of attack and will get back to the list and bounce my ideas off of you guys.