Re: [CODE4LIB] know of guidelines for contributing to open source projects?

2015-01-10 Thread Tom Cramer
John,

Here are the relevant source docs at Stanford:  

Research Policy Handbook, Section 9.2: Copyright Policy, which states that the 
copyright of artistic, scholarly and pedagogical works remain with the creator, 
unless the work is a work-for-hire, or an institutional work. (We interpret 
that our work is generally if not always work-for-hire.) 

Office of Technology Licensing, Software, which states that 
Stanford-copyrighted software can be licensed to the academic or commercial 
community under an open source license. (It can also be put in the public 
domain.) 

Office of Technology Licensing, Open Source Primer, which states that Stanford 
staff may open source software with the appropriate departmental approval. 

Based on the university policies, our departmental policy states:
 As a matter of practice, we publish software into publicly accessible code 
 repositories. This facilitates the review, exchange, reuse and possible code 
 contributions from other sites--a key part of our development strategy and 
 methodology. As best practice, we endeavor to put a clear license on this 
 code so others know what they may and may not do with it.
 
 Staff should release it under an open source license.
 
 If it is a contribution to a current codebase that has an approved OSS 
 license, we should contribute the code back under the this same license.
 If it is new Stanford code, then it should use an Apache 2 license as the 
 default.
 Why Apache 2? It is desirable to have a single license to consistently to 
 apply across all our products:
 so developers and managers need not try and follow a (potentially complex) 
 decision tree on which license to apply
 so potential collaborators can encounter a single, well-known OSS license on 
 our code, which facilitates adoption and contribution
 most if not all current projects (e.g., Hydra, Blacklight, Fedora, solr, 
 grant-funded development is licensed under an Apache 2 license, either due to 
 an IP agreement (with the funder), or Contributor License Agreements (CLA's) 
 and project convention with other project stakeholders
 as software created in one project / effort often makes it way into reuse in 
 another project (by design); a single license allows for this portability 
 (i.e., local Stanford code could easily become Hydra code without a relicense 
 or rewrite)
 How to License the Code: Follow the instructions here: 
 http://www.apache.org/licenses/LICENSE-2.0.html The name of the Copyright 
 Owner is The Board of Trustees of the Leland Stanford Junior University
 
 Copyright  The Board of Trustees of the Leland Stanford Junior University
 
 Licensed under the Apache License, Version 2.0 (the License);
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at
 
 http://www.apache.org/licenses/LICENSE-2.0
 
 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an AS IS BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
 



Finally, the Hydra Project has put considerable effort into defining a clear, 
repeatable licensing procedure for the community's efforts, which is 
particulalry useful for community-sourced efforts. (A lot of our work is 
contributing to shared projects, not stand-alone projects.) The Hydra community 
software licensing mechanics are outlined here: 
https://wiki.duraspace.org/display/hydra/Code+Copyright+Statement. (FYI, there 
is much current discussion within UC about how to legally and effectively 
contribute to Hydra, so this may be particularly germane.) 

Hope this helps, 

- Tom





On Jan 9, 2015, at 12:11 PM, John Kunze wrote:

 Hi Tom,
 
 This sounds terrific.  Yes, it would be very useful if you could share the
 source docs.  I assume that the Research Policy Handbook is at
 https://doresearch.stanford.edu/policies/research-policy-handbook ?
 
 -John
 
 On Thu, Jan 8, 2015 at 5:10 PM, Tom Cramer tcra...@stanford.edu wrote:
 
 John,
 
 At Stanford, this is governed by the Research Policy Handbook; there is
 some tech transfer and copyright detail, but essentially it says staff may
 release University-funded code with with an open source license with
 officer (Dean-level) approval.
 
 At Stanford, we have put this into place with blanket approval for
 releasing any code we deem shareable under a license (Apache 2 being
 default, but not required). We have similar approval under the same terms
 to release non-code artifacts under a CC license.
 
 Based on this, we have templates for inserting license files into repos on
 Github, and default text to use for copyright statements.
 
 I can dig up source docs if that's useful.
 
 - Tom
 
 
 
 
 On Jan 8, 2015, at 4:22 PM, John A. Kunze wrote:
 
 Does anyone have existing institutional policy guidelines for staff who
 contribute to 

Re: [CODE4LIB] Lost thread - centrally hosted global navbar

2015-01-10 Thread Jason Bengtson
Do you have access to the server-side? Server side scripting languages (and
the frameworks and CMSes built with them) have provisions for just this
sort of thing. Include statements in PHP and cfinclude tags in coldfusion,
for example. Every Content Management System I've used has had a provision
to create reusable content that can be added to multiple pages as blocks or
via shortcodes. If you can use server-side script I recommend it; that's
really the cleaner way to do this sort of thing. Another option you could
use that avoids something like iframes is to create a javascript file that
dynamically creates the navbar dynamically in your pages. Just include the
javascript file in any page you want the toolbar to appear in. That method
adds some overhead to your pages, but it's perfectly workable if
server-side script is out of reach.

Best regards,
*Jason Bengtson, MLIS, MA*

Head of Library Computing and Information Systems
Assistant Professor, Graduate College
Department of Health Sciences Library and Information Management
University of Oklahoma Health Sciences Center
405-271-2285, opt. 5
405-271-3297 (fax)
jason-bengt...@ouhsc.edu
http://library.ouhsc.edu
www.jasonbengtson.com

NOTICE:
This e-mail is intended solely for the use of the individual to whom it is
addressed and may contain information that is privileged, confidential or
otherwise exempt from disclosure. If the reader of this e-mail is not the
intended recipient or the employee or agent responsible for delivering the
message to the intended recipient, you are hereby notified that any
dissemination, distribution, or copying of this communication is strictly
prohibited. If you have received this communication in error, please
immediately notify us by replying to the original message at the listed
email address. Thank You.
j.bengtson...@gmail.com

On Fri, Jan 9, 2015 at 9:57 AM, Brian Zelip bze...@gmail.com wrote:

 Hi Anna.

 I'm not sure about the previous thread, but one solution could be to create
 an html page with just the content you wish to be globally available and
 then insert that content into multiple pages using an `iframe` element.

 For example:

 '''
 !doctype html
   body
 header
   h1Department Name/h1
   nav
 iframe class=global-nav src=http://path.to/global-nav.html;
   /nav
 /header
   /body
 /html

 '''

 Brian Zelip
 ---
 MS Student, Graduate School of Library  Information Science
 Graduate Assistant, Scholarly Commons
 University of Illinois at Urbana-Champaign
 zelip.me


 On Fri, Jan 9, 2015 at 8:27 AM, Anna Headley anna...@gmail.com wrote:

  Hi all,
 
  Some time ago there was a code4lib thread about hosting some content
  centrally (like a global navbar) for use on multiple web sites.
 
  I haven't been able to find it again. Can anyone point me to it?
 
  Thanks!
  Anna
 



Re: [CODE4LIB] Lost thread - centrally hosted global navbar

2015-01-10 Thread Joe Hourcle
On Jan 10, 2015, at 8:37 PM, Jason Bengtson wrote:

 Do you have access to the server-side? Server side scripting languages (and
 the frameworks and CMSes built with them) have provisions for just this
 sort of thing. Include statements in PHP and cfinclude tags in coldfusion,
 for example. Every Content Management System I've used has had a provision
 to create reusable content that can be added to multiple pages as blocks or
 via shortcodes. If you can use server-side script I recommend it; that's
 really the cleaner way to do this sort of thing. Another option you could
 use that avoids something like iframes is to create a javascript file that
 dynamically creates the navbar dynamically in your pages. Just include the
 javascript file in any page you want the toolbar to appear in. That method
 adds some overhead to your pages, but it's perfectly workable if
 server-side script is out of reach.


The javascript trick works pretty well when you have people 
mirroring your site via wget (as they won't run the js, and
thus won't try to retrieve all of the images that are used 
to make the page pretty every time they run their mirror job.

You can see it in action at:

http://stereo-ssc.nascom.nasa.gov/data/ins_data/

The drawback is that some browsers have a bit of a flash
when they first hit the page.  It might be possible to
mitigate the problem by having the HTML set the background
to whatever color the background will be changed to, but I
don't quite the flexibility to do that in my case, due to
how the page is being generated.

-Joe

ps.  It's been years since I've done ColdFusion, but I
remember there being a file that you could set, that would
automatically getting inserted into every page in that
directory, or in sub-directories.  I want to say it was
often used for authentication and such, but it might be
possible to use for this.  If nothing else, you could load
header into a variable, and have the pages just print the
variable in the right location.