Free + Open Source Goodness

Jamie Tanna (@jamietanna)
Anna Dodson (@anna_hax)

Who are we?

Jamie

  • Software Quality Engineer @ Capital One
  • University of Nottingham Computer Science Alumnus ‘16
  • Hacksoc co-founder
  • 4th time Hacktoberfest-er

Anna

  • I did a masters in CS here (I did not do an undergrad in CS)
  • Joined HackSoc, was one of the organisers of Inspire WiT 2016
  • My first hackathon was HackNotts
  • I am now a Software Engineer at Imosphere
  • I love my job
  • We use dot net… and a lot of open source tools too

So why is it important?

Tracey the farmer and her tractor that she can't legally self-repair

https://www.wired.com/story/john-deere-farmers-right-to-repair/

https://www.digitaltrends.com/computing/apple-locking-down-macs-from-repairs/

https://itsfoss.com/linux-better-than-windows/

Open Source

Free Redistribution

  • no restrictions on selling / giving away, as part of “aggregate software distribution”
  • no royalty, other fees required

Source Code

  • Must include source code
  • Must allow distribution in source as well as compiled form
  • Can’t deliberately obfuscate, provide intermediate forms

Derived Works

  • allow modifications + derived works
  • must allow distribution under same terms of original license

Integrity of The Author’s Source Code

  • must allow distribution of software built from modified source code
  • although it may require different name, version

No Discrimination Against Persons or Groups

No Discrimination Against Fields of Endeavor

  • may not restrict i.e. military, genetic research

Distribution of License

  • must apply to anyone the program is distributed to

License Must Not Be Specific to a Product

  • must not depend on being part of a software distribution

License Must Not Restrict Other Software

  • no restrictions on other software distributed with it

License Must Be Technology-Neutral

Free Software

“this is a matter of freedom, not price, so think of ‘free speech,’ not ‘free beer’”

Definitions via https://www.gnu.org/philosophy/free-sw.en.html

Freedom 0

The freedom to run the program as you wish, for any purpose (freedom 0).

Freedom 1

The freedom to study how the program works, and change it so it does your computing as you wish (freedom 1). Access to the source code is a precondition for this.

Freedom 2

The freedom to redistribute copies so you can help others (freedom 2).

Freedom 3

The freedom to distribute copies of your modified versions to others (freedom 3). By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this.

Licenses are hard

IANAL

I Am Not A Lawyer

Copyright: Only the author/creator has rights to copy, distribute, adapt the work

Copyleft: the public retains freedom to copy, distribute, adapt the work, provided it is under the same copyleft terms

Proprietary / All Rights Reserved

Source Available

Not technically a license!

BSD (2-Clause)

BSD-2 Clause License on tldrlegal.com

MIT

MIT License on tldrlegal.com

Apache-2.0

Apache-2.0 License on tldrlegal.com

GPLv2

GPL-2.0 License on tldrlegal.com

AGPL

AGPL-2.0 License on tldrlegal.com

What about content like art, music, etc?

Creative Commons comes in here

https://creativecommons.org

Where do I get me some Open Source?

GitHub.com

GitLab.com

BitBucket.com

Other Source-hosting platforms

Not necessarily Git-based

Resources

https://tldrlegal.com

Open Source Initiative

https://opensource.org

Open Source Guide

https://opensource.guide

Free Software Foundation

https://fsf.org

Hacktoberfest

https://hacktoberfest.digitalocean.com/

https://webuiltthisforhacktoberfest.netlify.com/

Anna’s Hacktoberfests

2016

2017

Happy Hacktoberfest!

Hacktoberfest Pumpkin

https://webuiltthisforhacktoberfest.netlify.com/

@jamietanna