kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #03414
Re: Re: Launchpad: Mea maxima culpa
Mateusz wrote:
I've been hesitating whether write this or not, but I want to spell out this questions.
Mateusz,
Thank you for proceeding with your questions. I'm glad you did, and
your candor is helping us identify weaknesses in the project
infra-structure. (Actually more like confirm them, but valuable
none-the-less.) I'm not sure why you hesitated though.
If yes, this is actually counter-productive in my view, since we don't
actually have a democracy here. (A democracy or a republic requires a
constitution.) Given the circumstances, IMO, votes should be weighted
in proportion to the size of the respective contributions of each
voter. Otherwise it is like allowing folks to vote who have not paid
taxes, and that doesn't seem to work too well, since they just vote
themselves money. It is also not a meritocracy, where according to
wikipedia, reward is according to talent. As of now, it is simply a
system which respects the value of past contributions.
In my view Jean-Pierre by far would get the heaviest vote. But I
suspect that if he saw there was widespread support for something which
was not going to adversely affect him, that he would not go out of his
way to oppose it.
Project History:
Jean-Pierre, like most of us, is very busy. He has said in the past
that writing English takes a bit of time for him. So when he does
write, we all tend to listen as closely as possible, and when he does
not write, we try to read his mind. Seriously.
Originally going back a few years ago now, I think he was reluctant to
even put the source code into a repository. He had simply been putting
out source code archives along with binaries, and doing all development
himself. That is about 3 years ago. I think he could have been content
to simply issue his own contributions forever. I was the main driver on
getting the code into a repository where others could contribute. I
think I even threatened to fork the project. In the end, I won, and
Jean-Pierre came on board. I don't like to assert that kind of muscle,
but I had invested a lot into Kicad design files, and felt trapped. The
price I pay for that now is that I owe Jean-Pierre as much effort as I
can to make his life as comfortable as it was before. I don't think he
wants to arbitrate political bickering and spent 2 hours per day on a
mailing list. I am a native English speaker and I am doing what I can
to make this work, all the while being respectful of what Jean-Pierre
might want. Up until recently, the only way to get write access to the
repository was through Igor Plyatov. Now I can do that as well. The
two of us are sourceforge admins for this project. Search for Igor's
last posting on this mailing list, and you will understand why I felt we
needed more help at the admin level, particularly on the development
side of things (this additional help is still ramping up). Igor has
done a great job on the documentation side of things and initial website
setup. But in his last posting he said he was not even using Kicad
anymore. (Igor, correct me if I mis-state anything.)
I have owned a software company for 26 years, still do, and I operate as
CTO even today, still doing software development and software
management. This is a very difficult software resume to match,
especially when you see what we have actually accomplished. In
contrast, I will not claim to be especially knowledgeable about hardware
development. Wayne is also a very experienced software developer AND
contributor. And there are still others who have untold experience, but
have limited time to spend being chatty on a mailing list. And
Jean-Pierre continues to contribute prolifically, keeping us debtors and
him a creditor.
So the project is very equipped to move forward, were we to be able to
organize the contributions. And this brings us back to your questions,
and your final statement, which says that you are discouraged because
you do not know how to proceed. In a posting last week, I raised the
same concern: "attracting, retaining, and organizing additional
developers".
I do agree that democracy is not a good option in such a project.
The problem is I am totally new here. I don't know anyone from "high command" yet I want to contribute. I want to ask you some questions about this project:
1. To become a member of the kicad-devel group I was ask to write what I would like to contribute. If I were accepted does it mean that I have a green light to do what I planned?
Define "member of the kicad-devel group":
A person who contributes is a member. Contributions can be:
documentation, library parts, opinions, patches, design ideas. Usually
design ideas and opinions come in higher volume than patches, and the
rate limiting factor is patches. Patches can be posted on this
mailing list as attachments, or they can be written into the repository
proving a person has write access. The most valuable patches are those
that are first discussed on the mailing list, as "design ideas", even
before the patches are written. Then we know to expect them, and to
"support" them. A member who does not have write access is especially
advised to get some feedback on his/her design idea before investing in
a large patch. Patch quality is always a concern. Until we know a
member's ability to contribute quality patches, there should be no write
access given. But even after receiving write access, a member should
use the mailing list to state his intentions in advance, if for no other
reason than to avoid a collision or overlap of effort.
2. If not, with whom should I consult my ideas? If we don't have democracy, asking questions on mailing group is useless.
Not true. It is working this very moment.
Maybe I should write direct emails to Jean-Pierre. If he has the heaviest vote, then I need only his approval?
He will probably not answer, but you are welcome to try.
3. If not, could anybody tell me what is the "chain of command" here. Or whom should I bother with my ideas?
Talk to the list please. Everyone has their own preferences, and ranks
the various issues with varying sort orders of importance. One of my
higher ranking issues is code quality and conformance. I might not
concern myself with something else, which I rank as being of lesser
importance. Generally you should interpret silence as acceptance.
Others may have important issues, and will voice them. Still others
just like to hear themselves talk, or may want a feature, but will have
no idea how to code it. So for example, let's say you propose
something that is a don't care to the top developers, and you hear next
to nothing about your idea. I would say that this gives you green light
to proceed with a patch. Then attach it to a posting on this list.
Keep your patches compatible with the output of uncrustify using our
uncrustify.cfg file. And if it is a major rework, feel free to submit
incremental work along the way. We will know soon how good you write
code, and can give you write access sooner than later if your work is
good quality.
I do agree, that it is a good policy, not to give new developers access to SVN.
Thank you for understanding this. And it shows you have some sense
about you.
But I want to do something. So maybe you should organise some groups working under supervision of "old" developers? I just feel that I am running out of my enthusiasm...
Well hang in there. Use this list for now. We are in the process of
reviewing a number of ways to better track design ideas, patches, bug
reports, enhancement requests.... We have three choices that I see
right now:
1) Keep things the same.
2) Add "Trac" to our existing site (move off of Tracker) and have Trac
sit on top of one of distributed VCSs.
3) Move to launchpad.
Hope this helps, not only you, but anybody else with similar
confusion. Clearly it is not practical to write a posting like this
everytime this question is asked. I just spent 1/2 hour doing it,
ouch. Some of this should go on a wiki page I guess.
Dick
Follow ups
References