Ελεύθερο λογισμικόείναι ζήτημα ελευθερίας, όχι κόστους. Για να κατανοήσετε τον όρο αυτό θα πρέπει να σκέφτεστε τη λέξη
freeόπως ο
ελεύθερος λόγος (free speech)και όχι η
δωρεάν μπίρα (free beer).
Το Ελεύθερο λογισμικό παρέχει στους χρήστες την ελευθερία να εκτελούν, αντιγράφουν, διανέμουν, μελετούν, τροποποιούν και βελτιώνουν το Ελεύθερο λογισμικό. Για την ακρίβεια, αναφέρεται σε τέσσερις βασικές ελευθερίες:
- Την ελευθερία να εκτελείτε το πρόγραμμα για οποιονδήποτε σκοπό (ελευθερία 0).
- Την ελευθερία να μελετάτε τον τρόπο λειτουργίας του προγράμματος και να το προσαρμόζετε στις ανάγκες σας (ελευθερία 1). Η πρόσβαση στον πηγαίο κώδικα είναι προϋπόθεση για να ισχύει κάτι τέτοιο.
- Την ελευθερία να αναδιανέμετε αντίγραφα του προγράμματος ώστε να βοηθάτε το συνάνθρωπο σας. (ελευθερία 2).
- Την ελευθερία να βελτιώνετε το πρόγραμμα και να δημοσιεύετε τις βελτιώσεις που έχετε κάνει στο ευρύ κοινό, ώστε να επωφεληθεί ολόκληρη η κοινότητα (ελευθερία 3). Η πρόσβαση στον πηγαίο κώδικα είναι προϋπόθεση για να ισχύει κάτι τέτοιο.
Θα πρέπει επίσης να έχετε την ελευθερία να κάνετε τροποποιήσεις και να τις χρησιμοποιείτε ιδιωτικά στην δουλειά ή για διασκέδαση, χωρίς να χρειάζεται να το αναφέρετε. Αν δημοσιεύσετε τις αλλαγές σας, δεν είστε υποχρεωμένοι να ειδοποιήσετε κάποιο συγκεκριμένο άτομο.
Η ελευθερία της χρήσης ενός προγράμματος σημαίνει πως δίδεται η ελευθερία σε κάθε άτομο ή επιχείρηση να το χρησιμοποιήσει σε κάθε είδους υπολογιστικό σύστημα, για κάθε είδος εργασίας χωρίς να είναι υποχρεωμένο να επικοινωνήσει εκ των προτέρων με τον προγραμματιστή ή με κάποια άλλη οντότητα. Σε αυτή την ελευθερία, είναι η άποψη του χρήστη που έχει σημασία, και όχι η άποψη του κατασκευαστή. Εσείς, ως χρήστες είστε ελεύθεροι να εκτελείτε το πρόγραμμα για τους δικούς σας λόγους, και αν το διανέμετε σε οποιονδήποτε άλλο άνθρωπο, τότε και εκείνος είναι ελεύθερος να το εκτελεί για τους δικούς του λόγους, δίχως να έχετε το δικαίωμα να του υποβάλετε δικές σας κυρώσεις.
Η ελευθερία της αναδιανομής αντιγράφων θα πρέπει να περιλαμβάνει εκτελέσιμες (executable) μορφές του προγράμματος, καθώς και τον πηγαίο κώδικα, τόσο για την τροποποιημένη όσο και για την αρχική έκδοση του προγράμματος. (Η διανομή προγραμμάτων σε εκτελέσιμη μορφή είναι απαραίτητη για εγκατεστημένα ελεύθερα λειτουργικά συστήματα). Θεωρείται δεκτό όταν δεν υπάρχει τρόπος να δημιουργηθεί η εκτελέσιμη μορφή για κάποιο συγκεκριμένο πρόγραμμα (από τη στιγμή που μερικές γλώσσες δεν υποστηρίζουν κάτι τέτοιο), αλλά θα πρέπει να έχετε την ελευθερία να αναδιανέμετε τέτοιες μορφές σε περίπτωση που αναπτύξετε ή βρείτε κάποιο δικό σας τρόπο να τις δημιουργήσετε).
Για να ισχύουν πρακτικά οι τέσσερις βασικές ελευθερίες, και να μπορείτε να δημοσιεύετε βελτιωμένες εκδόσεις, θα πρέπει να έχετε πρόσβαση στον πηγαίο κώδικα του προγράμματος. Επομένως, η πρόσβαση στον πηγαίο κώδικα είναι απαραίτητη προϋπόθεση στο ελεύθερο λογισμικό.
Μία σημαντική μέθοδος τροποποίησης ενός προγράμματος είναι η συγχώνευση του με διαθέσιμες ελεύθερες υπορουτίνες και υποπρογράμματα (modules). Εάν η άδεια του προγράμματος αναφέρει ότι δεν έχετε το δικαίωμα να το συγχωνεύσετε με ένα υπάρχον υποπρόγραμμα, για παράδειγμα εάν απαιτεί να είστε εσείς αυτός που κατέχει τα πνευματικά δικαιώματα (copyright holder) για οποιονδήποτε κώδικα έχετε προσθέσει, τότε η άδεια είναι πολύ περιοριστική ώστε να μπορεί να θεωρηθεί ελεύθερη (δηλαδή άδεια ελεύθερου λογισμικού).
Αυτές οι ελευθερίες θα είναι πραγματικές και αμετάκλητες όσο δεν κάνετε κάτι λάθος. Αν ο προγραμματιστής του λογισμικού ανακαλέσει την άδεια, χωρίς να έχετε δώσει εσείς την αφορμή τότε το λογισμικό δεν θεωρείται ελεύθερο.
Ωστόσο, μερικοί κανόνες που αφορούν τον τρόπο με τον οποίο διανέμεται το ελεύθερο λογισμικό είναι αποδεκτοί όταν δεν συγκρούονται με τις τέσσερις βασικές ελευθερίες. Για παράδειγμα, στην άδεια αντιγραφής (copyleft) όταν αναδιανέμετε κάποιο πρόγραμμα, δεν μπορείτε να προσθέσετε περιορισμούς ώστε να μειώσετε από τον χρήστη τις τέσσερις βασικές ελευθερίες. Αυτός ο κανόνας δεν συγκρούεται με τις βασικές ελευθερίες, αλλά τις προστατεύει.
Μπορεί να έχετε πληρώσει για να προμηθευτείτε κάποια αντίγραφα ελεύθερου λογισμικού, ή να έχετε προμηθευτεί τα αντίγραφα χωρίς κάποια οικονομική επιβάρυνση. Ανεξαρτήτως όμως από τον τρόπο προμήθειας, θα πρέπει πάντα να έχετε την ελευθερία να τροποποιείτε το λογισμικό, ακόμα και να πουλάτε αντίγραφα του.
Ελεύθερο λογισμικόδεν σημαίνει
μη-εμπορικό. Ένα ελεύθερο πρόγραμμα θα πρέπει να είναι διαθέσιμο για εμπορική χρήση, εμπορική ανάπτυξη ή εμπορική διανομή. Η εμπορική ανάπτυξη του ελευθέρου λογισμικού δεν είναι ασυνήθιστη. Αντιθέτως, τέτοιου είδους ελεύθερο λογισμικό είναι πολύ σημαντικό να υπάρχει.
Κανόνες για την διαδικασία πακεταρίσματος (packaging) μίας τροποποιημένης έκδοσης είναι αποδεκτοί όταν δεν σας περιορίζουν ουσιαστικά την ελευθερία να δημοσιεύετε τις διάφορες τροποποιημένες εκδόσεις. Κανόνες του τύπου
εάν διαθέσετε το πρόγραμμα με τον τάδε τρόπο θα πρέπει να τον διαθέσετε επίσης και με τον δείνα τρόποείναι αποδεκτοί, με την ίδια προϋπόθεση. (Σημειώστε ότι ένας τέτοιος κανόνας σας δίνει επίσης τη δυνατότητα να μη δημοσιεύσετε την δική σας έκδοση του προγράμματος καθόλου). Κανόνες οι οποίοι απαιτούν τη δημοσίευση του πηγαίου κώδικα στους χρήστες των προγραμμάτων όλων των εκδόσεων που έχετε διαθέσει δημόσια είναι επίσης αποδεκτοί. Επίσης είναι αποδεκτό σε μία άδεια ελεύθερου λογισμικού να υπάρχουν και άλλου είδους απαιτήσεις, όπως πχ εάν έχετε διανέμει μία τροποποιημένη έκδοση ενός προγράμματος και κάποιος προηγούμενος κατασκευαστής ζητήσει αντίγραφο του, θα πρέπει να του αποστείλετε ένα, ή να δηλώσετε τον εαυτό σας στις μετατροπές που κάνατε.
Στο έργο GNU, χρησιμοποιούμε την
άδεια αντιγραφής (copyleft)για να προστατεύσουμε αυτές τις ελευθερίες νομικά και για όλους. Βέβαια υπάρχει και ελεύθερο λογισμικό το οποίο δεν χρησιμοποιεί την άδεια αντιγραφής (non-copylefted). Προσωπικά, πιστεύουμε ότι υπάρχουν αρκετοί σημαντικοί λόγοι για τους οποίους θα πρέπει να προτιμάτε τη χρήση της άδειας αντιγραφής. Παρόλα αυτά, ακόμη και στην περίπτωση που το πρόγραμμα σας δεν δημοσιεύεται υπό την άδεια αντιγραφής, μπορούμε να το χρησιμοποιήσουμε.
Δείτε τις Κατηγορίες Ελεύθερου Λογισμικού για μία αναφορά της συσχέτισης μεταξύ εννοιών όπως
ελεύθερο λογισμικό,
λογισμικό που χρησιμοποιεί την άδεια αντιγραφής, καθώς και άλλων κατηγοριών λογισμικού.
Πολλές φορές κρατικοί κανονισμοί έλεγχου εξαγωγών και εμπορικά σωματεία (trade sanctions) μπορούν να περιορίσουν την ελευθερία σας να διανέμετε αντίγραφα προγραμμάτων παγκοσμίως. Οι προγραμματιστές δεν μπορούν να εξουδετερώσουν ή να παρακάμψουν τέτοιους περιορισμούς, αλλά αυτό που μπορούν και πρέπει να κάνουν είναι να αρνηθούν να τους επιβάλλουν για την χρήση του προγράμματος. Με αυτόν τον τρόπο, οι περιορισμοί δεν θα επηρεάσουν δραστηριότητες και ανθρώπους εκτός της δικαιοδοσίας αυτών των κυβερνήσεων.
Οι περισσότερες άδειες ελεύθερου λογισμικού βασίζονται στα πνευματικά δικαιώματα (copyright) και υπάρχουν όρια ως προς το είδος των απαιτήσεων που μπορούν να επιβληθούν μέσω αυτών. Εάν μία άδεια βασισμένη στα πνευματικά δικαιώματα σέβεται την ελευθερία με βάση την παραπάνω περιγραφή, είναι απίθανο να έχει κάποιο άλλο πρόβλημα που δεν είναι αναμενόμενο (αν και αυτό συμβαίνει περιστασιακά). Ωστόσο, κάποιες άδειες ελεύθερου λογισμικού είναι βασισμένες σε συμβόλαια και τα συμβόλαια μπορούν να επιβάλλουν ένα πολύ μεγαλύτερο εύρος περιορισμών. Αυτό σημαίνει πως υπάρχουν πολλοί τρόποι με τους οποίους μία τέτοια άδεια μπορεί να είναι απαράδεκτα περιοριστική και ανελεύθερη.
Δεν είναι δυνατόν να αναφέρουμε όλους τους πιθανούς περιορισμούς συμβολαίων που θα ήταν μη αποδεκτοί. Εάν μία άδεια βασισμένη σε συμβόλαια περιορίζει τον χρήστη κατά ένα παράξενο τρόπο που οι άδειες βασισμένες στα πνευματικά δικαιώματα αδυνατούν, και ο οποίος δεν αναφέρεται εδώ ως νόμιμος, θα πρέπει να το σκεφτούμε και πιθανότατα θα αποφασίσουμε πως είναι ανελεύθερη.
Όταν μιλάμε για το ελεύθερο λογισμικό, είναι καλό να αποφεύγουμε όρους όπως
το δίνει έτσι (give away)ή
δωρεάν (for free), διότι αυτοί υπονοούν ότι το θέμα είναι το κόστος και όχι η ελευθερία. Κάποιοι δημοφιλείς όροι όπως
πειρατείαενσωματώνουν απόψεις που ελπίζουμε πως δεν θα ασπαστείτε. Δείτε το άρθρο Λέξεις που προκαλούν σύγχυση και πρέπει να αποφεύγονται για μία συζήτηση σχετικά με αυτούς τους όρους. Έχουμε επίσης και μία λίστα μεταφράσεων του όρου
ελεύθερο λογισμικόσε διάφορες γλώσσες.
Τέλος, αξίζει να σημειωθεί πως κριτήρια σαν και αυτά που υπάρχουν στον ορισμό του ελεύθερου λογισμικού απαιτούν προσεκτική σκέψη για την ερμηνεία τους. Για να αποφασιστεί κατά πόσο μία συγκεκριμένη άδεια κατατάσσεται ως άδεια ελεύθερου λογισμικού, την κρίνουμε για το κατά πόσο πληρεί το πνεύμα και την πληρότητα των κριτηρίων. Εάν μία άδεια επιβάλλει παράλογους περιορισμούς, την απορρίπτουμε, ακόμα και αν δεν τους αναμέναμε στα κριτήρια. Πολλές φορές ή απαίτηση κάποιας άδειας δημιουργεί ένα ζήτημα που απαιτεί εκτενή σκέψη, συμπεριλαμβανομένων και συζητήσεων με δικηγόρο, πριν αποφασίσουμε αν η απαίτηση είναι αποδεκτή. Όταν καταλήγουμε σε ένα συμπέρασμα για ένα καινούργιο θέμα, συχνά ανανεώνουμε αυτά τα κριτήρια για να είναι πιο εύκολο να δούμε εάν συγκεκριμένες άδειες είναι δεκτές ή όχι.
Εάν σας ενδιαφέρει το κατά πόσο μία συγκεκριμένη άδεια κατατάσσεται στις άδειες ελευθέρου λογισμικού, δείτε τη λίστα με τις άδειες μας. Εάν η άδεια που σας ενδιαφέρει δεν είναι στην λίστα, μπορείτε να μας ρωτήσετε στέλνοντας ηλεκτρονική αλληλογραφία στο
Εάν σκέφτεστε να συντάξετε καινούργια άδεια, παρακαλούμε επικοινωνήστε με το ΙΕΛ με ηλεκτρονική αλληλογραφία στην παραπάνω διεύθυνση. Η εμφάνιση διαφορετικών ελεύθερων αδειών σημαίνει περισσότερη δουλειά από μέρους των χρηστών στην κατανόηση τους. Ίσως τελικά σας βοηθήσουμε να βρείτε μία υπάρχουσα άδεια Ελεύθερου Λογισμικού που ανταποκρίνεται στις ανάγκες σας.
Εάν αυτό δεν είναι δυνατόν, και χρειάζεστε καινούργια άδεια, με τη βοήθειά μας μπορείτε να εξασφαλίσετε ότι αυτή η άδεια είναι πράγματι άδεια ελεύθερου λογισμικού και να αποφύγετε διάφορα πρακτικά προβλήματα.
No comments:
Post a Comment