Closed lobingera closed 8 years ago
Is there anything i need to improve here? Any comment would be nice.
LGTM. I don't usually do much with the color package, but this seems to belong here, and the original author is clearly interested in broad scale implementation. If no one objects, I'll merge this tomorrow.
(or gets to it first)
Also, there is no copyright information on the original Fortran source, so distributing derived works is technically illegal under US copyright law. (The default in copyright law is no permission to redistribute.)
Probably, this was not the original author's intention, so the best thing to do would be to email him and get permission to use/distribute/modify/translate his code under the terms of the MIT/expat license.
(A lot of scientists don't understand the need for licensing, and think that if they just post their code on the web then it is free for anyone to use without restriction.)
The alternative would be a "clean-room" implementation of the algorithm based only on the description in his paper, without referring to the Fortran code. (Unfortunately, you are disqualified from doing this since you have already studied the Fortran code.) But it would be better to get the author to attach an MIT license to his code.
News: My original email was delivered (David Green found it in the spam folder). He replied: "I believe the paper I published on this, which includes the fortran implementation, is in the public domain. I'll check with the journal."
So let's wait for his next email.
It's almost certainly not in the public domain (== not copyrighted), because everything is copyrighted by default (at least in the US) and publishers rarely relinquish ownership. One key question is whether he signed a copyright assignment form when he published the paper—he could have relinquished his rights to the code. (Authors often do this without fully understanding what they are doing, in my experience.)
Can you just request that he attach an explicit MIT/expat license statement to his code, if it is his intention that the code be freely usable/redistributable/modifiable without restriction? Please make sure he understands that the default under US (and other international) copyright laws is no permission, so an explicit license statement is needed to ensure that the code is free of legal encumbrance for all time. And it is much better to use a standard, time-tested free/open-source license statement than it is to write your own informal language (e.g. "this code is public domain") whose legal meaning is often (unintentionally) unclear or (worse) has unintended consequences.
And please cc me (stevenj at math dot mit dot edu) on your email to him.
@stevengj, @kmsquire We're now somehow waiting 4 weeks for a answer about this copyright issue Steven brought up. Would it make some sense to ask for a volunteer who is not aware of neigther my code nor the cited f77 to write a 4 liner that fills the palette?
@lobingera, yes, it seems time for a clean-room implementation based on the description in the paper only. Maybe ask for volunteers on julia-users? As you say, the implementation should be easy.
News: David Green's website now has a license attached to the code which afaiu put's the code into public domain.
Will be moved to https://github.com/JuliaGraphics/Colors.jl
Following #78 i tried to build a cubehelix function (works with e.g. Winston.colormap). Could use some more documentation and while closely looking at it: there is a possiblility to integrate with the colormap("name",N) call.