24
Ελεύθερο Λογισμικό / Λογισμικό Ανοικτού Κώδικα (ΕΛ/ΛΑΚ)

ελ λακ

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: ελ λακ

Ελεύθερο Λογισμικό / Λογισμικό Ανοικτού

Κώδικα (ΕΛ/ΛΑΚ)

Ελεύθερο Λογισμικό / Λογισμικό Ανοικτού

Κώδικα (ΕΛ/ΛΑΚ)

Page 2: ελ λακ

Σύντομη ιστορική αναδρομή

Δεκαετίες ’50, ’60 και ’70– Λογισμικό (μαζί με πηγαίο κώδικα) διανέμεται

ελεύθερα σε διάφορα forums και σε ακαδημαϊκού κύκλους

1983– O Richard Stallman γράφει το GNU Manifesto

1984– Αρχίζει το GNU Project για τη δημιουργία ενός

πλήρως ελεύθερου λειτουργικού συστήματος1985– Ιδρύεται το Free Software Foundation

Page 3: ελ λακ

Σύντομη ιστορική αναδρομή

1991– Ελεύθερο BSD Unix σε PC (με i386)– O Linus Torvalds αναγγέλλει και διαθέτει

ελεύθερα τον πυρήνα Linux1991 - σήμερα– Συνεχείς ανακοινώσεις βελτιώσεων αλλά

και νέων ελεύθερων προγραμμάτων1997– Δημοσίευση “The Cathedral and the Bazaar”

του Eric S. Raymond (γιατί η κατανεμημένη ανάπτυξη λογισμικού λειτουργεί καλά)

Page 4: ελ λακ

Σύντομη ιστορική αναδρομή

1998– Χρήση του όρου “open source” και κατοχύρωσή

του ως σήμα κατατεθέν για προϊόντα ελεύθερου λογισμικού

– Ορισμός του “open source” (Open Source Definition) προερχόμενος από τις οδηγίες DFSG - Debian Free Software Guidelines

– Ίδρυση του Open Source Initiative (OSI)1998 - σήμερα– Το ΕΛ/ΛΑΚ κερδίζει όλο και μεγαλύτερη

αναγνώριση

Page 5: ελ λακ

Ελεύθερο Λογισμικό (ΕΛ)

• Το Ελεύθερο Λογισμικό (Free Software) είναι θέμα ελευθερίας και όχι κόστους/τιμής

• Φιλοσοφία του ΕΛ

– Το θέμα είναι η ελευθερία· είναι όλο το θέμα και το μόνο θέμα.

• Το Ελεύθερο Λογισμικό (Free Software) σχετίζεται με την ελευθερία του χρήστη να χρησιμοποιήσει/εκτελέσει, να αντιγράψει, να διανείμει, να μελετήσει, να αλλάξει και να βελτιώσει το λογισμικό.

Page 6: ελ λακ

Ορισμός Ελεύθερου Λογισμικού

Είναι Ελεύθερο Λογισμικό αν ο χρήστης έχει:

– την ελευθερία να χρησιμοποιήσει/εκτελέσει το λογισμικό (πρόγραμμα) για κάθε σκοπό (ελευθερία 0)

– την ελευθερία να μελετήσει πως λειτουργεί το πρόγραμμα και να το προσαρμόσει στις ανάγκες του (ελευθερία 1) - προαπαιτεί πρόσβαση στον πηγαίο κώδικα

– την ελευθερία να (ανα)διανείμει αντίγραφα για να βοηθήσει τους άλλους (ελευθερία 2)

– την ελευθερία να βελτιώσει το πρόγραμμα και να διαθέσει τις βελτιώσεις στο ευρύ κοινό, ώστε όλοι να επωφεληθούν (ελευθερία 3) - προαπαιτεί πρόσβαση στον πηγαίο κώδικα

Page 7: ελ λακ

Λογισμικό Ανοικτού Κώδικα (ΛΑΚ)

• Ανακοίνωση της Netscape οτι θα διαθέσει τον πηγαίο κώδικα του φυλλομετρητή της (browser)

• Ευκαιρία να πεισθεί ο επιχειρηματικός κόσμος για την ανοικτή διαδικασία ανάπτυξης λογισμικού

• Ανάγκη να εκλείψει η νοοτροπία αντιπαράθεσης που είχε συνδεθεί με το ελεύθερο λογισμικό και να προωθηθεί η ιδέα σε ρεαλιστική επιχειρηματική βάση

• Δημιουργία του όρου “open source”

• Έμφαση στη διαμοίραση του πηγαίου κώδικα και στη διαδικασία ανάπτυξης

Page 8: ελ λακ

Ορισμός Ανοικτού Κώδικα

(Open Source Definition)• Ανοικτός Κώδικας δεν σημαίνει

μόνο πρόσβαση στον πηγαίο κώδικα. Η διανομή πρέπει να συμμορφώνεται με τα κριτήρια

– 1. Ελεύθερη αναδιανομή

– 2. Διανομή και του πηγαίου κώδικα

– 3. Διανομή με τους ίδιους όρους αλλαγών και λογισμικού που βασίζεται στο αρχικό.

– 4. Άδεια αλλαγής του πηγαίου κώδικα (η μέθοδος εφαρμογής αρχείων αλλαγών - patches)

– 5. Καμία διάκριση απέναντι σε άτομα ή ομάδες

– 6. Καμία διάκριση απέναντι σε πεδία εφαρμογής

– 7. Ελεύθερη διανομή της άδειας χρήσης

– 8. Άδεια χρήσης που δεν εξαρτάται από συγκεκριμένη διανομή

– 9. Άδεια χρήσης που δεν περιορίζει άλλο λογισμικό

– 10. Άδεια χρήσης που είναι τεχνολογικά ουδέτερη

Page 9: ελ λακ

ΕΛ/ΛΑΚ• Χωριστά κινήματα ΕΛ και ΛΑΚ• Υπάρχει διαφωνία ανάμεσα στις κοινότητες του ΕΛ

και του ΛΑΚ, σχετικά με τη φιλοσοφία• Ωστόσο σε πρακτικό επίπεδο υπάρχει γενικά

συμφωνία!• Έτσι οι όροι ΕΛ και ΛΑΚ μπορούμε να πούμε πως

αναφέρονται λίγο-πολύ στο ίδιο πράγμα• Μερικές άδειες χρήσης αναγνωρίζονται ως άδειες

χρήσης ΛΑΚ αλλά όχι ως άδειες χρήσης ΕΛ

• Χρήση του όρου ΕΛ/ΛΑΚ (FLOSS Free/Libre - Open Source Software)

Page 10: ελ λακ

Άδειες χρήσης ΕΛ/ΛΑΚ• Πάνω από 50 άδειες

χρήσης ΕΛ/ΛΑΚ– συμβατές με τη GPL (και

το GNU project, και μη συμβατές με τη GPL

– με αδυναμία επιβολής επιπλέον περιορισμών (Copyleft) και με δυνατότητα επιβολής επιπλέον περιορισμών (Non-copyleft)

• Πολλές άδειες χρήσης που δεν ήταν ελεύθερες τροποποιούνται ώστε να γίνουν ελεύθερες

• Ενδεικτικά:– GNU GPL και GNU LGPL – X11 License– Expat License (MIT license)– BSD license,

original/modified – OpenSSL licence– Apache license (ver. 1.0,

1.1)– Public Domain.

• νομική κατάσταση, όχι άδεια

• ισοδύναμο με άδεια που επιτρέπει τα πάντα.

• … και πολλές άλλες

Page 11: ελ λακ

Μοντέλα ανάπτυξης• Σύνδεση της ανάπτυξης ΕΛ/ΛΑΚ με την κατανεμημένη

ανάπτυξη κώδικα από πολλούς προγραμματιστές– αυτό το μοντέλο ανάπτυξης αποδείχτηκε οτι

μπορεί να «δουλέψει»• Όμως αυτό δεν είναι το μόνο μοντέλο ανάπτυξης

– το ΕΛ/ΛΑΚ δεν συνδέεται με κάποια μεθοδολογία ανάπτυξης

• Πολλές φορές ΕΛ/ΛΑΚ αναπτύσσεται από μικρές ομάδες

• Σε κάθε περίπτωση υπάρχει όφελος από διορθώσεις πρόβλημα που συνεισφέρει μεγαλύτερη βάση

• ΕΛ/ΛΑΚ αναπτύσσουν ακόμη και εταιρείες παραγωγής λογισμικού !!!

Page 12: ελ λακ

Ενδεικτικές ελεύθερες εφαρμογές

• KDE, Gnome, XFCE (desktop environments)

• Mozilla, Konqueror, Epiphany, Galeon (browsers)

• Ximian Evolution,, Mozilla Thunderbird (e-mail)

• OpenOffice.org, Koffice, Gnome Office

• GIMP, Sodipodi (graphics)• Kollab, Kroupware

(groupware)

• MySQL, PostgreSQL, FirebirdSQL, SAP DB (databases)

• Postnuke, Envolution, Scoop (content management)

• Whiteboard, ILAIS, Moodle (learning support)

• GAP, MAXIMA, NTL, R (maths, statistics)

• Apache, Jakarta tomcat, Zope (web servers)

Page 13: ελ λακ

Η Ευρωπαϊκή Επιτροπή και το ΕΛ/ΛΑΚ

• Εκδήλωση ενδιαφέροντος για το θέμα και παρακολούθησή του.

• Free and Open Source Software site– http://europa.eu.int/information_society/activities/

opensource/

• IDA Open Source Observatory– http://europa.eu.int/ISPO/ida/jsps/index.jsp?

fuseAction=showChapter&chapterID=452&preChapterID=0

Page 14: ελ λακ

Χρήση ΕΛ/ΛΑΚ από το δημόσιο τομέα

• Αρκετές χώρες (ευρωπαϊκές και μη) έχουν οδηγίες ή/και πολιτικές σχετικά με τη χρήση ΕΛ/ΛΑΚ

• Πολλές πόλεις, περιφέρειες, χώρες στρέφονται στη χρήση ΕΛ/ΛΑΚ από τις υπηρεσίες τους– π.χ. Extremadura, Spain

• Σε μερικές περιπτώσεις προτιμήθηκε το ΕΛ/ΛΑΚ αν και ήταν ακριβότερο ως συνολική λύση για να μην υπάρξει δέσμευση με συγκεκριμένη εταιρεία και πολιτική αναβάθμισης– π.χ. Μόναχο

Page 15: ελ λακ

Λόγοι χρήσης ΕΛ/ΛΑΚ

• Μικρό κόστος απόκτησης λογισμικού• Δυνατότητα εγκατάστασης και χρήσης σε

απεριόριστο αριθμό σταθμών εργασίας• Ελευθερία στην πολιτική αναβάθμισης• Δυνατότητα προσαρμογής• Έλλειψη δέσμευσης με συγκεκριμένη εταιρεία

ή/και προμηθευτή• Αρκετά προγράμματα ΕΛ/ΛΑΚ είναι πια

τουλάχιστον τόσο ώριμα και εύχρηστα όσο και τα εμπορικά ισοδύναμα τους

Page 16: ελ λακ

Υποστήριξη του ΕΛ/ΛΑΚ από το δημόσιο τομέα;

• Με την απλή χρήση ΕΛ/ΛΑΚ το δημόσιο πιθανά κερδίζει, αλλά δεν επιστρέφει τίποτα στην κοινότητα του ΕΛ/ΛΑΚ.

• Η δημιουργία ΕΛ/ΛΑΚ (όπως και κάθε λογισμικού) έχει κόστος

• Η ανάπτυξη ΕΛ/ΛΑΚ χρηματοδοτείται– μέσω προσφορών στα έργα ανάπτυξης ΕΛ/ΛΑΚ– από συγκεκριμένες εταιρείες (με χρήματα αλλά

και εργασία)

Page 17: ελ λακ

• Η Κίνα χρηματοδότησε την ανάπτυξη ΕΛ/ΛΑΚ λειτουργικού συστήματος & γραφικού περιβάλλοντος (στην κινεζική)

• Το δημόσιο μπορεί να χρηματοδοτήσει το ΕΛ/ΛΑΚ – π.χ. για περιπτώσεις που δεν υπάρχει ΕΛ/ΛΑΚ που να

καλύπτει κάποιες ανάγκες του δημοσίου, να χρηματοδοτηθεί ανάπτυξη σχετικού λογισμικού ως ΕΛ/ΛΑΚ

– π.χ. για παροχή στις επιχειρήσεις (ελεύθερων) λύσεων που θα τονώσουν την ανάπτυξη

– π.χ. για παροχή στους πολίτες (ελεύθερων) λύσεων που θα εξυπηρετούν βασικές τους ανάγκες

Υποστήριξη του ΕΛ/ΛΑΚ από το δημόσιο τομέα;

Page 18: ελ λακ

Ο αντίλογος• Ο αντίλογος θέλει το ΕΛ/ΛΑΚ να μην είναι και τόσο ελκυστικό

και εστιάζει τη διαφωνία το σε διάφορα σημεία: – Κόστος

• το συνολικό κόστος (που περιλαμβάνει το κόστος εγκατάστασης, υποστήριξης, εκμάθησης κ.λπ.) είναι μεγαλύτερο για το ΕΛ/ΛΑΚ

– Ποιότητα / Αξιοπιστία• το ΕΛ/ΛΑΚ δεν αναπτύσσεται μέσα από αυστηρά

ελεγχόμενες διαδικασίες εξασφάλισης ποιότητας και δεν είναι τόσο αξιόπιστο

– Ασφάλεια• διάφοροι κακόβουλοι μελετώντας τον πηγαίο κώδικα

μπορούν να βρουν και να εκμεταλλευτούν κενά ασφαλείας

Page 19: ελ λακ

– Πρωτοτυπία• το ΕΛ/ΛΑΚ δεν συνεισφέρει στην καινοτομία αφού

ο,τι αναπτύσσεται μιμείται τη λειτουργικότητα υπάρχοντος εμπορικού λογισμικού

– Επενδύσεις• η εξάπλωση του ΕΛ/ΛΑΚ μπορεί να δημιουργήσει

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

Ο αντίλογος

Page 20: ελ λακ

... και η απάντηση• Στα παραπάνω η κοινότητα του ΕΛ/ΛΑΚ

αντιτείνει τα επιχειρήματά της– Κόστος

• και το εμπορικό λογισμικό έχει κόστη διαχείρισης, υποστήριξης, εκμάθησης κ.λπ.) και αν υπολογιστεί το κόστος αγοράς και αναβαθμίσεων τότε το ΕΛ/ΛΑΚ είναι συνολικά ποιο φθηνό

– Ποιότητα / Αξιοπιστία• το ΕΛ/ΛΑΚ είναι ποιοτικό και αξιόπιστο

– οι διαδικασίες ανάπτυξης αποδείχθηκαν καλές– τα παραγόμενα προϊόντα είναι πολλές φορές ανώτερα των

αντίστοιχων εμπορικών (π.χ. Apache web server)– η συμμετοχική διαδικασία εντοπισμού και διόρθωσης

λαθών οδηγεί σε προϊόντα με λιγότερα προβληματα

Page 21: ελ λακ

– Ασφάλεια• η κοινότητα ανακαλύπτει τα κενά ασφαλείας και

τα ασφαλίζει πριν αυτά γίνουν αντικείμενο κακόβουλης εκμετάλλευσης

– Πρωτοτυπία• το ΕΛ/ΛΑΚ συνεισφέρει στην καινοτομία

– υπάρχουν καινοτόμα προγράμματα που εμφανίστηκαν πρώτα ως ΕΛ/ΛΑΚ (π.χ. ΤΕΧ, emacs)

– γίνονται καινοτόμες βελτιώσεις ακόμη και σε ελεύθερα προγράμματα που υλοποιούν υπάρχουσα λειτουργικότητα (π.χ. μέθοδοι περιήγησης με χειρονομίες στο Mozilla browser, reiser4 filesystem, XML-UI στο Mozilla, scripting γλώσσες όπως Parrot και Perl 6 κ.λπ.)

... και η απάντηση

Page 22: ελ λακ

• ...– Επενδύσεις

• υπάρχουν επιχειρηματικά μοντέλα που μπορούν να εφαρμοστούν ώστε ΄να υπάρχει επιχειρηματική δραστηριότητα γύρω από το ΕΛ/ΛΑΚ

• επενδύσεις μπορούν να γίνουν και σε ΕΛ/ΛΑΚ• έρευνα γίνεται και στα πανεπιστήμια και τα

αποτελέσματα αποτελούν σημεία απαρχής ανάπτυξης ΕΛ/ΛΑΚ

… αλλά δεν θα επιλύσουμε αυτή τη διαφορά εδώ

... και η απάντηση

Page 23: ελ λακ

Άνοιγμα του κώδικα σε εμπορικό λογισμικό

• Πάντως το ΕΛ/ΛΑΚ έχει δημιουργήσει και νέο τρόπο σκέψης σχετικά με τον πηγαίο κώδικα

• Αποτέλεσμα της εξάπλωσης του ΕΛ/ΛΑΚ ήταν διάφορες εταιρείες να επιτρέψουν κατά περιπτώσεις σε πελάτες τους να μπορούν να δουν τον πηγαίο κώδικα επιλεγμένων τμημάτων των προϊόντων τους

• Αυτό βέβαια δεν σημαίνει πλήρη ελευθερία αλλά δείχνει οτι οι εταιρείες αντιδρούν στον αντίκτυπο που έχει το ΕΛ/ΛΑΚ

Page 24: ελ λακ

Ερωτήματα

• Μπορούν ΕΛ/ΛΑΚ και εμπορικό λογισμικό να συνυπάρξουν;– μάλλον ναι

• Που και πως είναι καλύτερο να χρησιμοποιηθεί ΕΛ/ΛΑΚ; έναντι εμπορικού λογισμικού και αντίστροφα;

• Πρέπει η πολιτεία να υποστηρίξει το ΕΛ/ΛΑΚ;• Αν ναι, πως θα γίνει αυτό χωρίς να βλαφτεί ο

υγιής ανταγωνισμός;

• …