Hello,

I am new to PostgreSQL, but I am interested in the Win32 port.
I have studied the architecture of other databases like Oracle.

They have had to turn their multi-process model used on Unix into a fully
multi-threaded one on Win32. I have the feeling that they have had the same
debate that the one you have.

The CreateProcess() syscall is very costly on Windows. Some improvements
have been done in Windows XP but it is still far more costly than a Unix
fork().

I have been programming with threads on NT for a long time now.
They are quiet robust and efficient. I fear that it is the only successful
way to port PostgreSQL.

Sorry for this interruption,
Serge

-----Original Message-----
From: Jan Wieck [mailto:JanWieck@Yahoo.com] 
Sent: Tuesday, June 18, 2002 16:07
To: Dann Corbit
Cc: Bruce Momjian; Peter Eisentraut; PostgreSQL-development
Subject: Re: [HACKERS] Roadmap for a Win32 port

Dann Corbit wrote:
> 
> > -----Original Message-----
> > From: Bruce Momjian [mailto:pgman@candle.pha.pa.us]
> > Sent: Monday, June 17, 2002 6:20 PM
> > To: Dann Corbit
> > Cc: Jan Wieck; Peter Eisentraut; PostgreSQL-development
> > Subject: Re: [HACKERS] Roadmap for a Win32 port
> >
> >
> > Dann Corbit wrote:
> > > > > It will be at least another copy of the postmaster (dot exe).
> > > >
> > > > Yea, I just liked the idea of the postmaster binary
> > somehow reporting
> > > > the postmaster status.  Seems it is in a better position to
> > > > do that than
> > > > a shell script.
> > >
> > > Architectural notion:
> > > The Postmaster is about 100x bigger than it needs to be.
> > >
> > > The Postmaster needs to set up shared memory and launch servers.  It
> > > does not need to know anything about SQL grammar or any of that
> > > rigamarole.
> > >
> > > It could be a 15K executable.
> > >
> > > Why not have an itty-bitty Postmaster that does nothing but
> > a spawn or a
> > > create process to create threaded Postgres instances?
> >
> > Can't.  postmaster/postgres are symlinks to the same file,
> > and we fork()
> > from postmaster to create backends.  All the code has to be in the
> > postmaster so the fork works.
> 
> Is fork() faster than creation of a new process via exec()?  After the
> creation of the shared memory, the information needed to use it could be
> passed to the Postgres servers on the command line.

exec() does NOT create new processes. It loads another executable file
into the existing, calling process. 

fork() duplicates the calling process. In modern unix variants, this is
done in a very efficient way, so that the text segment (program code) is
shared readonly and everything else (data and stack segments) are shared
copy on write. Thus, fork() itself doesn't even cause memory copying.
That happens later when one of the now two processes writes to a memory
page the first time.

Windows does not have these two separate steps. It wants the full blown
expensive "create process and load executable", or the "let's all muck
around with the same handles" modell, called threading. 

> 
> The startup stuff for PostgreSQL is just a few files.  It does not seem
> insurmountable to change it.  But it is none of my business.  If it is a
> major hassle (for reasons which I am not aware) then I see no driving
> reason to change it.

It has to be changed for Windows, it is a major hassle for reasons I
wasn't aware of, and I am half way through ;-)


Jan

-- 

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#================================================== JanWieck@Yahoo.com #

---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org

Tue, 18 Jun 2002 18:42:33 +0200
Serge Adda <sAdda@infovista.com>
Re: Roadmap for a Win32 port

I know that Apache Group created special library to handle difference
between different platforms (including win32). They had similar problems
porting Apache to Windows. They build very portable threads api (win32,
POSIX, native Linux thread and more) There is also all IPC stuff (mutex,
signals mmap etc.) and many more. This functions work both on unix and
windows and use most effective implementation (e.g. POSIX functions on
Winodws are slow compared to native).

http://apr.apache.org/



-----Original Message-----
From: pgsql-hackers-owner@postgresql.org
[mailto:pgsql-hackers-owner@postgresql.org] On Behalf Of Serge Adda
Sent: Tuesday, June 18, 2002 6:43 PM
To: 'Jan Wieck'; 'Dann Corbit'
Cc: 'Bruce Momjian'; 'Peter Eisentraut'; 'PostgreSQL-development'
Subject: Re: [HACKERS] Roadmap for a Win32 port

Hello,

I am new to PostgreSQL, but I am interested in the Win32 port.
I have studied the architecture of other databases like Oracle.

They have had to turn their multi-process model used on Unix into a
fully
multi-threaded one on Win32. I have the feeling that they have had the
same
debate that the one you have.

The CreateProcess() syscall is very costly on Windows. Some improvements
have been done in Windows XP but it is still far more costly than a Unix
fork().

I have been programming with threads on NT for a long time now.
They are quiet robust and efficient. I fear that it is the only
successful
way to port PostgreSQL.

Sorry for this interruption,
Serge

-----Original Message-----
From: Jan Wieck [mailto:JanWieck@Yahoo.com] 
Sent: Tuesday, June 18, 2002 16:07
To: Dann Corbit
Cc: Bruce Momjian; Peter Eisentraut; PostgreSQL-development
Subject: Re: [HACKERS] Roadmap for a Win32 port

Dann Corbit wrote:
> 
> > -----Original Message-----
> > From: Bruce Momjian [mailto:pgman@candle.pha.pa.us]
> > Sent: Monday, June 17, 2002 6:20 PM
> > To: Dann Corbit
> > Cc: Jan Wieck; Peter Eisentraut; PostgreSQL-development
> > Subject: Re: [HACKERS] Roadmap for a Win32 port
> >
> >
> > Dann Corbit wrote:
> > > > > It will be at least another copy of the postmaster (dot exe).
> > > >
> > > > Yea, I just liked the idea of the postmaster binary
> > somehow reporting
> > > > the postmaster status.  Seems it is in a better position to
> > > > do that than
> > > > a shell script.
> > >
> > > Architectural notion:
> > > The Postmaster is about 100x bigger than it needs to be.
> > >
> > > The Postmaster needs to set up shared memory and launch servers.
It
> > > does not need to know anything about SQL grammar or any of that
> > > rigamarole.
> > >
> > > It could be a 15K executable.
> > >
> > > Why not have an itty-bitty Postmaster that does nothing but
> > a spawn or a
> > > create process to create threaded Postgres instances?
> >
> > Can't.  postmaster/postgres are symlinks to the same file,
> > and we fork()
> > from postmaster to create backends.  All the code has to be in the
> > postmaster so the fork works.
> 
> Is fork() faster than creation of a new process via exec()?  After the
> creation of the shared memory, the information needed to use it could
be
> passed to the Postgres servers on the command line.

exec() does NOT create new processes. It loads another executable file
into the existing, calling process. 

fork() duplicates the calling process. In modern unix variants, this is
done in a very efficient way, so that the text segment (program code) is
shared readonly and everything else (data and stack segments) are shared
copy on write. Thus, fork() itself doesn't even cause memory copying.
That happens later when one of the now two processes writes to a memory
page the first time.

Windows does not have these two separate steps. It wants the full blown
expensive "create process and load executable", or the "let's all muck
around with the same handles" modell, called threading. 

> 
> The startup stuff for PostgreSQL is just a few files.  It does not
seem
> insurmountable to change it.  But it is none of my business.  If it is
a
> major hassle (for reasons which I am not aware) then I see no driving
> reason to change it.

It has to be changed for Windows, it is a major hassle for reasons I
wasn't aware of, and I am half way through ;-)


Jan

-- 

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#================================================== JanWieck@Yahoo.com #

---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org

---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?

http://www.postgresql.org/users-lounge/docs/faq.html


Tue, 18 Jun 2002 22:50:16 +0200
"Marek Mosiewicz" <marekmosiewicz@poczta.onet.pl>
Re: Roadmap for a Win32 port
Le Mardi 18 Juin 2002 18:42, Serge Adda a écrit :
> I am new to PostgreSQL, but I am interested in the Win32 port.
> I have studied the architecture of other databases like Oracle.

Hello,

It seems clear that several teams are working without central point management 
and contact:

- W32 port: at least a Japase team, a PostgreSQL hacker team and a company are 
working separately. This makes three separate efforts for the most important 
project this year.

- Replication: development is slow although a lot of people would be 
interested in helping. But there is no central organization apart from the 
hackers-list.

- Web site: a www list is working on several issues. Is there a central design 
for all PostgreSQL site, like PHP does?

- Marketing: MySQL sucks and has a team of marketing sending junk technical 
emails and writing false benchmarks. Who is in charge of marketing at 
PostgreSQL? Where can I find a list of PostgreSQL features?

Personnaly, I agree with someone who wrote "Remember Betamax. It was the best 
technical standard, but it died for commercial reasons". I don't want 
PostgreSQL to be the next Betamax.

Some projects, like Debian, have a democratic organisation. The team leader is 
elected for a year. Why not settle a similar organization? This would help 
take decisions ... and not loose time on important issues.

PostgreSQL is a software but it is also a community. If we believe in 
democracy, I suggest we should organize in a democratic way and elect a 
leader for a year.

Just my 2 cents.
Cheers.
Jean-Michel POURE

Thu, 20 Jun 2002 12:01:53 +0200
Jean-Michel POURE <jm.poure@freesurf.fr>
Democracy and organisation : let's make a revolution in the Debian
 way
On Thu, Jun 20, 2002 at 12:01:53PM +0200, Jean-Michel POURE wrote:

> Some projects, like Debian, have a democratic organisation. The team leader is 
> elected for a year. Why not settle a similar organization? This would help 

 IMHO there is not problem with organization -- I don't know what do
 you want to organize on actual number of developers / contributors
 :-)
 
 The PostgreSQL is not project like Debian -- if you want to work on Debian 
 you must know package system and Debian standards only. But if you want to 
 work on PostgreSQL you must be at the least average programmer (means several 
 years experience) and you must know a great many of current PostgreSQL code.
 
> PostgreSQL is a software but it is also a community. If we believe in 
> democracy, I suggest we should organize in a democratic way and elect a 
> leader for a year.

 What is non-democratic now?

    Karel

-- 
 Karel Zak  <zakkr@zf.jcu.cz>
 http://home.zf.jcu.cz/~zakkr/
 
 C, PostgreSQL, PHP, WWW, http://docs.linux.cz, http://mape.jcu.cz

Thu, 20 Jun 2002 13:39:08 +0200
Karel Zak <zakkr@zf.jcu.cz>
Re: Democracy and organisation : let's make a revolution in the
	Debian way
Le Jeudi 20 Juin 2002 13:39, Karel Zak a écrit :
>  IMHO there is not problem with organization -- I don't know what do
>  you want to organize on actual number of developers / contributors

Dear Karel,

My previous e-mail points out several projects where, IMHO, a leadership would 
benefit the community at large :
- replication,
- W32 port,
- marketing (read the post "Read this and puke").

>  What is non-democratic now?

The current processes are based on discussion, and therefore are democratic. 
My proposal does not intend to change discussion processes between 
pgsql-hackers.

But, in order to face companies like MySQL AB, Oracle or Micro$oft, the 
community needs to take important decisions that will help team work. A 
clarified organization would help.

Please note I am not a PostgreSQL hacker myself, as I do not contribute code 
to PostgreSQL main sources. But, as an outside spectator, I would only like 
to point out that some efforts need coordination.

Debian is a very interesting example of Open-Source organization, as for all 
aspects linked to "decision making". Usually, at Debian, when a discussion is 
driven, a clear choice arizes after a limited time. Projects are sometimes 
slow, but always reach their goals.

As for current PostgreSQL organization, can someone explain me which W32 port 
will make its way to PostgreSQL main source code? Can someone publish a 
schedule for replication availability? Who is in charge of explaining newbees 
that MySQL InnoDB is just a marketing lie? What is the current PostgreSQL 
market share?

In other words, we should ask ourselves the question of PostgreSQL future 
organization. We come to point where PostgreSQL has equal chances to become 
the #1 database or die like Betamax.

Best regards to you all,
Jean-Michel

Thu, 20 Jun 2002 14:33:04 +0200
Jean-Michel POURE <jm.poure@freesurf.fr>
Re: Democracy and organisation : let's make a revolution in the
	Debian way
On Thu, Jun 20, 2002 at 02:33:04PM +0200, Jean-Michel POURE wrote:
> Le Jeudi 20 Juin 2002 13:39, Karel Zak a ďż˝crit :
> >  IMHO there is not problem with organization -- I don't know what do
> >  you want to organize on actual number of developers / contributors
> 
> My previous e-mail points out several projects where, IMHO, a leadership would 
> benefit the community at large :
> - replication,
> - W32 port,
> - marketing (read the post "Read this and puke").

 I understend you. I saw a lot of project and ideas, but it 
 _always_ depend on people and their time. You can organize, you can
 prepare cool planns, but don't forget -- in finale must somebody
 implement it. Who? I don't know method how clone Tom Lane or get
 money for others developers who can't full time work on PostgreSQL
 now.
  
> As for current PostgreSQL organization, can someone explain me which W32 port 
> will make its way to PostgreSQL main source code? Can someone publish a 

 If nobody -- you can test it, make it better and write something
 about it. If nobody works on some theme it means this theme is not
 important for now. BUT everybody can change it and everybody can 
 start work on arbitrary TODO item. It seems hard, but it's right :-)
 
    Karel

-- 
 Karel Zak  <zakkr@zf.jcu.cz>
 http://home.zf.jcu.cz/~zakkr/
 
 C, PostgreSQL, PHP, WWW, http://docs.linux.cz, http://mape.jcu.cz

Thu, 20 Jun 2002 15:05:59 +0200
Karel Zak <zakkr@zf.jcu.cz>
Re: Democracy and organisation : let's make a revolution in the
	Debian way
Jean-Michel POURE wrote:
> [...]
> As for current PostgreSQL organization, can someone explain me which W32 port
> will make its way to PostgreSQL main source code? Can someone publish a
> schedule for replication availability? Who is in charge of explaining newbees
> that MySQL InnoDB is just a marketing lie? What is the current PostgreSQL
> market share?

I think the first native Win32 port that gets contributet will make it.
So far I have seen a couple of people claiming the "have" a native Win32
port, not using CygWIN. But none of them was willing to contribute their
work.

There is no official "schedule" for any of the features. PostgreSQL is a
100% volunteer project, so people work on it if and when they feel the
need to AND have the time. Even if some of us do work on PostgreSQL at
their job, a few even fulltime, you will not see such commitments.

And why do you think InnoDB is a marketing lie? It bought MySQL a good
number of features, including row level locking, transactions and
limited foreign key support. Actually it stopped MySQL from yelling out
the FUD they told people far too long, like "transactions are useless
overhead" and "referential integrity is bad".


Jan

-- 

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#================================================== JanWieck@Yahoo.com #

Thu, 20 Jun 2002 09:08:20 -0400
Jan Wieck <JanWieck@Yahoo.com>
Re: Democracy and organisation : let's make a revolution in 
On Thu, 20 Jun 2002, Jean-Michel POURE wrote:

> Le Jeudi 20 Juin 2002 13:39, Karel Zak a écrit :
> >  IMHO there is not problem with organization -- I don't know what do
> >  you want to organize on actual number of developers / contributors
> 
> Dear Karel,
> 
> My previous e-mail points out several projects where, IMHO, a leadership would 
> benefit the community at large :
> - replication,
> - W32 port,
> - marketing (read the post "Read this and puke").
> 
> >  What is non-democratic now?
> 
> The current processes are based on discussion, and therefore are democratic. 
> My proposal does not intend to change discussion processes between 
> pgsql-hackers.
> 
> But, in order to face companies like MySQL AB, Oracle or Micro$oft, the 
> community needs to take important decisions that will help team work. A 
> clarified organization would help.

Jean,

Why on earth does this matter? Postgres will continue to be a good
database as long as developers and users cut code. It is not a
sufficiently complicated project to warrant too much concern about things
like this. Besides, a significant amount of the code committed to
Postgres is inspired by personal interest not obligation.

Gavin



Thu, 20 Jun 2002 23:17:16 +1000 (EST)
Gavin Sherry <swm@linuxworld.com.au>
Re: Democracy and organisation : let's make a revolution
Jean-Michel POURE <jm.poure@freesurf.fr> writes:
> As for current PostgreSQL organization, can someone explain me which
> W32 port will make its way to PostgreSQL main source code? Can someone
> publish a schedule for replication availability? Who is in charge of
> explaining newbees that MySQL InnoDB is just a marketing lie? What is
> the current PostgreSQL market share?

And an "elected leader" will make all this stuff clear exactly how?

If someone would like to step up and actually *do* that marketing work,
that'd be great.  Complaining that it's not being done is a waste of
list bandwidth.  Electing someone isn't going to magically make it
happen, either.

It does concern me that there seem to be several W32 porting efforts
going on without contact with each other or with the wider pghackers
community; but if they want to work that way, I don't think there's
much we can do to force them to come out in the open.

BTW, we do already have a recognized leadership group: the core
committee.  The committee members mostly prefer to lead by example
and by consensus, rather than trying to impose their will on others,
which is maybe why you hadn't noticed.

			regards, tom lane

Thu, 20 Jun 2002 09:22:53 -0400
Tom Lane <tgl@sss.pgh.pa.us>
Re: Democracy and organisation : let's make a revolution in the
	Debian way
Le Jeudi 20 Juin 2002 15:22, Tom Lane a écrit :
> BTW, we do already have a recognized leadership group: the core
> committee.  The committee members mostly prefer to lead by example
> and by consensus, rather than trying to impose their will on others,
> which is maybe why you hadn't noticed.

You are right. Leading by example and consensus is the way things work. If the 
committee can publish clear goals, there is no need to elect a leader.

Now I realize my concern is about project management. Do you think the 
committee could publish a project web page showing who works on what?

Someone willing to help on a projet would view the page and contact 
developpers more easilly. Presently, there is no clear knowledge who is 
working on the W32 port or on replication. Using a project page, there would 
be less chances to see new forks of particular projects (W32, replication).

This page would be accessible from the to-do-list. Conversly, the to-do-list 
would lead to the projects page.

Just my 2 cents.
Thanks to all of you who replied my mail.

Cheers,
Jean-Michel

Thu, 20 Jun 2002 16:00:04 +0200
Jean-Michel POURE <jm.poure@freesurf.fr>
Re: Democracy and organisation : let's make a revolution in the
	Debian way
On Thu, 2002-06-20 at 14:33, Jean-Michel POURE wrote:
> Le Jeudi 20 Juin 2002 13:39, Karel Zak a écrit :
> >  IMHO there is not problem with organization -- I don't know what do
> >  you want to organize on actual number of developers / contributors
> 
> Dear Karel,
> 
> My previous e-mail points out several projects where, IMHO, a leadership would 
> benefit the community at large :
> - replication,
> - W32 port,
> - marketing (read the post "Read this and puke").
> 
> >  What is non-democratic now?
> 
> The current processes are based on discussion, and therefore are democratic. 
> My proposal does not intend to change discussion processes between 
> pgsql-hackers.
> 
> But, in order to face companies like MySQL AB, Oracle or Micro$oft, the 
> community needs to take important decisions that will help team work. A 
> clarified organization would help.

In what way ?

Do you really think that if we would elect Tom or Bruce or someone else
"The President of the PostgreSQL Community" then their word would weight
more in mainstream press ?

> Please note I am not a PostgreSQL hacker myself, as I do not contribute code 
> to PostgreSQL main sources. But, as an outside spectator, I would only like 
> to point out that some efforts need coordination.
> 
> Debian is a very interesting example of Open-Source organization, as for all 
> aspects linked to "decision making". Usually, at Debian, when a discussion is 
> driven, a clear choice arizes after a limited time. Projects are sometimes 
> slow, but always reach their goals.

From an "outside spactator" perspective Debian seems to be really,
really slow.
 
> As for current PostgreSQL organization, can someone explain me which W32 port 
> will make its way to PostgreSQL main source code?

There is already one W32 port in main source (the one that uses cygwin).

IMHO the first native port that 
 a) works
 b) does not make *nix version slower/harder to maintain
and
 c) is submitted for inclusion will make it into main source.

> Can someone publish a schedule for replication availability?

I guess any of the teams working on different ways to replicate could do
it. Another question is if they can stick to it.

> Who is in charge of explaining newbees that MySQL InnoDB is just a
> marketing lie?

Nobody is "in charge", but everybody is welcome to do it, even without
being "elected" or "nominated ";)

Still, having a "success stories" or "advocacy" section on
www.postgresq.org seems like a good idea.

> What is the current PostgreSQL  market share?
>
> In other words, we should ask ourselves the question of PostgreSQL future 
> organization.

The current organization is "a loosely knit team" which seems to work
quite well.

> We come to point where PostgreSQL has equal chances to become 
> the #1 database or die like Betamax.

Open-source will probably work differently, i.e postgres will probably
not die even if it will not be #1.

----------------
Hannu

20 Jun 2002 16:06:24 +0200
Hannu Krosing <hannu@tm.ee>
Re: Democracy and organisation : let's make a revolution
Jean-Michel POURE wrote:
> Le Mardi 18 Juin 2002 18:42, Serge Adda a ?crit :
> > I am new to PostgreSQL, but I am interested in the Win32 port.
> > I have studied the architecture of other databases like Oracle.
> 
> Hello,
> 
> It seems clear that several teams are working without central point management 
> and contact:
> 
> - W32 port: at least a Japanese team, a PostgreSQL hacker team and a company are 
> working separately. This makes three separate efforts for the most important 
> project this year.

Funny you should mention that. I talked with three people on the phone
just yesterday in an attempt to get them together on the Win32 port.  I
have been hesitant to publicly try and join them together because they
haven't publicly stated if they are going to contribute their code
back to the project, or haven't been clear on _when_ they would
contribute it back.

My goal is to take the roadmap I posted on June 5, make a web page, and
get some agreement from the community on how to address each item:

	http://candle.pha.pa.us/cgi-bin/pgtodo?win32
. 
Then, the groups can know how we prefer to have things done, and if they
contribute back quickly, the other projects can benefit from their work,
and we _don't_ get conflicting Win32 implementations contributed back to
the project.

> - Replication: development is slow although a lot of people would be 
> interested in helping. But there is no central organization apart from the 
> hackers-list.

I am on the replication mailing list:

	http://gborg.postgresql.org/project/pgreplication/projdisplay.php

That project is moving along, and hopefully they can merge their code
into the main tree so others can assist them.  Not sure what else we can
do.

> - Web site: a www list is working on several issues. Is there a central design 
> for all PostgreSQL site, like PHP does?
> 
> - Marketing: MySQL sucks and has a team of marketing sending junk technical 
> emails and writing false benchmarks. Who is in charge of marketing at 
> PostgreSQL? Where can I find a list of PostgreSQL features?

I skipped commenting on the marketing discussion because I was working
on a patch.  Probably our biggest problem compared to MySQL is that
MySQL is a single company behind a single database, while we have >4
companies behind PostgreSQL, and their thrust is promoting their company
rather than PostgreSQL itself.

While we have an excellent development team, we don't have a funded team
to go around to trade shows and write articles promoting PostgreSQL.  We
only have a very few people employed full-time with PostgreSQL, and it
usually takes a few full-time people to do just marketing.  Great Bridge
was really the only one to push PostgreSQL, and they are gone.

MySQL has such a team, and so does Oracle, and it helps.  Linux was in a
similar boat, with multiple companies behind Linux, and every one
promoting its own company rather than Linux itself.  We need large
PostgreSQL companies that promote themselves, and PostgreSQL along with
it.  Linux is in the same boat, with distributors promoting themselves
and Linux along with it.


> Personnaly, I agree with someone who wrote "Remember Betamax. It was the best 
> technical standard, but it died for commercial reasons". I don't want 
> PostgreSQL to be the next Betamax.

I thought the problem with Betamax was that Sony controlled the
standard, and other companies didn't like that.


I am always looking for more ideas in these areas.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Thu, 20 Jun 2002 12:09:35 -0400 (EDT)
Bruce Momjian <pgman@candle.pha.pa.us>
Re: Democracy and organisation : let's make a revolution in
...
> MySQL has such a team, and so does Oracle, and it helps.  Linux was in a
> similar boat, with multiple companies behind Linux, and every one
> promoting its own company rather than Linux itself.  We need large
> PostgreSQL companies that promote themselves, and PostgreSQL along with
> it.  Linux is in the same boat, with distributors promoting themselves
> and Linux along with it.

Right. That may have slowed down the trade press recognition of Linux,
but in the end Linux has risen into view by popular demand and acclaim.

PostgreSQL has a similar opportunity and can succeed on a similar path.
We do have a superior technical solution, we have a superior open-source
support system, and we have (imho :) a superior development model and
development team open to new contributions and innovation.

The basis is there for success into the future, and at some point we
will get a lot for a little effort on marketing. Other products
bootstrap themselves by marketing early and often. And to the detriment
of the technical side.

                   - Thomas

Thu, 20 Jun 2002 09:23:18 -0700
Thomas Lockhart <lockhart@fourpalms.org>
Re: Democracy and organisation : let's make a revolution in
Jan Wieck wrote:
> Jean-Michel POURE wrote:
> > [...]
> > As for current PostgreSQL organization, can someone explain me which W32 port
> > will make its way to PostgreSQL main source code? Can someone publish a
> > schedule for replication availability? Who is in charge of explaining newbees
> > that MySQL InnoDB is just a marketing lie? What is the current PostgreSQL
> > market share?
> 
> I think the first native Win32 port that gets contributet will make it.

This line bothers me.  With multiple people working on Win32, I would
like us to decide how we would _like_ such a port to be implemented. I
think this will assist those working on the project to _know_ that their
work will be accepted if submitted.

Also, I encourage people working on Win32 ports to contribute their work
_as_ the complete each module, rather than as one huge patch.  That way,
other Win32 porters can benefit from their work and maybe we can get
this done in 1/2 the time.

What I don't want to happen is two Win32 projects contributing duplicate
code at the same time.  It is a waste when they could have combined
their efforts.

So, my message to Win32 porters is to communicate what you are doing,
including implementation details, and contribute back as soon as you
can.  If you don't, someone else may beat you to it, and your patch may
be rejected, leaving you to either scrap your work or continually port
your changes to every future PostgreSQL release.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Thu, 20 Jun 2002 12:31:46 -0400 (EDT)
Bruce Momjian <pgman@candle.pha.pa.us>
Re: Democracy and organisation : let's make a revolution in
On Thu, 20 Jun 2002, Jean-Michel POURE wrote:

> As for current PostgreSQL organization, can someone explain me which W32
> port will make its way to PostgreSQL main source code?

Whichever one actually submits patches for review first that is deemed
acceptable for inclusion ... as its always been ...

> Can someone publish a schedule for replication availability?

Its available now, and has been for several months *shrug*  There is a
project called PgReplication that is Open Source (hopefully someone from
that camp will pop up) ... and PgSQL, Inc has several deployments of their
commercial replication out there now, with several more pending ...

In fact, all of our work has been based on the rserv code that is in
contrib, and that we released over (almost?) a year ago ... but I've seen
nobody actually try to build on it, altho its what we've extended and are
using sucessfully in production environments ...

> Who is in charge of explaining newbees that MySQL InnoDB is just a
> marketing lie?

You are ... and anyone else that asks about it / mentions it ...

> What is the current PostgreSQL market share?

If you can think of a method of calculating this, as there is no
'commercial licensing' involved, please let us know ... would love to find
out ... there have been several surveys about it, but, quite frankly,
without having some sort of 'licensing' required to use, there is zero way
of getting any *real* numbers on this ...

> In other words, we should ask ourselves the question of PostgreSQL
> future organization. We come to point where PostgreSQL has equal chances
> to become the #1 database or die like Betamax.

At this point in time, the current organization == future organization ...
you are putting a 'marketing effort' as being the responsibility of the
open source project, and using MySQL AB as a comparison ... MySQL AB is a
*commercial company*, as is PostgreSQL, Inc -and- SRA and several other
newcomers, all of whom are doing marketing in their own way, based on
budget and requirements for growth ...

The "developmental organization", which we are, has been successful for
the past 7 years now ... flame wars are minimal, as are disagreements ...
there are some patches that get rejected that those generating them are
disappointed about, but most of *them* just bounce back with improvements
based on what has been told to them as being unacceptable ... about the
only thing that *has* changed over the past 7 years is that our standards
are tightened up as we move from mainly fixing bugs/stability to improving
the server itself ...




Thu, 20 Jun 2002 14:15:31 -0300 (ADT)
"Marc G. Fournier" <scrappy@hub.org>
Re: Democracy and organisation : let's make a revolution
On Thu, 20 Jun 2002, Bruce Momjian wrote:

> Jan Wieck wrote:
> > Jean-Michel POURE wrote:
> > > [...]
> > > As for current PostgreSQL organization, can someone explain me which W32 port
> > > will make its way to PostgreSQL main source code? Can someone publish a
> > > schedule for replication availability? Who is in charge of explaining newbees
> > > that MySQL InnoDB is just a marketing lie? What is the current PostgreSQL
> > > market share?
> >
> > I think the first native Win32 port that gets contributet will make it.
>
> This line bothers me.  With multiple people working on Win32, I would
> like us to decide how we would _like_ such a port to be implemented. I
> think this will assist those working on the project to _know_ that their
> work will be accepted if submitted.

1. that is not accurate, as it won't necessarily be accepted if submitted
... its not like years ago when are standards were lax ... Jan is
perfectly accurate in his assessment of which will make it in, except for
omitting one point ... it has to meet our standards ... so, its more "the
first to contribute *and* meet our standards" ...

> Also, I encourage people working on Win32 ports to contribute their work
> _as_ the complete each module, rather than as one huge patch.  That way,
> other Win32 porters can benefit from their work and maybe we can get
> this done in 1/2 the time.

This is what should be done anyway ... I wouldn't even be so much worried
abou t"other Win32 porters" as much as trying to integrate that 'hugh
patch' at a later date, consiedering all the changes that go into our code
:)

> What I don't want to happen is two Win32 projects contributing duplicate
> code at the same time.  It is a waste when they could have combined
> their efforts.

IMHO, that is actually their problem ... without meaning to sound crass
about it, but its not like we haven't discussed it extensively here, and
openly ... hell, we've even tried to break down the whole project into
smaller components to make the whole easier to merge in :)

> So, my message to Win32 porters is to communicate what you are doing,
> including implementation details, and contribute back as soon as you
> can.  If you don't, someone else may beat you to it, and your patch may
> be rejected, leaving you to either scrap your work or continually port
> your changes to every future PostgreSQL release.

Agreed here ... and this doesn't just apply to Win32 porters ... there
have been *alot* of "big projects" worked on over the years that have been
implemented in pieces so that code-base doesn't diverge too much, making
patching difficult ... the last thing anyone should want is to work for a
few months to create a nice big patch to find out that what they have
"fixed" got yanked out of the code already :)



Thu, 20 Jun 2002 14:23:02 -0300 (ADT)
"Marc G. Fournier" <scrappy@hub.org>
First Win32 Contribution (Was: Re: Democracy and organisation
	: let's make a revolution in)
On Thu, 20 Jun 2002, Jean-Michel POURE wrote:

> Le Jeudi 20 Juin 2002 15:22, Tom Lane a �crit :
> > BTW, we do already have a recognized leadership group: the core
> > committee.  The committee members mostly prefer to lead by example
> > and by consensus, rather than trying to impose their will on others,
> > which is maybe why you hadn't noticed.
>
> You are right. Leading by example and consensus is the way things work. If the
> committee can publish clear goals, there is no need to elect a leader.
>
> Now I realize my concern is about project management. Do you think the
> committee could publish a project web page showing who works on what?

No ... cause nobody works on anything specific ... they work on what
appeals to them, as it appeals to them ...

> Someone willing to help on a projet would view the page and contact
> developpers more easilly. Presently, there is no clear knowledge who is
> working on the W32 port or on replication. Using a project page, there
> would be less chances to see new forks of particular projects (W32,
> replication).

If someone workign on the w32 port isn't willing to announce such on
-hackers, how do you think we'd get that information for a web page?  The
easiest way to 'contact developers' is to post to this list, and then you
don't restrict yourself to anyone one person, but everyone involved in teh
project ...

I think you are confusing a project on the scale of an operating system
with PgSQL ... an OS has to have someone at the top to make sure each
sub-package integrates well into the overall OS ... we *are* the
sub-package, and our "leaders" are essentially "our developers" ... we
have a core committee that consists of several of us that brought PgSQL
out of Berkeley and into the real world, but if you saw the archives for
that list, you woudln't see much, since we tend to try and keep all
discussions *on* -hackers ...


Thu, 20 Jun 2002 14:30:50 -0300 (ADT)
"Marc G. Fournier" <scrappy@hub.org>
Re: Democracy and organisation : let's make a revolution
On 20 Jun 2002, Hannu Krosing wrote:

> Nobody is "in charge", but everybody is welcome to do it, even without
> being "elected" or "nominated ";)
>
> Still, having a "success stories" or "advocacy" section on
> www.postgresq.org seems like a good idea.

Being worked on ... we are actually working on totally revamping and
cleaning up the web site(s) ...



Thu, 20 Jun 2002 14:32:28 -0300 (ADT)
"Marc G. Fournier" <scrappy@hub.org>
Re: Democracy and organisation : let's make a revolution
On Thu, 20 Jun 2002 12:09:35 -0400 (EDT)
"Bruce Momjian" <pgman@candle.pha.pa.us> wrote:
> Jean-Michel POURE wrote:
> > - Replication: development is slow although a lot of people would be 
> > interested in helping. But there is no central organization apart from the 
> > hackers-list.

Replication development is co-ordinated on the pgreplication-general
list which Bruce mentions below, not on -hackers. Any interested
developers should subscribe to it, read the relevant research papers
on Postgres-R, and contribute code.

As for the speed of development, I've started to contribute code recently,
and Darren Johnson (the main replication developer) says he should have some
free time soon -- there are also some other new developers interested in
the project. So while there was a period of inactivity, I think that progress
is now being made.

> I am on the replication mailing list:
> 
> 	http://gborg.postgresql.org/project/pgreplication/projdisplay.php
> 
> That project is moving along, and hopefully they can merge their code
> into the main tree so others can assist them.  Not sure what else we can
> do.

I can't make any claims about a schedule -- since everyone working on the
project is a volunteer, the only release goals I'd like to set are "when it's
ready". The code right now is pretty unstable, so I don't think it's appropriate
for the main CVS tree until we work it into better shape.

Cheers,

Neil

-- 
Neil Conway <neilconway@rogers.com>
PGP Key ID: DB3C29FC

Thu, 20 Jun 2002 14:22:39 -0400
Neil Conway <nconway@klamath.dyndns.org>
Re: Democracy and organisation : let's make a revolution in
"Marc G. Fournier" wrote:
> 
> On Thu, 20 Jun 2002, Bruce Momjian wrote:
> 
> > This line bothers me.  With multiple people working on Win32, I would
> > like us to decide how we would _like_ such a port to be implemented. I
> > think this will assist those working on the project to _know_ that their
> > work will be accepted if submitted.
> 
> 1. that is not accurate, as it won't necessarily be accepted if submitted
> ... its not like years ago when are standards were lax ... Jan is
> perfectly accurate in his assessment of which will make it in, except for
> omitting one point ... it has to meet our standards ... so, its more "the
> first to contribute *and* meet our standards" ...

Omitted point taken :-)

> > What I don't want to happen is two Win32 projects contributing duplicate
> > code at the same time.  It is a waste when they could have combined
> > their efforts.
> 
> IMHO, that is actually their problem ... without meaning to sound crass
> about it, but its not like we haven't discussed it extensively here, and
> openly ... hell, we've even tried to break down the whole project into
> smaller components to make the whole easier to merge in :)

The problem with this kind of project is that you have a big stumbling
block at the beginning, which has to be done before you can rollout and
integrate the help of developers scattered around the globe. This was
the case with the foreign key project, where the trigger queue and one
set of triggers where working, and then Stephan did all the others and I
forgot who else helped to do the utility commands and CREATE TABLE
syntax and tried to decrypt the SQL definitions? In the Windows port
case it is to get it as far that you at least can fire up a postmaster,
get past the startup process, connect to the database and do a few
queries before the thing blows up. Before this everybody has exactly the
same problem, "It doesn't startup", so the likelyhood of everyone
stomping over each others work every single night is about 99.9%!


Jan

-- 

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#================================================== JanWieck@Yahoo.com #

Thu, 20 Jun 2002 14:57:20 -0400
Jan Wieck <JanWieck@Yahoo.com>
Re: First Win32 Contribution (Was: Re: Democracy and 
Jan Wieck wrote:
> > > What I don't want to happen is two Win32 projects contributing duplicate
> > > code at the same time.  It is a waste when they could have combined
> > > their efforts.
> > 
> > IMHO, that is actually their problem ... without meaning to sound crass
> > about it, but its not like we haven't discussed it extensively here, and
> > openly ... hell, we've even tried to break down the whole project into
> > smaller components to make the whole easier to merge in :)
> 
> The problem with this kind of project is that you have a big stumbling
> block at the beginning, which has to be done before you can rollout and
> integrate the help of developers scattered around the globe. This was
> the case with the foreign key project, where the trigger queue and one
> set of triggers where working, and then Stephan did all the others and I
> forgot who else helped to do the utility commands and CREATE TABLE
> syntax and tried to decrypt the SQL definitions? In the Windows port
> case it is to get it as far that you at least can fire up a postmaster,
> get past the startup process, connect to the database and do a few
> queries before the thing blows up. Before this everybody has exactly the
> same problem, "It doesn't startup", so the likelyhood of everyone
> stomping over each others work every single night is about 99.9%!

Yes, but it doesn't prevent discussion.  I think open implementation
discussion will help.  I am suggesting this to everyone, not just Jan. 
I have been in private discussion with others too.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Thu, 20 Jun 2002 15:37:14 -0400 (EDT)
Bruce Momjian <pgman@candle.pha.pa.us>
Re: First Win32 Contribution (Was: Re: Democracy and  organisation:
On Thursday 20 June 2002 02:57 pm, Jan Wieck wrote:
> set of triggers where working, and then Stephan did all the others and I
> forgot who else helped to do the utility commands and CREATE TABLE
> syntax and tried to decrypt the SQL definitions?

Don Baccus?
-- 
Lamar Owen
WGCR Internet Radio
1 Peter 4:11

Thu, 20 Jun 2002 15:56:53 -0400
Lamar Owen <lamar.owen@wgcr.org>
Re: First Win32 Contribution (Was: Re: Democracy and
Jan Wieck wrote:
> 
> "Marc G. Fournier" wrote:
> >

...

> > IMHO, that is actually their problem ... without meaning to sound crass
> > about it, but its not like we haven't discussed it extensively here, and
> > openly ... hell, we've even tried to break down the whole project into
> > smaller components to make the whole easier to merge in :)
> 
> The problem with this kind of project is that you have a big stumbling
> block at the beginning, which has to be done before you can rollout and
> integrate the help of developers scattered around the globe. This was
> the case with the foreign key project, where the trigger queue and one
> set of triggers where working, and then Stephan did all the others and I
> forgot who else helped to do the utility commands and CREATE TABLE
> syntax and tried to decrypt the SQL definitions? In the Windows port
> case it is to get it as far that you at least can fire up a postmaster,
> get past the startup process, connect to the database and do a few
> queries before the thing blows up. Before this everybody has exactly the
> same problem, "It doesn't startup", so the likelyhood of everyone
> stomping over each others work every single night is about 99.9%!

It would be nice to also have it "fire up" under Windows CE as well ;-)

Mike Mascari
mascarm@mascari.com

Thu, 20 Jun 2002 15:58:17 -0400
Mike Mascari <mascarm@mascari.com>
Re: First Win32 Contribution (Was: Re: Democracy and

On Thu, 20 Jun 2002, Jan Wieck wrote:

> "Marc G. Fournier" wrote:
> >
> > On Thu, 20 Jun 2002, Bruce Momjian wrote:
> >
> > > This line bothers me.  With multiple people working on Win32, I would
> > > like us to decide how we would _like_ such a port to be implemented. I
> > > think this will assist those working on the project to _know_ that their
> > > work will be accepted if submitted.
> >
> > 1. that is not accurate, as it won't necessarily be accepted if submitted
> > ... its not like years ago when are standards were lax ... Jan is
> > perfectly accurate in his assessment of which will make it in, except for
> > omitting one point ... it has to meet our standards ... so, its more "the
> > first to contribute *and* meet our standards" ...
>
> Omitted point taken :-)
>
> > > What I don't want to happen is two Win32 projects contributing duplicate
> > > code at the same time.  It is a waste when they could have combined
> > > their efforts.
> >
> > IMHO, that is actually their problem ... without meaning to sound crass
> > about it, but its not like we haven't discussed it extensively here, and
> > openly ... hell, we've even tried to break down the whole project into
> > smaller components to make the whole easier to merge in :)
>
> The problem with this kind of project is that you have a big stumbling
> block at the beginning, which has to be done before you can rollout and
> integrate the help of developers scattered around the globe. This was
> the case with the foreign key project, where the trigger queue and one
> set of triggers where working, and then Stephan did all the others and I
> forgot who else helped to do the utility commands and CREATE TABLE
> syntax and tried to decrypt the SQL definitions? In the Windows port

Actually, IIRC Don did the triggers, and I did the utility commands/create
stuff, but the point is still the same.  (Made in the point of
historical accuracy since I don't want someone else's work to end up
getting attributed to me since that's unfair to them. :) )


Thu, 20 Jun 2002 14:58:54 -0700 (PDT)
Stephan Szabo <sszabo@megazone23.bigpanda.com>
Re: First Win32 Contribution (Was: Re: Democracy and 
Stephan Szabo wrote:

> Actually, IIRC Don did the triggers, and I did the utility commands/create
> stuff, but the point is still the same.  (Made in the point of
> historical accuracy since I don't want someone else's work to end up
> getting attributed to me since that's unfair to them. :) )

This is why I love this PostgreSQL Project. The honesty and
humbleness everyone is practicing. Who ever did what, together we
did a good job! Which other open source database has the full set
of referential actions and deferrability?


Jan

-- 

#======================================================================#
# It's easier to get forgiveness for being wrong than for being
right. #
# Let's break this rule - forgive
me.                                  #
#==================================================
JanWieck@Yahoo.com #

Thu, 20 Jun 2002 20:17:41 -0400
Jan Wieck <JanWieck@Yahoo.com>
Re: First Win32 Contribution (Was: Re: Democracy and
It could be helpful to create a mailing list just for this project,
since not all members of pg-hackers will/shall participate, and we
would probably flood this list quite a bit trying to figure out what
is the best way to implement a win32 port.  Just like the
pg-replication list, this new list would be project specific.

However, as an aside, I think the 'first best fit shall be commited'
approach is a _bad_ idea.  Everyone (whos interested in the port)
agrees with the basic goals, and we will get a working system much
faster if we all work on a single solution: And not try to race each
other.  
If the main pg developers do not want to bless a specific method/project
for the port, then the people interested should hash it out, before
hundreds of man-hours are wasted developing something that ends up not
being used.  Debuging-into existence is a bad idea, as the single-night
example hints at (wether intentionaly or not) - with a proper plan we
should be able to create unit tests that can prove whether the methods
choosen are functioning well before we ever get a fully working
postmaster.

~Jon Franz

Bruce Momjian wrote:

>Jan Wieck wrote:
>
>>>>What I don't want to happen is two Win32 projects contributing duplicate
>>>>code at the same time.  It is a waste when they could have combined
>>>>their efforts.
>>>>
>>>IMHO, that is actually their problem ... without meaning to sound crass
>>>about it, but its not like we haven't discussed it extensively here, and
>>>openly ... hell, we've even tried to break down the whole project into
>>>smaller components to make the whole easier to merge in :)
>>>
>>The problem with this kind of project is that you have a big stumbling
>>block at the beginning, which has to be done before you can rollout and
>>integrate the help of developers scattered around the globe. This was
>>the case with the foreign key project, where the trigger queue and one
>>set of triggers where working, and then Stephan did all the others and I
>>forgot who else helped to do the utility commands and CREATE TABLE
>>syntax and tried to decrypt the SQL definitions? In the Windows port
>>case it is to get it as far that you at least can fire up a postmaster,
>>get past the startup process, connect to the database and do a few
>>queries before the thing blows up. Before this everybody has exactly the
>>same problem, "It doesn't startup", so the likelyhood of everyone
>>stomping over each others work every single night is about 99.9%!
>>
>
>Yes, but it doesn't prevent discussion.  I think open implementation
>discussion will help.  I am suggesting this to everyone, not just Jan. 
>I have been in private discussion with others too.
>




Thu, 20 Jun 2002 20:22:27 -0400
Jon Franz <coventry@one.net>
Re: First Win32 Contribution (Was: Re: Democracy and  organisation:
Jon Franz wrote:
> It could be helpful to create a mailing list just for this project,
> since not all members of pg-hackers will/shall participate, and we
> would probably flood this list quite a bit trying to figure out what
> is the best way to implement a win32 port.  Just like the
> pg-replication list, this new list would be project specific.
> 
> However, as an aside, I think the 'first best fit shall be commited'
> approach is a _bad_ idea.  Everyone (whos interested in the port)
> agrees with the basic goals, and we will get a working system much
> faster if we all work on a single solution: And not try to race each
> other.  

I think we have to be involved to prevent chaos when those patches
arrive.

> If the main pg developers do not want to bless a specific method/project
> for the port, then the people interested should hash it out, before
> hundreds of man-hours are wasted developing something that ends up not
> being used.  Debuging-into existence is a bad idea, as the single-night
> example hints at (wether intentionaly or not) - with a proper plan we
> should be able to create unit tests that can prove whether the methods
> choosen are functioning well before we ever get a fully working
> postmaster.

Actually, don't we have a cygwin mailing list?  Seems that would be a
great location, except for the name.  Maybe Marc can close the list and
migrate them all to a new 'win32' list.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Thu, 20 Jun 2002 20:44:19 -0400 (EDT)
Bruce Momjian <pgman@candle.pha.pa.us>
Re: First Win32 Contribution (Was: Re: Democracy and  organisation:
On Thu, 20 Jun 2002, Bruce Momjian wrote:

> Jon Franz wrote:
> > It could be helpful to create a mailing list just for this project,
> > since not all members of pg-hackers will/shall participate, and we
> > would probably flood this list quite a bit trying to figure out what
> > is the best way to implement a win32 port.  Just like the
> > pg-replication list, this new list would be project specific.
> >
> > However, as an aside, I think the 'first best fit shall be commited'
> > approach is a _bad_ idea.  Everyone (whos interested in the port)
> > agrees with the basic goals, and we will get a working system much
> > faster if we all work on a single solution: And not try to race each
> > other.
>
> I think we have to be involved to prevent chaos when those patches
> arrive.
>
> > If the main pg developers do not want to bless a specific method/project
> > for the port, then the people interested should hash it out, before
> > hundreds of man-hours are wasted developing something that ends up not
> > being used.  Debuging-into existence is a bad idea, as the single-night
> > example hints at (wether intentionaly or not) - with a proper plan we
> > should be able to create unit tests that can prove whether the methods
> > choosen are functioning well before we ever get a fully working
> > postmaster.
>
> Actually, don't we have a cygwin mailing list?  Seems that would be a
> great location, except for the name.  Maybe Marc can close the list and
> migrate them all to a new 'win32' list.

Two different issues here ... a win32 port is different then the cygwin
issues ... also, I had suggested ages back creatin ga seperate list, but
was told that it would frustrate the effort ... so unless those that
disagreed with it in the first place have changed their mind, the
discussion of any porting effort to win32 should remain here ...



Thu, 20 Jun 2002 22:47:32 -0300 (ADT)
"Marc G. Fournier" <scrappy@hub.org>
Re: First Win32 Contribution (Was: Re: Democracy and 