Hi Rolf,

I've de-CCed modu...@perl.org to avoid bothering them.

On Mon, 13 Jul 2015 23:20:57 +0200
Rolf Holte <rolf.ho...@gmail.com> wrote:

> I've made some scripts to harvest (web scrape) metadata on Digitalarkivet
> (DA). Since the task is formidable I've split it into stages and use
> several scripts for each stage, common "stuff" is put into 2 scripts for
> reuse  to keep scripts cleaner/more readable. These 2 scripts are always
> "included" in my scripts, and are a candidate for a module. I'm thinking of
> making these into 1 or 2 modules.The concept works on first 2 stages (just
> need to code more the rest).
> 
> Mainly have five questions (seek advice on these matters)
> 
> 1) One or two modules?
> 

[SNIPPED - no idea]

> 2) Should it be a module at all?
> 
> Since I heavily depend on database back-end should it be a module of its
> own? I need to reuse code for many tasks (different scripts) in order to
> web scrape metadata on the site. Is it more an App?
> 

Well, do you want to write a .pm file (which is often a good idea) or do you
want to prepare a CPAN-like distribution? Maybe see:

http://www.slideshare.net/thaljef/cpan-for-private-code

(There are more similar links here - http://perl-begin.org/topics/cpan/ .)

> 
> 3) Namespace
> 
> Not quite sure if I'm going to release all code to scrape site. I've put
> code in several scripts which may or not be included along side with my
> module(s). The 2 main reason's are it took me 4 days to scrape site first
> time. Don't want everyone to scrape whole site just for fun. secondly not
> completely confident that everyone would respect my licence. I'm happy to
> share on non-commercial basis. But would like something in return if used
> commercially If it's released as an app (working code for everyone) then
> APP namespace should be used if I understood "pause_namingmodules".
> Otherwise depending on one or modules I've been thinking of DIS::DA &
> DIS::DA::DBI (DIS is the acronym for the Genealogy society I'm a member of,
> and making code for. DA is a known acronym for Digitalarkivet (Digital
> Archive of Norway).  If one module DigitalArkivet.pm might be the best
> choice?
> 

DA could also mean "District attorney", "DeviantArt" (see
https://en.wikipedia.org/wiki/DeviantArt ) and lots of other stuff so it's
better to be more explicit.

> 
> 3) Best practice for POD?
> 
> As a "newbie" on POD, I've put the pod in between in code, reducing the
> need for (extra) header comments on subs. The POD documents the code of
> each sub, as a header to each sub. Most POD I've seen puts all pod at the
> end of the file. (Both can be done, but is the latter highly recommended /
> BEST practice?) I find it easier to write POD when I see what is going on,
> also it forces me to write POD at once.. I could copy everything to the end
> of the file, before "release", but then I feel I've got to (re)write header
> documentation on each sub.

The book Perl Best Practices by Damian recommends putting all the POD at the
end, but there isn't a general consensus among the Perl community for it. I
for once, am content with either way. Note that tools like
https://metacpan.org/release/Dist-Zilla and
https://metacpan.org/release/Pod-Weaver can help a lot with maintaining POD .

> 
> 4) To CPAN or not to - Licence
> 
> My first thought is to licence it as something like this:
> 
> DA-DBI.pl by Rolf B. Holte is licensed under a Creative Commons
> Attribution-NonCommercial-ShareAlike 4.0 International License. Permissions
> beyond the scope of this license may be available at
> http://dev.perl.org/licenses/artistic.html.
> 
> Why? I'd like to share code but not for commercial use?
> 

First of all, note that I am not a lawyer ("IANAL") and "This is not legal
advice" (TINLA). That put aside:

1. The Creative Commons organisation recommends against using its
CC-by/CC-by-sa/CC-by-nc/CC-by-nc-sa/CC-by-nc-nd/CC-by-nd licences for licensing
source code. So you may wish to use a different licence.

2. A http://en.wikipedia.org/wiki/Free_and_open-source_software licence may not
prohibit commercial use. See:

* http://opensource.org/osd

* https://www.gnu.org/philosophy/selling.html

Note that there's some provision against making some types of FOSS code
proprietary in https://en.wikipedia.org/wiki/Copyleft , but it does not equate
to prohibiting all commercial use.

3. I recall reading that all the source code that is uploaded to CPAN should be
FOSS.

> Would that be OK, or do I have to use Perl/ artistic license to put on
> CPAN? Can I prohibit commercial use?

You can use any free-and-open-source-software licence, and you should opt to
use the Artistic License version 2.0 (See
https://duckduckgo.com/?q=artistic%202.0 ) rather than the original Artistic
License, which the FSF considers non-free here -
https://www.gnu.org/licenses/license-list.html . You cannot prohibit commercial
use, if you use Artistic 1.0/2.0. If you wish to do so,  you should use a
different licence *and* consider not putting your code on CPAN.

Regards,

        Shlomi Fish

-- 
-----------------------------------------------------------------
Shlomi Fish       http://www.shlomifish.org/
List of Text Processing Tools - http://shlom.in/text-proc

Don't worry over what other people are thinking about you.  They're too
busy worrying over what you are thinking about them.
    — Unknown Source

Please reply to list if it's a mailing list post - http://shlom.in/reply .

Reply via email to