Τι είναι οι ανοιχτές άδειες χρήσης; Ποιές υπάρχουν κ σε τί διαφέρουν μεταξύ τους;

Table of contents


  1. Γενικές πληροφορίες
  2. Δημοφιλείς ανοιχτές άδειες
    1. GPL
    2. LGPL
    3. BSD
    4. Χ11 (a.k.a. MIT)
    5. Creative Commons

Γενικές πληροφορίες#

  • Οι ανοιχτές άδειες χρήσης ιστορικά γράφτηκαν (κ γράφονται) για software, κ πιο συγκεκριμένα ασχολούνται με τους κανόνες που διέπουν την αναδιανομή του software.
  • Βασίζονται πάνω στην ιδέα του copyright. Καταρχήν χρησιμοποιούν το copyright για να δώσουν στο δημιουργό "πνευματική ιδιοκτησία", αλλά στη συνέχεια αλλάζουν κάποια διακιώματα/υποχρεώσεις που εισάγει το copyright, κυρίως στο θέμα της αντιγραφής, μεταποίησης κ διανομής
  • Μια ανοιχτή άδεια λοιπόν αποτελείται από ένα copyright (στην πρώτη γραμμή συνήθως), κ ένα μικρό (ή όχι μικρό στην περίπτωση της GPL) κείμενο που εξηγεί σε τί διαφέρει αυτή η άδεια από το κλασσικό copyright
  • Για να δημοσιεύσετε τη δουλειά σας κάτω από μια τέτοια άδεια, οφείλετε να μοιράζετε μαζί με τη δουλειά σας κ την άδεια, είτε γραμμένη μέσα στα αρχεία πηγαίου κώδικα (συνήθως πάνω-πάνω), ή σε ένα ξεχωριστό συνοδευτικό αρχείο με αντιπροσωπευτικό όνομα (πχ LICENSE).
  • Όπως κ αν αποφασίσετε να τη μοιράσετε, η άδεια έχει στη πρώτη γραμμή το copyright με όνομα, επώνυμο του δημιουργού κ την ημερομηνία, πχ "copyright 2010, Dimitris Papadopoulos", κ αμέσως μετά ακολουθούν οι λεπτομέρειες της άδειας που διαλέξατε, δηλαδή οι εξαιρέσεις πάνω στη κλασσικό copyright.
  • Το σχετικό κείμενο της άδειας που πρέπει να προσθέσετε, θα το βρείτε συνήθως στην ιστοσελίδα της άδειας που χρησιμοποιείτε.
  • Φυσικά μπορείτε να φτιάξετε γρήγορα τη δική σας άδεια, βάζοντας πάλι το copyright στην αρχή, κ προσθέτοντας από κάτω όποιο άλλο κανόνα/εξαίρεση θέλετε.
  • Μπορείτε επίσης να καταθέσετε κ γραπτά την αίτηση για copyright στις σχετικές υπηρεσίες (δεν έχω ιδέα ποιες είναι αυτές), το οποίο βοηθάει αν χρειαστεί να αποδείξετε δικαστικά ότι είστε ο κάτοχος της αρχικής ιδέας κ ότι την ανακαλύψατε νωρίτερα από κάποιον άλλο. Για οτιδήποτε απλό όμως, αρκεί η "αυθαίρετη" προσέγγιση του να προσθέσετε το copyright, όνομα, έτος κ ό,τι άλλο ακολουθεί για τη συγκεκριμένη άδεια που επιλέξατε. Κάποιος πιο σχετικός με τα νομικά μπορεί ίσως να μας διαφωτίσει καλύτερα.
  • Σαν ιδέα, μια ανοιχτή άδεια δεν περιορίζεται στο software, εφαρμόζεται σε οτιδήποτε μπορεί κανείς να τοποθετήσει copyright
  • Στην πράξη, όταν προσπαθείς να τις εφαρμόσεις σε άλλα πράγματα, όπως hardware, τέχνη, τεχνικά κείμενα, κλπ προκύπτουν κενά κ ασάφειες, κυρίως στην αντιστοίχηση των τεχνικών όρων του software με αυτό που προσπαθείς να καλύψεις με την άδεια.
  • Ο βασικός τους σκοπός είναι να δώσουν στον παραλήπτη του software μια σειρά από δικαιώματα που κανονικά τους τα στερεί το copyright. Η κάθε άδεια είναι διαφορετική στο τι δικαιώματα προσφέρει, αλλά σε γενικές γραμμές μιλάμε συνήθως για το δικαίωμα του παραλήπτη:
    1. Να χρησιμοποιεί το πρόγραμμα, μόνο του ή να το ενσωματώνει (όλο ή μέρος του) σε άλλα προγράμματα
    2. Να κάνει αντίγραφα ελεύθερα
    3. Να μετατρέπει το πρόγραμμα όπως επιθυμεί
    4. Να μοιράζει αντίγραφα του αρχικού ή τροποποιημένου προγράμματος ελεύθερα
  • Τυπικά, τέτοιες άδειες δεν προσφέρουν καμία εγγύηση καλής χρήσης/λειτουργίας στον παραλήπτη
  • Πέρα από δικαιώματα, μια άδεια συνήθως έχει κ υποχρεώσεις. Το πόσο αυστηρές είναι αυτές, χωρίζει τις ανοιχτές άδειες σε δύο γενικές κατηγορίες:
    1. Copyleft: στη περίπτωση αυτή, ο παραλήπτης οφείλει, αν μοιράσει αντίγραφα του αρχικού ή τροποποιημένου προγράμματος (ή ένος δικού του που χρησιμοποιεί το αρχικό πρόγραμμα), να το κάνει δίνοντας τα ίδια δικαιώματα στους παραλήπτες του με αυτά που είχε κ ο ίδιος όταν το παρέλαβε. Τέτοιου τύπου άδειες λέμε ότι έχουν συμπεριφορά "ιού", γιατί κολλάνε από προϊόν σε προϊόν.
    2. Permissive: στη περίπτωση αυτή, ο παραλήπτης δεν έχει καμία υποχρέωση, πέρα ίσως από το αναφέρει ότι χρησιμοποιεί κάτι που βασίζεται στη δουλειά του "Χ". Αυτό επιτρέπει τη μίξη ανοιχτού κ κλειστού κώδικα χωρίς πρόβλημα.
      • Πχ Microsoft κ Apple (κ πολλοί άλλοι) χρησιμοποιούν το network stack του BSD μέσα στα λειτουργικά τους, με τις αλλαγές τους κλειστές στην κοινότητα, κ είναι απόλυτα νόμιμοι.
  • Το κλασσικό πρόβλημα της σύγκρουσης του ανοιχτού με το κλειστό λογισμικό είναι λοιπόν κυρίως αποτέλεσμα των copyleft αδειών, καθότι μπορούν να "κοντραριστούν" με άλλες άδειες πάνω στο ίδιο προϊόν.
  • Ένα άλλο θέμα που προκύπτει με τις copyleft άδειες είναι η συμβατότητα μεταξύ τους. Μπορεί οι απαιτήσεις τους να είναι αλληλοσυγκρουόμενες, οπότε κ λέμε ότι οι άδειες δεν είναι συμβατές μεταξύ τους.
  • Υπάρχουν όμως πολλές περιπτώσεις που δεν ισχύουν οι απαιτήσεις:
    1. Στην περίπτωση που οι αλλαγές κ η χρήση είναι εσωτερική κ δεν περιλαμβάνει αναδιανομή κάνεις ό,τι θες, κανείς δε σου λέει τίποτα
    2. Όταν αυτό που αναδιανέμεται δεν χρησιμοποιεί "μέσα του" το αρχικό ανοιχτό copyleft πρόγραμμα, αλλά απλά προέξυψε από τη χρήση του προγράμματος (αν φτιάξεις μια εικόνα στο gimp, η εικόνα δεν κληρονομεί την άδεια χρήσης του gimp)
    3. Επίσης κανείς δεν εμποδίζει να αναδιανέμενται κλειστό κ ανοιχτό software μαζί (ή ακόμα κ μόνο ανοιχτό, αλλά με διάφορες μη συμβατές μεταξύ τους άδειες), όταν αυτά τα δύο είναι ανεξάρτητες εφαρμογές
    4. Όταν η copyleft άδεια αναφέρει εξαιρέσεις (πχ LGPL). Σε αυτή την περίπτωση μιλάμε για partial copyleft (σε αντίθεση με το full copyleft)

 

Δημοφιλείς ανοιχτές άδειες#

GPL#

http://www.gnu.org/copyleft/gpl.html

Η πιο κλασσική full copyleft ανοιχτή άδεια χρήσης, αισιώς στην τρίτη της έκδοση (v3). Θεωρείται κ η πιο αυστήρη, η πηγή όλων των καλών κ κακών του ανοιχτού λογισμικού. Παραδοσιακά ασχολείται με το software, αν κ στην τρίτη της έκδοση μιλά για διάφορα θέματα που προκύπτουν από τον τρόπο που το hardware επεμβαίνει στο software.

Μια ενδιαφέρουσα εξαίρεση στην αυστηρότητα της GPL, είναι ο ίδιος ο GNU GCC compiler: στη θεωρία, ο compiler χρησιμοποιείται για να παράγεις ένα πρόγραμμα, δεν περιέχεται μέσα στο πρόγραμμα, οπότε κανονικά η GPL άδεια του GCC δεν εμποδίζει τη χρήση του για τη δημιουργία προγραμμάτων ύπο οποιαδήποτε άλλη άδεια. Στην πράξη, ο GCC προσθέτει headers στον κώδικα κ τον κάνει link με τις standard C libraries (που είναι μέρος του), οπότε οτιδήποτε φτιάχνεται με τον GCC θα έπρεπε να είναι ανοιχτό υπό την GPL!!! Το Free Software Foundation (FSF) το κατάλαβε νωρίς αυτό, κ ακόμα κ αυτοί που είναι οι πιο φανατικοί (καθότι κ ιδρυτές) της GPL, κατάλαβαν ότι στην περίπτωση του GCC κάτι τέτοιο θα στερούσε τις ελευθερίες του χρήστη αντί να τις προστατέψει, οπότε κ βγάλανε το λεγόμενο GPL linking exception.

LGPL#

http://www.gnu.org/copyleft/lesser.html

Η LGPL (Lib GPL) είναι μια σειρά από αλλαγές στη GPLv3, που ουσιαστικά μετατρέπουν τη δεύτερη σε partial copyleft άδεια. Η LGPL γράφτηκε κυρίως για βιβλιοθήκες λογισμικού, κ πάρα πολλές ανοιχτές βιβλιοθήκες κυκλοφορούν σαν LGPL. Σε σχέση με τη GPL διαφέρει στo ότι αν απλά κάνεις link ένα πρόγραμμα σου με μια LGPL βιβλιοθήκη, τότε το πρόγραμμα σου δεν υπόκειται στις υποχρεώσεις της GPL. Αν όμως πειράξεις την ίδια τη βιβλιοθήκη, τότε ισχύουν τα γνωστά της GPL.

Επίσης, στην περίπτωση αντικειμενοστρεφών γλωσσών, όταν χρησιμοποιείς κώδικα που είναι σε LGPL κάνοντας το inherit (πχ μια C++ class από LGPL βιβιοθήκη), θεωρείται σαν linking, οπότε κ πάλι η LGPL δεν σε υποχρεώνει να βγάλεις την απόγονη κλάσση με τους ίδιους όρους όπως η πρόγονη.

BSD#

http://en.wikipedia.org/wiki/BSD_licenses

Πρόκειται για τις πιο κλασσικές permissive άδειες. Ο παραλήπτης έχει πλήρη δικαιώματα, κ καμία υποχρέωση πέρα από το να αναφέρει ρητά ότι αυτό που έχει φτιάξει βασίζεται/χρησιμοποιεί το BSD-licensed πρόγραμμα.

Η BSD είναι γενικά συμβατή με τις GPL, αλλά μόνο στην πιο πρόσφατη (3-clause) μορφή της. Η παλαιότερη είχε κ ένα 4ο άρθρο που έλεγε ότι κ οποιαδήποτε διαφημιστική/ενημερωτική κίνηση θα πρέπει να αναφέρει ότι "αυτό το προϊόν χρησιμοποιεί το τάδε BSD-licensed πράγμα", κ αυτό την έκανε μη συμβατή με GPL. Στη νέα BSD η φράση αυτή δεν υπάρχει.

Χ11 (a.k.a. MIT)#

http://en.wikipedia.org/wiki/MIT_License

Πολύ παρόμοια με την 3-clause BSD. Η μόνη διαφορά είναι ότι παρακάμπτει το άρθρο 3 της BSD που λέει ότι δεν επιτρέπεται η χρήση του ονόματος των ανθρώπων που κατέχουν το copyright χωρίς την άδεια τους. Κοινώς, μπορούμε να την πούμε κ 2-clause BSD (που υπάρχει βέβαια κ είναι αυτό ακριβώς το πράγμα ;) ).

Creative Commons#

http://creativecommons.org/about/licenses

Καταρχήν πρόκειται για οργανισμό κ όχι άδεια. Παράγει κ διαχειρίζεται όμως 6+ ανοιχτές άδειες, σε διάφορες "γεύσεις", (partial) copyleft, permissive κλπ. Δεν έχουν να πουν τίποτα καινούργιο σε σχέση με τις κλασσικές άδειες, όμως:

  1. Πρώτο στόχο βάζουν τέχνες κ όχι software, κ ιδιαίτερα μουσική, βίντεο, κείμενα κ ιστοσελίδες.
  2. Δίνουν μεγάλη έμφαση στην "προσβασιμότητα". Προσφέρουν links, logos κλπ που μπορούν να στείλουν το χρήστη σε μια σύντομη -κ κυρίως απλή- εξήγηση της εκάστοτε άδειας, σε άπειρες γλώσσες. Πχ:

Υπάρχουν 6 βασικές άδειες CC:

  1. Attribution (cc-by): permissive, παρόμια κ συμβατή με BSD/Χ11
  2. Attribution Share Alike (cc-by-sa): copyleft, παρόμοια κ συμβατή με GPL
  3. Attribution No Derivatives (cc-by-nd): permissive, αλλά επιτρέπει μόνο αυτούσια αντιγραφή κ διανομή του κώδικα, όχι μεταβολές
  4. Attribution Non-Commercial (cc-by-nc): permissive, αλλά δεν επιτρέπει την εμπορική χρήση
  5. Attribution Non-Commercial Share Alike (cc-by-nc-sa): copyleft, κ δεν επιτρέπει την εμπορική χρήση
  6. Attribution Non-Commercial No Derivatives (cc-by-nc-nd): permissive, αλλά χωρίς μεταβολές κ όχι για εμπορική χρήση

Πέρα από αυτές τις 6, το CC προσφέρει κ τρεις άδειες ειδικά για software, τις cc-gpl, cc-lgpl, και cc-bsd. Πρόκειται για τις αντίστοιχες άδειες (GPL, LGPL και BSD), τυλιγμένες σε ένα CC "πακέτο". Προσφέρουν μια απλοποιημένη κ πλήρως μεταφρασμένη σελίδα για την κάθε άδεια, κ στην περίπτωση της (L)GPL, links στις σελίδες με τα πλήρη κείμενα.

Δώσε αστέρια!

MO: (ψήφοι: 0)

Comments

Τα παραπάνω είναι αποτέλεσμα προσωπικής έρευνας γιατί με απασχολεί το ζήτημα, κυρίως στο θέμα των ανοιχτών αδειών χρήσης κ (open) hardware.

Δεν είμαι σε καμία περίπτωση νομικός, μη τα πάρετε όλα τοις μετρητοίς. Είναι απλά μια περίληψη από τις σημειώσεις μου μετά από πολλές ώρες ανάγνωσης.

-- gnu_labis

Το Linux ΔΕΝ είναι Windows!!!

Πολύ ενδιαφέρουσα παρουσίαση, gnulabis.

Νομίζω ότι θα μπορούσες να αναφέρεις κάπου και το public domain, όπου ο developer διανέμει τον κώδικα όπως είναι χωρίς να ζητάει τίποτε από κανέναν (ούτε καν αναφορά στο όνομά του) εκτός ίσως αν θεωρείς ότι υπάγεται στις permissive άδειες.

http://www.gnu.org/philosophy/categories.html#PublicDomainSoftware

Ενα χαζό ερώτημα που είχα πάντα είναι αν κάποια από αυτές τις άδειες ισχύει ως έχει στο ελληνικό δίκαιο.

Δεν βλέπω το λόγο να μην ισχύουν, μια και συνήθως τα θέματα "πνευματικής ιδιοκτησίας" καλύπτονται από διεθνείς συνθήκες, αλλά ίσως κάποιος ξέρει να μας διαφωτίσει περισσότερο.

και μια μικρη συμπληρωση.

οι copyleft αδειες που αναφερει ο μαν ειναι οι λεγομενες Προστατευτικες διοτι οπως λεει ο ιδιος, προστατευουν/κατοχυρωνουν τον αρχικο δημιουργο

η πιο διαδεδομενη ειναι σιγουρα η GPL [και ταυτοχρονα η πιο διαδεδομενη αδεια ΕΛΛΑΚ.]

οι permissive αδειες ειναι οι λεγομενες Μη Προστατευτικες αφου δεν απορεει απο αυτες καμια υποχρεωση προς τον αρχικο

δημιουργο, κλασσικη αδεια τετοιου ειδους ειναι η BSD αδεια [που ειναι ισως η δευτερη πιο διαδεδομενη αδεια ΕΛΛΑΚ.]

 

Το Free Software Foundation αποδεχεται μονο τις Προστατευτικες -Copyleft αδειες.

Το Open Source Initiative αποδεχεται και τις μη Προστατευτικες -Permissive αδειες χρησης.

Αυτη ειναι μια πολυ βασικη διαφορα μεταξυ αυτων των δυο μεγαλων ιδρυματων.