how do you feel about using open-source/free libraries for a big commercial project?

what im asking is would you hesitate to use libraries like Boost for a commercial project? or would it be safer to just write all the code from scratch?

suppose Boost were to withdraw the licence (hypothetically) that would cause problems with the licencing etc of the software developed using it?

i feel its probably best to just write the code from scratch (i.e. reinvent the wheel) because you have total control over it that way?

what do you think?

thanks!

Indi

You can't just "withdraw" licences like that. The licence you agree to at the start is in full force for however long the licence was agreed to.

Or to put it in simpler terms. Suppose i downloaded a copy of library X that had a licence that said "this library is free for use in commercial projects without restriction", then the next day, the developer of library X changed the licence to "a royalty must be paid to me for commercial use". (Note that the library hasn't changed - this is not a new version, this is the same version with a new licence.) The licence i agreed to is not the second licence, but the first licence - because that was the licence that was in force when i made the agreement. The fact that the developer changed the licence after the agreement we made doesn't affect me at all.

So in the case of Boost, the current licence states that the software is free for use in commercial projects, which means that if i agree to the licence and start using Boost, i'm free and clear. If they change the licence (which they will), it is of no concern to me unless i want to make a fresh agreement (for example, for a more current version of Boost).

However... there is a catch.

If the licence you agreed to includes a clause that says it is overridden by the latest version, and/or that the Boost group reserves the right to change the agreement at any time... then you're SOL.

Of course, that same problem would plague non-open-source libraries. The moral of the story is READ THE LICENCE CAREFULLY.

For the record, Boost's current licence does not contain such a clause. It is very simple and very clear, and there is no risk to commercial projects that it will expire at any time. That means that if i start using Boost in a commercial project today, i have no worries.