Getting Through the FOSS License Minefield 96
dotancohen writes "Here's an exercise: Write a GPLed server for solving Freecell that the graphical game would communicate with using TCP/IP or a different IPC mechanism. Easy, right? Except for that pesky licensing bit. Our own Shlomi Fish gives an overview of the various options in picking up a licence for one's FOSS project, and tries to give some guidelines choosing one."
If you are really serious about a softwaproject... (Score:2)
You should really talk to a lawyer. Preferably one that has done GPL cases before.
Yes it will cost money, but it will save you and your user's a headache if legal issues ever arise from the use of your software down the road.
But will it run on SCO? (Score:4, Interesting)
Can a lawyer ever give a definitive answer?
A appeals court yesterday overturned [tgdaily.com] the assignment of UNIX to NOVELL giving SCO clearance to sue IBM for billions. I'd imagine the android handset makers and most linux-based router makers have reasons to be nervous as well. SCO also has a new deep pocket backing it's legal team. it's on again!.
I doubt even lawyer could really give you a definitive answer on licensing.
Re: (Score:3, Insightful)
Maybe not definitive, but they stand the vague chance of actually being right :P
Like, for example, the summary judgment in SCO v Novell which just got tossed out, so a jury will probably need to consider to issue. Leaving the rest of your paragraph a work of creative fiction...
Re: (Score:1)
What was done was "nullify" the summary judgments of certain issues including who owns the copyrights. The issue of who owns the copyright was sent for a jury trial.
SCO can't go after IBM until and unless they win on at least 2 issues 1/ copyright ownership and 2/ Novells right to waive the IBM lawsuit. Both still need a jury trial.
There are a few questions 1/ Can SCO afford the Novell
SCO has 100 meeeelion dollar backer (Score:2)
"Stephen Norris Capital Partners pumped up to $100 million into SCO believing the rulings against the company could be reversed on appeal to a higher court. The firmâ(TM)s commitment requires SCO to âoeaggressively continueâ its ongoing litigation against Novell and IBM, as well as another case against AutoZone Inc. " ref [networkworld.com]
Re: (Score:2)
That's been debunked. SCO admitted in bankruptcy court that the deal fell through.
Even if it did, the future of SCO's litigation lies with Edward N. Cahn, the new trustee. As a former litigation attorney, he may very well choose to move forward with the trial. Then again, as a former judge he may view SCO's litigation as a last ditch effort to save a dying company whose only income was from a dying operating system, and liquidate.
Time will tell.
Re: (Score:2)
Your view of SCO's position is slightly inaccurate.
SCO does NOT have a lot of new funding, in fact they are knee deep in bankruptcy proceedings and Darl McBride isn't even in charge anymore.
The appeals court only partially overturned the lower courts decision, saying that the transfer of UNIX copyrights from Novell to SCO is at least worthy of a trial but did not give ANY opinion as to whether SCO or Novell owns them. Darl called a press conference scheduled for tomorrow, which is funny considering he isn't
Re: (Score:2)
No, all that happened is that the appellate court decided that whether or not SCO acquired the Unix copyrights was not sufficiently clear to be decided on summary judgment. Even if SCO did own the Unix copyrights, there would be no real threat to Linux because SCO has failed to show that Linux violates those copyrights.
In any case, all that this decision means is that the contract between SCO and Novell is unclear. That has nothing to do with the validity or interpretation of open source licenses.
Re: (Score:2)
The summary judgement was that SCO did not own the copyright - What this says is that it needs to go to trial to determine this (i.e. it's a "not sure")
IBM does not care, they have already proved they did not infringe no matter who owns it ...
It does not affect Linux because again SCO have failed to show that any code was copied ..oh and SCO has no money (it's in Chapter 11) and has no assets except potentially any profit from this case ... and part of the judgement was that Novell does not owe SCO any mone
What exactly is "tricky" about said scenario? (Score:4, Insightful)
You write a piece of software, and you license it. Making something GPL might be a pain for other users who aren't interested in that license, but them's the ropes, right? It's not like GPLing your software will lead to its demise (see: Linux, WordPress, etc.).
WTF ?? (Score:4, Insightful)
You write an app. To protect your work from being stolen/copied into some proprietary app later, GPL3.
Done. What's so hard about that?
Re: (Score:3, Insightful)
It's even easier in this case. The spec says GPL so you don't even need to think about the issues that might compel you to choose one license or another. Client wants GPL, client gets GPL. Copy, paste, done.
Re: (Score:3, Insightful)
You write a piece of software, and you license it. Making something GPL might be a pain for other users who aren't interested in that license, but them's the ropes, right? It's not like GPLing your software will lead to its demise (see: Linux, WordPress, etc.).
If it's video game software, GPLing it could limit its market. Some genres aren't traditionally suitable for PCs, and the software development licensing arrangements on game consoles are GPL-incompatible.
Re: (Score:2)
...an interesting idea.
Yet GNU software was used in video game console development long before any of this anti-GPL FUD was pushed.
Obviously some bit of crucial information is missing.
Re: (Score:2)
Yet GNU software was used in video game console development long before any of this anti-GPL FUD was pushed.
GNU software is used as part of the development tool, not as part of the end result. The compiler is GPL; the libraries and the compiled code are most decidedly not.
Re: (Score:2)
Ok so you have the same situation as Oracle.
Strictly speaking, nothing included in an oracle binary is "GPL". It's LGPL or owned by Oracle Corp.
The same goes for an EA game built with the GNU toolchain for Linux.
Re: (Score:2)
Strictly speaking, nothing included in an oracle binary is "GPL". It's LGPL or owned by Oracle Corp.
The same goes for an EA game built with the GNU toolchain for Linux.
Though I have seen libraries under various permissive licenses (e.g. Vorbis and FreeType) run on a Wii, even the LGPL is incompatible with console development licenses. I've never seen even one console game developer make an offer to distribute the object files that the LGPL requires.
LAME is a development tool (Score:3, Informative)
LAME was used in many cases for playing MP3 music.
Like oggenc, LAME (license: LGPL, which is GPL with an exception) is an encoder, not a decoder. It does not run on the console; MP3 player software does. This makes LAME a development tool, which console makers allow to be GPL.
If you don't think your license allows you to use FreeCell on the other end of a pipe, how about WRITING YOUR OWN Solitaire???
What you say applies to FreeCell, but it does not apply to games that use external data. For example, if I wanted to make a game that solves levels in a platformer, I can't make my own version of the platformer that uses the same levels.
Re: (Score:3, Insightful)
Re:What exactly is "tricky" about said scenario? (Score:4, Informative)
Proprietary (Score:2)
Ok, now write the same software reusing proprietary code. Which is more of a minefield?
Re: (Score:2)
Re: (Score:2)
The idea that it is a "minefield" is just inflammatory nonsense.
The intent of these licenses aren't exactly some big secret.
Re:Proprietary (Score:5, Insightful)
I suppose that depends on how you look at it.
If your considering using open source code to add value to your product rather than invest in the development of your own software and have no desire to contribute back to the open source project that made the code available in the first place because you realize this will only make it easier for a competitor to create a competing product in the market place, then the the open source licensing options are a minefield. That pesky GPL keeps getting in the way.
Of course that is not how this article was worded, it seems to be making an argument that for an open source developer who does not choose a license that makes it possible to create derivatives of their project as closed source is somehow stepping on a mine. So yes, it appears you are right, just a GPL troll article.
I wonder sometimes what the motives are behind these articles that profess the importance of avoiding the GPL for your own personal open source projects. I find this one ludicrous as it boils down to "if you license your source code using the GPL then you can't use my source code".
Well, that works both ways, and with the vast source of GPLed code out there it seems to me that this argument supports the use of the GPL in your open source projects to ensure you have access to that pool.
And for those who don't want to use the GPL for whatever reason they don't have to, but they really should stop drooling over other peoples GPLed code and it does them no good to continue the endless whining about the GPL. They should spend their time writing their own software and releasing it under whatever license they want instead of writing inane articles about the GPL.
Re: (Score:2)
And for those who don't want to use the GPL for whatever reason they don't have to, but they really should stop drooling over other peoples GPLed code and it does them no good to continue the endless whining about the GPL. They should spend their time writing their own software and releasing it under whatever license they want instead of writing inane articles about the GPL.
I don't see very much whining from BSD-style license advocates wanting to use GPL code, although it is sometimes the other way around (i.e. Linux users wanting ZFS, etc). Most of the whining from the BSD side is actually about Linux people taking BSD code, and that usually originates from OpenBSD. Such types are noteably more uptight than the vast majority on the BSD side who are much more chill and probably enjoy life more.
The point, though, is that the supposed "drooling" over GPL code by BSD people
Re: (Score:2)
I don't see very much whining from BSD-style license advocates wanting to use GPL code, although it is sometimes the other way around (i.e. Linux users wanting ZFS, etc).
My understanding was that Linus didn't want to accept ZFS into the kernel because it partly duplicates functionality already present in the kernel. If ZFS were to be broken up and the duplication removed, it might be accepted. A note here, I haven't followed the conversion closely. I could be wrong. If a Linux user wanted to use ZFS, nothing is stopping them from using it via FUSE.
And for those who don't want to use the GPL for whatever reason they don't have to, but they really should stop drooling over other peoples GPLed code and it does them no good to continue the endless whining about the GPL. They should spend their time writing their own software and releasing it under whatever license they want instead of writing inane articles about the GPL.
The point, though, is that the supposed "drooling" over GPL code by BSD people is mostly your own fabrication.
I fail to see the reference to BSD that you claim is a fabrication.
Re: (Score:2)
August 25Developers: Getting Through the FOSS License Minefield [slashdot.org]
GPL is a mine in a minefield of open source licenses, followed with the usually complaints about the GPL
August 16Linux: GPL Case Against Danish Satellite Provider [slashdot.org]
GPL is violated by multiple corporations, ensuing conversation was actually tame.
August 11News: Leaving the GPL Behind [slashdot.org]
Companies are running in fear from the GPL, some nasty discussions ensue about the crazy GPL zealots.
August 3Politics: Microsoft Redefines "Open Standards" [slashdot.org]
Microsoft stir
Re: (Score:2, Insightful)
The idea that a "minefield" is effective because of secrecy is just inflammatory nonsense.
The intent and effect of these loud explosion-causing devices to deter opponents from using a mined area isn't exactly subtle.
The article, the concept of a legal minefield, and the actual area denial strategy of laying mines, is that careful planning is required to how to navigate the known unknowns if the potential reward of doing so is sufficient. The article points out some issues with various non-proprietary licens
Uh? (Score:1, Insightful)
Isn't FOSS supposed to help with all that legal mumbo-jumbo?
Believe it or not, too many options are a bad thing.
Writing Freecell? (Score:3, Funny)
Re: (Score:2)
If we're rewriting freecell, shouldn't that be a license minesweeper, not a license minefield?
That or a license luminesweeper [pineight.com]. (I wrote it and GPLed it because I wanted to prove that the PSP's flagship launch title didn't really need the features of a PSP.)
"minefield" ? GPL or FreeBSD (Score:5, Insightful)
GPL if you want to make people play nice.
BSD if you don't care if people play nice.
if GPL then GPL3 if you think corporate interests may be sniffing around later.
Something else if you are building upon something that is licensed some other way.
And gee, I didn't hear an explosion anywhere.
Re: (Score:2)
if GPL then GPL v3 *and higher* (don't forget).
But basically, what you said sums it all up, no need for the questionable article above.
Re: (Score:2, Insightful)
if GPL then GPL v3 *and higher* (don't forget).
Or not. The "...or higher" language implies a great deal of trust in the FSF. There is risk in making that decision: the FSF could one day release a GPL which offers terms that the developer disagrees with.
It is entirely reasonable for a risk-averse developer to distribute software under a single well-defined license rather than an unlimited number of undefined licenses.
How much trust is it asking? (Score:2, Insightful)
Go on.
Tell us.
If the FSF go all world-domination then release a GPL that says you shall sacrifice your first born to Molech, you just get the code under the version BEFORE the Molech-clause. You then FORK any further development to a new GPL compatible license that *doesn't have* the Molech clause in.
Job done. People will leave the molech-clause-GPL alone and it will die.
Now people who trusted BSD will find their code is unusable because the code is patented and the BSD doesn't cover it. So leaving out the
Re: (Score:3, Interesting)
Not sure how serious you are, but you've got it backwards. A future FSF could create a GPL with more liberal terms of distribution. Suppose the license permitted binary-only distribution in exchange for a generous donation to the FSF--probably most developers would have a problem with that.
It's difficult to imagine such a scenario today, but I'm sufficiently paranoid to expect that the FSF may not always be trustworthy. All it takes is a gradual shift in the voting membership.
If the FSF continues to rele
Re: (Score:2)
It might be easy to argue, but it wouldn't be easy to convince the court that it makes sense. Since when has a license been ruled unenforceable based on the fact that it's different than another license?
Obviously that new version would change the text in the preamble as well (Is there any other license with a preamble - weird).
Re: (Score:1)
Well, there's three (reasonable) things you can do:
1. Have a license with no copyleft [to each his own, and this not to me]
2. Have a license with copyleft incompatible with future GPL licenses, and in case your project gets attention like GPL2-only Linux did, make it impossible to upgrade to a superior license.
3. Trust FSF, and have a normal, copyleft GPL "or later" license with no above problems.
It's your choice, but again, I'd choose (and do) nr. 3.
Re: (Score:1, Informative)
BSD/PD: sample reference implementation. maximize use
LGPL: programs intended to be used as libraries. maximize use ensuring that goodies in the lib get back to your project.
GPL: complete standalone applications. ensure one can't fork closed source version with improvements.
GPL2/GPL3: same thing.
GPL "or any later version": stupid. Nobody signs any latter version contracts.
of course, some companies fight GPL by hiring people to write BSD versions of existing (L)GPL stuff but the thing is that if it wasn't for
Re: (Score:1)
Or Apache if you expect to contribute it to Apache, or Eclipse if to Eclipse, or Python if to Python, etc.
Re: (Score:2)
He is against the GPL because it is long and he doesn't understand it. This is stated several times in the article.
I read the GPLv2 originally once and couldn't understand it. The LGPLv2 or the GPLv3 would likely prove to be more problematic. I find it harder to trust lengthy documents that I am unable to understand.
He also seems worried that no one will use his code if he places restrictions on it and that he doesn't
Re:Do you even need a license? (Score:4, Informative)
Not a lawyer. IMO.
Problem being that without a license, nobody else is permitted to distribute your software. Depending on your and their local laws, they might not be allowed to copy or run it. And if the software causes any damages, you're quite likely liable for them. So, to protect both yourself and the recipient, always specify an explicit license.
The other part is that licenses need not be complicated. The Simplified BSD [freebsd.org] and MIT [opensource.org] licenses are about as trivial as it gets: keep this label, and don't sue me bro. The GNU GPL [gnu.org] is much longer, because it's approaching a harder problem: making sure that people who extend your software don't limit their users.
Re: (Score:2)
Problem being that without a license, nobody else is permitted to distribute your software.
I'm pretty sure he was implying to just release it as public domain.
Re: (Score:2)
I'm pretty sure he was implying to just release it as public domain.
Possibly. But that also requires more work than "here's the program. It's free -- enjoy", and likely doesn't help with liability. I'd tend to trust CC0 [creativecommons.org], but that's way more hoops than slapping a Simplified BSD license on things.
Re: (Score:2)
The problem is that is not a well-defined concept in all jurisdictions, and opens the door to problems (for example, somebody else claiming copyright on a derived work and suing your users). More people are going to be able to use and benefit from your software if you just slap a BSD license on it than if you don't bother or just say "it's public domain", and it takes zero incremental work to do so.
Re: (Score:2)
What's the Problem (Score:3, Insightful)
I only skimmed the article, but I don't understand the problem proposed by using a GPL licensed freecell solver that communicates over IP. Is he complaining that it's not "viral" enough in this case? Because this case carries no restrictions. In fact, the user, end user or server administrator, doesn't even have to agree to the terms of the GPL in this case!
This is what he calls a minefield?!
-Peter
Re:What's the Problem (Score:4, Insightful)
Re: (Score:3, Insightful)
Make sure non-GPL projects can use your licensed code
Except, you know, when you don't want non-GPL projects to use it. :)
Re:What's the Problem (Score:4, Informative)
Exactly. I recently changed some of my code from LGPL to Affero GPL because they could be used as a back-end to a web service as well as being the back-end for an app. I'd started with LGPL because I didn't want to force a license on people, but then I changed my mind because the on-going freedom of the code was more important than what license people used. What would be ideal would have been to have had a "LGPL/GPL but allowed to link with anything else as long as it is open source", but since that isn't possible then not letting non-GPLed apps link to my library is the only option. C'est la vie.
I think the article is summed up in one of his later headings: "Why I Prefer the MIT X11 Licence". Basically the whole thing is a "why you should use X11 and anything else is bad" article.
Sleepycat (Score:3, Informative)
What would be ideal would have been to have had a "LGPL/GPL but allowed to link with anything else as long as it is open source"
Then use the GPL, with the Sleepycat license [wikipedia.org] as a GPL linking exception [wikipedia.org].
Re: (Score:2)
Sounds good, if a little unconventional and hardly known. I wonder how well it works with the AGPL in networked situations? I did know GPL linking exceptions were possible but trying to write one for a personal/community project is a bit difficult without paying a lawyer, so picking an "off the shelf" license is the easy option.
Simple contradiction in article (Score:1)
Another curious licence is the Affero GPL - - which aims to close the "Application Service Provider Loophole". What it means is that if I install an AGPLed program on a public web-server and modify it then I must make my modifications public. However, the Free Software Definition , says that one must have "The freedom to study how the program works, and adapt it to his needs.". As a result, I personally don't consider the AGPL as free (because I may wish to run it on my publicly accessible web-server and modify it), but the FSF thinks otherwise. We have enough problems with the suitability of the GPL for embedded systems, that we don't need to kill the prospering web-apps market too.
Apparently the author thinks that if he has to share modifications, then his "freedom to study how the program works, and adapt it to his needs" has been compromised, and the license is "curious". Why not just argue that the GPL itself is not a Free Software license?
Re: (Score:2)
I still can't quite see how BSD, GPL, LGPL, or AGPL or a dual licensed BSD & *GPL mix doesn't solve any subset of these problems.
Re: (Score:2)
Re:What's the Problem (Score:5, Interesting)
Re: (Score:2)
You'd have to be VERY careful doing that and not falling within some definition of derivative work. Especially if it went to court and the people who wrote the GPL'd code could sho just how much effort you've put into circumventing the license with the same end effect as if you'd ignored it completely.
Re: (Score:2)
You'd have to be VERY careful [serverizing a piece of GPL code] and not falling within some definition of derivative work. Especially if it went to court and the people who wrote the GPL'd code could sho just how much effort you've put into circumventing the license with the same end effect as if you'd ignored it completely.
If that's true, then why haven't Yahoo!, AOL, and Microsoft declared Pidgin a "derivative work" of their products that contravenes the client software exclusivity clause in their respective IM networks' terms of service?
Re: (Score:2)
AFAICT, pidgin doesn't use MS (or yahoo or whatever) code or libraries, just the protocol.
Turning a GPL library into an RPC server for local use seems a little more risky and a deliberate attempt at circumvention, not interoperativity. But as the other poster pointed out, I'm not sure there's much case law in this area.
Re: (Score:2)
AFAICT, pidgin doesn't use MS (or yahoo or whatever) code or libraries, just the protocol.
And a rewritten MySQL client library uses just the protocol. Yet Sun seems to think all MySQL client libraries are derivative works of MySQL.
Turning a GPL library into an RPC server for local use seems a little more risky and a deliberate attempt at circumvention, not interoperativity.
If intent is at issue, a developer can sway perception of intent by properly marketing the changes. For example, an RPC protocol might prove attractive enough that even one of the GPL library's committers likes it and includes it in the library's test/example suite.
Re: (Score:1)
Maybe. Probably even. But I don't think there is much actual case law surrounding the GPL, or is there?
Re: (Score:3, Insightful)
Not specifically. The GPL largely relies on copyright law. There's LOTS of copyright law. Basically, the GPL says "Either you agree to my terms, OR you are allowed to use normal copyright terms." As such, it doesn't need (or have room for) much GPL specific case law.
Re: (Score:3, Informative)
There would be more, but the companies taken to court over GPL violations keep deciding to comply and settle.
Which should tell you something :)
Re: (Score:2)
I think this is what I meant by "not 'viral' enough". But I think that this is usually a strength, not a shortcoming, of the GPL.
This gets pretty philosophical, and there are many valid viewpoints. But I think that any use of GPLed code that doesn't involve directly using the source code, linking, or modifying the GPLed code should be allowable without restriction.
Also, none of this conjecture really makes sense in light of the conclusion of the article, which seems to be "use the MIT license", which is o
Re: (Score:2)
Also, none of this conjecture really makes sense in light of the conclusion of the article, which seems to be "use the MIT license", which is offers no defense even to linking.
Sure, it does. One subtle point of the article is that the GPL is a confusing license that doesn't provide the protections people think it does, because it's "not viral enough." If that is case, why bother with it? Use a license that's simple and works the way people think it does. He even recommends the Sleepcat license for those wan
Why isn't it easy? (Score:2)
Boiling it Down (Score:4, Informative)
The final paragraph is a pretty good summary of the author's viewpoint:
Finally I'd rather have a proprietary derived work than no derived program at all, or that instead someone will duplicate my effort in creating a BSD-style or a proprietary replacement for my work.
The author doesn't trust regional variations in the treatment of the public domain. The author doesn't really care about Free Software, much less Open Source software. And as such, his opinion is to use a license that enforces the general understanding of the public domain.
Useless article (Score:3, Insightful)
Here I was expecting something about how license problems impeded the development of the server mentioned in the summary, and instead I just get the latest round in the BSD v. GPL controversy. Yawn.
Re: (Score:2)
It's the old
Public domain - do anything
BSD do almost anything, including stealing my code, but that's ok
GPL do almost anything, but don't steal the code
Which you choose depends on which you want to do ...
Re: (Score:2, Insightful)
...and what "GPL" libraries would those be EXACTLY?
Without examples, this is just mindless FUD.
QT was a great example but that's been fixed.
Re: (Score:2, Informative)
GNU SASL [fsf.org], Lib Gtop [fsf.org]. Of course, the classic one is ReadLine [fsf.org].
Now that's wasn't too hard was it?
Re: (Score:1)
GNU SASL doesn't have much of a choice as some of the libraries it has dependencies on require GPLv3 (even if they are weak dependencies).
Re: (Score:2)
If that's the best that you can do then you've just proven my point for me.
The example I provided myself was much more meaningful.
The simple fact of the matter is that the Free Software community is more
than just the caricature of RMS that people like to perpetuate. Most people
have no problems peacefully coexisting with (and even enabling to a certain
extent) profiteers.
That fork happened a LONG time ago.
Re: (Score:2)
And the point was? (Score:5, Insightful)
The author mentions on one occasion that he read the GPL v2 once and didn't understand it. And then he goes on to write an entire article about choosing the right licence for your FOSS code.
Thats a little like me telling people that they shouldn't program in Pascal and that C is the best... even though I tried to program in Pascal once but just didn't get it.
Is it just me?
Re: (Score:1)
Worst article ever! (Score:1, Offtopic)
I personally don't consider the AGPL as free (because I may wish to run it on my publicly accessible web-server and modify it)
Excuse me, but you don't run a license on a web server, you run code. The entire article is riddled with errors like this, making me distrust the author's ability to reason about things.
Plus, the web page is badly formatted. On my 1280x1024 monitor, over half the width of the screen is filled by a fat blue bar on each side. I feel like I'm reading a narrow newspaper column or something. A main article should occupy well over half the width of the display. I had to spend so much time scrolling, I coul
Eyeball movements (Score:2)
On my 1280x1024 monitor, over half the width of the screen is filled by a fat blue bar on each side. I feel like I'm reading a narrow newspaper column or something. A main article should occupy well over half the width of the display.
Newspapers are printed with five or six columns of text across the page for a reason: if a column is no wider than 35em (about 70 characters), it's easier for the eye to find the start of the next line of text. Otherwise, readers run the risk of rereading or skipping a line. If it bothers you, unmaximize your web browser's window.
Re: (Score:2)
Plus, the web page is badly formatted. On my 1280x1024 monitor, over half the width of the screen is filled by a fat blue bar on each side.
Yeah, that just bad design and it's all too common. Web pages are supposed to be liquids [nullprogram.com].
simple (Score:1, Funny)
Simply ask that man with the beard.
Re: (Score:2, Funny)
Simply ask that man with the beard.
If it is a minefield, it may indeed be a good idea to ask Osama bin Laden. After all, he should have experience in explosives.
lay (Score:1)
This is the same Shlomi Fish who wrote some FUD about how he didn't understand the goals of perl 6 [freshmeat.net]? And who 'read the GPLv2 originally once and couldn't understand it'?
I'd rather read articles written by people who have an excellent comprehension of the subject they are writing on, thanks.