I was going to reply with the quip, "Why don't more public domain developers release their software under the revised BSD license?", but this post has got me thinking about mixing proprietary code and BSD licensed code. Inasfar as you can't separate BSD code from your modifications (within a small piece of code like a method), I'd say it just about forces you to say your modifications are under the BSD license.

I haven't decided under which cases I want to choose the BSD license route or the public domain route, but your post did get me thinking about it.

I forgot to mention the two reasons why I like the revised BSD license. First, I want people to be required to give me credit for anything but the smallest of projects, at least once in the source and once in research papers. Second, I feel a little bit safer with the non-warratny clause being in there.

You are definitely right about trading code on usenet not qualifying as a commercial transaction. In fact, the warranty of fitness for a particular use pretty much requires a sales person to be in the mix. In any case where a sales person is not in the mix, then that warranty doesn't exist, and there is no need for a disclaimer. The warranty of merchantability only appliles when one side is a "merchant" that normally provides the "good" or "service" in question, and not always then.

The disclaimer, then, exists to make redistribution easier for non-lawyers who don't know about the warranties, or what kinds of circumstances could create them.

I'm not saying that they should always be included in any notice. I am not personally a lawyer, although I did once take a business law course. I'm simply trying to explain the constant American urge to write that boilerplate.

It seems to me that this is a classic case of why many people don't like licences. You are releasing code that you believe will be of use to others but at the same time you are weighing it down with an unnecessary vanity clause and a further clause that denies that this useful code is, in fact, fit for anything.

Free code coupled with such an 'albatross' like licence on top seems rather counterintuitive to me.

Open source licenses were created for one reason and for one reason only, CYA. Public domain doesn't 'Cover Your Ass', I could take your Heron code, refractor it to make it more legible (and/or make other minor changes to it), put the slightly modified code under MY copyright (which can be done since it's in the public domain and therefore doesn't have a copyright), and force you from using any modified versions of the original public domain code (since YOUR modified versions could be (would automatically be? IANAL) derivative works of MY copyright version, which isn't allowed under copyright law).