Κείμενο "Τι είναι ΕΛ/ΛΑΚ" για το hellug.gr

ndemou at gmail.com ndemou at gmail.com
Mon Nov 5 11:59:04 EET 2007


Παραθέτω ένα κείμενο το οποίο έγραψα[1] σχετικά με το τι είναι ΕΛ/ΛΑΚ,
επειδή θεωρώ καλό να αναρτηθεί κάτι πιο πλήρες στη σχετική σελίδα του
hellug.gr. Καλό θα ήταν να προστεθούν και μερικές παραπομπές σε άλλες
ιστοσελίδες. Μπορώ να το δω κι αυτό αν υπάρχει ενδιαφέρον από μέρους
σας. Φυσικά παραχωρώ στο σύλλογο ΟΛΑ τα δικαιώματα για την χρήση αυτού
του κειμένου με κάθε τρόπο και για κάθε σκοπό που είναι σύμφωνος με το
καταστατικό του (για όλους τους υπόλοιπους το κείμενο διατίθεται υπό
τους όρους της Creative Commons Attribution Noncommercial Share Alike
3.0 Greece License)

BTW
 - μπορεί κανείς να γράψει κάτι πιο εκτενές και για το "τι είναι Linux"?
 - μήπως θα ήταν καλό τα κείμενα στο hellug.gr να προσφέρονται με μία
φιλελεύθερη άδεια (π.χ. κάποια από τις Creative Commons)?

Νίκος Δήμου

================BEGIN===============

<h2 Με λίγα λόγια</h2>

<p>Η ακροστιχίδα ΕΛ/ΛΑΚ προέρχεται από
την φράση "Ελεύθερο Λογισμικό /
Λογισμικό Ανοικτού Κώδικα". Το ΕΛ/ΛΑΚ
είναι λογισμικό το οποίο διατίθεται
από τους δημιουργούς τους με ελάχιστους
περιορισμούς. Συνήθως θα το βρείτε
δωρεάν διαθέσιμο στο Internet. Αφότου το
"κατεβάσετε" <b>μπορείτε να το
εγκαταστήσετε σε όσους Η/Υ θέλετε, να
το εκτελέσετε για όποιο σκοπό θέλετε,
όπου θέλετε και για όσα χρόνια θέλετε,
ενώ επίσης μπορείτε να το χαρίσετε ή
ακόμα και να το πουλήσετε</b>. Επιπλέον
μαζί με ένα ΕΛ/ΛΑΚ λογισμικό διατίθεται
πάντοτε και ο πηγαίος κώδικάς του ώστε
αν εσείς, οι κάποιοι φίλοι ή συνεργάτες
σας, έχετε γνώσεις προγραμματισμού, να
<b>μπορείτε εύκολα να το μελετήσετε, να
το τροποποιήσετε και να το βελτιώσετε</b>.
Στην πραγματικότητα, πολλοί προγραμματιστές
συμμετέχουν ακριβώς με αυτό τον τρόπο
στην ανάπτυξη χιλιάδων εφαρμογών ΕΛ/ΛΑΚ.</p>

<p>Τα παραπάνω ακούγονται σε όσους δεν
έχουν προσωπική εμπειρία με το ΕΛ/ΛΑΚ
εντελώς ουτοπικά αλλά αποτελούν την
καθημερινή πραγματικότητα για <a
 href="http://www.dwheeler.com/oss_fs_why.html#market_share">πολλά
άτομα, εταιρείες και οργανισμούς</a> που
τα τελευταία χρόνια αξιοποιούν το ΕΛ/ΛΑΚ
σε εργασίας τετριμμένες, πρωτοποριακές,
απλές, περίπλοκες, ασήμαντες ή κρίσιμες.
Για παράδειγμα η πλειοψηφία των
ιστοσελίδων που αποτελούν το World Wide Web
σερβίρονται από τον Apache web server ενώ πάρα
πολύ συχνά η βάση δεδομένων που "γεμίζει"
αυτές τις σελίδες με περιεχόμενο τρέχει
σε MySQL ή PostgreSQL. Επίσης συχνά οι σελίδες
προβάλλονται στον Mozilla Firefox και δεν
αποκλείεται τα κείμενα τους να έχουν
συνταχθεί στο OpenOffice.org. Τα προηγούμενα
είναι τέσσερα από τα πλέον δημοφιλή
λογισμικά ΕΛ/ΛΑΚ αλλά υπάρχουν χιλιάδες
ακόμα.</p>

<h2>Περισσότερες λεπτομέρειες</h2>

<p>Οι προγραμματιστές ΕΛ/ΛΑΚ μπορούν να
παραχωρήσουν το προϊόν της δουλειάς
τους διαθέτοντας το με μια άδεια χρήσης.
Σχετικά πρόχειρα αυτό που χαρακτηρίζει
το ΕΛ/ΛΑΚ είναι ακριβώς αυτή η άδεια
χρήσης βάση της οποίας διατίθεται.
Πρόκειται για μία άδεια που παρέχει
στον αποδέκτη σχεδόν όλα τα δικαιώματα
που απολαμβάνει και ο ίδιος ο δημιουργός:
δικαίωμα χρήσης για κάθε σκοπό, δικαίωμα
αντιγραφής και διάθεσης σε τρίτους,
αλλά και δικαίωμα τροποποίησης για τη
δημιουργία παράγωγου λογισμικού.</p>

<p>Η διάθεση του πηγαίου κώδικα είναι
προαπαιτούμενη ώστε να μπορεί ο αποδέκτης
να μελετήσει και να μετατρέψει το
λογισμικό (διότι ένας προγραμματιστής
μπορεί να μελετήσει αποδοτικά και να
κάνει ουσιαστικές τροποποιήσεις στο
λογισμικό μόνο στην μορφή πηγαίου
κώδικα). Η δυνατότητα της μελέτης και
της μετατροπής του πηγαίου κώδικα
ενέπνευσε όπως είναι προφανές την
ονομασία "Open Source Software" που στα
ελληνικά θα μπορούσε να αποδοθεί με
ακρίβεια ως "λογισμικό ανοιχτού
πηγαίου κώδικα" αλλά που χάριν
συντομίας αποδίδεται ως "Λογισμικό
Ανοικτού Κώδικα (ΛΑΚ)". Το δε γεγονός
πως ο αποδέκτης είναι ελεύθερος να
αξιοποιήσει το λογισμικό σχεδόν με κάθε
τρόπο ενέπνευσε την ονομασία "Ελεύθερο
Λογισμικό (ΕΛ)". </p>

<p>Σε αυτό το σημείο και πριν δούμε πιο
λεπτομερώς τι πρέπει να ισχύει ώστε ένα
λογισμικό να θεωρείται αυτό ΕΛ/ΛΑΚ
έχουμε την ευκαιρία να διαλευκάνουμε
γιατί η ονομασία είναι διπλή: Η ονομασία
"Ελεύθερο Λογισμικό / Λογισμικό
Ανοικτού Κώδικα" είναι λοιπόν διπλή
διότι αφορά σε δύο τυπικά ξεχωριστούς
ορισμούς και είναι μία διότι οι δύο
αυτοί ορισμοί στην συντριπτική πλειοψηφία
των περιπτώσεων περιγράφουν το ίδιο
αντικείμενο! Η διατύπωση αυτή θυμίζει
λίγο... σοφιστική οπότε ας εξηγήσουμε
λίγο καλύτερα τι συμβαίνει: </p>

<p>Η ανάπτυξη του ΕΛ/ΛΑΚ είναι μια πρόσφατη
τεχνική, οικονομική και κοινωνική
εξέλιξη (2 με 3 δεκαετίες) και αρκετές
λεπτομέρειες είναι ακόμα ρευστές.
Υπάρχουν δύο φορείς που έχουν σφραγίσει
με τις επιλογές τους αυτή την εξέλιξη.
Η προσέγγιση τους εκπροσωπεί τους
περισσότερους συμμετέχοντες. Πρόκειται
για το Free Software Foundation (FSF) και το Open Source
Initiative (OSI). Οι δύο φορείς είτε συμφωνούν
είτε συγκλίνουν έντονα σε πάρα πολλά
σημαντικά, πρακτικά και λειτουργικά
ζητήματα. Για παράδειγμα, συγκλίνουν
σχεδόν απόλυτα ως προς το τι πρέπει να
ισχύει για να είναι ένα πρόγραμμα ΕΛ/ΛΑΚ
(παρότι το περιγράφουν με διαφορετική
γλώσσα!). Από την άλλη όμως, διαφωνούν
σε διάφορα ιδεολογικά ζητήματα. Ίσως η
βασικότερη ιδεολογική διαφορά είναι
πως το FSF θεωρεί το μη-ελεύθερο λογισμικό
κοινωνικό πρόβλημα που πρέπει να λυθεί
ενώ το OSΙ το θεωρεί απλά μια μη ιδανική
μέθοδο ανάπτυξης λογισμικού [ΒΔ][ΑΠΔ].
Επίσης οι δύο φορείς διαφέρουν ορισμένες
φορές σε επιλογές όπως η πολιτική
προώθησης του ΕΛ/ΛΑΚ.</p>
<p>Ακολουθεί σε ελεύθερη (αλλά όσο γίνεται
προσεκτική) απόδοση το τι θεωρεί σημαντικό
ο κάθε φορέας για να χαρακτηρίσει ένα
λογισμικό ΕΛ/ΛΑΚ (για την ακρίβεια ΕΛ ή
ΛΑΚ αντίστοιχα)</p>

<p>Το Free Software Foundation <a
 href="http://www.gnu.org/philosophy/free-sw.el.html">ονομάζει
ένα πρόγραμμα Ελεύθερο Λογισμικό</a> αν
η άδεια χρήσης διασφαλίζει τις παρακάτω
τέσσερις ελευθερίες για τον αποδέκτη
του: </p>
<ul>
  <li>
    <p>Την ελευθερία να εκτελέσουν το πρόγραμμα για οποιονδήποτε σκοπό </p>
  </li>
  <li>
    <p>Την ελευθερία να μελετήσουν τον τρόπο λειτουργίας του
προγράμματος και να το προσαρμόσουν στις ανάγκες τους (η πρόσβαση στον
πηγαίο κώδικα είναι προϋπόθεση για αυτό)</p>
  </li>
  <li>
    <p>Την ελευθερία να αναδιανέμουν αντίγραφα του προγράμματος ώστε να
βοηθήσούν το συνάνθρωπο τους. </p>
  </li>
  <li>
    <p>Την ελευθερία να βελτιώσουν το πρόγραμμα και να διανείμουν τις
βελτιώσεις που έχουν κάνει στο ευρύ κοινό, ώστε να επωφεληθεί ολόκληρη
η κοινότητα (η πρόσβαση στον κώδικα είναι προϋπόθεση για αυτό)</p>
  </li>
</ul>

<p>Το δε Open Source Initiative <a
 href="http://www.opensource.org/docs/definition.php">ονομάζει
ένα λογισμικό Ανοικτού Κώδικα</a> αν η
άδεια χρήσης παρέχει τα παρακάτω
δικαιώματα στον αποδέκτη του:</p>
<ul>
  <li>
    <p>Το δικαίωμα οποιουδήποτε να κάνει χρήση του λογισμικού για
οποιοδήποτε σκοπό</p>
  </li>
  <li>
    <p>Το δικαίωμα να παραλαμβάνει τον πηγαίο κώδικα του λογισμικού και
το δικαίωμα να τροποποιεί του λογισμικό</p>
  </li>
  <li>
    <p>Το δικαίωμα να αναδιανέμει το πρωτότυπο λογισμικό ή κάθε άλλο
που προέκυψε από μετατροπή του πρωτότυπου (είτε επί αμοιβή είτε δωρεάν)</p>
  </li>
  <li>
    <p>Το δικαίωμα να αποκτήσει το λογισμικό χωρίς να καταβάλει κάποιο
αντίτιμο.</p>
  </li>
</ul>

<p>Και οι δύο ορισμοί αφήνουν περιθώρια
για την δημιουργία μιας πληθώρας αδειών
χρήσης αλλά είναι επίσης φανερό πως
συγκλίνουν εντονότατα. Αυτός ακριβώς
είναι και ο λόγος που είναι τόσο δύσκολο
μία άδεια χρήσης να καλύπτει μόνο τις
απαιτήσεις του ενός φορέα και όχι του
άλλου. Στην πράξη οι άδειες που καλύπτουν
τις απαιτήσεις ενός και μόνο από τους
δυο ορισμούς είναι ακόμα σπανιότερες
διότι παρά τις όποιες διαφορές, υπάρχει
αρκετή συγκατάβαση μεταξύ των ανθρώπων
που ενστερνίζονται την φιλοσοφία του
κάθε ενός από τους δύο φορείς ώστε οι
περισσότεροι να κατακρίνουν την χρήση
τέτοιων αδειών. Εν τέλη ο όρος ΕΛ/ΛΑΚ
είναι κατάλληλος για το 99.9% του λογισμικού
που είναι είτε Ελεύθερο είτε Ανοικτού
κώδικα και για αυτό είναι και αρκετά
διαδεδομένος.</p>

<h2>Τα οφέλη του ΕΛ/ΛΑΚ εν συντομία</h2>

<p>Τα οφέλη της χρήσης ΕΛ/ΛΑΚ είναι
πολλαπλά. Μερικά αφορούν τον κάθε χρήστη
και είναι προφανή ακόμα και με μια
πρόχειρη ανάγνωση των ορισμών. Π.χ.:</p>
<ul>
  <li>
    <p>Μπορείτε πάντα να εκτελέσετε το
λογισμικό για όποιο σκοπό θέλετε
και σε όσους υπολογιστές θέλετε.</p>
  </li>
  <li>
    <p>Μπορείτε να αντιγράψετε και να διανείμετε
το λογισμικό (π.χ. για
να το δώσετε σε ένα φίλο ή συνεργάτη σας).</p>
  </li>
</ul>

<p>Μερικά οφέλη είναι επίσης προφανή
αλλά αφορούν μόνο τους χρήστες που είτε
έχουν οι ίδιοι γνώση προγραμματισμού
είτε έχουν τη δυνατότητα να ζητήσουν
την συνδρομή ενός προγραμματιστή. Π.χ.:</p>
<ul>
  <li>
    <p>Μπορείτε να μετατρέψετε το λογισμικό.
Αυτό σημαίνει πως μπορείτε
να το προσαρμόσετε καλύτερα στις ανάγκες σας
ή να το βελτιώσετε ή απλά
να διορθώσετε κάποιο σφάλμα του (bug).</p>
  </li>
</ul>

<p>Υπάρχουν όμως και οφέλη που δεν είναι
και τόσο άμεσα προφανή. Π.χ.:</p>
<ul>
  <li>
    <p>Μπορείτε να εκτιμήσετε πολύ καλύτερα την ποιότητα του λογισμικού
και μπορείτε να ερευνήσετε για πιθανά σφάλματα (security holes) ή ακόμα
και επί τούτου τοποθετημένα σημεία μη εξουσιοδοτημένης πρόσβασης (back
doors) που μπορεί να επιτρέπουν κακόβουλες επιθέσεις ενάντια σε
ευαίσθητα τμήματα του μηχανογραφικού σας εξοπλισμού. </p>
  </li>
  <li>
    <p>Επειδή η διανομή, η διόρθωση σφαλμάτων και η ανάπτυξη του
λογισμικού ΕΛ/ΛΑΚ μπορεί να γίνει από κάθε τεχνικά καταρτισμένη ομάδα
δημιουργείται ένα περιβάλλον έντονου ανταγωνισμού ο οποίος οδηγεί σε
χαμηλές τιμές και υψηλές υπηρεσίες υποστήριξης.</p>
  </li>
  <li>
    <p>Επίσης, για τον παραπάνω λόγο ένα δημοφιλές πρόγραμμα ΕΛ/ΛΑΚ
είναι απίθανο να μείνει χωρίς υποστήριξη ακόμα και αν η εταιρεία ή η
ομάδα που το έφτιαξε το παραμελήσει (ή διαλυθεί).</p>
  </li>
  <li>
    <p>Οι χρήστες ΕΛ/ΛΑΚ που έχουν την δυνατότητα να μελετήσουν τον
πηγαίο κώδικα συχνά δημοσιεύουν στο κοινό τα αποτελέσματα της μελέτης
τους (π.χ. μια μεγάλη, τράπεζα ελέγχει το επίπεδο ασφάλειας ενός
προγράμματος που σκέφτεται να χρησιμοποιήσει και μετά δημοσιεύει τα
συμπεράσματά της) Με αυτό τον τρόπο γίνεται μια αμερόληπτη ποιοτική
αξιολόγηση του λογισμικού την οποία μπορεί ο κάθε ενδιαφερόμενος να
συμβουλευτεί. </p>
  </li>
  <li>
    <p>Οι χρήστες ΕΛ/ΛΑΚ που έχουν την δυνατότητα να βελτιώσουν τον
πηγαίο κώδικα πολύ συχνά διανέμουν τα αποτελέσματα της προσπάθειάς τους
ως ΕΛ/ΛΑΚ (είτε γιατί είναι υποχρεωμένοι από την άδεια χρήσης
-προστατευτικές άδειες- είτε επειδή απλά είναι πολύ πιο οικονομικό και
βολικό για αυτούς να ενσωματωθεί μια βελτίωση στο λογισμικό και να
εξελιχτεί στην συνέχεια μαζί του)</p>
  </li>
</ul>

<p>Τα παραπάνω οφέλη είναι συνοπτικά και
ενδεικτικά. Το εύρος των ωφελειών είναι
δύσκολο να περιγραφεί σε ένα τόσο σύντομο
κείμενο. </p>

================END===============

_____________________________
[1] στην ουσία είναι προσαρμογή ενός άλλου κειμένου που έγραψα πέρισυ


More information about the Hellug mailing list