Announce: GPL Framework centered on Postgres

Started by Kenneth Downsalmost 20 years ago23 messagesgeneral
Jump to latest
#1Kenneth Downs
ken@secdat.com

Hello folks,

My company has developed an application development framework that
targets PostgreSQL as its back-end, with PHP in the web layer.

We are inviting any early adopters who may wish to experiment to
download and install the code. You may contact me off-list with any
support or other questions.

Licensing is GPL.

The framework has already been used to deploy one largish (270+ tables)
public site. There is one smaller public site and one business
application under development now.

Because we have used it successfully, we consider it late beta for our
own use. However, we believe anybody else using it now would likely
find foibles that we are consciously or unconsciously avoiding, so that
it might be properly termed 'pre-alpha' for other users. This is why we
stress we are seeking 'early adopters'. If you like the features but
don't want to experiment, you may wish to wait. This is also why we are
offering support at this stage to the GPL project.

The overall framework is extremely heavy on automation of all kinds. It
is also heavy on the elimination of as much code as possible.

The main project site is here:

http://docs.secdat.com

#2Joshua D. Drake
jd@commandprompt.com
In reply to: Kenneth Downs (#1)
Re: Announce: GPL Framework centered on Postgres

Kenneth Downs wrote:

Hello folks,

My company has developed an application development framework that
targets PostgreSQL as its back-end, with PHP in the web layer.

We are inviting any early adopters who may wish to experiment to
download and install the code. You may contact me off-list with any
support or other questions.

Licensing is GPL.

Sounds great! But why GPL? Are you looking to sell licenses?

Joshua D. Drake

--

=== The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive PostgreSQL solutions since 1997
http://www.commandprompt.com/

#3Kenneth Downs
ken@secdat.com
In reply to: Joshua D. Drake (#2)
Re: Announce: GPL Framework centered on Postgres

Joshua D. Drake wrote:

Kenneth Downs wrote:

Hello folks,

My company has developed an application development framework that
targets PostgreSQL as its back-end, with PHP in the web layer.

We are inviting any early adopters who may wish to experiment to
download and install the code. You may contact me off-list with any
support or other questions.

Licensing is GPL.

Sounds great! But why GPL? Are you looking to sell licenses?

GPL is to spread it as far and wide as possible as fast as possible.

As is customary, GPL downloaders get no support, but folks who want a
closer relationship with us can pursue any avenue that is reasonable for
both of us. We can do complete development, as we do for our current
customers who know little and care less about the tools we use, or
training, consulting and so forth.

For corporate customers, it does not matter much whether you call it a
license or something else, some expenditures are made to support the
customer's effort and the customer is asked to provide the funds for
that. Call it consulting fees, call it licensing, call it training or
support, it is all the same thing.

We also anticipate a closed commercial license for the more stable
project, where the GPL project is the wide-open bleeding edge version,
but that is down the road and a full model will have to await further
developments.

#4David Fetter
david@fetter.org
In reply to: Kenneth Downs (#3)
Re: Announce: GPL Framework centered on Postgres

On Tue, May 16, 2006 at 04:02:36PM -0400, Kenneth Downs wrote:

Joshua D. Drake wrote:

Kenneth Downs wrote:

Hello folks,

My company has developed an application development framework that
targets PostgreSQL as its back-end, with PHP in the web layer.

We are inviting any early adopters who may wish to experiment to
download and install the code. You may contact me off-list with any
support or other questions.

Licensing is GPL.

Sounds great! But why GPL? Are you looking to sell licenses?

GPL is to spread it as far and wide as possible as fast as possible.

If that's your goal, consider the BSDL or similar. There are lots of
outfits where people are forbidden flat-out to get GPL code.

Cheers,
D
--
David Fetter <david@fetter.org> http://fetter.org/
phone: +1 415 235 3778 AIM: dfetter666
Skype: davidfetter

Remember to vote!

#5Joshua D. Drake
jd@commandprompt.com
In reply to: Kenneth Downs (#3)
Re: Announce: GPL Framework centered on Postgres

Sounds great! But why GPL? Are you looking to sell licenses?

GPL is to spread it as far and wide as possible as fast as possible.

LGPL?

My concern would be, I can't use this toolkit for a closed source
application if it is GPL.

That may be your intent (which I actually don't have a business problem
with), I was just curious as to your decision.

As is customary, GPL downloaders get no support, but folks who want a
closer relationship with us can pursue any avenue that is reasonable for
both of us. We can do complete development, as we do for our current
customers who know little and care less about the tools we use, or
training, consulting and so forth.

Sure.

For corporate customers, it does not matter much whether you call it a
license or something else, some expenditures are made to support the
customer's effort and the customer is asked to provide the funds for
that. Call it consulting fees, call it licensing, call it training or
support, it is all the same thing.

O.k. so you are going to charge a corporate customer to allow them to
get their code their own?

Joshua D. Drake

--

=== The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive PostgreSQL solutions since 1997
http://www.commandprompt.com/

#6Kenneth Downs
ken@secdat.com
In reply to: Joshua D. Drake (#5)
Re: Announce: GPL Framework centered on Postgres

Joshua D. Drake wrote:

Sounds great! But why GPL? Are you looking to sell licenses?

GPL is to spread it as far and wide as possible as fast as possible.

LGPL?

My concern would be, I can't use this toolkit for a closed source
application if it is GPL.

That may be your intent (which I actually don't have a business
problem with), I was just curious as to your decision.

If it turns out that nobody can release a closed source app, I will
definitely reconsider and look again at LGPL, but I am not convinced you
cannot do so.

If you seek to provide a closed source app that is built upon Andromeda,
you are required to provide the source code to Andromeda itself.
However, your app is not a derivative work in the strict sense because
your code is not mixed in with mine in any sense. You never modify a
file, and your files and mine are actually in separate directories.

I greatly appreciate your asking the question though because I'd like to
make sure that people feel safe with the project. My goal is to provide
the freedoms typically associated with the "plain old GPL", and
certainly not to restrict the creation of closed apps. I just don't
want anybody closing *my* app.

For corporate customers, it does not matter much whether you call it
a license or something else, some expenditures are made to support
the customer's effort and the customer is asked to provide the funds
for that. Call it consulting fees, call it licensing, call it
training or support, it is all the same thing.

O.k. so you are going to charge a corporate customer to allow them to
get their code their own?

Only if they want to talk to me :) It is GPL, so anybody can download
it and use it, person, gov, NGO, corp. There is a documentation site
that IMHO is pretty nice and getting better every day. But if you want
my time, that's for sale.

#7Tom Lane
tgl@sss.pgh.pa.us
In reply to: Kenneth Downs (#6)
Re: Announce: GPL Framework centered on Postgres

Kenneth Downs <ken@secdat.com> writes:

If it turns out that nobody can release a closed source app, I will
definitely reconsider and look again at LGPL, but I am not convinced you
cannot do so.

If you seek to provide a closed source app that is built upon Andromeda,
you are required to provide the source code to Andromeda itself.
However, your app is not a derivative work in the strict sense because
your code is not mixed in with mine in any sense.

This may well be what a sane person would think after perusing the
license text, but you need to be aware that the FSF takes a much more
expansive reading of that text. AFAIK those details haven't been tested
yet in any court of law --- but until a reading is settled by court
precedents, people tend to look to the FSF's interpretation. And the
FSF is on record as saying that if code A depends on code B then B's
GPL license infects A, even for pretty weak values of "depends".
You should carefully read http://www.gnu.org/licenses/gpl-faq.html,
which contains statements such as

If the program dynamically links plug-ins, and they make function
calls to each other and share data structures, we believe they form a
single program, which must be treated as an extension of both the
main program and the plug-ins.

I don't have anything against the GPL's goals, but those goals are very
clearly that the entire software universe should be GPL code. If that's
not what you have in mind, then you should think twice about licensing a
software component (as opposed to a standalone product that isn't meant
to have other code depending on it) under GPL.

regards, tom lane

#8Tim Allen
tim@proximity.com.au
In reply to: Kenneth Downs (#6)
Re: Announce: GPL Framework centered on Postgres

Kenneth Downs wrote:

GPL is to spread it as far and wide as possible as fast as possible.

LGPL?

My concern would be, I can't use this toolkit for a closed source
application if it is GPL.

That may be your intent (which I actually don't have a business
problem with), I was just curious as to your decision.

If it turns out that nobody can release a closed source app, I will
definitely reconsider and look again at LGPL, but I am not convinced you
cannot do so.

If you seek to provide a closed source app that is built upon Andromeda,
you are required to provide the source code to Andromeda itself.
However, your app is not a derivative work in the strict sense because
your code is not mixed in with mine in any sense. You never modify a
file, and your files and mine are actually in separate directories.

I greatly appreciate your asking the question though because I'd like to
make sure that people feel safe with the project. My goal is to provide
the freedoms typically associated with the "plain old GPL", and
certainly not to restrict the creation of closed apps. I just don't
want anybody closing *my* app.

Then it sounds like LGPL is exactly what you want. That forbids people
closing your code, but allows linking of it to closed apps. Cf Tom's
comments, it's quite difficult for anyone to release code that depends
on GPL'd code without incurring the terms of the GPL for their code (and
that is clearly the way the FSF want it to be).

But as Joshua was implying, a common business model is to release some
code under GPL, which means it can be used only for GPL'd apps, and then
also be willing to sell other sorts of licences for it to be used with
commercial apps. If that's the sort of business model you have in mind,
then GPL is probably what you want.

Tim

--
-----------------------------------------------
Tim Allen tim@proximity.com.au
Proximity Pty Ltd http://www.proximity.com.au/

#9Anastasios Hatzis
ahatzis@gmx.net
In reply to: Kenneth Downs (#1)
Re: Announce: GPL Framework centered on Postgres

Kenneth Downs wrote:

My company has developed an application development framework that
targets PostgreSQL as its back-end, with PHP in the web layer.

Is this product somehow related to AndroMDA (which is usually pronounced
'Andromeda')?

http://www.andromda.org/

Greetings,
Anastasios

#10Peter Wilson
petew@yellowhawk.co.uk
In reply to: Tim Allen (#8)
Re: Announce: GPL Framework centered on Postgres

Tim Allen wrote:

Kenneth Downs wrote:

GPL is to spread it as far and wide as possible as fast as possible.

LGPL?

My concern would be, I can't use this toolkit for a closed source
application if it is GPL.

That may be your intent (which I actually don't have a business
problem with), I was just curious as to your decision.

If it turns out that nobody can release a closed source app, I will
definitely reconsider and look again at LGPL, but I am not convinced
you cannot do so.

If you seek to provide a closed source app that is built upon
Andromeda, you are required to provide the source code to Andromeda
itself. However, your app is not a derivative work in the strict
sense because your code is not mixed in with mine in any sense. You
never modify a file, and your files and mine are actually in separate
directories.

I greatly appreciate your asking the question though because I'd like
to make sure that people feel safe with the project. My goal is to
provide the freedoms typically associated with the "plain old GPL",
and certainly not to restrict the creation of closed apps. I just
don't want anybody closing *my* app.

Then it sounds like LGPL is exactly what you want. That forbids people
closing your code, but allows linking of it to closed apps. Cf Tom's
comments, it's quite difficult for anyone to release code that depends
on GPL'd code without incurring the terms of the GPL for their code (and
that is clearly the way the FSF want it to be).

But as Joshua was implying, a common business model is to release some
code under GPL, which means it can be used only for GPL'd apps, and then
also be willing to sell other sorts of licences for it to be used with
commercial apps. If that's the sort of business model you have in mind,
then GPL is probably what you want.

We've been through similar discussions recently with our web application server,
Whitebeam (http://www.whitebeam.org).

We'd originally released this under a variant of the Mozilla licence - which I
think is not unlike GPL. We started down that route because we make use of
Mozillas JavaScript engine (SpiderMonkey). We did get a number of comments
though, and we never managed to get our licence adopted by the OSS (quite
rightly so!)

The outcome of the discussion was to release the project under a BSD license.

A good deal of the discussion centred around the fact that we make heavy use of
Postgres and so we'd be a much more natural choice of development environment if
we had a similar licence. It helped that the discussions took place during the
uncertaintly around mySQL licensing coupled with Oracles buyout of the innodb
company. The clincher was that Postgres+Whitebeam+Apache (1.3.29 before they
changed their licence) provided a complete BSD based web development
environment. The only external dependancy being SpiderMonkey which we link to
under the LGPL.

My suggestion would be: a) if you want to keep the option of selling/licencing
your code for commercial gain, do something like mySQL and release under GPL
with lots of warnings and offer people a 'commercial' licence; b) if you want to
see your project used in the widest possible audience go with BSD.

The BSD license does allow others to create a closed-source project from your
code - but my view is that isn't too important. You'd be the natural port of
call if they wanted consultancy on how to do that.

Pete
--
http://www.whitebeam.org
http://www.yellowhawk.co.uk
----------

#11Kenneth Downs
ken@secdat.com
In reply to: Tom Lane (#7)
Re: Announce: GPL Framework centered on Postgres

Tom Lane wrote:

Kenneth Downs <ken@secdat.com> writes:

If it turns out that nobody can release a closed source app, I will
definitely reconsider and look again at LGPL, but I am not convinced you
cannot do so.

If you seek to provide a closed source app that is built upon Andromeda,
you are required to provide the source code to Andromeda itself.
However, your app is not a derivative work in the strict sense because
your code is not mixed in with mine in any sense.

This may well be what a sane person would think after perusing the
license text, but you need to be aware that the FSF takes a much more
expansive reading of that text. AFAIK those details haven't been tested
yet in any court of law --- but until a reading is settled by court
precedents, people tend to look to the FSF's interpretation. And the
FSF is on record as saying that if code A depends on code B then B's
GPL license infects A, even for pretty weak values of "depends".
You should carefully read http://www.gnu.org/licenses/gpl-faq.html,
which contains statements such as

If the program dynamically links plug-ins, and they make function
calls to each other and share data structures, we believe they form a
single program, which must be treated as an extension of both the
main program and the plug-ins.

I don't have anything against the GPL's goals, but those goals are very
clearly that the entire software universe should be GPL code. If that's
not what you have in mind, then you should think twice about licensing a
software component (as opposed to a standalone product that isn't meant
to have other code depending on it) under GPL.

regards, tom lane

Tom, thanks much. That points me pretty firmly towards LGPL. I will
reflect on this and likely make a change in the coming weeks.

#12Kenneth Downs
ken@secdat.com
In reply to: Anastasios Hatzis (#9)
Re: Announce: GPL Framework centered on Postgres

Anastasios Hatzis wrote:

Kenneth Downs wrote:

My company has developed an application development framework that
targets PostgreSQL as its back-end, with PHP in the web layer.

Is this product somehow related to AndroMDA (which is usually
pronounced 'Andromeda')?

http://www.andromda.org/

Nope, separate projects.

Theirs is java, we are php.

Theirs is windows, we are linux.

They don't mention a database, I'm sure they're using something, we
target Postgres (though our methodology is platform-neutral).

They look like a code generator, while ours uses libraries + data
dictionary on web server layer, and only generates code on the db server.

Finally, we are "radically table oriented", focusing entirely on
automating software development based on a detailed database
specification which includes derived values and security. They use UML,
while we have a CSS-like way of specifying tables as in:

table customers {
module: ar;
description: customers;
column customer { primary_key: Y; uisearch: Y; }
....
more columns and stuff
....
}

#13Jim Nasby
Jim.Nasby@BlueTreble.com
In reply to: Peter Wilson (#10)
Re: Announce: GPL Framework centered on Postgres

On Wed, May 17, 2006 at 08:33:56AM +0100, Peter Wilson wrote:

The BSD license does allow others to create a closed-source project from
your code - but my view is that isn't too important. You'd be the natural
port of call if they wanted consultancy on how to do that.

I'd argue that if you can't compete against that then you have much
bigger problems, especially since the OSS world tends to take a pretty
dim view on 'hostile takeovers' of OSS code.

In any case, I believe there's other licenses that protect against
someone closing your code. I *thought* the MPL was one, but maybe not.
Perhaps Apache's license does. In any case I'd be very careful with any
license that comes out of FSF, since it's pretty clear what their views
on commercial software are...
--
Jim C. Nasby, Sr. Engineering Consultant jnasby@pervasive.com
Pervasive Software http://pervasive.com work: 512-231-6117
vcard: http://jim.nasby.net/pervasive.vcf cell: 512-569-9461

#14Florian Weimer
fw@deneb.enyo.de
In reply to: Joshua D. Drake (#5)
Re: Announce: GPL Framework centered on Postgres

* Joshua D. Drake:

Sounds great! But why GPL? Are you looking to sell licenses?

GPL is to spread it as far and wide as possible as fast as possible.

LGPL?

My concern would be, I can't use this toolkit for a closed source
application if it is GPL.

Closed source? It's a PHP framework. 8-)

Anyway, for a web application, the GPL is usually *less* restrictive
than various BSD license variants because you do not need to mention
the software in the end user documentation. The viral aspect of the
GPL does not come into play because you do not actually distribute the
software. You just run it on your servers.

#15Florian Weimer
fw@deneb.enyo.de
In reply to: Kenneth Downs (#6)
Re: Announce: GPL Framework centered on Postgres

* Kenneth Downs:

If you seek to provide a closed source app that is built upon
Andromeda, you are required to provide the source code to Andromeda
itself. However, your app is not a derivative work in the strict
sense because your code is not mixed in with mine in any sense. You
never modify a file, and your files and mine are actually in separate
directories.

Many proprietary software vendors think that if you program to an
interface which has a sole implementation, your code becomes a derived
work of that implementation. If you sell different licenses for
run-time and development environments, such an attitude towards
copyright law seems inevitable.

It's a bit unfortunate that the FSF promotes this interpretation,
although it's necessary for creating an effective copyleft license for
libraries and other reusable components.

#16Matteo Beccati
php@beccati.com
In reply to: Florian Weimer (#14)
Re: Announce: GPL Framework centered on Postgres

Hi,

Florian Weimer wrote:

Closed source? It's a PHP framework. 8-)

Anyway, for a web application, the GPL is usually *less* restrictive
than various BSD license variants because you do not need to mention
the software in the end user documentation. The viral aspect of the
GPL does not come into play because you do not actually distribute the
software. You just run it on your servers.

So you're supposing that no one would ever build a distributable (free
or commercial) application on your own framework, because if they do
they are forced to release the whole project under GPL.

Best regards
--
Matteo Beccati
http://phpadsnew.com
http://phppgads.com

#17Kenneth Downs
ken@secdat.com
In reply to: Florian Weimer (#14)
Re: Announce: GPL Framework centered on Postgres

Florian Weimer wrote:

* Joshua D. Drake:

Sounds great! But why GPL? Are you looking to sell licenses?

GPL is to spread it as far and wide as possible as fast as possible.

LGPL?

My concern would be, I can't use this toolkit for a closed source
application if it is GPL.

Closed source? It's a PHP framework. 8-)

LOL. I was thinking something of the same thing. But as you point out...

Anyway, for a web application, the GPL is usually *less* restrictive
than various BSD license variants because you do not need to mention
the software in the end user documentation.

The paradox is that web is a more closed environment. The user need
never download and install the source.

Which has me thinking of the idea of requiring a copyright notice in the
HTML files sent to the browser, or some type of "powered by" notice. I
will add that to the list of ponderables along with LGPL.

#18Kenneth Downs
ken@secdat.com
In reply to: Florian Weimer (#15)
Re: Announce: GPL Framework centered on Postgres

Florian Weimer wrote:

* Kenneth Downs:

If you seek to provide a closed source app that is built upon
Andromeda, you are required to provide the source code to Andromeda
itself. However, your app is not a derivative work in the strict
sense because your code is not mixed in with mine in any sense. You
never modify a file, and your files and mine are actually in separate
directories.

Many proprietary software vendors think that if you program to an
interface which has a sole implementation, your code becomes a derived
work of that implementation. If you sell different licenses for
run-time and development environments, such an attitude towards
copyright law seems inevitable.

I am not understanding you. By sole implementation do you mean sole
license, or single codebase, or cant-run-without-the-library?

The last sentence I don't understand at all, can you elaborate?

#19Florian Weimer
fw@deneb.enyo.de
In reply to: Kenneth Downs (#18)
Re: Announce: GPL Framework centered on Postgres

* Kenneth Downs:

Many proprietary software vendors think that if you program to an
interface which has a sole implementation, your code becomes a derived
work of that implementation. If you sell different licenses for
run-time and development environments, such an attitude towards
copyright law seems inevitable.

I am not understanding you. By sole implementation do you mean sole
license, or single codebase, or cant-run-without-the-library?

Sole implementation, IOW, you cannot replace the implementation with
something else from a different vendor.

The last sentence I don't understand at all, can you elaborate?

Suppose that I've implemented a COM (or CORBA) object. I sell an SDK
(with documentation, IDL files and things like that) for $3,000. For
each application which redistributes the object, I charge you $150
(because you aren't eligible for volume discounts). Now the IDL files
can be reverse-engineered from the object in straightforward manner.
So you go out, buy some software that includes the object (maybe even
one of my demo versions), and use that for development. Instead of
paying me royalties, you instruct your customers to obtain the other
software to get the object. This isn't too far-fetched, I've seen
things like that many moons ago.

Which has me thinking of the idea of requiring a copyright notice in
the HTML files sent to the browser, or some type of "powered by"
notice. I will add that to the list of ponderables along with LGPL.

This can be quite obnoxious if the application is ever used with a
non-browser front end. It's also quite easy to remove the copyright
statement in a reverse proxy, without changing the application itself.

#20Florian Weimer
fw@deneb.enyo.de
In reply to: Matteo Beccati (#16)
Re: Announce: GPL Framework centered on Postgres

* Matteo Beccati:

Hi,

Florian Weimer wrote:

Closed source? It's a PHP framework. 8-)
Anyway, for a web application, the GPL is usually *less* restrictive
than various BSD license variants because you do not need to mention
the software in the end user documentation. The viral aspect of the
GPL does not come into play because you do not actually distribute the
software. You just run it on your servers.

So you're supposing that no one would ever build a distributable (free
or commercial) application on your own framework, because if they do
they are forced to release the whole project under GPL.

If the project is implemented in some kind of scripting language
(which does not offer persistent compilations, or some kind of
compilation which is easily reversed), the GPL vs BSD distinction is
not very important. If you are technically forced to ship the program
as source code, a license that allows you to distribute binaries
without source code does not offer much more freedom than one which
forces you to distribute the source code if you distribute
(non-existent) binaries.

#21Jim Nasby
Jim.Nasby@BlueTreble.com
In reply to: Florian Weimer (#14)
#22Joshua D. Drake
jd@commandprompt.com
In reply to: Jim Nasby (#21)
#23Jim Nasby
Jim.Nasby@BlueTreble.com
In reply to: Joshua D. Drake (#22)