RC_Andreas
Administrator
Ελεύθερο Λογισμικό / Λογισμικό Ανοικτού Κώδικα: τι είναι και ποια τα προτερήματα του έναντι του Ιδιόκτητου Λογισμικού
Εισαγωγή / Περίληψη
Οι περισσότεροι από εμάς έχουμε αρκετή εμπειρία με το ιδιόκτητο λογισμικού. Είναι το λογισμικό που βρίσκουμε σχεδόν κατά αποκλειστικότητα στα ράφια των καταστημάτων. Το αγοράζουμε και το εγκαθιστούμε στον Η/Υ μας αφού φροντίσουμε να εισάγουμε έναν "σειριακό κωδικό". Μετά καμιά φορά πρέπει να κάνουμε και κάτι που λέγεται "ενεργοποίηση". Αν ένας φίλος μας το δει και του αρέσει αργά η γρήγορα θα συνειδητοποιήσουμε ότι οι κωδικοί και οι ενεργοποιήσεις έχουν σαν στόχο να μην μπορέσουμε να του δώσουμε ένα αντίγραφο ή το δικό μας CD για να το εγκαταστήσει και αυτός. Για την ακρίβεια κάποια στιγμή που από περιέργεια θα διαβάσουμε τις πρώτες οθόνες που εμφανίζονται κατά την εγκατάσταση θα μάθουμε πως δεν είναι απλά δύσκολο να το δώσουμε στο φίλο μας, είναι επίσης παράνομο. Επίσης οι ίδιες οθόνες συχνά αναφέρουν πως είναι παράνομα κι ένα σωρό άλλα πράγματα που ούτε καν υποψιαζόμασταν. Για παράδειγμα μερικές φορές αναφέρουν πως δεν επιτρέπεται να εγκαταστήσουμε το λογισμικό σε Η/Υ με διπλό επεξεργαστή, πως δεν επιτρέπεται να δημοσιεύσουμε μετρήσεις για τις επιδόσεις του, πως δεν επιτρέπεται να το εγκαταστήσουμε σε οποιοδήποτε άλλο Η/Υ εκτός από αυτόν με τον οποίο το αγοράσαμε, ενώ επίσης σχεδόν πάντα αναφέρουν πως απαγορεύεται η μελέτη και η τροποποίηση του λογισμικού. Οι προγραμματιστές μάλιστα ξέρουν, πως ακόμα και αν δεν απαγορευόταν, έχουν παραλάβει το λογισμικό σε μια μορφή που κάνει εξαιρετικά δύσκολη έως αδύνατη οποιαδήποτε εις βάθος μελέτη ή τροποποίηση.
Όλα τα παραπάνω είναι πολύ διαφορετικά στην περίπτωση του Ελεύθερου Λογισμικού / Λογισμικού Ανοικτού Κώδικα (ΕΛ/ΛΑΚ). Παρότι μπορεί κάλλιστα να το βρούμε στα ράφια των καταστημάτων και να πληρώσουμε για να το αγοράσουμε θα το βρούμε επίσης δωρεάν διαθέσιμο και στο Internet. Μετά θα το εγκαταστήσουμε σε όσους Η/Υ θέλουμε, θα το εκτελέσουμε για όποιο σκοπό θέλουμε, όπου θέλουμε και για όσα χρόνια θέλουμε ενω επιπλέον θα μπορούμε να το χαρίσουμε ή να το πουλήσουμε σε όποιον θέλουμε. Επίσης αν εμείς, οι κάποιοι φίλοι ή συνεργάτες μας, έχουμε γνώσεις προγραμματισμού, τότε μπορούμε να το μελετήσουμε, να το τροποποιήσουμε και να το βελτιώσουμε. Στην πραγματικότητα, πολλοί προγραμματιστές συμμετέχουν ακριβώς με αυτό τον τρόπο στην ανάπτυξη χιλιάδων εφαρμογών ΕΛ/ΛΑΚ.
Τα παραπάνω ακούγονται σε όσους δεν έχουν προσωπική εμπειρία με το ΕΛ/ΛΑΚ εντελώς ουτοπικά αλλά αποτελούν την καθημερινή πραγματικότητα για πολλά άτομα, εταιρείες και οργανισμούς που τα τελευταία χρόνια αξιοποιούν το ΕΛ/ΛΑΚ σε εργασίας τετριμμένες, πρωτοποριακές, απλές, περίπλοκες, ασήμαντες ή κρίσιμες.
Οι προηγούμενες παράγραφοι αποτελούν μια σύντομη περιγραφή και μια καλή προσέγγιση αλλά δεν αποκαλύπτουν αρκετές και σημαντικές λεπτομέρειες για το ΕΛ/ΛΑΚ και τα προτερήματα του έναντι του Ιδιόκτητου Λογισμικού. Το κείμενο που ακολουθεί έχει ακριβώς αυτό το σκοπό και πιστεύω ότι θα ανταμείψει για τον χρόνο που θα του αφιερώσετε (ναι, σωστά μαντέψατε - ακολουθεί πολύ κείμενο).
Θα ξεκινήσουμε φροντίζοντας να σιγουρευτούμε ότι όλοι κατέχουν κάποιες βασικές γνώσεις σχετικά με την ανάπτυξη και την νομοθεσία που διέπει τη διάθεση του λογισμικού . Στη συνέχεια θα εξετάσουμε τι σημαίνει να είναι ένα λογισμικό Ιδιόκτητο και πια μειονεκτήματα αυτό συνεπάγεται. Σε αυτό το σημείο θα μπορούμε πλέον να αποσαφηνίσουμε τι σημαίνει να είναι ένα λογισμικό ΕΛ/ΛΑΚ και πια πλεονεκτήματα αυτό συνεπάγεται. Ξεκινάμε λοιπόν με τις βασικές γνώσεις.
Βασικές γνώσεις
Τα μικρά μυστικά της τέχνης του προγραμματιστή
(αν έχετε κάποιες γνώσεις προγραμματισμού μπορείτε να προσπεράσετε αυτή την παράγραφο. Οι υπόλοιποι μην ανησυχείτε, δεν χρειάζεται να μάθετε προγραμματισμό. Θα αποκτήσετε απλώς μια αμυδρή αλλά επαρκή ιδέα για δυο-τρεις βασικές αρχές)
Το λογισμικό, ξεκινά την ζωή του ως ένας μακροσκελής κατάλογος από προτάσεις, σε μια λίγο-πολύ κωδικοποιημένη μορφή βασισμένη στην αγγλική γλώσσα. Φαντάζομαι ότι ο παραπάνω ορισμός δεν φωτίζει ιδιαίτερα το θέμα αλλά ένα παράδειγμα μάλλον θα είναι αρκετό. Ορίστε λοιπόν μια λίστα με αναλυτικές οδηγίες για να βρείτε την έξοδο σας από έναν δαιδαλώδη λαβύρινθο γραμμένη με στυλ που μοιάζει με τον πηγαίο κώδικα ενός προγράμματος:
AHEAD 5 STEPS
TURN 90 DEGREES CLOCKWISE
$StepsToWalk=10
AHEAD $StepsToWalk STEPS /* at this point we should have reached a door */
TURN KNOB 180 DEGREES CLOCKWISE
WAIT
DOING NOTHING
UNTIL DOOR OPENS
CROSS DOOR
TURN -90 DEGREES CLOCKWISE...
Είναι φανερό πως οι προτάσεις αυτές αποτελούνται μεν από συνηθισμένα γράμματα, αριθμούς και λίγα μαθηματικά κυρίως σύμβολα αλλά οι λέξεις και η σύνταξη θυμίζει περισσότερο κάποια περίεργη διασταύρωση αγγλικών και άλγεβρας. Και μπορεί το παράδειγμα μας να μοιάζει λίγο-πολύ κατανοητό αλλά στην περίπτωση ενός περίπλοκου προγράμματος τα πράγματα είναι σαφώς πιο... στρυφνά. Ευτυχώς με την προσθήκη σχολίων και αρκετής εμπειρίας το τελικό αποτέλεσμα είναι τελικά κατανοητό στους προγραμματιστές και ονομάζεται πηγαίος κώδικας (source code).
Οι προγραμματιστές αναπτύσσουν λογισμικό δουλεύοντας σχεδόν αποκλειστικά σε αυτήν τη μορφή τον πηγαίο κώδικα. Στην συνέχεια ο πηγαίος κώδικας μπορεί να δοθεί ως είναι στον Η/Υ για άμεση εκτέλεση αλλά η ταχύτητα δεν θα είναι η μέγιστη δυνατή. Για να επιτύχουμε την μέγιστη ταχύτητα ο πηγαίος κώδικας περνά από ένα ειδικό πρόγραμμα. Αυτό τον απογυμνώνει από καθετί περιττό ενώ επίσης συμπυκνώνει την ουσία του σε μία νέα μορφή την οποία ο Η/Υ μπορεί να εκτελέσει χωρίς καμιά ενδιάμεση μετατροπή - δηλαδή γρήγορα. Η μορφή αυτή καλείται object code ή εκτελέσιμος κώδικας. Λόγο της απογύμνωσης και της συμπύκνωσης ο εκτελέσιμος κώδικας είναι αδύνατον να μετατραπεί με αυτόματο τρόπο στην αρχική μορφή πηγαίου κώδικα χωρίς να χαθούν πολλές και σημαντικές πληροφορίες. Αν ένας προγραμματιστής είναι αναγκασμένος να εργαστεί μόνο με τον εκτελέσιμο κώδικα και εφόσον έχει την σχετική εμπειρία ίσως να καταφέρει να εργαστεί αλλά η πορεία του θα είναι και εξαιρετικά επίπονη και εξαιρετικά αργή. Για την ακρίβεια το επίπεδο δυσκολίας και καθυστέρησης είναι τέτοιο που οτιδήποτε πέραν από απλές αλλαγές καθίσταται αδύνατο.
Από όλες τις παραπάνω λεπτομέρειες πρέπει να θυμάστε πως το λογισμικό μπορεί να προσφερθεί σε δυο μορφές: Ως πηγαίος κώδικας και ως εκτελέσιμος κώδικας. Αντίθετα από τον πηγαίο κώδικα, εκτελέσιμος κώδικας ΔΕΝ επιτρέπει ούτε εις βάθος μελέτη ούτε την πραγματοποίηση ουσιαστικών αλλαγών και βελτιώσεων.
Λίγα λόγια για το σχετικό νομικό πλαίσιο...
Καταρχήν σημειώστε πως τα παρακάτω δεν προέρχονται από κάποιον δικηγόρο αλλά από έναν τεχνικό που όμως έχει προσπαθήσει να καταλάβει τα βασικά.
Το λογισμικό ως πνευματικό προϊόν τόσο στην μορφή του ως πηγαίος κώδικας όσο και ως εκτελέσιμος κώδικας καλύπτεται από την ελληνική νομοθεσία περί πνευματικής ιδιοκτησίας λίγο πολύ όπως και ένα μυθιστόρημα. Ως αποτέλεσμα ο δημιουργός του έχει σχεδόν αποκλειστικά δικαιώματα σε ότι αφορά την χρήση και εκμετάλλευση του λογισμικού που αναπτύσσει για κάμποσες δεκαετίες. Κάθε άλλος που θέλει να εκμεταλλευτεί το λογισμικό με κάποιο τρόπο (π.χ. απλά να το χρησιμοποιήσει) πρέπει να έχει άδεια από τον δημιουργό.
Το σκεπτικό είναι πως ο δημιουργός μπορεί να παρέχει τις σχετικές άδειες στους ενδιαφερόμενους έναντι κάποιου τιμήματος ώστε τελικά να ανταμειφθεί για την πνευματική του εργασία. Με αυτό τον τρόπο ο νομοθέτης θεωρεί ότι δίνει τα απαιτούμενα κίνητρα στους καλούς προγραμματιστές ώστε να αφιερώσουν περισσότερο χρόνο στην παραγωγή χρήσιμου κώδικά (ενώ άλλοι νομοθέτες με ποιο Πλατωνική προσέγγιση πιστεύουν επίσης ότι προστατεύουν έναν ιδιαίτερο ψυχικό δεσμό μεταξύ δημιουργού και δημιουργήματος).
Τελικά μετά από αρκετά χρόνια ο νόμος επιβάλει το λογισμικό (στην μορφή που έχει δημοσιευτεί) να γίνει αγαθό ελεύθερο για όλους. Στο ενδιάμεσο όμως διάστημα, το λογισμικό είναι σχεδόν σαν ένα ιδιωτικό αγροτεμάχιο. Κάθε τρίτος που επιθυμεί να κάνει οποιαδήποτε χρήση του αγρού (π.χ. να το καλλιεργήσει, να το διασχίσει ή να κυνηγήσει εντός αυτού) θα πρέπει να έχει την άδεια του ιδιοκτήτη.
Ιδιόκτητο λογισμικό
Θα εξετάσουμε πρώτο και διεξοδικά το ιδιόκτητο λογισμικό, για δύο λόγους:
Εδώ και τουλάχιστον 2 δεκαετίες η συντριπτική πλειοψηφία του λογισμικού που καταναλώνει ο τυπικός χρήστης ενός προσωπικού Η/Υ φτάνει στα χέρια του ως "πακέτο". Το πακέτο περιλαμβάνει συνήθως ένα φυσικό μέσο (π.χ. CD) στο οποίο είναι αποθηκευμένο το λογισμικό σε μορφή εκτελέσιμου κώδικα και μόνον. Αν ρωτήσετε τον αγοραστή αυτός συνήθως θα σας πει πως "αγόρασε το τάδε πακέτο λογισμικού". Η φράση αυτή οδηγεί εύκολα σε παρεξηγήσεις διότι συγκαλύπτει το γεγονός πως ο αγοραστής δεν απέκτησε το λογισμικό αυτό καθ' αυτό αλλά μια άδεια χρήσης του λογισμικού υπό κάποιους απολύτως συγκεκριμένους όρους
Επειδή η παραπάνω παρατήρηση είναι πολύ σημαντική είναι καλό να αποσαφηνιστεί με μία παραβολή:
Ο Γιάννης ζει σε ένα χωρίο 10 χιλιόμετρα από την πόλη. Το χωρίο του παρέχει τα περισσότερα από όσα χρειάζεται, αλλά μια στο τόσο θέλει να πηγαίνει και στην πόλη. Ο γείτονας του, ταλαντούχος μηχανολόγος μηχανικός, έχει κατασκευάσει με κόπο και μεράκι ένα αρκετά καλό αυτοκίνητο. Επειδή όμως είναι απορροφημένος με τα σχέδια και τις κατασκευές του το χρησιμοποιεί σπάνια. Προτείνει λοιπόν στον Γιάννη, αντί να ξοδέψει ένα σωρό λεφτά για την αγορά ενός αυτοκινήτου, να του παραχωρήσει μια άδεια χρήσης του δικού του. Φυσικά θέτει κάποιους όρους: θα το χρησιμοποιεί αυτός και μόνο αυτός, στην διαδρομή για την πόλη, το πολύ μια φορά τη βδομάδα και εφόσον συμπληρώνει την απαιτούμενη βενζίνη κάθε φορά. Ο Γιάννης σαν αντάλλαγμα του δίνει 1.000,00 ευρώ και παραλαμβάνει αντίγραφο από τα κλειδιά και μια άδεια χρήσης του αυτοκινήτου. Δηλαδή μια σελίδα κειμένου που αναφέρει τα παραπάνω δικαιώματα και υποχρεώσεις του σχετικά με το αυτοκίνητο με την υπογραφή του ιδιοκτήτη του στο τέλος.
Είναι σαφές πως ο Γιάννης της ιστορίας μας δεν αγόρασε το αυτοκίνητο αλλά ένα σύνολο από δικαιώματα σχετικά με αυτό (και ένα αντίγραφο από τα κλειδιά). Με ακριβώς τον ίδιο τρόπο, οι αγοραστές λογισμικού δεν αγοράζουν το λογισμικό αλλά κάποια απολύτως συγκεκριμένα και περιορισμένα δικαιώματα επί αυτού και ένα αντίγραφο του εκτελέσιμου κώδικα του λογισμικού.
Το λογισμικό που διατίθεται με αυτόν τον τρόπο χαρακτηρίζεται ως ιδιόκτητο (proprietary) επειδή παραμένει στην αποκλειστική ιδιοκτησία του κατασκευαστή του[cs]. Ο κατασκευαστής συνήθως παραχωρεί τόσο λίγα δικαιώματα που είναι σωστότερο να συζητάμε για το τι περιορισμοί τίθενται. Ας τους δούμε.
Περιορισμοί σχετικοί με το ιδιόκτητο λογισμικό που απασχολούν τον περισσότερο κόσμο
Κάθε λογισμικό συνοδεύεται από διαφορετικούς περιορισμούς σχετικά με την χρήση του. Για να δούμε τους πιο δημοφιλείς περιορισμούς θα εξετάσουμε δύο από τα διασημότερα ιδιόκτητα προγράμματα στον κόσμο, το Microsoft Office και τα Microsoft Windows σε μία επίσης δημοφιλέστατη εκδοχή τους (πρόκειται για την μορφή ΟΕΜ όπως ονομάζεται η εκδοχή που περιλαμβάνεται προεγκατεστημένη σε έναν νέο Η/Υ). Η πηγή μας θα είναι η σχετική λίστα με τις συνήθεις ερωτήσεις (FAQ) από το αγγλικό site της εταιρείας που τα διαθέτει:
Ερ. Πέρυσι αγόρασα έναν Η/Υ με τα windows. Ο Η/Υ αυτός χάλασε χτες. Μπορώ να αγοράσω έναν καινούργιο Η/Υ και να εγκαταστήσω σε αυτόν τα Windows που ήδη έχω; Απ. ΟΧΙ. (Ναι, το ξέρω ότι μερικοί δεν μπορείτε να το πιστέψετε, είναι κατανοητό)
Ερ. Αγόρασα έναν Η/Υ με προεγκατεστημένο το Office 2003. Δυστυχώς το Office 2003 παρουσιάζει μια ασυμβατότητα με το λεξικό μου η οποία δεν υπήρχε στο Office XP. Μπορώ να εγκαταστήσω το προγενέστερο Office XP στη θέση του νεότερου πλην όμως ακατάλληλου για εμένα Office 2003; Απ. OXI
Ερ: "Έχω αγοράσει την ελληνική έκδοση του Office. Μπορώ στον ίδιο Η/Υ να εγκαταστήσω και την Γαλλική έκδοση για να καθοδηγώ στα μενού έναν Γάλλο φίλο μου όταν έχει πρόβλημα;" Απ.: "ΌΧΙ πρέπει να αγοράσετε χωριστά ΚΑΙ την γαλλική έκδοση" (για όσους καλοπροαίρετους υποθέτουν πως η γαλλική έκδοση, ίσως να έχει κάποια διαφορά από την ελληνική πέραν των λεκτικών, η απάντηση είναι πως όχι δεν έχει).
Ερ. Αγόρασα έναν Η/Υ με προεγκατεστημένο το Office 2003. Μου φαίνεται πολύ πιο ωραίο από το προηγούμενο! Μπορώ να το εγκαταστήσω και στο φορητό μου; Απ. ΟΧΙ (φυσικά εύκολα μαντεύει κανείς πως αν ρωτήσετε, μπορώ να το δώσω σε ένα φιλό μου; Η απάντηση θα είναι επίσης ΟΧΙ)
Άλλοι περιορισμοί του ιδιόκτητου λογισμικού
Οι παραπάνω είναι οι περιορισμοί που έχουν απασχολήσει τόσο πολύ κόσμο ώστε να συμπεριληφθούν στις "συχνές ερωτήσεις". Θα αναφέρω εδώ μερικούς ακόμα περιορισμούς τους οποίους αντιγράφω από την άδεια χρήσης των Windows XP Home. Η αναφορά θα είναι επιγραμματική και σε μορφή μίνι-ιστορίας για να μην γίνει κουραστική. Ως εκ τούτου ίσως να υστερεί ελαφρά σε ακρίβεια σε ορισμένα σημεία. Με την πρώτη ευκαιρία μπορείτε πάντα να διαβάσετε μια άλλη πολύ λεπτομερή ανάλυση της άδειας χρήσης των Windows XP
Αγόρασα έναν νέο σούπερ Η/Υ με τέσσερις επεξεργαστές. Περίμενα με αγωνία να δω πόσο όμορφα θα είναι να δουλεύω τα προγράμματα μου σε αυτό το τέρας επιδόσεων... μετά ανακάλυψα ότι απαγορεύεται να "τρέξω" τα windows XP σε Η/Υ με τρεις ή περισσότερους επεξεργαστές!
Στο Σύλλογο Ηπειρωτών έχω έναν παλιό Η/Υ με έναν μεγάλο δίσκο και όλοι μας σώζουμε τα έγγραφά μας εκεί. Όταν έκανα αναβάθμιση από Windows 98 σε Windows XP Home ανακάλυψα ότι η άδεια των XP Home δεν μας επιτρέπει να έχουμε πρόσβαση παραπάνω από 5 άτομα ταυτόχρονα... Είμαι σίγουρος πως και τα Windows 95 αλλά και τα "αρχαία" Windows 3.1 λειτουργούσαν κανονικά με περισσότερους χρήστες. Αναρωτιέμαι γιατί την ονομάζουν αναβάθμιση!
Στο σχολείο μας ο συνάδελφος καθηγητής πληροφορικής συνδέεται από τον υπολογιστή του στους 10 Η/Υ της τάξης του μέσω ενός προγράμματος που λέγεται VNC. Με αυτό βλέπει και καθοδηγεί τα παιδιά που κάνουν ασκήσεις καθώς αυτά εργάζονται στους Η/Υ τους. Όταν του είπα ότι αυτό επιτρέπεται μόνο εφόσον το σχολείο αγοράσει 10 επιπλέον άδειες χρήσης των windows XP (μία για κάθε Η/Υ στον οποίο συνδέεται) δεν με πίστεψε.
Ήμουν αποκλεισμένος στην ορεινή Αρκαδία. Δεν είχα παράπονο γιατί είχα νερό, γεμάτη δεξαμενή πετρελαίου και ρεύμα. Το τηλέφωνο δεν λειτουργούσε αλλά αυτό δεν μας ένοιαζε και πολύ. Ήξερα όμως πως επιστρέφοντας στο γραφείο θα με περίμενε ένας τόνος δουλειά. Ευτυχώς είχα μαζί μου το φορητό και θα μπορούσα τουλάχιστον να ξεμπερδέψω με τις μισές υποχρεώσεις. Όταν τον άνοιξα όμως τα windows αρνιόντουσαν να ξεκινήσουν και ζητάγανε κάτι που ονομαζόταν ενεργοποίηση. Στο πλάι υπήρχε μία αναφορά για "κάποια σοβαρή τροποποίηση που είχε γίνει στην σύνθεση του Η/Υ μου"... κοντοστάθηκα για λίγο και μετά από μια αναλαμπή άρχισα να καταριέμαι την κακή μου τύχη και τον -ομολογουμένως αθώο- ανιψιό μου που προσφέρθηκε να μου προσθέσει την τελευταία στιγμή την έξτρα μνήμη που είχα αγοράσει! Τελικά έμεινα εκεί ανήμπορος, να κοιτώ ένα φορητό χωρίς καμία βλάβη και ένα λογισμικό επίσης χωρίς καμία βλάβη να επιμένει πως βάση της άδειας χρήσης ήμουν αναγκασμένος να μην δουλεύω περιμένοντας να συνδεθώ στο internet ή να επικοινωνήσω με την τηλεφωνική εξυπηρέτηση...
Τώρα που θα φύγω για ένα χρόνο στην Αγγλία μήπως να πάρω τον Η/Υ μου μαζί; Μπα! θα πληρώσω ένα σωρό για το υπέρβαρο καλύτερα να τον πουλήσω και να αγοράσω καινούργιο στην Αγγλία... Αχα! θα τον πουλήσω στον Γιώργο που τον είδε καινούργιο και τον ζήλεψε. Tο μόνο κακό είναι ότι αυτός αλλάζει τους Η/Υ σαν τα πουκάμισα οπότε ίσως να πρέπει να του κρύψω πως δεν επιτρέπεται να πουλήσει και τα windows μαζί όταν θα πουλήσει τον Η/Υ. Ωχ! και ούτε να τα εγκαταστήσει σε οποιοδήποτε άλλο δικό του Η/Υ επιτρέπεται. Μήπως να του το νοικιάσω σε μια καλή τιμούλα μέχρι να γυρίσω; Όπα! λάθος ούτε να το νοικιάσω επιτρέπεται. Θεέ μου τι ανόητο μπλέξιμο! Ήθελα να 'ξερα για πιο λόγο υπάρχει αυτός ο περιορισμός της μη ενοικίασης και της μίας μεταπώλησης μόνο!
(η επόμενη ιστορία ίσως σας φανεί απίθανη... συνέβη όμως πέρυσι)
- Γιάννη, έμαθες τι έγινε με αυτό το σφάλμα στον κώδικα των windows το οποίο επιτρέπει σε έναν cracker να πάρει τον έλεγχο του Η/Υ αν απλά εμφανίσεις στην οθόνη σου μια εικόνα που έχει φτιάξει;!
- ε; Μα τι λες τώρα!
- Ναι! είναι τόσο απλό! Επηρεάζει σχεδόν όλες τις εκδόσεις των windows και ξέρουμε ότι ήδη οι crackers το εκμεταλλεύονται!
- Παναγία μου φαντάζομε η Microsoft θα έχει εκδώσει κάποιο patch ε;
- Όχι αλλά μια ανεξάρτητη εταιρεία κυκλοφόρησε ελευθέρα στο internet ένα δικό της patch που αντιμετωπίζει το πρόβλημα.
- Τι μου λες τώρα!; Μα πως και γιατί το κάνανε!;
- η κατάσταση ήταν τραγική και είχανε έναν καλό πελάτη που δεν ήθελε να το διακινδυνέψει οπότε βάλανε δυο καλούς προγραμματιστές μελετήσανε τον συγκεκριμένο κώδικα και βρήκανε την λύση.
- Καλά ο καλός πελάτης γιατί δεν απευθύνθηκε στην Microsoft
- Μα λες να μην το έκανε; Δυστυχώς τον αγνοήσανε
- Μα για στάσου υπάρχει και θέμα νομιμότητας εδώ: η άδεια χρήσης των Windows απαγορεύει να μελετήσεις τον κώδικα για να καταλάβεις τι κάνει - Άρα, αυτοί οι δυο προγραμματιστές μπορεί να ήταν καλοπροαίρετοι αλλά δράσανε παράνομα!
- Για καλή τους τύχη στη χώρα που ζούνε ο νόμος θεωρεί αυτό τον περιορισμό άκυρο.
Όπως έχουμε αναφέρει σχεδόν ποτέ ο δημιουργός ιδιόκτητου λογισμικού δεν αποκαλύπτει τον πηγαίο κώδικα (γιατί έχει και το δικαίωμα και το συμφέρον). Αυτό που δεν είναι προφανές είναι πως η μη δημοσίευση του πηγαίου κώδικα έχει σοβαρότατες αρνητικές συνέπειες. Για να γίνουν εύκολα κατανοητές αυτές οι αρνητικές συνέπειες θα χρησιμοποιήσουμε και πάλι μια παραβολή:
Έστω πως οι αυτοκινητοβιομηχανίες μπορούσαν να πουλάνε αυτοκίνητα με το καπό της μηχανής κλειδωμένο με ένα κλειδί που το κρατούσαν οι ίδιες και δεν το έδιναν ούτε καν στους αποκλειστικούς τους αντιπρόσωπους. Ας δούμε λοιπόν τι θα συνέβαινε σε αυτή την υποθετική περίπτωση αλλά και τι όντως συμβαίνει στην περίπτωση του ιδιόκτητου λογισμικού:
Αυτοκίνητα:Κανείς μηχανικός (εκτός των λίγων της κατασκευάστριας) δεν θα είχε την παραμικρή ιδέα για το τι ποιότητας υλικά και τι ποιότητας εργασία έχει γίνει στη μηχανή κι ας είναι από τα πιο σημαντικά τμήματα του αυτοκινήτου. Η ποιότητα θα μπορούσε να διαγνωστεί μόνο έμμεσα.
Λογισμικό: Κανείς μηχανικός λογισμικού δεν μπορεί να σας πει αν το λογισμικό που σκοπεύετε να αγοράσετε έχει προφανείς ενδείξεις προχειρότητας και κακών τεχνικών προγραμματισμού. Μέχρι πρόσφατα[ΠΑ] ακόμα και οι μεγαλύτερες εταιρείες ή οι κυβερνήσεις που επενδύουν ασύλληπτα πόσα σε ιδιόκτητο λογισμικό δεν μπορούσαν να κάνουν ούτε καν στοιχειώδη επιθεώρηση του πηγαίου κώδικα.
Αυτοκίνητα: Κανείς μηχανικός (εκτός των λίγων της κατασκευάστριας) δεν θα μπορούσε να διορθώσει μια βλάβη όσο απλή κι αν ήταν. Ως εκ τούτου το κόστος του service θα ήταν απίστευτα υψηλό (στις περισσότερες περιπτώσεις ασύμφορο) και τελικά οι εταιρείες κατασκευής θα δήλωναν πως ειδικά η μηχανή παραδίδετε "ως είναι" και τυχόν βλάβες που ίσως ανακύψουν δεν θα επιδιορθωθούν εκτός εάν και θέτουν σε σοβαρό κίνδυνο τον οδηγό, και δεν έχει κυκλοφορήσει νεότερο μοντέλο που λύνει το πρόβλημα. Τελικά οι αγοραστές θα ήταν αναγκασμένοι να αγοράζουν τα νέα μοντέλα όταν αυτά κυκλοφορούν ακόμα και αν δεν είχαν ανάγκη τις νέες δυνατότητες. Επίσης η διόλου ασήμαντη αγορά μετατροπών και βελτιώσεων κινητήρων θα εξαφανιζόταν.
Λογισμικό: Στις περισσότερες περιπτώσεις τα λάθη στο ιδιόκτητο λογισμικό δεν μπορεί να τα διορθώσει κανείς εκτός από την εταιρεία παραγωγής (ευτυχώς στην περίπτωση του λογισμικού δεν υφίσταται το ζήτημα της φθοράς). Όντως το ιδιόκτητο λογισμικό διατίθεται "ως είναι" χωρίς καμία εγγύηση και χωρίς καμία δέσμευση ότι τα λάθη θα διορθωθούν. Ακόμα και κρισιμότατα λάθη διορθώνονται όταν και εφόσον η εταιρεία παραγωγής κρίνει πως κάτι τέτοιο είναι σημαντικό με βάση την δική της οπτική γωνία και φυσικά μόνο για μερικά έτη μετά την κυκλοφορία του προϊόντος ή μόνο για τους πελάτες που πληρώνουν κάποιο συμβόλαιο συντήρησης. Ακόμα και μεγάλοι πελάτες που επενδύουν τεράστια ποσά σε αγορά ιδιόκτητου λογισμικού (π.χ. κυβερνήσεις) ξέρουν πως δύσκολα μπορούν να απαιτήσουν να γίνουν μετατροπές και βελτιώσεις στο λογισμικό που αγοράζουν [todo: some link]. Αγορά μετατροπών και βελτιώσεων ιδιόκτητου λογισμικού ουσιαστικά δεν υφίσταται.
Αυτοκίνητα: Η τεχνολογία των αυτοκινήτων θα εξελισσόταν πολύ αργά γιατί οι μηχανικοί των αυτοκινητοβιομηχανιών θα χωρίζονται από στεγανά και γιατί δεν θα μπορεί ο ένας να δει τις λύσεις του άλλου. Μάλιστα οι μηχανικοί των προηγμένων εργοστασίων σχεδόν πάντα δεσμεύονται από συμφωνίες εμπιστευτικότητας που δεν τους επιτρέπουν να δουλέψουν για μερικά χρόνια σε άλλη αυτοκινητοβιομηχανία. Σαν αποτέλεσμα οι οδηγοί θα χρησιμοποιούσαν ακόμα τσοκ αέρα για να ξεκινήσουν το αυτοκίνητο το πρωί και το ABS θα αποτελούσε όνειρο.
Λογισμικό: Σε κάποιο βαθμό αυτό σίγουρα συμβαίνει στην βιομηχανία του λογισμικού. Δυστυχώς μέχρι πριν λίγα χρόνια το θεωρούσαν είτε αναγκαίο κακό είτε μικρό κακό (ίσως επειδή μετριαζόταν και από την ξέφρενη ανάπτυξη της τεχνολογίας πληροφορικής ως σύνολο). Στους κύκλους όμως των ειδικών που μπορούν να συνειδητοποιήσουν της τεχνικές λεπτομέρειες, η ανέλπιστα αλματώδης ανάπτυξη μερικών εξεχόντων προγραμμάτων ΕΛ/ΛΑΚ (π.χ. Linux, Apache, MySQL) κλόνισε την αντίληψη πως δεν χάνουμε και πολλά πράγματα από πλευράς ταχύτητας εξέλιξης. [todo: some link]
Η παραπάνω παραβολή αποκαλύπτει πολλά μειονεκτήματα της μη διάθεσης του πηγαίου κώδικά. Κάποια όμως (τα οποία δεν είναι καθόλου επουσιώδη) διαφεύγουν:
Ένα σοβαρό μειονέκτημα είναι πως υπάρχει κάτι ανησυχητικό σε ένα πρόγραμμα του οποίου τον πηγαίο κώδικα δεν μπορείς να εξετάσεις: ποτέ δεν πρόκειται να είσαι σίγουρος για το τι κάνει... φυσικά κάποιοι ήδη θα αναρωτιούνται:
Πόσο σέβεται και προφυλάσσει τα προσωπικά σας δεδομένα το λογισμικό της ψυχιατρικής κλινικής στο οποίο καταλήγει το ιατρικό σας ιστορικό; Πόσο σέβεται και προφυλάσσει τα προσωπικά σας δεδομένα το λογισμικό της εφορίας;
Γιατί θα ΠΡΕΠΕΙ να εμπιστευτούμε τυφλά τέτοια προγράμματα; Μήπως δεν πρέπει; Μήπως αντιθέτως θα έπρεπε να έχουμε το δικαίωμα να τα μελετήσουμε; Μήπως και μόνο αυτή τη δυνατότητα αρκεί για να αποθαρρύνει πολλούς προγραμματιστές με κάπως "χαλαρή" ηθική από το να προσθέσουν αυτή την "πίσω πόρτα" που θα τους δώσει πρόσβαση στα πολύτιμα στοιχεία; Διότι μπορεί το 99% από τους ενδιαφερόμενους να μην έχει την παραμικρή ιδέα για το είναι κώδικάς. Αλλά αρκεί ένας ικανός προγραμματιστής για να τους ξεσκεπάσει και να τους φέρει αντιμέτωπους με την δικαιοσύνη.
Εν κατακλείδι: φυσικά και υπάρχουν αρκετά προγράμματα για τα οποία σχεδόν κανείς δεν νοιάζεται τι ακριβώς κάνουν. Όμως στην εποχή μας υπάρχουν και πάρα πολλά άλλα τα οποία μας επηρεάζουν σοβαρά. Πρόκειται για αυτά τα οποία έχουν πρόσβαση άμεσα ή έμμεσα σε ιδιωτικά δεδομένα. Ειδικά όταν έχουν πρόσβαση σε ιδιωτικά δεδομένα μεγάλων ομάδων ανθρώπων τότε η μη πρόσβαση στον πηγαίο τους κώδικά είναι ακόμα και επικίνδυνη. Αρκετά κράτη και μεγάλες εταιρείες άρχισαν τα τελευταία χρόνια να συνειδητοποιούν αυτό τον κίνδυνο και η συνειδητοποίηση αυτή οδήγησε πανίσχυρες εταιρείες σαν την microsoft να αποδεχτούν την περιορισμένη δημοσιοποίηση του πηγαίου κώδικα των προγραμμάτων τους. Σε ορισμένες περιπτώσεις και με αυστηρούς όρους. [SS].
[todo: ο κλειστός κώδικας και το network effect ευνοεί την ανάπτυξη μονοπώλιου ("για να ανοίξεις τα έγγραφα μου πρέπει να έχεις το πρόγραμμα που έχω κι εγώ") ενώ ο ανοικτός κώδικας σχεδόν επιβάλει την ανάπτυξη ανοικτών/ελεύθερων αγορών[ΕΑ]]
Ένα άλλο μειονέκτημα είναι αρκετά σοβαρό από κοινωνική πλευρά: Το γεγονός πως ο ιδιοκτήτης ενός "κλειστού" προγράμματος σχεδόν ποτέ δεν είναι υποχρεωμένος να δημοσιεύσει τον πηγαίο κώδικα (γιατί αυτόν δεν το έχει διαθέσει εμπορικά) σημαίνει ότι η πνευματική κληρονομιά που αυτό αντιπροσωπεύει δεν θα περάσει ποτέ στο κοινωνικό σύνολο. Στην πράξη ο πηγαίος κώδικας πολυάριθμων λογισμικών χάνετε δια παντός πολύ νωρίτερα, όταν οι εταιρείες που τα παράγουν κλείνουν ή παύουν να ασχολούνται με την εκάστοτε αγορά. Ακόμα όμως και αν ο πηγαίος κώδικας δημοσιευόταν μαζί με τον εκτελέσιμο κώδικα στον προβλεπόμενο από το νόμο χρονικό διάστημα το κέρδος θα ήταν αστείο (αν όχι ανύπαρκτο) γιατί το διάστημα αυτό είναι απελπιστικά μεγάλο για τα δεδομένα της εξέλιξης της τεχνολογίας λογισμικού. Είναι όντως απίθανο κάποιος προγραμματιστής να ενδιαφερθεί για κώδικα που γράφτηκε πριν μερικές δεκαετίες.
ΕΛ/ΛΑΚ
Τα θεμελιώδη μειονεκτήματα και οι περιορισμοί που επιβάλει στους χρήστες του το ιδιόκτητο λογισμικό είναι όπως είδαμε σοβαρά. Οι πρώτοι που συνειδητοποίησαν αυτή τη σοβαρότητα ήταν φυσικά αυτοί που είχαν τις μεγαλύτερες απαιτήσεις και τις περισσότερες γνώσεις: οι προγραμματιστές. Με την ανάπτυξη του Internet οι προγραμματιστές που συνειδητοποιούσαν τους περιορισμούς του ιδιόκτητου λογισμικού μπόρεσαν να έρθουν εύκολα σε επαφή και αναζήτησαν μια μέθοδο ανάπτυξης, διάθεσης και χρήσης λογισμικού που θα τους έδινε μεγαλύτερη ελευθερία. Το αποτέλεσμα ήταν αφενός η ωρίμανση μεθόδων συνεργασιακής ανάπτυξης και ελεύθερης διάθεσης λογισμικού το οποίο φτάνει στους χρήστες του με ελάχιστους περιορισμούς και αφετέρου μια αυξανόμενη συλλογή από τα προϊόντα αυτής της μεθόδου, δηλαδή το Ελεύθερο Λογισμικό / Λογισμικό Ανοικτού Κώδικα.
Οι προγραμματιστές ΕΛ/ΛΑΚ δραστηριοποιούνται φυσικά εντός του νομικού πλαισίου περί πνευματική ιδιοκτησίας που αναφέραμε. Ως εκ τούτου μπορούν να παραχωρήσουν το προϊόν της δουλειάς τους διαθέτοντας στους ενδιαφερόμενους μια άδεια χρήσης. Σχετικά πρόχειρα αυτό που διαφοροποιεί το ΕΛ/ΛΑΚ από το ιδιόκτητο λογισμικό είναι η άδεια χρήσης βάση της οποίας διατίθεται. Το ΕΛ/ΛΑΚ διατίθεται με μία άδεια χρήσης που παρέχει στον χρήστη του σχεδόν όλα τα δικαιώματα που απολαμβάνει και ο ίδιος ο δημιουργός: συμπεριλαμβάνονται τα δικαιώματα χρήσης για κάθε σκοπό, αντιγραφής, διάθεσης σε τρίτους και το δικαίωμα της τροποποίησης για τη δημιουργία παράγωγου λογισμικού.
Η διάθεση του πηγαίου κώδικα είναι προαπαιτούμενη ώστε να μπορεί ο αποδέκτης να μελετήσει και να μετατρέψει το λογισμικό (επειδή όπως αναφέραμε ένας προγραμματιστής μπορεί να μελετήσει αποδοτικά και να κάνει ουσιαστικές τροποποιήσεις στο λογισμικό μόνο στην μορφή πηγαίου κώδικα). Η δυνατότητα της μελέτης και της μετατροπής του πηγαίου κώδικα ενέπνευσε όπως είναι προφανές την ονομασία "Open Source Software" που στα ελληνικά θα μπορούσε να αποδοθεί με ακρίβεια ως "λογισμικό ανοιχτού πηγαίου κώδικα" αλλά που χάριν συντομίας αποδίδεται ως "Λογισμικό Ανοικτού Κώδικα (ΛΑΚ)". Το δε γεγονός ότι ο αποδέκτης είναι ελεύθερος να αξιοποιήσει το λογισμικό σχεδόν με κάθε τρόπο ενέπνευσε την ονομασία "Ελεύθερο Λογισμικό (ΕΛ)".
Σε αυτό το σημείο και πριν δούμε πιο λεπτομερώς τι πρέπει να ισχύει ώστε ένα λογισμικό να θεωρείται αυτό ΕΛ/ΛΑΚ έχουμε την ευκαιρία να διαλευκάνουμε γιατί η ονομασία είναι μία αλλά διπλή: Η ονομασία "Ελεύθερο Λογισμικό / Λογισμικό Ανοικτού Κώδικα" είναι λοιπόν διπλή διότι αφορά σε δύο τυπικά ξεχωριστούς ορισμούς και είναι μία διότι οι δύο αυτοί ορισμοί στην συντριπτική πλειοψηφία των περιπτώσεων περιγράφουν το ίδιο αντικείμενο! Η διατύπωση αυτή θυμίζει λίγο... σοφιστική οπότε ας εξηγήσουμε λίγο καλύτερα τι συμβαίνει:
Η ανάπτυξη του ΕΛ/ΛΑΚ είναι μια πρόσφατη τεχνική, οικονομική και κοινωνική εξέλιξη (2 με 3 δεκαετίες) και αρκετές λεπτομέρειες είναι ακόμα ρευστές. Υπάρχουν δύο φορείς που έχουν σφραγίσει με τις επιλογές τους αυτή την εξέλιξη. Η προσέγγιση τους εκπροσωπεί τους περισσότερους συμμετέχοντες. Πρόκειται για το Free Software Foundation (FSF) και το Open Source Initiative (OSI). Οι δύο φορείς είτε συμφωνούν είτε συγκλίνουν έντονα σε πάρα πολλά σημαντικά, πρακτικά και λειτουργικά ζητήματα. Για παράδειγμα, συγκλίνουν σχεδόν απόλυτα ως προς το τι πρέπει να ισχύει για να είναι ένα πρόγραμμα ΕΛ/ΛΑΚ (παρότι το περιγράφουν με διαφορετική γλώσσα!). Από την άλλη όμως, διαφωνούν σε διάφορα ιδεολογικά ζητήματα. Ίσως η βασικότερη ιδεολογική διαφορά είναι πως το FSF θεωρεί το μη-ελεύθερο λογισμικό κοινωνικό πρόβλημα που πρέπει να λυθεί ενώ το OSΙ το θεωρεί απλά μια μη ιδανική μέθοδο ανάπτυξης λογισμικού [ΒΔ][ΑΠΔ]. Επίσης οι δύο φορείς διαφέρουν ορισμένες φορές σε επιλογές όπως η πολιτική προώθησης του ΕΛ/ΛΑΚ.
Ακολουθεί σε ελεύθερη (αλλά όσο γίνεται προσεκτική) απόδοση το τι θεωρεί σημαντικό ο κάθε φορέας για να χαρακτηρίσει ένα λογισμικό ΕΛ/ΛΑΚ (για την ακρίβεια ΕΛ ή ΛΑΚ αντίστοιχα)
Το Free Software Foundation ονομάζει ένα πρόγραμμα Ελεύθερο Λογισμικό αν η άδεια χρήσης διασφαλίζει τις παρακάτω τέσσερις ελευθερίες για τον αποδέκτη του:
Ποια είναι τα οφέλη του ΕΛ/ΛΑΚ
Τα οφέλη της χρήσης ΕΛ/ΛΑΚ είναι πολλαπλά. Μερικά αφορούν τον κάθε χρήστη και είναι προφανή ακόμα και με μια πρόχειρη ανάγνωση του ορισμού του τι είναι Ελεύθερο Λογισμικό ή του τι είναι Λογισμικό Ανοικτού Κώδικα:
Παραρτήματα
Δύο μεγάλες ομάδες αδειών χρήσης ΕΛ/ΛΑΚ
Υπάρχουν πολλές δεκάδες άδειες χρήσης λογισμικού ΕΛ/ΛΑΚ. Η συντριπτική όμως πλειοψηφία ΕΛ/ΛΑΚ χρησιμοποιεί μία από τέσσερις βασικές[ΤΑ]. Κάθε άδεια προσφέρει στον αποδέκτη όλες τις βασικές ελευθερίες και δικαιώματα που αναφέραμε αλλά παρουσιάζει τις δικές της ιδιαιτερότητες και φυσικά διαφέρει στη διατύπωση. Η πιο σημαντική ίσως διαφορά αφορά στην περίπτωση που ο αποδέκτης επιθυμεί να διανείμει (πουλήσει, χαρίσει κ.τ.λ) με τη σειρά του το λογισμικό (είτε ως είναι, είτε αφότου το μετατρέψει). Σε αυτή την περίπτωση μπορούμε να ξεχωρίσουμε δύο μεγάλες ομάδες: τις προστατευτικές άδειες χρήσης (οι οποίες αναφέρονται και ως copyleft) και τις μη προστατευτικές. Η διαφορά τους έγκειται σε έναν επιπλέον περιορισμό που θέτουν οι προστατευτικές άδειες χρήσης. Συγκεκριμένα ο αποδέκτης του λογισμικού μπορεί να το διαθέσει σε τρίτους μόνο κάτω από το καθεστώς της ίδιας άδειας χρήσης με αυτή κάτω από την οποία το έλαβε και ο ίδιος. Ο επιπλέον αυτός περιορισμός υπάρχει για να διασφαλίσει ότι κάθε αποδέκτης είτε του πρωτότυπου λογισμικού είτε λογισμικού που προκύπτει από την τροποποίηση του θα συνεχίσει να απολαμβάνει τις ίδιες ελευθερίες και δικαιώματα. Η διαφορά αυτή επηρεάζει στην πράξη [ΔΕΛ] μόνο τους χρήστες που: ΚΑΙ σκοπεύουν να τροποποιήσουν μια εφαρμογή ΕΛ/ΛΑΚ ΚΑΙ σκοπεύουν να διαθέσουν την τροποποιημένη εφαρμογή κάτω από διαφορετική άδεια χρήσης από αυτή που είχαν την δυνατότητα[ΠΡΟ] οι ίδιοι να αποκτήσουν την αρχική εφαρμογή ΕΛ/ΛΑΚ.
Η πλέων διαδεδομένη άδεια χρήσης ΕΛ/ΛΑΚ, η GPL, είναι προστατευτική. Η πιο γνωστή μη προστατευτική άδεια[ΕΜ] είναι η BSD και είναι πιθανότατα η 2η πιο διαδεδομένη άδεια ΕΛ/ΛΑΚ. Σε αυτό το σημείο είναι καλό να αναφέρουμε μια συχνή παρεξήγηση σχετικά με τη διαφορά μεταξύ Ελευθέρου Λογισμικού και Λογισμικού Ανοικτού Κώδικα: αρκετός κόσμος θεωρεί πως η διαφορά μεταξύ Ελευθέρου Λογισμικού και Λογισμικού Ανοικτού Κώδικα είναι πως το μεν Ελεύθερο προϋποθέτει μια προστατευτική άδεια ενώ το δε Ανοικτού Κώδικα αποδέχεται και τις μη προστατευτικές (ίσως επειδή το Freedom Software Foundation προωθεί ως προτιμότερες τις προστατευτικές έναντι των μη προστατευτικών αδειών).
Μπορούν οι εφαρμογές ΕΛ/ΛΑΚ να διατίθενται και εμπορικά;
Μια εταιρεία έχει κάθε δικαίωμα να διαθέτει εμπορικά ΕΛ/ΛΑΚ έναντι οποιασδήποτε τιμής θεωρεί κατάλληλη. Το δικαίωμα ισχύει είτε η εταιρεία ανέπτυξε η ίδια το λογισμικό, είτε ανέπτυξε ένα μεγάλο ή ελάχιστο τμήμα του. Ισχύει ακόμα και αν δεν έχει καμία απολύτως συμμετοχή στην ανάπτυξη του λογισμικού. Φυσικά η τιμή πώλησης υπόκειται στις βασικές αρχές της ελεύθερης αγοράς και ειδικότερα στο "νόμο" της προσφοράς και της ζήτησης (βλ. παρακάτω).
Να σημειώσουμε εδώ μια διαφορά με το ιδιόκτητο λογισμικό που εκ των υστέρων φαντάζει προφανής αλλά αρχικά ελάχιστοι την προσέχουν: Ο αγοραστής ΕΛ/ΛΑΚ ποτέ δεν αγοράζει 5 "άδειες χρήσης" ή "άδεια χρήσης για 5 θέσεις εργασίας" διότι για να είναι ΕΛ/ΛΑΚ το λογισμικό σημαίνει πως ο αποδέκτης του έχει εκ των πραγμάτων μια άδεια χρήσης από τον / τους δημιουργούς του λογισμικού και μάλιστα μια άδεια πολύ φιλελεύθερη και χωρίς περιορισμό στις θέσεις εργασίας. Ο αποδέκτης λοιπόν αγοράζει 5 πακέτα με το ΕΛ/ΛΑΚ ή 5 αντίγραφα του ΕΛ/ΛΑΚ ή 1 αντίγραφο συνοδευόμενο από τις τάδε υπηρεσίες π.χ. υποστήριξης των χρηστών (αυτές οι υπηρεσίες μπορεί κάλλιστα να αφορούν σε 5 θέσεις εργασίας).
Γιατί πληρώνει κανείς για εφαρμογές ΕΛ/ΛΑΚ αφού μπορεί να το αντιγράψει;
Αυτή είναι η αγαπημένη ερώτηση των κυνικών. Για όσους διαβάζοντας την, υποθέσατε βιαστικά, πως έχει γερές βάσεις, σκεφτείτε για λίγο πόσα πληρώνετε για φυσικό ανθρακούχο νερό σε ένα ωραίο παραλιακό μπαράκι. Αναλογιστείτε πως το εν λόγο νερό ρέει συχνά από μια πηγή που ο καθένας μπορεί να πάει και να πιει δωρεάν... Τελικά θα συνειδητοποιήσετε πως δεν πληρώνεται για το ανθρακούχο νερό αυτό καθαυτό αλλά για κάθε τι που το συνοδεύει και ειδικά για τις σχετικές υπηρεσίες.
Στην πράξη λοιπόν και όσον αφορά στο ΕΛ/ΛΑΚ:
Σύνδεσμοι για περισσότερες πληροφορίες
www.ellak.gr: Ελεύθερο Λογισμικό / Λογισμικό ανοιχτού κώδικα Συχνές Ερωτήσεις Απαντήσεις
www.open-source.gr: Απαντήσεις σε συχνά ερωτήματα: Ελεύθερο λογισμικό / Λογισμικό ανοιχτού κώδικα
Κατανοώντας το Λογισμικό Ανοικτού Κώδικα και στα αγγλικά ως Understanding Open Source Software
Εξαιρετικό ανάγνωσμα στα αγγλικά αποτελεί το Open Source Software / Free Software (OSS/FS) References και οι σύνδεσμοι του Τι είναι το Linux (αν και μόνο εμέσα σχετικό)
GNU.org: Categories of Free and Non-Free Software
Here is a glossary of various categories of software that are often mentioned in discussions of free software. It explains which categories overlap or are part of other categories.
GNU.org: Free Software, Free Society: Selected Essays of Richard M. Stallman
The intersection of ethics, law, business and computer software is the subject of these essays and speeches by MacArthur Foundation Grant winner, Richard M. Stallman. This collection includes historical writings such as The GNU Manifesto, which defined and launched the activist Free Software Movement, along with new writings on hot topics in copyright, patent law, and the controversial issue of "trusted computing." Stallman takes a critical look at common abuses of copyright law and patents when applied to computer software programs, and how these abuses damage our entire society and remove our existing freedoms. He also discusses the social aspects of software and how free software can create community and social justice.
OSI:icenses approved by OSI
Copies of the licenses approved by OSI.
OSI: O.S. for Customers, Business, and Programmers
Advocacy - The basic idea behind open source is very simple...
...
Whether a techie/hacker, a businessperson, or a customer, you'll win with open source software. Read the case histories to find out how.
The Case for Open Source: For Business
The Case for Open Source: For Customers
The Case for Open Source: For Hackers
We maintain a page answering Frequently Asked Questions.
GNU.org: Why ?Free Software? is better than ?Open Source?
The official definition of ``open source software,'' as published
by the Open Source Initiative, is very close to our definition of free
software; however, it is a little looser in some respects, and they
have accepted a few licenses that we consider unacceptably restrictive
of the users.
Tim O'Reilly: Ten Myths about Open Source Software
(A transcript of a talk given by Tim O'Reilly to a group of Fortune 500 executives in October)
Myth #5. Open Source is all about licenses.
In fact, open source is about internet-enabled collaboration. Licenses play a role only to the extent that they set out rules designed to make sure that companies don't undermine the playing field.
At bottom, Open Source is a software development methodology, not a political belief. Some of the principles underlying that methodology are outlined in Eric Raymond's new book, The Cathedral and the Bazaar
[...]
The real lesson to be learned from open source communities are the techniques of networked collaboration that they've pioneered. Open source software projects have developed techniques--the use of mailing lists, distributed access to version control software, techniques of peer review, discussion and voting on features, rapid response to user feedback and opportunities for user participation--that can be applied fruitfully to the development of any kind of software.
bruce Perens: Open Sources: Voices from the Open Source Revolution
Includes a nice comparison of GPL, LPGL,BSD,Public Domain.
Eric Steven Raymond: Software Release Practice HOWTO
Discusses briefly why license choices are so important to OSS/FS projects:
The license you choose defines the social contract you wish to set up among your co-developers and users ...
Who counts as an author can be very complicated, especially for software that has been worked on by many hands. This is why licenses are important. By setting out the terms under which material can be used, they grant rights to the users that protect them from arbitrary actions by the copyright holders.
In proprietary software, the license terms are designed to protect the copyright. They're a way of granting a few rights to users while reserving as much legal territory is possible for the owner (the copyright holder). The copyright holder is very important, and the license logic so restrictive that the exact technicalities of the license terms are usually unimportant.
In open-source software, the situation is usually the exact opposite; the copyright exists to protect the license. The only rights the copyright holder always keeps are to enforce the license. Otherwise, only a few rights are reserved and most choices pass to the user. In particular, the copyright holder cannot change the terms on a copy you already have. Therefore, in open-source software the copyright holder is almost irrelevant -- but the license terms are very important.
GNU.org: Categories of Free and Non-Free Software
Infoworld: the 'business case' for open source
"Free, as in market" means that when modifications or repairs are needed, an open-source software customer can solicit for competitive bids, where a commercial software customer would be forced to turn only to the software's creator. That's an attractive proposition for a business, Lefkowitz noted.
Βικιπαίδεια: Πνευματική ιδιοκτησία
Βικιπαίδεια: Νόμος 2121/93 (Πνευματική ιδιοκτησία, συγγενικά δικαιώματα και πολιτιστικά θέματα)
Σημειώσεις
[ΦΙΛ] η φιλοσοφία και ο τρόπος σκέψεις όμως πιθανότατα έχει επηρεάσει και πολλούς άλλους χώρους πέρα από αυτό του IT
[ΔΕΛ] αν θέλουμε να είμαστε ακριβείς επηρεάζει και αυτόν που θέλει να πάρει μια εφαρμογή ΕΛ/ΛΑΚ και να την διαθέσει ως έχει σε τρίτους κάτω από άλλη άδεια χρήσης. Πλην όμως αυτή η περίπτωση είναι αρκετά περίεργη.
[ΠΡΟ] κάποιοι θα έλεγαν το προνόμιο
[ΒΔ] από το Why ?Free Software? is better than ?Open Source?: "As one person put it, ?Open source is a development methodology; free software is a social movement.? For the Open Source movement, non-free software is a suboptimal solution. For the Free Software movement, non-free software is a social problem and free software is the solution."
[cs] καθόλου σπάνια κάποιοι -παρασυρόμενοι από το γεγονός πως η εμπειρία τους σχετικά με την εμπορική διακίνηση λογισμικού περιλαμβάνει αποκλειστικά και μόνο περιπτώσεις του παραπάνω τρόπου διάθεσης- αναφέρονται εσφαλμένα σε αυτό το λογισμικό και ως "εμπορικό λογισμικό" - commercial software.
[ΕΜ] αν και κάποιοι πιστεύουν ότι ίσως να είναι περισσότερο προστατευτική από ότι νομίζουμε βλ. BSD - The Dark Horse of Open Source, by Brendan Scott, OS Law
[ΕΑ] βλ. Ten Myths about Open Source Software
a transcript of a talk given by Tim O'Reilly to a group of Fortune 500 executives in October: Myth #7. Open source only matters to programmers, since most users never look under the hood anyway. "The benefits of open source are exactly the same as the benefits of any other free market: competition between multiple suppliers results in lower prices, more innovation, and specialization to meet the needs of new niches. This is in fact the chief benefit of open source as far as I'm concerned: you are no longer locked into a single-source supplier. If worst comes to worst, you can solve your own problems; more likely, there will be a variety of third-party vendors who will be able to support you better than a single-source vendor ever will."
[SS] Από την σελίδα Government Security Program της microsoft "The Government Security Program (GSP) is a crucial element of Microsoft's efforts to address the unique security requirements of governments around the world. The GSP provides national governments with information to help them evaluate the security of Microsoft products. In 2001, Microsoft launched the Shared Source Initiative, expanding its long-standing efforts to make Windows source code more transparent to industry partners and customers. A year later, the company announced its Trustworthy Computing Initiative, placing security at the core of all Windows development efforts. The principles of these two critical directives are embodied in the GSP, a program built upon the cornerstones of transparency and partnership."
[ΑΠΔ] Ορίστε και η άποψη του FSF και η άποψη του OSI επί του θέματος της διαφοράς μεταξύ τους.
[ΔΔ] από το Open Source Software / Free Software (OSS/FS) References του David Wheeler:
?You can find definitions for the terms open source software and free software. In practice, nearly all software meeting one definition also meets the other.?
[ΤΑ] από το Open Source Software / Free Software (OSS/FS) References του David Wheeler:
?There are dozens of OSS/FS licenses, but nearly all OSS/FS software uses one of the four major licenses: the GNU General Public License (GPL), the GNU Lesser (or Library) General Public License (LGPL), the MIT (aka X11) license, and the BSD-new license. Indeed the Open Source Initiative refers to these four licenses as the classic open source licenses.
The GPL and LGPL are termed ``copylefting'' licenses, that is, these licenses are designed to prevent the code from becoming proprietary. See Perens' paper for more information comparing these licenses.
The GPL allows anyone to use the program and modify it, but prevents code from becoming proprietary once distributed and it also forbids proprietary programs from "linking" to it.
The MIT and BSD-new licenses let anyone do almost anything with the code except sue the authors. [...].
The LGPL is a compromise between the GPL and MIT/BSD-new approaches and is primarily intended for code libraries; like the GPL, LGPL-licensed software cannot be changed and made proprietary, but the LGPL does permit proprietary programs to link to the library.?
[ΠΑ] ελάχιστα χρόνια πριν η διάθεση προς επιθεώρηση από την Microsoft του πηγαίου κώδικα σε μεγάλους πελάτες κάτω από αυστηρότατα μέτρα (shared source initiative) προκάλεσε έκπληξη ενώ οι αναλυτές της αγοράς συμφωνούν πως οφείλετε κατά μεγάλο ποσοστό στην πίεση από το αντίθετο παράδειγμα του ΕΛ/ΛΑΚ
[πηγη]
Εισαγωγή / Περίληψη
Οι περισσότεροι από εμάς έχουμε αρκετή εμπειρία με το ιδιόκτητο λογισμικού. Είναι το λογισμικό που βρίσκουμε σχεδόν κατά αποκλειστικότητα στα ράφια των καταστημάτων. Το αγοράζουμε και το εγκαθιστούμε στον Η/Υ μας αφού φροντίσουμε να εισάγουμε έναν "σειριακό κωδικό". Μετά καμιά φορά πρέπει να κάνουμε και κάτι που λέγεται "ενεργοποίηση". Αν ένας φίλος μας το δει και του αρέσει αργά η γρήγορα θα συνειδητοποιήσουμε ότι οι κωδικοί και οι ενεργοποιήσεις έχουν σαν στόχο να μην μπορέσουμε να του δώσουμε ένα αντίγραφο ή το δικό μας CD για να το εγκαταστήσει και αυτός. Για την ακρίβεια κάποια στιγμή που από περιέργεια θα διαβάσουμε τις πρώτες οθόνες που εμφανίζονται κατά την εγκατάσταση θα μάθουμε πως δεν είναι απλά δύσκολο να το δώσουμε στο φίλο μας, είναι επίσης παράνομο. Επίσης οι ίδιες οθόνες συχνά αναφέρουν πως είναι παράνομα κι ένα σωρό άλλα πράγματα που ούτε καν υποψιαζόμασταν. Για παράδειγμα μερικές φορές αναφέρουν πως δεν επιτρέπεται να εγκαταστήσουμε το λογισμικό σε Η/Υ με διπλό επεξεργαστή, πως δεν επιτρέπεται να δημοσιεύσουμε μετρήσεις για τις επιδόσεις του, πως δεν επιτρέπεται να το εγκαταστήσουμε σε οποιοδήποτε άλλο Η/Υ εκτός από αυτόν με τον οποίο το αγοράσαμε, ενώ επίσης σχεδόν πάντα αναφέρουν πως απαγορεύεται η μελέτη και η τροποποίηση του λογισμικού. Οι προγραμματιστές μάλιστα ξέρουν, πως ακόμα και αν δεν απαγορευόταν, έχουν παραλάβει το λογισμικό σε μια μορφή που κάνει εξαιρετικά δύσκολη έως αδύνατη οποιαδήποτε εις βάθος μελέτη ή τροποποίηση.
Όλα τα παραπάνω είναι πολύ διαφορετικά στην περίπτωση του Ελεύθερου Λογισμικού / Λογισμικού Ανοικτού Κώδικα (ΕΛ/ΛΑΚ). Παρότι μπορεί κάλλιστα να το βρούμε στα ράφια των καταστημάτων και να πληρώσουμε για να το αγοράσουμε θα το βρούμε επίσης δωρεάν διαθέσιμο και στο Internet. Μετά θα το εγκαταστήσουμε σε όσους Η/Υ θέλουμε, θα το εκτελέσουμε για όποιο σκοπό θέλουμε, όπου θέλουμε και για όσα χρόνια θέλουμε ενω επιπλέον θα μπορούμε να το χαρίσουμε ή να το πουλήσουμε σε όποιον θέλουμε. Επίσης αν εμείς, οι κάποιοι φίλοι ή συνεργάτες μας, έχουμε γνώσεις προγραμματισμού, τότε μπορούμε να το μελετήσουμε, να το τροποποιήσουμε και να το βελτιώσουμε. Στην πραγματικότητα, πολλοί προγραμματιστές συμμετέχουν ακριβώς με αυτό τον τρόπο στην ανάπτυξη χιλιάδων εφαρμογών ΕΛ/ΛΑΚ.
Τα παραπάνω ακούγονται σε όσους δεν έχουν προσωπική εμπειρία με το ΕΛ/ΛΑΚ εντελώς ουτοπικά αλλά αποτελούν την καθημερινή πραγματικότητα για πολλά άτομα, εταιρείες και οργανισμούς που τα τελευταία χρόνια αξιοποιούν το ΕΛ/ΛΑΚ σε εργασίας τετριμμένες, πρωτοποριακές, απλές, περίπλοκες, ασήμαντες ή κρίσιμες.
Οι προηγούμενες παράγραφοι αποτελούν μια σύντομη περιγραφή και μια καλή προσέγγιση αλλά δεν αποκαλύπτουν αρκετές και σημαντικές λεπτομέρειες για το ΕΛ/ΛΑΚ και τα προτερήματα του έναντι του Ιδιόκτητου Λογισμικού. Το κείμενο που ακολουθεί έχει ακριβώς αυτό το σκοπό και πιστεύω ότι θα ανταμείψει για τον χρόνο που θα του αφιερώσετε (ναι, σωστά μαντέψατε - ακολουθεί πολύ κείμενο).
Θα ξεκινήσουμε φροντίζοντας να σιγουρευτούμε ότι όλοι κατέχουν κάποιες βασικές γνώσεις σχετικά με την ανάπτυξη και την νομοθεσία που διέπει τη διάθεση του λογισμικού . Στη συνέχεια θα εξετάσουμε τι σημαίνει να είναι ένα λογισμικό Ιδιόκτητο και πια μειονεκτήματα αυτό συνεπάγεται. Σε αυτό το σημείο θα μπορούμε πλέον να αποσαφηνίσουμε τι σημαίνει να είναι ένα λογισμικό ΕΛ/ΛΑΚ και πια πλεονεκτήματα αυτό συνεπάγεται. Ξεκινάμε λοιπόν με τις βασικές γνώσεις.
Βασικές γνώσεις
Τα μικρά μυστικά της τέχνης του προγραμματιστή
(αν έχετε κάποιες γνώσεις προγραμματισμού μπορείτε να προσπεράσετε αυτή την παράγραφο. Οι υπόλοιποι μην ανησυχείτε, δεν χρειάζεται να μάθετε προγραμματισμό. Θα αποκτήσετε απλώς μια αμυδρή αλλά επαρκή ιδέα για δυο-τρεις βασικές αρχές)
Το λογισμικό, ξεκινά την ζωή του ως ένας μακροσκελής κατάλογος από προτάσεις, σε μια λίγο-πολύ κωδικοποιημένη μορφή βασισμένη στην αγγλική γλώσσα. Φαντάζομαι ότι ο παραπάνω ορισμός δεν φωτίζει ιδιαίτερα το θέμα αλλά ένα παράδειγμα μάλλον θα είναι αρκετό. Ορίστε λοιπόν μια λίστα με αναλυτικές οδηγίες για να βρείτε την έξοδο σας από έναν δαιδαλώδη λαβύρινθο γραμμένη με στυλ που μοιάζει με τον πηγαίο κώδικα ενός προγράμματος:
AHEAD 5 STEPS
TURN 90 DEGREES CLOCKWISE
$StepsToWalk=10
AHEAD $StepsToWalk STEPS /* at this point we should have reached a door */
TURN KNOB 180 DEGREES CLOCKWISE
WAIT
DOING NOTHING
UNTIL DOOR OPENS
CROSS DOOR
TURN -90 DEGREES CLOCKWISE...
Είναι φανερό πως οι προτάσεις αυτές αποτελούνται μεν από συνηθισμένα γράμματα, αριθμούς και λίγα μαθηματικά κυρίως σύμβολα αλλά οι λέξεις και η σύνταξη θυμίζει περισσότερο κάποια περίεργη διασταύρωση αγγλικών και άλγεβρας. Και μπορεί το παράδειγμα μας να μοιάζει λίγο-πολύ κατανοητό αλλά στην περίπτωση ενός περίπλοκου προγράμματος τα πράγματα είναι σαφώς πιο... στρυφνά. Ευτυχώς με την προσθήκη σχολίων και αρκετής εμπειρίας το τελικό αποτέλεσμα είναι τελικά κατανοητό στους προγραμματιστές και ονομάζεται πηγαίος κώδικας (source code).
Οι προγραμματιστές αναπτύσσουν λογισμικό δουλεύοντας σχεδόν αποκλειστικά σε αυτήν τη μορφή τον πηγαίο κώδικα. Στην συνέχεια ο πηγαίος κώδικας μπορεί να δοθεί ως είναι στον Η/Υ για άμεση εκτέλεση αλλά η ταχύτητα δεν θα είναι η μέγιστη δυνατή. Για να επιτύχουμε την μέγιστη ταχύτητα ο πηγαίος κώδικας περνά από ένα ειδικό πρόγραμμα. Αυτό τον απογυμνώνει από καθετί περιττό ενώ επίσης συμπυκνώνει την ουσία του σε μία νέα μορφή την οποία ο Η/Υ μπορεί να εκτελέσει χωρίς καμιά ενδιάμεση μετατροπή - δηλαδή γρήγορα. Η μορφή αυτή καλείται object code ή εκτελέσιμος κώδικας. Λόγο της απογύμνωσης και της συμπύκνωσης ο εκτελέσιμος κώδικας είναι αδύνατον να μετατραπεί με αυτόματο τρόπο στην αρχική μορφή πηγαίου κώδικα χωρίς να χαθούν πολλές και σημαντικές πληροφορίες. Αν ένας προγραμματιστής είναι αναγκασμένος να εργαστεί μόνο με τον εκτελέσιμο κώδικα και εφόσον έχει την σχετική εμπειρία ίσως να καταφέρει να εργαστεί αλλά η πορεία του θα είναι και εξαιρετικά επίπονη και εξαιρετικά αργή. Για την ακρίβεια το επίπεδο δυσκολίας και καθυστέρησης είναι τέτοιο που οτιδήποτε πέραν από απλές αλλαγές καθίσταται αδύνατο.
Από όλες τις παραπάνω λεπτομέρειες πρέπει να θυμάστε πως το λογισμικό μπορεί να προσφερθεί σε δυο μορφές: Ως πηγαίος κώδικας και ως εκτελέσιμος κώδικας. Αντίθετα από τον πηγαίο κώδικα, εκτελέσιμος κώδικας ΔΕΝ επιτρέπει ούτε εις βάθος μελέτη ούτε την πραγματοποίηση ουσιαστικών αλλαγών και βελτιώσεων.
Λίγα λόγια για το σχετικό νομικό πλαίσιο...
Καταρχήν σημειώστε πως τα παρακάτω δεν προέρχονται από κάποιον δικηγόρο αλλά από έναν τεχνικό που όμως έχει προσπαθήσει να καταλάβει τα βασικά.
Το λογισμικό ως πνευματικό προϊόν τόσο στην μορφή του ως πηγαίος κώδικας όσο και ως εκτελέσιμος κώδικας καλύπτεται από την ελληνική νομοθεσία περί πνευματικής ιδιοκτησίας λίγο πολύ όπως και ένα μυθιστόρημα. Ως αποτέλεσμα ο δημιουργός του έχει σχεδόν αποκλειστικά δικαιώματα σε ότι αφορά την χρήση και εκμετάλλευση του λογισμικού που αναπτύσσει για κάμποσες δεκαετίες. Κάθε άλλος που θέλει να εκμεταλλευτεί το λογισμικό με κάποιο τρόπο (π.χ. απλά να το χρησιμοποιήσει) πρέπει να έχει άδεια από τον δημιουργό.
Το σκεπτικό είναι πως ο δημιουργός μπορεί να παρέχει τις σχετικές άδειες στους ενδιαφερόμενους έναντι κάποιου τιμήματος ώστε τελικά να ανταμειφθεί για την πνευματική του εργασία. Με αυτό τον τρόπο ο νομοθέτης θεωρεί ότι δίνει τα απαιτούμενα κίνητρα στους καλούς προγραμματιστές ώστε να αφιερώσουν περισσότερο χρόνο στην παραγωγή χρήσιμου κώδικά (ενώ άλλοι νομοθέτες με ποιο Πλατωνική προσέγγιση πιστεύουν επίσης ότι προστατεύουν έναν ιδιαίτερο ψυχικό δεσμό μεταξύ δημιουργού και δημιουργήματος).
Τελικά μετά από αρκετά χρόνια ο νόμος επιβάλει το λογισμικό (στην μορφή που έχει δημοσιευτεί) να γίνει αγαθό ελεύθερο για όλους. Στο ενδιάμεσο όμως διάστημα, το λογισμικό είναι σχεδόν σαν ένα ιδιωτικό αγροτεμάχιο. Κάθε τρίτος που επιθυμεί να κάνει οποιαδήποτε χρήση του αγρού (π.χ. να το καλλιεργήσει, να το διασχίσει ή να κυνηγήσει εντός αυτού) θα πρέπει να έχει την άδεια του ιδιοκτήτη.
Ιδιόκτητο λογισμικό
Θα εξετάσουμε πρώτο και διεξοδικά το ιδιόκτητο λογισμικό, για δύο λόγους:
- για το ΙΛ γνωρίζεται πιθανότατα αρκετά πράγματα. Ώστε η μελέτη του να μην σας δυσκολέψει ιδιαίτερα
- το ΕΛ/ΛΑΚ δημιουργήθηκε για να ξεπεραστούν τα μειονεκτήματα του ΙΛ. Καταλαβαίνοντας ποια είναι αυτά θα μπορέσετε να καταλάβετε την "προστιθέμενη αξία" του ΕΛ/ΛΑΚ.
Εδώ και τουλάχιστον 2 δεκαετίες η συντριπτική πλειοψηφία του λογισμικού που καταναλώνει ο τυπικός χρήστης ενός προσωπικού Η/Υ φτάνει στα χέρια του ως "πακέτο". Το πακέτο περιλαμβάνει συνήθως ένα φυσικό μέσο (π.χ. CD) στο οποίο είναι αποθηκευμένο το λογισμικό σε μορφή εκτελέσιμου κώδικα και μόνον. Αν ρωτήσετε τον αγοραστή αυτός συνήθως θα σας πει πως "αγόρασε το τάδε πακέτο λογισμικού". Η φράση αυτή οδηγεί εύκολα σε παρεξηγήσεις διότι συγκαλύπτει το γεγονός πως ο αγοραστής δεν απέκτησε το λογισμικό αυτό καθ' αυτό αλλά μια άδεια χρήσης του λογισμικού υπό κάποιους απολύτως συγκεκριμένους όρους
Επειδή η παραπάνω παρατήρηση είναι πολύ σημαντική είναι καλό να αποσαφηνιστεί με μία παραβολή:
Ο Γιάννης ζει σε ένα χωρίο 10 χιλιόμετρα από την πόλη. Το χωρίο του παρέχει τα περισσότερα από όσα χρειάζεται, αλλά μια στο τόσο θέλει να πηγαίνει και στην πόλη. Ο γείτονας του, ταλαντούχος μηχανολόγος μηχανικός, έχει κατασκευάσει με κόπο και μεράκι ένα αρκετά καλό αυτοκίνητο. Επειδή όμως είναι απορροφημένος με τα σχέδια και τις κατασκευές του το χρησιμοποιεί σπάνια. Προτείνει λοιπόν στον Γιάννη, αντί να ξοδέψει ένα σωρό λεφτά για την αγορά ενός αυτοκινήτου, να του παραχωρήσει μια άδεια χρήσης του δικού του. Φυσικά θέτει κάποιους όρους: θα το χρησιμοποιεί αυτός και μόνο αυτός, στην διαδρομή για την πόλη, το πολύ μια φορά τη βδομάδα και εφόσον συμπληρώνει την απαιτούμενη βενζίνη κάθε φορά. Ο Γιάννης σαν αντάλλαγμα του δίνει 1.000,00 ευρώ και παραλαμβάνει αντίγραφο από τα κλειδιά και μια άδεια χρήσης του αυτοκινήτου. Δηλαδή μια σελίδα κειμένου που αναφέρει τα παραπάνω δικαιώματα και υποχρεώσεις του σχετικά με το αυτοκίνητο με την υπογραφή του ιδιοκτήτη του στο τέλος.
Είναι σαφές πως ο Γιάννης της ιστορίας μας δεν αγόρασε το αυτοκίνητο αλλά ένα σύνολο από δικαιώματα σχετικά με αυτό (και ένα αντίγραφο από τα κλειδιά). Με ακριβώς τον ίδιο τρόπο, οι αγοραστές λογισμικού δεν αγοράζουν το λογισμικό αλλά κάποια απολύτως συγκεκριμένα και περιορισμένα δικαιώματα επί αυτού και ένα αντίγραφο του εκτελέσιμου κώδικα του λογισμικού.
Το λογισμικό που διατίθεται με αυτόν τον τρόπο χαρακτηρίζεται ως ιδιόκτητο (proprietary) επειδή παραμένει στην αποκλειστική ιδιοκτησία του κατασκευαστή του[cs]. Ο κατασκευαστής συνήθως παραχωρεί τόσο λίγα δικαιώματα που είναι σωστότερο να συζητάμε για το τι περιορισμοί τίθενται. Ας τους δούμε.
Περιορισμοί σχετικοί με το ιδιόκτητο λογισμικό που απασχολούν τον περισσότερο κόσμο
Κάθε λογισμικό συνοδεύεται από διαφορετικούς περιορισμούς σχετικά με την χρήση του. Για να δούμε τους πιο δημοφιλείς περιορισμούς θα εξετάσουμε δύο από τα διασημότερα ιδιόκτητα προγράμματα στον κόσμο, το Microsoft Office και τα Microsoft Windows σε μία επίσης δημοφιλέστατη εκδοχή τους (πρόκειται για την μορφή ΟΕΜ όπως ονομάζεται η εκδοχή που περιλαμβάνεται προεγκατεστημένη σε έναν νέο Η/Υ). Η πηγή μας θα είναι η σχετική λίστα με τις συνήθεις ερωτήσεις (FAQ) από το αγγλικό site της εταιρείας που τα διαθέτει:
Ερ. Πέρυσι αγόρασα έναν Η/Υ με τα windows. Ο Η/Υ αυτός χάλασε χτες. Μπορώ να αγοράσω έναν καινούργιο Η/Υ και να εγκαταστήσω σε αυτόν τα Windows που ήδη έχω; Απ. ΟΧΙ. (Ναι, το ξέρω ότι μερικοί δεν μπορείτε να το πιστέψετε, είναι κατανοητό)
Ερ. Αγόρασα έναν Η/Υ με προεγκατεστημένο το Office 2003. Δυστυχώς το Office 2003 παρουσιάζει μια ασυμβατότητα με το λεξικό μου η οποία δεν υπήρχε στο Office XP. Μπορώ να εγκαταστήσω το προγενέστερο Office XP στη θέση του νεότερου πλην όμως ακατάλληλου για εμένα Office 2003; Απ. OXI
Ερ: "Έχω αγοράσει την ελληνική έκδοση του Office. Μπορώ στον ίδιο Η/Υ να εγκαταστήσω και την Γαλλική έκδοση για να καθοδηγώ στα μενού έναν Γάλλο φίλο μου όταν έχει πρόβλημα;" Απ.: "ΌΧΙ πρέπει να αγοράσετε χωριστά ΚΑΙ την γαλλική έκδοση" (για όσους καλοπροαίρετους υποθέτουν πως η γαλλική έκδοση, ίσως να έχει κάποια διαφορά από την ελληνική πέραν των λεκτικών, η απάντηση είναι πως όχι δεν έχει).
Ερ. Αγόρασα έναν Η/Υ με προεγκατεστημένο το Office 2003. Μου φαίνεται πολύ πιο ωραίο από το προηγούμενο! Μπορώ να το εγκαταστήσω και στο φορητό μου; Απ. ΟΧΙ (φυσικά εύκολα μαντεύει κανείς πως αν ρωτήσετε, μπορώ να το δώσω σε ένα φιλό μου; Η απάντηση θα είναι επίσης ΟΧΙ)
Άλλοι περιορισμοί του ιδιόκτητου λογισμικού
Οι παραπάνω είναι οι περιορισμοί που έχουν απασχολήσει τόσο πολύ κόσμο ώστε να συμπεριληφθούν στις "συχνές ερωτήσεις". Θα αναφέρω εδώ μερικούς ακόμα περιορισμούς τους οποίους αντιγράφω από την άδεια χρήσης των Windows XP Home. Η αναφορά θα είναι επιγραμματική και σε μορφή μίνι-ιστορίας για να μην γίνει κουραστική. Ως εκ τούτου ίσως να υστερεί ελαφρά σε ακρίβεια σε ορισμένα σημεία. Με την πρώτη ευκαιρία μπορείτε πάντα να διαβάσετε μια άλλη πολύ λεπτομερή ανάλυση της άδειας χρήσης των Windows XP
Αγόρασα έναν νέο σούπερ Η/Υ με τέσσερις επεξεργαστές. Περίμενα με αγωνία να δω πόσο όμορφα θα είναι να δουλεύω τα προγράμματα μου σε αυτό το τέρας επιδόσεων... μετά ανακάλυψα ότι απαγορεύεται να "τρέξω" τα windows XP σε Η/Υ με τρεις ή περισσότερους επεξεργαστές!
Στο Σύλλογο Ηπειρωτών έχω έναν παλιό Η/Υ με έναν μεγάλο δίσκο και όλοι μας σώζουμε τα έγγραφά μας εκεί. Όταν έκανα αναβάθμιση από Windows 98 σε Windows XP Home ανακάλυψα ότι η άδεια των XP Home δεν μας επιτρέπει να έχουμε πρόσβαση παραπάνω από 5 άτομα ταυτόχρονα... Είμαι σίγουρος πως και τα Windows 95 αλλά και τα "αρχαία" Windows 3.1 λειτουργούσαν κανονικά με περισσότερους χρήστες. Αναρωτιέμαι γιατί την ονομάζουν αναβάθμιση!
Στο σχολείο μας ο συνάδελφος καθηγητής πληροφορικής συνδέεται από τον υπολογιστή του στους 10 Η/Υ της τάξης του μέσω ενός προγράμματος που λέγεται VNC. Με αυτό βλέπει και καθοδηγεί τα παιδιά που κάνουν ασκήσεις καθώς αυτά εργάζονται στους Η/Υ τους. Όταν του είπα ότι αυτό επιτρέπεται μόνο εφόσον το σχολείο αγοράσει 10 επιπλέον άδειες χρήσης των windows XP (μία για κάθε Η/Υ στον οποίο συνδέεται) δεν με πίστεψε.
Ήμουν αποκλεισμένος στην ορεινή Αρκαδία. Δεν είχα παράπονο γιατί είχα νερό, γεμάτη δεξαμενή πετρελαίου και ρεύμα. Το τηλέφωνο δεν λειτουργούσε αλλά αυτό δεν μας ένοιαζε και πολύ. Ήξερα όμως πως επιστρέφοντας στο γραφείο θα με περίμενε ένας τόνος δουλειά. Ευτυχώς είχα μαζί μου το φορητό και θα μπορούσα τουλάχιστον να ξεμπερδέψω με τις μισές υποχρεώσεις. Όταν τον άνοιξα όμως τα windows αρνιόντουσαν να ξεκινήσουν και ζητάγανε κάτι που ονομαζόταν ενεργοποίηση. Στο πλάι υπήρχε μία αναφορά για "κάποια σοβαρή τροποποίηση που είχε γίνει στην σύνθεση του Η/Υ μου"... κοντοστάθηκα για λίγο και μετά από μια αναλαμπή άρχισα να καταριέμαι την κακή μου τύχη και τον -ομολογουμένως αθώο- ανιψιό μου που προσφέρθηκε να μου προσθέσει την τελευταία στιγμή την έξτρα μνήμη που είχα αγοράσει! Τελικά έμεινα εκεί ανήμπορος, να κοιτώ ένα φορητό χωρίς καμία βλάβη και ένα λογισμικό επίσης χωρίς καμία βλάβη να επιμένει πως βάση της άδειας χρήσης ήμουν αναγκασμένος να μην δουλεύω περιμένοντας να συνδεθώ στο internet ή να επικοινωνήσω με την τηλεφωνική εξυπηρέτηση...
Τώρα που θα φύγω για ένα χρόνο στην Αγγλία μήπως να πάρω τον Η/Υ μου μαζί; Μπα! θα πληρώσω ένα σωρό για το υπέρβαρο καλύτερα να τον πουλήσω και να αγοράσω καινούργιο στην Αγγλία... Αχα! θα τον πουλήσω στον Γιώργο που τον είδε καινούργιο και τον ζήλεψε. Tο μόνο κακό είναι ότι αυτός αλλάζει τους Η/Υ σαν τα πουκάμισα οπότε ίσως να πρέπει να του κρύψω πως δεν επιτρέπεται να πουλήσει και τα windows μαζί όταν θα πουλήσει τον Η/Υ. Ωχ! και ούτε να τα εγκαταστήσει σε οποιοδήποτε άλλο δικό του Η/Υ επιτρέπεται. Μήπως να του το νοικιάσω σε μια καλή τιμούλα μέχρι να γυρίσω; Όπα! λάθος ούτε να το νοικιάσω επιτρέπεται. Θεέ μου τι ανόητο μπλέξιμο! Ήθελα να 'ξερα για πιο λόγο υπάρχει αυτός ο περιορισμός της μη ενοικίασης και της μίας μεταπώλησης μόνο!
(η επόμενη ιστορία ίσως σας φανεί απίθανη... συνέβη όμως πέρυσι)
- Γιάννη, έμαθες τι έγινε με αυτό το σφάλμα στον κώδικα των windows το οποίο επιτρέπει σε έναν cracker να πάρει τον έλεγχο του Η/Υ αν απλά εμφανίσεις στην οθόνη σου μια εικόνα που έχει φτιάξει;!
- ε; Μα τι λες τώρα!
- Ναι! είναι τόσο απλό! Επηρεάζει σχεδόν όλες τις εκδόσεις των windows και ξέρουμε ότι ήδη οι crackers το εκμεταλλεύονται!
- Παναγία μου φαντάζομε η Microsoft θα έχει εκδώσει κάποιο patch ε;
- Όχι αλλά μια ανεξάρτητη εταιρεία κυκλοφόρησε ελευθέρα στο internet ένα δικό της patch που αντιμετωπίζει το πρόβλημα.
- Τι μου λες τώρα!; Μα πως και γιατί το κάνανε!;
- η κατάσταση ήταν τραγική και είχανε έναν καλό πελάτη που δεν ήθελε να το διακινδυνέψει οπότε βάλανε δυο καλούς προγραμματιστές μελετήσανε τον συγκεκριμένο κώδικα και βρήκανε την λύση.
- Καλά ο καλός πελάτης γιατί δεν απευθύνθηκε στην Microsoft
- Μα λες να μην το έκανε; Δυστυχώς τον αγνοήσανε
- Μα για στάσου υπάρχει και θέμα νομιμότητας εδώ: η άδεια χρήσης των Windows απαγορεύει να μελετήσεις τον κώδικα για να καταλάβεις τι κάνει - Άρα, αυτοί οι δυο προγραμματιστές μπορεί να ήταν καλοπροαίρετοι αλλά δράσανε παράνομα!
- Για καλή τους τύχη στη χώρα που ζούνε ο νόμος θεωρεί αυτό τον περιορισμό άκυρο.
Όπως έχουμε αναφέρει σχεδόν ποτέ ο δημιουργός ιδιόκτητου λογισμικού δεν αποκαλύπτει τον πηγαίο κώδικα (γιατί έχει και το δικαίωμα και το συμφέρον). Αυτό που δεν είναι προφανές είναι πως η μη δημοσίευση του πηγαίου κώδικα έχει σοβαρότατες αρνητικές συνέπειες. Για να γίνουν εύκολα κατανοητές αυτές οι αρνητικές συνέπειες θα χρησιμοποιήσουμε και πάλι μια παραβολή:
Έστω πως οι αυτοκινητοβιομηχανίες μπορούσαν να πουλάνε αυτοκίνητα με το καπό της μηχανής κλειδωμένο με ένα κλειδί που το κρατούσαν οι ίδιες και δεν το έδιναν ούτε καν στους αποκλειστικούς τους αντιπρόσωπους. Ας δούμε λοιπόν τι θα συνέβαινε σε αυτή την υποθετική περίπτωση αλλά και τι όντως συμβαίνει στην περίπτωση του ιδιόκτητου λογισμικού:
Αυτοκίνητα:Κανείς μηχανικός (εκτός των λίγων της κατασκευάστριας) δεν θα είχε την παραμικρή ιδέα για το τι ποιότητας υλικά και τι ποιότητας εργασία έχει γίνει στη μηχανή κι ας είναι από τα πιο σημαντικά τμήματα του αυτοκινήτου. Η ποιότητα θα μπορούσε να διαγνωστεί μόνο έμμεσα.
Λογισμικό: Κανείς μηχανικός λογισμικού δεν μπορεί να σας πει αν το λογισμικό που σκοπεύετε να αγοράσετε έχει προφανείς ενδείξεις προχειρότητας και κακών τεχνικών προγραμματισμού. Μέχρι πρόσφατα[ΠΑ] ακόμα και οι μεγαλύτερες εταιρείες ή οι κυβερνήσεις που επενδύουν ασύλληπτα πόσα σε ιδιόκτητο λογισμικό δεν μπορούσαν να κάνουν ούτε καν στοιχειώδη επιθεώρηση του πηγαίου κώδικα.
Αυτοκίνητα: Κανείς μηχανικός (εκτός των λίγων της κατασκευάστριας) δεν θα μπορούσε να διορθώσει μια βλάβη όσο απλή κι αν ήταν. Ως εκ τούτου το κόστος του service θα ήταν απίστευτα υψηλό (στις περισσότερες περιπτώσεις ασύμφορο) και τελικά οι εταιρείες κατασκευής θα δήλωναν πως ειδικά η μηχανή παραδίδετε "ως είναι" και τυχόν βλάβες που ίσως ανακύψουν δεν θα επιδιορθωθούν εκτός εάν και θέτουν σε σοβαρό κίνδυνο τον οδηγό, και δεν έχει κυκλοφορήσει νεότερο μοντέλο που λύνει το πρόβλημα. Τελικά οι αγοραστές θα ήταν αναγκασμένοι να αγοράζουν τα νέα μοντέλα όταν αυτά κυκλοφορούν ακόμα και αν δεν είχαν ανάγκη τις νέες δυνατότητες. Επίσης η διόλου ασήμαντη αγορά μετατροπών και βελτιώσεων κινητήρων θα εξαφανιζόταν.
Λογισμικό: Στις περισσότερες περιπτώσεις τα λάθη στο ιδιόκτητο λογισμικό δεν μπορεί να τα διορθώσει κανείς εκτός από την εταιρεία παραγωγής (ευτυχώς στην περίπτωση του λογισμικού δεν υφίσταται το ζήτημα της φθοράς). Όντως το ιδιόκτητο λογισμικό διατίθεται "ως είναι" χωρίς καμία εγγύηση και χωρίς καμία δέσμευση ότι τα λάθη θα διορθωθούν. Ακόμα και κρισιμότατα λάθη διορθώνονται όταν και εφόσον η εταιρεία παραγωγής κρίνει πως κάτι τέτοιο είναι σημαντικό με βάση την δική της οπτική γωνία και φυσικά μόνο για μερικά έτη μετά την κυκλοφορία του προϊόντος ή μόνο για τους πελάτες που πληρώνουν κάποιο συμβόλαιο συντήρησης. Ακόμα και μεγάλοι πελάτες που επενδύουν τεράστια ποσά σε αγορά ιδιόκτητου λογισμικού (π.χ. κυβερνήσεις) ξέρουν πως δύσκολα μπορούν να απαιτήσουν να γίνουν μετατροπές και βελτιώσεις στο λογισμικό που αγοράζουν [todo: some link]. Αγορά μετατροπών και βελτιώσεων ιδιόκτητου λογισμικού ουσιαστικά δεν υφίσταται.
Αυτοκίνητα: Η τεχνολογία των αυτοκινήτων θα εξελισσόταν πολύ αργά γιατί οι μηχανικοί των αυτοκινητοβιομηχανιών θα χωρίζονται από στεγανά και γιατί δεν θα μπορεί ο ένας να δει τις λύσεις του άλλου. Μάλιστα οι μηχανικοί των προηγμένων εργοστασίων σχεδόν πάντα δεσμεύονται από συμφωνίες εμπιστευτικότητας που δεν τους επιτρέπουν να δουλέψουν για μερικά χρόνια σε άλλη αυτοκινητοβιομηχανία. Σαν αποτέλεσμα οι οδηγοί θα χρησιμοποιούσαν ακόμα τσοκ αέρα για να ξεκινήσουν το αυτοκίνητο το πρωί και το ABS θα αποτελούσε όνειρο.
Λογισμικό: Σε κάποιο βαθμό αυτό σίγουρα συμβαίνει στην βιομηχανία του λογισμικού. Δυστυχώς μέχρι πριν λίγα χρόνια το θεωρούσαν είτε αναγκαίο κακό είτε μικρό κακό (ίσως επειδή μετριαζόταν και από την ξέφρενη ανάπτυξη της τεχνολογίας πληροφορικής ως σύνολο). Στους κύκλους όμως των ειδικών που μπορούν να συνειδητοποιήσουν της τεχνικές λεπτομέρειες, η ανέλπιστα αλματώδης ανάπτυξη μερικών εξεχόντων προγραμμάτων ΕΛ/ΛΑΚ (π.χ. Linux, Apache, MySQL) κλόνισε την αντίληψη πως δεν χάνουμε και πολλά πράγματα από πλευράς ταχύτητας εξέλιξης. [todo: some link]
Η παραπάνω παραβολή αποκαλύπτει πολλά μειονεκτήματα της μη διάθεσης του πηγαίου κώδικά. Κάποια όμως (τα οποία δεν είναι καθόλου επουσιώδη) διαφεύγουν:
Ένα σοβαρό μειονέκτημα είναι πως υπάρχει κάτι ανησυχητικό σε ένα πρόγραμμα του οποίου τον πηγαίο κώδικα δεν μπορείς να εξετάσεις: ποτέ δεν πρόκειται να είσαι σίγουρος για το τι κάνει... φυσικά κάποιοι ήδη θα αναρωτιούνται:
- Μα ακόμα κι αν βλέπαμε τον κώδικα τι θα καταλαβαίναμε;
- Τι μας νοιάζει τι ακριβώς κάνει αν κάνει τη δουλειά μας;
Πόσο σέβεται και προφυλάσσει τα προσωπικά σας δεδομένα το λογισμικό της ψυχιατρικής κλινικής στο οποίο καταλήγει το ιατρικό σας ιστορικό; Πόσο σέβεται και προφυλάσσει τα προσωπικά σας δεδομένα το λογισμικό της εφορίας;
Γιατί θα ΠΡΕΠΕΙ να εμπιστευτούμε τυφλά τέτοια προγράμματα; Μήπως δεν πρέπει; Μήπως αντιθέτως θα έπρεπε να έχουμε το δικαίωμα να τα μελετήσουμε; Μήπως και μόνο αυτή τη δυνατότητα αρκεί για να αποθαρρύνει πολλούς προγραμματιστές με κάπως "χαλαρή" ηθική από το να προσθέσουν αυτή την "πίσω πόρτα" που θα τους δώσει πρόσβαση στα πολύτιμα στοιχεία; Διότι μπορεί το 99% από τους ενδιαφερόμενους να μην έχει την παραμικρή ιδέα για το είναι κώδικάς. Αλλά αρκεί ένας ικανός προγραμματιστής για να τους ξεσκεπάσει και να τους φέρει αντιμέτωπους με την δικαιοσύνη.
Εν κατακλείδι: φυσικά και υπάρχουν αρκετά προγράμματα για τα οποία σχεδόν κανείς δεν νοιάζεται τι ακριβώς κάνουν. Όμως στην εποχή μας υπάρχουν και πάρα πολλά άλλα τα οποία μας επηρεάζουν σοβαρά. Πρόκειται για αυτά τα οποία έχουν πρόσβαση άμεσα ή έμμεσα σε ιδιωτικά δεδομένα. Ειδικά όταν έχουν πρόσβαση σε ιδιωτικά δεδομένα μεγάλων ομάδων ανθρώπων τότε η μη πρόσβαση στον πηγαίο τους κώδικά είναι ακόμα και επικίνδυνη. Αρκετά κράτη και μεγάλες εταιρείες άρχισαν τα τελευταία χρόνια να συνειδητοποιούν αυτό τον κίνδυνο και η συνειδητοποίηση αυτή οδήγησε πανίσχυρες εταιρείες σαν την microsoft να αποδεχτούν την περιορισμένη δημοσιοποίηση του πηγαίου κώδικα των προγραμμάτων τους. Σε ορισμένες περιπτώσεις και με αυστηρούς όρους. [SS].
[todo: ο κλειστός κώδικας και το network effect ευνοεί την ανάπτυξη μονοπώλιου ("για να ανοίξεις τα έγγραφα μου πρέπει να έχεις το πρόγραμμα που έχω κι εγώ") ενώ ο ανοικτός κώδικας σχεδόν επιβάλει την ανάπτυξη ανοικτών/ελεύθερων αγορών[ΕΑ]]
Ένα άλλο μειονέκτημα είναι αρκετά σοβαρό από κοινωνική πλευρά: Το γεγονός πως ο ιδιοκτήτης ενός "κλειστού" προγράμματος σχεδόν ποτέ δεν είναι υποχρεωμένος να δημοσιεύσει τον πηγαίο κώδικα (γιατί αυτόν δεν το έχει διαθέσει εμπορικά) σημαίνει ότι η πνευματική κληρονομιά που αυτό αντιπροσωπεύει δεν θα περάσει ποτέ στο κοινωνικό σύνολο. Στην πράξη ο πηγαίος κώδικας πολυάριθμων λογισμικών χάνετε δια παντός πολύ νωρίτερα, όταν οι εταιρείες που τα παράγουν κλείνουν ή παύουν να ασχολούνται με την εκάστοτε αγορά. Ακόμα όμως και αν ο πηγαίος κώδικας δημοσιευόταν μαζί με τον εκτελέσιμο κώδικα στον προβλεπόμενο από το νόμο χρονικό διάστημα το κέρδος θα ήταν αστείο (αν όχι ανύπαρκτο) γιατί το διάστημα αυτό είναι απελπιστικά μεγάλο για τα δεδομένα της εξέλιξης της τεχνολογίας λογισμικού. Είναι όντως απίθανο κάποιος προγραμματιστής να ενδιαφερθεί για κώδικα που γράφτηκε πριν μερικές δεκαετίες.
ΕΛ/ΛΑΚ
Τα θεμελιώδη μειονεκτήματα και οι περιορισμοί που επιβάλει στους χρήστες του το ιδιόκτητο λογισμικό είναι όπως είδαμε σοβαρά. Οι πρώτοι που συνειδητοποίησαν αυτή τη σοβαρότητα ήταν φυσικά αυτοί που είχαν τις μεγαλύτερες απαιτήσεις και τις περισσότερες γνώσεις: οι προγραμματιστές. Με την ανάπτυξη του Internet οι προγραμματιστές που συνειδητοποιούσαν τους περιορισμούς του ιδιόκτητου λογισμικού μπόρεσαν να έρθουν εύκολα σε επαφή και αναζήτησαν μια μέθοδο ανάπτυξης, διάθεσης και χρήσης λογισμικού που θα τους έδινε μεγαλύτερη ελευθερία. Το αποτέλεσμα ήταν αφενός η ωρίμανση μεθόδων συνεργασιακής ανάπτυξης και ελεύθερης διάθεσης λογισμικού το οποίο φτάνει στους χρήστες του με ελάχιστους περιορισμούς και αφετέρου μια αυξανόμενη συλλογή από τα προϊόντα αυτής της μεθόδου, δηλαδή το Ελεύθερο Λογισμικό / Λογισμικό Ανοικτού Κώδικα.
Οι προγραμματιστές ΕΛ/ΛΑΚ δραστηριοποιούνται φυσικά εντός του νομικού πλαισίου περί πνευματική ιδιοκτησίας που αναφέραμε. Ως εκ τούτου μπορούν να παραχωρήσουν το προϊόν της δουλειάς τους διαθέτοντας στους ενδιαφερόμενους μια άδεια χρήσης. Σχετικά πρόχειρα αυτό που διαφοροποιεί το ΕΛ/ΛΑΚ από το ιδιόκτητο λογισμικό είναι η άδεια χρήσης βάση της οποίας διατίθεται. Το ΕΛ/ΛΑΚ διατίθεται με μία άδεια χρήσης που παρέχει στον χρήστη του σχεδόν όλα τα δικαιώματα που απολαμβάνει και ο ίδιος ο δημιουργός: συμπεριλαμβάνονται τα δικαιώματα χρήσης για κάθε σκοπό, αντιγραφής, διάθεσης σε τρίτους και το δικαίωμα της τροποποίησης για τη δημιουργία παράγωγου λογισμικού.
Η διάθεση του πηγαίου κώδικα είναι προαπαιτούμενη ώστε να μπορεί ο αποδέκτης να μελετήσει και να μετατρέψει το λογισμικό (επειδή όπως αναφέραμε ένας προγραμματιστής μπορεί να μελετήσει αποδοτικά και να κάνει ουσιαστικές τροποποιήσεις στο λογισμικό μόνο στην μορφή πηγαίου κώδικα). Η δυνατότητα της μελέτης και της μετατροπής του πηγαίου κώδικα ενέπνευσε όπως είναι προφανές την ονομασία "Open Source Software" που στα ελληνικά θα μπορούσε να αποδοθεί με ακρίβεια ως "λογισμικό ανοιχτού πηγαίου κώδικα" αλλά που χάριν συντομίας αποδίδεται ως "Λογισμικό Ανοικτού Κώδικα (ΛΑΚ)". Το δε γεγονός ότι ο αποδέκτης είναι ελεύθερος να αξιοποιήσει το λογισμικό σχεδόν με κάθε τρόπο ενέπνευσε την ονομασία "Ελεύθερο Λογισμικό (ΕΛ)".
Σε αυτό το σημείο και πριν δούμε πιο λεπτομερώς τι πρέπει να ισχύει ώστε ένα λογισμικό να θεωρείται αυτό ΕΛ/ΛΑΚ έχουμε την ευκαιρία να διαλευκάνουμε γιατί η ονομασία είναι μία αλλά διπλή: Η ονομασία "Ελεύθερο Λογισμικό / Λογισμικό Ανοικτού Κώδικα" είναι λοιπόν διπλή διότι αφορά σε δύο τυπικά ξεχωριστούς ορισμούς και είναι μία διότι οι δύο αυτοί ορισμοί στην συντριπτική πλειοψηφία των περιπτώσεων περιγράφουν το ίδιο αντικείμενο! Η διατύπωση αυτή θυμίζει λίγο... σοφιστική οπότε ας εξηγήσουμε λίγο καλύτερα τι συμβαίνει:
Η ανάπτυξη του ΕΛ/ΛΑΚ είναι μια πρόσφατη τεχνική, οικονομική και κοινωνική εξέλιξη (2 με 3 δεκαετίες) και αρκετές λεπτομέρειες είναι ακόμα ρευστές. Υπάρχουν δύο φορείς που έχουν σφραγίσει με τις επιλογές τους αυτή την εξέλιξη. Η προσέγγιση τους εκπροσωπεί τους περισσότερους συμμετέχοντες. Πρόκειται για το Free Software Foundation (FSF) και το Open Source Initiative (OSI). Οι δύο φορείς είτε συμφωνούν είτε συγκλίνουν έντονα σε πάρα πολλά σημαντικά, πρακτικά και λειτουργικά ζητήματα. Για παράδειγμα, συγκλίνουν σχεδόν απόλυτα ως προς το τι πρέπει να ισχύει για να είναι ένα πρόγραμμα ΕΛ/ΛΑΚ (παρότι το περιγράφουν με διαφορετική γλώσσα!). Από την άλλη όμως, διαφωνούν σε διάφορα ιδεολογικά ζητήματα. Ίσως η βασικότερη ιδεολογική διαφορά είναι πως το FSF θεωρεί το μη-ελεύθερο λογισμικό κοινωνικό πρόβλημα που πρέπει να λυθεί ενώ το OSΙ το θεωρεί απλά μια μη ιδανική μέθοδο ανάπτυξης λογισμικού [ΒΔ][ΑΠΔ]. Επίσης οι δύο φορείς διαφέρουν ορισμένες φορές σε επιλογές όπως η πολιτική προώθησης του ΕΛ/ΛΑΚ.
Ακολουθεί σε ελεύθερη (αλλά όσο γίνεται προσεκτική) απόδοση το τι θεωρεί σημαντικό ο κάθε φορέας για να χαρακτηρίσει ένα λογισμικό ΕΛ/ΛΑΚ (για την ακρίβεια ΕΛ ή ΛΑΚ αντίστοιχα)
Το Free Software Foundation ονομάζει ένα πρόγραμμα Ελεύθερο Λογισμικό αν η άδεια χρήσης διασφαλίζει τις παρακάτω τέσσερις ελευθερίες για τον αποδέκτη του:
- Την ελευθερία να εκτελέσουν το πρόγραμμα για οποιονδήποτε σκοπό
- Την ελευθερία να μελετήσουν τον τρόπο λειτουργίας του προγράμματος και να το προσαρμόσουν στις ανάγκες τους (η πρόσβαση στον πηγαίο κώδικα είναι προϋπόθεση για αυτό)
- Την ελευθερία να αναδιανέμουν αντίγραφα του προγράμματος ώστε να βοηθήσούν το συνάνθρωπο τους.
- Την ελευθερία να βελτιώσούν το πρόγραμμα και να διανείμουν τις βελτιώσεις που έχουν κάνει στο ευρύ κοινό, ώστε να επωφεληθεί ολόκληρη η κοινότητα (η πρόσβαση στον κώδικα είναι προϋπόθεση για αυτό)
- Το δικαίωμα οποιουδήποτε να κάνει χρήση του λογισμικού για οποιοδήποτε σκοπό
- Το δικαίωμα να παραλαμβάνει τον πηγαίο κώδικα του λογισμικού και το δικαίωμα να τροποποιεί του λογισμικό
- Το δικαίωμα να αναδιανέμει το πρωτότυπο λογισμικό ή κάθε άλλο που προέκυψε από μετατροπή του πρωτότυπου (είτε επί αμοιβή είτε δωρεάν)
- Το δικαίωμα να αποκτήσει το λογισμικό χωρίς να καταβάλει κάποιο αντίτιμο.
Ποια είναι τα οφέλη του ΕΛ/ΛΑΚ
Τα οφέλη της χρήσης ΕΛ/ΛΑΚ είναι πολλαπλά. Μερικά αφορούν τον κάθε χρήστη και είναι προφανή ακόμα και με μια πρόχειρη ανάγνωση του ορισμού του τι είναι Ελεύθερο Λογισμικό ή του τι είναι Λογισμικό Ανοικτού Κώδικα:
- Μπορείτε πάντα να εκτελέσετε το λογισμικό για όποιο σκοπό θέλετε και σε όσους υπολογιστές θέλετε.
- Μπορείτε να αντιγράψετε και να διανείμετε το λογισμικό (π.χ. για να το δώσετε σε ένα φίλο ή συνεργάτη σας).
- Μπορείτε να μετατρέψετε το λογισμικό. Αυτό σημαίνει πως μπορείτε να το προσαρμόσετε καλύτερα στις ανάγκες σας ή να το βελτιώσετε ή απλά να διορθώσετε κάποιο σφάλμα του (bug).
- Μπορείτε να εκτιμήσετε πολύ καλύτερα την ποιότητα του λογισμικού και μπορείτε να ερευνήσετε για πιθανά σφάλματα (security holes) ή ακόμα και επί τούτου τοποθετημένα σημεία μη εξουσιοδοτημένης πρόσβασης (back doors) που μπορεί να επιτρέπουν κακόβουλες επιθέσεις ενάντια σε ευαίσθητα τμήματα του μηχανογραφικού σας εξοπλισμού.
- Επειδή η διανομή, η διόρθωση σφαλμάτων και η ανάπτυξη του λογισμικού ΕΛ/ΛΑΚ μπορεί να γίνει από κάθε τεχνικά καταρτισμένη ομάδα δημιουργείται ένα περιβάλλον έντονου ανταγωνισμού ο οποίος οδηγεί σε χαμηλές τιμές και υψηλές υπηρεσίες υποστήριξης.
- Επίσης, για τον παραπάνω λόγο ένα δημοφιλές πρόγραμμα ΕΛ/ΛΑΚ είναι απίθανο να μείνει χωρίς υποστήριξη ακόμα και αν η εταιρεία ή η ομάδα που το έφτιαξε το παραμελήσει (ή διαλυθεί).
- Οι χρήστες ΕΛ/ΛΑΚ που έχουν την δυνατότητα να μελετήσουν τον πηγαίο κώδικα συχνά δημοσιεύουν στο κοινό τα αποτελέσματα της μελέτης τους (π.χ. μια μεγάλη, τράπεζα ελέγχει το επίπεδο ασφάλειας ενός προγράμματος που σκέφτεται να χρησιμοποιήσει και μετά δημοσιεύει τα συμπεράσματά της) Με αυτό τον τρόπο γίνεται μια αμερόληπτη ποιοτική αξιολόγηση του λογισμικού την οποία μπορεί ο κάθε ενδιαφερόμενος να συμβουλευτεί.
- Οι χρήστες ΕΛ/ΛΑΚ που έχουν την δυνατότητα να βελτιώσουν τον πηγαίο κώδικα πολύ συχνά διανέμουν τα αποτελέσματα της προσπάθειάς τους ως ΕΛ/ΛΑΚ (είτε γιατί είναι υποχρεωμένοι από την άδεια χρήσης -προστατευτικές άδειες- είτε επειδή απλά είναι πολύ πιο οικονομικό και βολικό για αυτούς να ενσωματωθεί μια βελτίωση στο λογισμικό και να εξελιχτεί στην συνέχεια μαζί του)
Παραρτήματα
Δύο μεγάλες ομάδες αδειών χρήσης ΕΛ/ΛΑΚ
Υπάρχουν πολλές δεκάδες άδειες χρήσης λογισμικού ΕΛ/ΛΑΚ. Η συντριπτική όμως πλειοψηφία ΕΛ/ΛΑΚ χρησιμοποιεί μία από τέσσερις βασικές[ΤΑ]. Κάθε άδεια προσφέρει στον αποδέκτη όλες τις βασικές ελευθερίες και δικαιώματα που αναφέραμε αλλά παρουσιάζει τις δικές της ιδιαιτερότητες και φυσικά διαφέρει στη διατύπωση. Η πιο σημαντική ίσως διαφορά αφορά στην περίπτωση που ο αποδέκτης επιθυμεί να διανείμει (πουλήσει, χαρίσει κ.τ.λ) με τη σειρά του το λογισμικό (είτε ως είναι, είτε αφότου το μετατρέψει). Σε αυτή την περίπτωση μπορούμε να ξεχωρίσουμε δύο μεγάλες ομάδες: τις προστατευτικές άδειες χρήσης (οι οποίες αναφέρονται και ως copyleft) και τις μη προστατευτικές. Η διαφορά τους έγκειται σε έναν επιπλέον περιορισμό που θέτουν οι προστατευτικές άδειες χρήσης. Συγκεκριμένα ο αποδέκτης του λογισμικού μπορεί να το διαθέσει σε τρίτους μόνο κάτω από το καθεστώς της ίδιας άδειας χρήσης με αυτή κάτω από την οποία το έλαβε και ο ίδιος. Ο επιπλέον αυτός περιορισμός υπάρχει για να διασφαλίσει ότι κάθε αποδέκτης είτε του πρωτότυπου λογισμικού είτε λογισμικού που προκύπτει από την τροποποίηση του θα συνεχίσει να απολαμβάνει τις ίδιες ελευθερίες και δικαιώματα. Η διαφορά αυτή επηρεάζει στην πράξη [ΔΕΛ] μόνο τους χρήστες που: ΚΑΙ σκοπεύουν να τροποποιήσουν μια εφαρμογή ΕΛ/ΛΑΚ ΚΑΙ σκοπεύουν να διαθέσουν την τροποποιημένη εφαρμογή κάτω από διαφορετική άδεια χρήσης από αυτή που είχαν την δυνατότητα[ΠΡΟ] οι ίδιοι να αποκτήσουν την αρχική εφαρμογή ΕΛ/ΛΑΚ.
Η πλέων διαδεδομένη άδεια χρήσης ΕΛ/ΛΑΚ, η GPL, είναι προστατευτική. Η πιο γνωστή μη προστατευτική άδεια[ΕΜ] είναι η BSD και είναι πιθανότατα η 2η πιο διαδεδομένη άδεια ΕΛ/ΛΑΚ. Σε αυτό το σημείο είναι καλό να αναφέρουμε μια συχνή παρεξήγηση σχετικά με τη διαφορά μεταξύ Ελευθέρου Λογισμικού και Λογισμικού Ανοικτού Κώδικα: αρκετός κόσμος θεωρεί πως η διαφορά μεταξύ Ελευθέρου Λογισμικού και Λογισμικού Ανοικτού Κώδικα είναι πως το μεν Ελεύθερο προϋποθέτει μια προστατευτική άδεια ενώ το δε Ανοικτού Κώδικα αποδέχεται και τις μη προστατευτικές (ίσως επειδή το Freedom Software Foundation προωθεί ως προτιμότερες τις προστατευτικές έναντι των μη προστατευτικών αδειών).
Μπορούν οι εφαρμογές ΕΛ/ΛΑΚ να διατίθενται και εμπορικά;
Μια εταιρεία έχει κάθε δικαίωμα να διαθέτει εμπορικά ΕΛ/ΛΑΚ έναντι οποιασδήποτε τιμής θεωρεί κατάλληλη. Το δικαίωμα ισχύει είτε η εταιρεία ανέπτυξε η ίδια το λογισμικό, είτε ανέπτυξε ένα μεγάλο ή ελάχιστο τμήμα του. Ισχύει ακόμα και αν δεν έχει καμία απολύτως συμμετοχή στην ανάπτυξη του λογισμικού. Φυσικά η τιμή πώλησης υπόκειται στις βασικές αρχές της ελεύθερης αγοράς και ειδικότερα στο "νόμο" της προσφοράς και της ζήτησης (βλ. παρακάτω).
Να σημειώσουμε εδώ μια διαφορά με το ιδιόκτητο λογισμικό που εκ των υστέρων φαντάζει προφανής αλλά αρχικά ελάχιστοι την προσέχουν: Ο αγοραστής ΕΛ/ΛΑΚ ποτέ δεν αγοράζει 5 "άδειες χρήσης" ή "άδεια χρήσης για 5 θέσεις εργασίας" διότι για να είναι ΕΛ/ΛΑΚ το λογισμικό σημαίνει πως ο αποδέκτης του έχει εκ των πραγμάτων μια άδεια χρήσης από τον / τους δημιουργούς του λογισμικού και μάλιστα μια άδεια πολύ φιλελεύθερη και χωρίς περιορισμό στις θέσεις εργασίας. Ο αποδέκτης λοιπόν αγοράζει 5 πακέτα με το ΕΛ/ΛΑΚ ή 5 αντίγραφα του ΕΛ/ΛΑΚ ή 1 αντίγραφο συνοδευόμενο από τις τάδε υπηρεσίες π.χ. υποστήριξης των χρηστών (αυτές οι υπηρεσίες μπορεί κάλλιστα να αφορούν σε 5 θέσεις εργασίας).
Γιατί πληρώνει κανείς για εφαρμογές ΕΛ/ΛΑΚ αφού μπορεί να το αντιγράψει;
Αυτή είναι η αγαπημένη ερώτηση των κυνικών. Για όσους διαβάζοντας την, υποθέσατε βιαστικά, πως έχει γερές βάσεις, σκεφτείτε για λίγο πόσα πληρώνετε για φυσικό ανθρακούχο νερό σε ένα ωραίο παραλιακό μπαράκι. Αναλογιστείτε πως το εν λόγο νερό ρέει συχνά από μια πηγή που ο καθένας μπορεί να πάει και να πιει δωρεάν... Τελικά θα συνειδητοποιήσετε πως δεν πληρώνεται για το ανθρακούχο νερό αυτό καθαυτό αλλά για κάθε τι που το συνοδεύει και ειδικά για τις σχετικές υπηρεσίες.
Στην πράξη λοιπόν και όσον αφορά στο ΕΛ/ΛΑΚ:
- Μικρά ποσά πληρώνουν γιατί φτάνει σε αυτούς εύκολα και σε όμορφη συσκευασία
- Λίγο μεγαλύτερα ποσά πληρώνουν γιατί έρχεται σε όμορφη συσκευασία και με έντυπες οδηγίες χρήσης
- Μέτρια ποσά πληρώνουν γιατί έρχεται σε όμορφη συσκευασία, με έντυπες οδηγίες χρήσης και με κάποια βασική υποστήριξη (π.χ. τηλεφωνική υποστήριξη για την πρώτη εγκατάσταση και 12μηνή υποστήριξη μέσω email)
- Μεγαλύτερα ποσά πληρώνουν γιατί έρχεται και σε όμορφη συσκευασία και με έντυπες οδηγίες χρήσης αλλά και με σοβαρή υποστήριξη (π.χ. που εγκατάσταση και αρχική ρύθμιση και 7/24 τηλεφωνική υποστήριξη)
- Ακόμα μεγαλύτερα ποσά πληρώνουν γιατί συν όλα τα προηγούμενα έρχεται με τροποποιήσεις και βελτιώσεις με βάση τις δικές τους ανάγκες .
- Πολύ μεγαλύτερα ποσά πληρώνουν γιατί αναπτύχθηκε ειδικά για αυτούς
Σύνδεσμοι για περισσότερες πληροφορίες
www.ellak.gr: Ελεύθερο Λογισμικό / Λογισμικό ανοιχτού κώδικα Συχνές Ερωτήσεις Απαντήσεις
www.open-source.gr: Απαντήσεις σε συχνά ερωτήματα: Ελεύθερο λογισμικό / Λογισμικό ανοιχτού κώδικα
Κατανοώντας το Λογισμικό Ανοικτού Κώδικα και στα αγγλικά ως Understanding Open Source Software
Εξαιρετικό ανάγνωσμα στα αγγλικά αποτελεί το Open Source Software / Free Software (OSS/FS) References και οι σύνδεσμοι του Τι είναι το Linux (αν και μόνο εμέσα σχετικό)
GNU.org: Categories of Free and Non-Free Software
Here is a glossary of various categories of software that are often mentioned in discussions of free software. It explains which categories overlap or are part of other categories.
GNU.org: Free Software, Free Society: Selected Essays of Richard M. Stallman
The intersection of ethics, law, business and computer software is the subject of these essays and speeches by MacArthur Foundation Grant winner, Richard M. Stallman. This collection includes historical writings such as The GNU Manifesto, which defined and launched the activist Free Software Movement, along with new writings on hot topics in copyright, patent law, and the controversial issue of "trusted computing." Stallman takes a critical look at common abuses of copyright law and patents when applied to computer software programs, and how these abuses damage our entire society and remove our existing freedoms. He also discusses the social aspects of software and how free software can create community and social justice.
OSI:icenses approved by OSI
Copies of the licenses approved by OSI.
OSI: O.S. for Customers, Business, and Programmers
Advocacy - The basic idea behind open source is very simple...
...
Whether a techie/hacker, a businessperson, or a customer, you'll win with open source software. Read the case histories to find out how.
The Case for Open Source: For Business
The Case for Open Source: For Customers
The Case for Open Source: For Hackers
We maintain a page answering Frequently Asked Questions.
GNU.org: Why ?Free Software? is better than ?Open Source?
The official definition of ``open source software,'' as published
by the Open Source Initiative, is very close to our definition of free
software; however, it is a little looser in some respects, and they
have accepted a few licenses that we consider unacceptably restrictive
of the users.
Tim O'Reilly: Ten Myths about Open Source Software
(A transcript of a talk given by Tim O'Reilly to a group of Fortune 500 executives in October)
Myth #5. Open Source is all about licenses.
In fact, open source is about internet-enabled collaboration. Licenses play a role only to the extent that they set out rules designed to make sure that companies don't undermine the playing field.
At bottom, Open Source is a software development methodology, not a political belief. Some of the principles underlying that methodology are outlined in Eric Raymond's new book, The Cathedral and the Bazaar
[...]
The real lesson to be learned from open source communities are the techniques of networked collaboration that they've pioneered. Open source software projects have developed techniques--the use of mailing lists, distributed access to version control software, techniques of peer review, discussion and voting on features, rapid response to user feedback and opportunities for user participation--that can be applied fruitfully to the development of any kind of software.
bruce Perens: Open Sources: Voices from the Open Source Revolution
Includes a nice comparison of GPL, LPGL,BSD,Public Domain.
Eric Steven Raymond: Software Release Practice HOWTO
Discusses briefly why license choices are so important to OSS/FS projects:
The license you choose defines the social contract you wish to set up among your co-developers and users ...
Who counts as an author can be very complicated, especially for software that has been worked on by many hands. This is why licenses are important. By setting out the terms under which material can be used, they grant rights to the users that protect them from arbitrary actions by the copyright holders.
In proprietary software, the license terms are designed to protect the copyright. They're a way of granting a few rights to users while reserving as much legal territory is possible for the owner (the copyright holder). The copyright holder is very important, and the license logic so restrictive that the exact technicalities of the license terms are usually unimportant.
In open-source software, the situation is usually the exact opposite; the copyright exists to protect the license. The only rights the copyright holder always keeps are to enforce the license. Otherwise, only a few rights are reserved and most choices pass to the user. In particular, the copyright holder cannot change the terms on a copy you already have. Therefore, in open-source software the copyright holder is almost irrelevant -- but the license terms are very important.
GNU.org: Categories of Free and Non-Free Software
Infoworld: the 'business case' for open source
"Free, as in market" means that when modifications or repairs are needed, an open-source software customer can solicit for competitive bids, where a commercial software customer would be forced to turn only to the software's creator. That's an attractive proposition for a business, Lefkowitz noted.
Βικιπαίδεια: Πνευματική ιδιοκτησία
Βικιπαίδεια: Νόμος 2121/93 (Πνευματική ιδιοκτησία, συγγενικά δικαιώματα και πολιτιστικά θέματα)
Σημειώσεις
[ΦΙΛ] η φιλοσοφία και ο τρόπος σκέψεις όμως πιθανότατα έχει επηρεάσει και πολλούς άλλους χώρους πέρα από αυτό του IT
[ΔΕΛ] αν θέλουμε να είμαστε ακριβείς επηρεάζει και αυτόν που θέλει να πάρει μια εφαρμογή ΕΛ/ΛΑΚ και να την διαθέσει ως έχει σε τρίτους κάτω από άλλη άδεια χρήσης. Πλην όμως αυτή η περίπτωση είναι αρκετά περίεργη.
[ΠΡΟ] κάποιοι θα έλεγαν το προνόμιο
[ΒΔ] από το Why ?Free Software? is better than ?Open Source?: "As one person put it, ?Open source is a development methodology; free software is a social movement.? For the Open Source movement, non-free software is a suboptimal solution. For the Free Software movement, non-free software is a social problem and free software is the solution."
[cs] καθόλου σπάνια κάποιοι -παρασυρόμενοι από το γεγονός πως η εμπειρία τους σχετικά με την εμπορική διακίνηση λογισμικού περιλαμβάνει αποκλειστικά και μόνο περιπτώσεις του παραπάνω τρόπου διάθεσης- αναφέρονται εσφαλμένα σε αυτό το λογισμικό και ως "εμπορικό λογισμικό" - commercial software.
[ΕΜ] αν και κάποιοι πιστεύουν ότι ίσως να είναι περισσότερο προστατευτική από ότι νομίζουμε βλ. BSD - The Dark Horse of Open Source, by Brendan Scott, OS Law
[ΕΑ] βλ. Ten Myths about Open Source Software
a transcript of a talk given by Tim O'Reilly to a group of Fortune 500 executives in October: Myth #7. Open source only matters to programmers, since most users never look under the hood anyway. "The benefits of open source are exactly the same as the benefits of any other free market: competition between multiple suppliers results in lower prices, more innovation, and specialization to meet the needs of new niches. This is in fact the chief benefit of open source as far as I'm concerned: you are no longer locked into a single-source supplier. If worst comes to worst, you can solve your own problems; more likely, there will be a variety of third-party vendors who will be able to support you better than a single-source vendor ever will."
[SS] Από την σελίδα Government Security Program της microsoft "The Government Security Program (GSP) is a crucial element of Microsoft's efforts to address the unique security requirements of governments around the world. The GSP provides national governments with information to help them evaluate the security of Microsoft products. In 2001, Microsoft launched the Shared Source Initiative, expanding its long-standing efforts to make Windows source code more transparent to industry partners and customers. A year later, the company announced its Trustworthy Computing Initiative, placing security at the core of all Windows development efforts. The principles of these two critical directives are embodied in the GSP, a program built upon the cornerstones of transparency and partnership."
[ΑΠΔ] Ορίστε και η άποψη του FSF και η άποψη του OSI επί του θέματος της διαφοράς μεταξύ τους.
[ΔΔ] από το Open Source Software / Free Software (OSS/FS) References του David Wheeler:
?You can find definitions for the terms open source software and free software. In practice, nearly all software meeting one definition also meets the other.?
[ΤΑ] από το Open Source Software / Free Software (OSS/FS) References του David Wheeler:
?There are dozens of OSS/FS licenses, but nearly all OSS/FS software uses one of the four major licenses: the GNU General Public License (GPL), the GNU Lesser (or Library) General Public License (LGPL), the MIT (aka X11) license, and the BSD-new license. Indeed the Open Source Initiative refers to these four licenses as the classic open source licenses.
The GPL and LGPL are termed ``copylefting'' licenses, that is, these licenses are designed to prevent the code from becoming proprietary. See Perens' paper for more information comparing these licenses.
The GPL allows anyone to use the program and modify it, but prevents code from becoming proprietary once distributed and it also forbids proprietary programs from "linking" to it.
The MIT and BSD-new licenses let anyone do almost anything with the code except sue the authors. [...].
The LGPL is a compromise between the GPL and MIT/BSD-new approaches and is primarily intended for code libraries; like the GPL, LGPL-licensed software cannot be changed and made proprietary, but the LGPL does permit proprietary programs to link to the library.?
[ΠΑ] ελάχιστα χρόνια πριν η διάθεση προς επιθεώρηση από την Microsoft του πηγαίου κώδικα σε μεγάλους πελάτες κάτω από αυστηρότατα μέτρα (shared source initiative) προκάλεσε έκπληξη ενώ οι αναλυτές της αγοράς συμφωνούν πως οφείλετε κατά μεγάλο ποσοστό στην πίεση από το αντίθετο παράδειγμα του ΕΛ/ΛΑΚ
[πηγη]
Last edited: