[os-infrastructure] The infrastructure
Joe Abbate
joseph.abbate at ingres.com
Tue Jun 10 10:51:00 PDT 2008
Hi Andrew,
Andrew Ross wrote:
> Now we have a place where they can download code. We've automated
> setting up an dbms instance to make it one command. We've done work to
> make the tests run on any machine rather than just our internal
> machines. We have a public bug tracker, code browser, list of projects
> posted, etc. We're working on ensuring our code builds on major
> community platforms such as Fedora, Ubuntu, MacOS, etc. All of this is
> work that needed to be done independent of what our policy becomes. Do
> you agree?
>
It is unclear to me whether it *had to be done* or it *had to be done
right now*, particularly as I have yet to see any clear pronouncement
from senior management as to what they envision Ingres' role in the open
source and free software world is to be (it may have been expressed or
even be written somewhere, but in that case it has failed to register in
people's minds, or we wouldn't be having these arguments back and forth).
The only directives I have seen, expressed in this list, are "spend 10%
of your time in community work" and "engineer in the open."
IMHO, Ingres Corporation is somewhat atypical of open source companies.
If you look at say the top 30 projects by stack popularity at
http://www.ohloh.net/projects, you'll find maybe only a couple that are
directly controlled by a for-profit company. Most projects are
"staffed" by individuals working on their own free time, on the time of
non-profit foundations (created explicitly by the projects), or on
sponsoring-company time. The latter is when a for-profit company tells
an employee he or she can spend a substantial amount of company-paid
time (30% or more) on the FOSS project. Usually, the sponsoring company
provides services related to the project software so allowing that work
on company time is in lieu of contributing funds to the foundation or
project organization. However, the companies typically do not
simultaneously "sell" the software under a license that forbids the
client to "modify or create derivative works" or "reverse-engineer ...
or attempt to derive the source code". IMO, this requires walking a
fine line and I hesitate to make assumptions as to what senior
management would like to see happen or how soon it should happen.
Personally, I have long advocated that we should commit to Subversion
and Trac, and more recently that we move to autoconf/automake instead of
Jam (and now I'm biased towards Mercurial), but I have also realized
that these changes could be quite disruptive. I've also advocated that
Ingres code be Standard C compliant (e.g., use prototypes and proper
header inclusion everywhere), but I realize that even a small change
like doing away with our own definition of NULL takes time and
consensus, not because people think it's bad, but because of the impact
on live codelines.
Take for example the bug tracker, which you scored as a D- for being
mostly private (presumably referring to Bugs). Originally, as some have
pointed out, we used to have Bugs, Calltrack and a client front-end
called Advisor. At CA, we had to endure Startrak (in 3270 terminals or
emulators) and later Service Desk, but we kept Bugs. We now have
Service Desk (which AFAIK can be used by non-paying customers), the
internal Bugs, and Trac at bugs.ingres.com, and because of the latter
you think we now rate as a B. That may be OK from the standpoint of the
"community", but from a process viewpoint, we now have three different
issue and defect trackers which are not tied together. Whenever a
customer (paying or otherwise) or QA raises an issue in SD, and we
determine it's a bug, we have to open a bug in Bugs and indicate the
issue number. Then when we submit a fix through Piccolo, fortunately
there's an automated process that marks the bug as SUBM in Bugs, but (if
we want to keep our sanity) most of us have to update the SD issue with
the bug number and change number. With a third system in the picture
(Trac), which is a combination of issue tracker and defect tracker, what
are we supposed to? Some may argue that it's OK that community
issues/defects be kept separate from paid customer defects/issues, but
when someone looks for a problem, they would have to search in at least
two places.
Joe
More information about the opensource-infrastructure
mailing list