Φλασμπακ: Τι έλεγε ο Shuttleworth το 2005 για το Ubuntu και τα σχέδια του - Συνέντευξη

dimitris | Σάβ, 01/05/2013 - 10:58 | 41' | 0

Τώρα που ο Mark Shuttleworth και η Canonical έχουν αρχίσει να ξεδιπλώνουν τα μεγαλεπήβολα σχέδια τους για ένα Linux που θα παίζει παντού, είναι ενδιαφέρον να θυμηθούμε μια συνέντευξη του Mark από το 2005, την ρομαντικη εποχή του Hoary Hedgehog.



Τότε ο ιδρυτής του Ubuntu και της Canonical πιο πολύ... συστηνόταν στο ευρύ κοινό. Μιλούσε για το τι είναι το Ubuntu, τι θέλει να πετύχει, γιατί αποφάσισε να επενδύσει τα λεφτά του σε κάτι τέτοιο, την επικράτηση του Linux στα PC (επτά χρόνια μετά, ακόμα το ίδιο συζητάμε), τις σχέσεις με το Debian και φυσικά για την νοοτροπια του ανοικτού κώδικα.

Από τότε άλλαξαν πολλά: Το λογότυπο, τα χρώματα, το Linux for human beings έγινε elegance, το Ubuntu δεν χωράει σε CD... Ο Shuttleworth θέλει το Ubuntu ξεχωριστό από τις άλλες διανομές και να τρέχει παντού, από τα κινητά μας μέχρι τις τηλεοράσεις.

Διαβάστε τη συνέντευξη στο τότε ελληνικό Linux Format, τον πρόγονο του Linux Inside:

Mark Shuttleworth: Ο Σταυροφόρος του Κειπ Τάουν

Ο Mark Shuttleworth μεταμόρφωσε την κοινότητα του Debian επενδύοντας τα χρήματα του για να κάνει αυτά που μας λέει. Το αποτέλεσμα είναι το Ubuntu, αλλά γιατί το ξεκίνησε, που θα πάει στο μέλλον, και τι σημαίνει η επιτυχία του για το Debian;

Έχοντας γίνει πλούσιος κατά τη διάρκεια της επανάστασης των DotCom, έχοντας ταξιδέψει στο διάστημα με ένα Ρωσικό διαστημόπλοιο και έχοντας ιδρύσει την πλέον δημοφιλή -μέχρι τώρα- διανομή βασισμένη στο Debian, μερικοί μπορεί να πουν ότι ο Mark Shuttleworth έχει ήδη κάνει αρκετά. Αλλά σαν κάποιος που του αρέσει να ξεχωρίζει, ο Mark ξοδεύει το μεγαλύτερο μέρος του χρόνου του γράφοντας κώδικα για τον εαυτό του και ψάχνοντας για projects Ανοικτού Κώδικα για να επενδύσει. Καταφέραμε να αποσπάσουμε μερικές ώρες από το φορτωμένο πρόγραμμά του για να του μιλήσουμε.

Ποιοι ήταν οι λόγοι για τους οποίους ξεκίνησες το Ubuntu;

MS: Υπήρχαν πολλοί διαφορετικοί λόγοι. Πρώτον, μια μεγάλη επιθυμία να ανταποδώσω. Ήμουν απίστευτα τυχερός κατά την έκρηξη των dotcom [πούλησε την εταιρεία του Thawte στην Verisign για 575 εκ. $ το 1999] και αυτό οφείλεται κυρίως στο γεγονός ότι ήμουν αναμεμειγμένος με το λογισμικό Ανοικτού Κώδικα την κατάλληλη χρονική στιγμή. Μπόρεσα να στήσω την Thawte πάνω στο Linux και στο MySQL και τον Apache. Είχα μια πολύ ισχυρή επιθυμία να κάνω κάτι φιλανθρωπικό - ένα είδος ανάγκης να ξεφορτωθώ ότι είχα αποκτήσει. Έχω πείσει τον εαυτό μου να το κάνω αυτό σε όλη τη ζωή μου ή τουλάχιστον σε ένα αρκετά κοντινό της διάστημα.

Επομένως πρέπει να αρχίσω να ξοδεύω. Έχω το προνόμιο να μπορώ να αρχίσω να ξοδεύω από τώρα, παρά να περιμένω να πάω 70 και να σκέφτομαι, "Τι θα κάνω με όσα έχω αποκτήσει, αφού δεν αντέχω τα παιδιά μου!;". Μου φαίνεται ότι ένας από τους τρόπους με τους οποίους μπορώ να έχω ένα αρκετά σοβαρό αντίκτυπο στον κόσμο, και επίσης να δώσω κάτι πίσω στους ανθρώπους που έκαναν δυνατά όλα αυτά για εμένα, είναι να επενδύσω στον Ανοικτό Κώδικα, για το καλό του Ανοικτού Κώδικα.

Έτσι, έψαχνα τρόπους για να το κάνω αυτό. Παράλληλα, μου φαίνεται ότι τα πράγματα στην βιομηχανία λογισμικού αλλάζουν ξεκάθαρα προς τη κατεύθυνση του Ανοικτού Κώδικα. Για εμένα, αυτό είναι κάτι που αφενός σαν φιλανθρωπία με κάνει να νιώθω περίφημα και αφετέρου το βλέπω σαν εν δυνάμει επένδυση έχοντας τουλάχιστον κάποιον ρόλο να παίξω σε αυτό που μοιάζει σαν το μέλλον του λογισμικού. Δεν μπορώ να σας πω πως θα είναι η βιομηχανία λογισμικού, γιατί η σκόνη από τη μάχη δεν έχει κάτσει ακόμη.

Αλλά στο μυαλό μου, το μέλλον της βιομηχανίας λογισμικού θα έχει συγκεκριμένα χαρακτηριστικά - και τυχαίνει ακριβώς εκείνα τα χαρακτηριστικά να είναι πράγματα που ήθελα πάρα πολύ να δω στον κόσμο του Ανοικτού Κώδικα. Έτσι τα συμμάζεψα όλα αυτά και τα έκανα το είδος του οράματος που κινεί το Ubuntu.

Υπάρχουν πολλές διανομές Linux ήδη. Δεν θα ήταν πιο σοφό να προσπαθήσεις να εμφυσήσεις σε κάποια από αυτές το όραμα σου;

MS: Στη μόνη που σκεφτόμουν ότι ταίριαζε στο όραμα, δεν μπορούσα να το κάνω! Στην πραγματικότητα, αυτό που κάνουμε είναι το προϊόν της σκέψης που έκανα μετά από αυτό. Σκέφτηκα να γίνω ο project leader του Debian, αλλά αντιλήφθηκα ότι υπάρχει κάποιος άλλος τρόπος να έχω το ίδιο αποτέλεσμα, και ότι αυτός είναι να δημιουργήσω κάτι που πραγματικά υλοποιεί το όραμα. Να κάνει αυτά τα ιδανικά ελεύθερα διαθέσιμα, και να αφήνει τους άλλους ανθρώπους να παίρνουν από αυτό ότι θέλουν - να παίρνουν τα καλύτερα κομμάτια.

Γι' αυτό λοιπόν πήραμε αυτήν την αρκετά αμφιλεγόμενη πορεία λέγοντας, "Θα δημιουργήσουμε κάτι που ριζώνει σε ένα αριθμό από διαφορετικά projects, αλλά θεμελιακά θα είναι κάτι ολοκαίνουριο." Με κάποιο τρόπο αυτό αναπόδραστα θα θυμώσει κάποιους στο βαθμό που κάνουν κάποια από τα πράγματα με τα οποία έχουμε αποφασίσει να ασχοληθούμε και εμείς.

Θετικές πλευρές έχει;

MS. Ελπίζω πως ναι.

Σε ποιους χρήστες θα έλεγες ότι απευθύνεται το Ubuntu;

MS. Σε δύο ειδών χρήστες. Το πρώτο είδος είναι άτομα που πραγματικά λατρεύουν το Ανοικτό Κώδικα για την τεχνική τελειότητά του και την χρήση του σαν πλατφόρμα - αυτοί είναι στην πράξη άνθρωποι του Ανοικτού Κώδικα. Συμμετέχουν στην Κοινότητα στον ίδιο βαθμό που προσφέρουν σε αυτή. Το Ubuntu αναπτύσσεται εν μέρει από τους καλύτερους που μπορώ να βρω στον κόσμο του Ανοικτού Κώδικα, και αναπτύσσεται για τους όμοιούς τους - δηλαδή αναπτύσσεται για τους προγραμματιστές. Και νομίζω ότι αυτός είναι ο λόγος που έγινε τόσο δημοφιλές.

Ναι, είναι όντως δημοφιλές, και φαίνεται σαν να ήρθε από το πουθενά…

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

Το άλλο είδος χρηστών που νομίζω ότι βρίσκουν τον Ανοικτό Κώδικα πραγματικά ελκυστικό είναι στο τελείως αντίθετο άκρο του φάσματος. Είναι άνθρωποι που ξέρουν λίγα για τους υπολογιστές και δεν θέλουν να μάθουν τίποτε άλλο. Στην πραγματικότητα, θέλουν απλά να χρησιμοποιούν κάτι που θα κάνει ακριβώς αυτό που χρειάζονται - όπου μπορούν να βρουν αυτό που χρειάζονται αρκετά εύκολα.

Ωστόσο, προς το παρόν δεν απευθυνόμαστε σε όλους όσους βρίσκονται ενδιάμεσα - εκείνους που χρησιμοποιούν τον υπολογιστή αρκετά. Δηλαδή όσους εγκατέστησαν κάποιο επιπλέον λογισμικό στον υπολογιστή τους και έχουν και μερικές συσκευές που θα ήθελαν να δουλεύουν, και απλά οι ανάγκες τους είναι πολύ προσωποποιημένες για να μπορεί να τις καλύψει ο Ανοικτός Κώδικας, το Linux ή το Ubuntu. Δεν είναι αρκετά δυνατοί χρήστες (power-users) για να προσπαθήσουν και να το κάνουν να δουλέψει, και δεν είναι αρκετά ξεκάθαρο σε εμάς τι ακριβώς θέλουν ώστε να το κάνουμε για αυτούς. Υπάρχουν πάρα πολλοί χρήστες εκεί έξω σήμερα για τους οποίους το Linux και ο Ανοικτός Κώδικας κάνει τη δουλειά που θέλουν στο 100% - ακριβώς γιατί μπορεί κανείς να προσδιορίσει τι χρειάζονται, και αυτό που χρειάζονται είναι να σερφάρουν στο διαδίκτυο, να διαβάζουν τα μηνύματά τους, να εργάζονται με απλά έγγραφα κειμένου…

Αυτό ακριβώς. Το BBC έκανε μια εκπομπή-περιήγηση στην Βρετανία πριν από τέσσερα χρόνια περίπου, και είχαν παρουσιάσει ένα "web-χωριό". Κάποιος από τους υπεύθυνους του προγράμματος αυτού ήρθε σε επαφή μαζί μας, και τους βοηθήσαμε με μερικά πράγματα για το Linux. Τα μισά μηχανήματα του web-χωριού έτρεχαν Linux και τα άλλα μισά Windows, και οι άνθρωποι εκεί δεν είχαν ιδέα ποιο τρέχει τι, ή ακόμα και ότι υπήρχε κάποια διαφορά μεταξύ των υπολογιστών.

MS. Πράγματι, αν μπορείς να καθορίσεις τους χρήστες, τότε συχνά βλέπεις ότι το Linux και το Ανοικτό Κώδικα λειτουργούν αρκετά καλά. To Ubuntu μπαίνει στην ευρύτερη αγορά με αφετηρία αυτές τις δύο πολύ διαφορετικές μεταξύ τους γωνίες. Αυτό που το κάνει πραγματικά εφικτό είναι ότι εκείνοι που βρίσκονται στην πολύ "τεχνική" άκρη του φάσματος είναι συχνά οι άνθρωποι που καλούνται να υποστηρίξουν τους νέους χρήστες. Αυτοί (οι νέοι χρήστες) δεν θέλουν να ξέρουν ή δεν ενδιαφέρονται για το πώς είναι φτιαγμένος και πως ρυθμίζεται ο υπολογιστής τους - θέλουν απλά να κάτσουν και να δουλεύει. Και, επίσης, είναι άνθρωποι που έχουν να κάνουν μια εργασία. Έτσι αν και αυτές οι δύο αγορές είναι τελείως διαφορετικές, το πράγμα δουλεύει αρκετά καλά.

Κάποιοι υποστηρίζουν ότι το Ubuntu πέτυχε σε βάρος του Debian. Νομίζεις ότι είναι δίκαιη η κριτική; Έχει σημασία για εσένα;

MS. Προφανώς, με ενδιαφέρει που κάποιοι αισθάνονται κατ’ αυτόν τον τρόπο, γιατί έχουμε ανάγκη να είναι το Debian επιτυχημένο αλλά και γιατί θέλουμε να αντιλαμβάνονται οι άλλοι αυτό που κάνουμε σαν κάτι το εποικοδομητικό. Έτσι λοιπόν με ανησυχεί όταν λέγεται κάτι τέτοιο. Ταυτόχρονα, ήξερα όταν ξεκινάγαμε ότι θα ανοίξει διαμάχες στο εσωτερικό της κοινότητας, αφού συχνά υπάρχουν αντανακλαστικές αντιδράσεις. Πρέπει να μπορείς να γυρίζεις κι από άλλο το μάγουλο, και να το ξεπερνάς.

Είμαι σχεδόν σίγουρος ότι είμαστε στο μέγιστο σημείο αυτής της αντανακλαστικής αντίδρασης. Ένα μεγάλο μέρος από αυτά που κυκλοφορούν είναι FUD [ακρωνύμιο: Fear, Uncertainty, Doubt] και η ομάδα μου πολύ γρήγορα καταφέρνει να ξεπερνά τέτοιους σκοπέλους. Είναι ικανοί να αποδεικνύουν τι συμβαίνει στην πραγματικότητα. Υπήρχαν κάποιες κατηγορίες που κυκλοφορούσαν την προηγούμενη εβδομάδα, για παράδειγμα, ότι ένα από τα μέλη της ομάδας μας έχει εσκεμμένα οικειοποιηθεί ένα κομμάτι κώδικα του Debian Sarge που τελικά μπήκε στο Ubuntu. Οι προγραμματιστές μας και η ομάδα ανάπτυξης του Sarge δημοσίευσαν τα e-mails που αντάλλαξαν, όπου συζητούσαν το θέμα και [οι του Debian] είπαν, "ΟΚ, δεν το θέλουμε αυτό στο Sarge, γιατί η έκδοση έχει ήδη "παγώσει" και αν κάνουμε κάτι τέτοιο τότε θα καθυστερήσουμε ".

Έτσι, λοιπόν, στις περισσότερες περιπτώσεις, όταν εκτοξεύονται τέτοιες κατηγορίες η αιτία είναι ότι οι άνθρωποι αυτοί δεν έχουν την πλήρη εικόνα. Ένας από τους λόγους που αποφάσισα να μην προχωρήσω μέσω του Debian ήταν ακριβώς ότι πιστεύω ακράδαντα ότι δεν υπάρχει τίποτε που δεν μπορεί να κάνει μια ομάδα ή κοινότητα Ανοικτού Κώδικα - εκτός από το να κάνει τα πάντα. Δεν υπάρχει κάποιο βουνό να δείξεις σε μια τέτοια ομάδα στο οποίο δεν θα μπορούσε να ανέβει, αλλά δεν θα μπορούσαν να είναι στην κορυφή όλων των βουνών ταυτόχρονα. Και έτσι ανακάλυψα ότι ένα μεγάλο μέρος της έντασης μέσα στις ομάδες ανάπτυξης Ανοικτού Κώδικα δημιουργείται όταν φτάνεις σε ένα σημείο όπου δημιουργούνται διαφορετικές υπο-ομάδες μέσα τους που έχουν έγκυρα επιχειρήματα για το γιατί πρέπει να ακολουθήσουν το δικό τους μονοπάτι. Έχουν όλοι δίκιο - αλλά ο όλος οργανισμός απλώς δεν μπορεί να αποκτήσει μια τέτοια κλίμακα. Η ομορφιά του να κάνεις Ανοικτό Κώδικα είναι ότι μπορείς να στείλεις διαφορετικές ομάδες να ανέβουν διαφορετικά βουνά. Μπορούμε να κερδίσουμε και τις δύο μάχες.

Επομένως αντιλαμβάνομαι το Ubuntu σαν κάτι που στενεύει το πεδίο του Debian, και χάνει κάτι στην διαδικασία με σκοπό να κερδίσει κάτι άλλο κάπου αλλού. Μειώσαμε τον αριθμό των εφαρμογών για τις οποίες παρέχουμε πρωτογενή υποστήριξη στην ασφάλεια και αντίστοιχες αναβαθμίσεις. Σε αντάλλαγμα, αυτό που παίρνουν οι χρήστες είναι, νομίζω, μια καλύτερη ποιότητα ασφάλειας και υποστήριξης, αφού μπορούμε να κάνουμε αυτά τα δυο με επαγγελματικό τρόπο. Γίνεται αυτή τη στιγμή μια ολόκληρη συζήτηση, που αφορά το γιατί το Ubuntu παρέχει καλύτερη υποστήριξη στην ασφάλεια σε σχέση με τις υπόλοιπες διανομές. Και η απάντηση νομίζω είναι ότι μειώσαμε το σύνολο των εφαρμογών.

Πράγματι χωράει μόνο σε ένα CD…

MS. Αυτή είναι μια τρομερή μείωση. Θυσιάσαμε πολλά για να το επιτύχουμε. Εάν ενδιαφέρεσαι πάρα πολύ για όλα όσα δεν είναι στο CD, τότε δεν μπορούμε να σε βοηθήσουμε και πολύ. Αλλά από την άλλη πλευρά κερδίζουμε αρκετά πράγματα με αυτόν τον τρόπο. Θα ήταν λάθος, βέβαια, να επιβάλεις αυτές τις απόψεις σε όλους. Γι' αυτό σκέφτηκα: "Αυτά είναι πράγματα για τα οποία νοιάζομαι - θα πρέπει να δημιουργήσω ένα οργανισμό που θα κάνει ακριβώς αυτά." Και όλοι κερδίζουν από την δουλειά μας στον τομέα της ασφάλειας, αφού για αυτές τις εφαρμογές τα patches είναι άμεσα διαθέσιμα και το κάνουμε αυτό με ένα πολύ διάφανο και ξεκάθαρο τρόπο.

Ένα από τα άλλα πράγματα που ήθελα να κάνω ήταν να πειραματιστώ με ένα σωρό ενδιαφέρουσες ιδέες. Βαδίζουμε στον 21ο αιώνα τώρα πια, και θα πρέπει να αρχίσουμε να ενεργούμε και ανάλογα. Πρέπει να καταλάβουμε πως λειτουργούν οι κατανεμημένοι οργανισμοί. Και αυτό είναι πραγματικά δύσκολο: είναι πολύ δύσκολο να οργανώσεις μια εταιρεία με αυτόν τον απόλυτα κατανεμημένο τρόπο. Πρέπει να δούμε αν είναι πράγματι εφικτό να οργανώσουμε μια εταιρεία με άξονα ένα όραμα καθαρά Ανοικτού Κώδικα.

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

Νομίζεις ότι πρέπει το Linux να κατακτήσει τους υπολογιστές γραφείων για να θεωρηθεί επίτευγμα;

MS. Το Linux είναι απόλυτα έτοιμο για κάποιους υπολογιστές γραφείου. Έτσι δεν αγχώνομαι προσπαθώντας να πείσω κάποιον ότι το Linux είναι έτοιμο για την επιφάνεια εργασίας. Προτιμώ να στρέφω την συζήτηση προς την κατεύθυνση να καταλάβω για ποιους υπολογιστές γραφείου μιλάμε. Και ανάλογα με το μέγεθος της επιχείρησης σου, το Linux είναι πάντα έτοιμο με κάποιο τρόπο. Μου είναι πολύ δύσκολο να συστήσω σε ένα πατέρα τριών παιδιών να αλλάξει λειτουργικό στον υπολογιστή του σπιτιού του, μια και έχει μόνον ένα. Πιθανότατα βρίσκεται ακριβώς σε αυτόν τον ενδιάμεσο χώρο που έλεγα πριν: κάποιος που έχει εγκαταστήσει λίγα παραπάνω πράγματα εδώ και εκεί, και έχει και μια δυο συσκευές που θέλει να δουλεύει. Και οι συσκευές του είναι διαφορετικές από του γείτονά του. Αλλά όταν μιλάω σε έναν οργανισμό που διαχειρίζεται 50.000 υπολογιστές γραφείου, δεν είναι συνήθως δύσκολο να βρεθούν 10.000 από αυτούς που θα μπορούσαν να αλλάξουν αύριο κιόλας, και να υπάρξει οικονομική ωφέλεια. Έτσι 10.000 είναι ένας καλός αριθμός για να μιλάμε τώρα, και δεν με ανησυχούν οι υπόλοιποι 40.000.

Νομίζεις όμως ότι κατά κάποιο τρόπο είναι μια μάχη που δεν μπορεί να κερδηθεί, λόγω του τρόπου που λειτουργεί το σύστημα αυτή τη δεδομένη χρονική στιγμή, δεδομένου ότι οι περιφερειακοί κατασκευαστές ενδιαφέρονται μόνο για μία αγορά;

MS. Πράγματι, αλλά καθημερινά η εικόνα αλλάζει, και αλλάζει μοναχά προς μια κατεύθυνση. Και ξέρεις, δεν υπάρχει περιφερειακός κατασκευαστής που να έφτιαξε κάποτε Linux drivers και μετά να είπε: "Α, αυτό ήταν βαρετό". Αφού κάνουν το πρώτο βήμα, τότε το επόμενο βήμα είναι να "ανοίξουν" τον κώδικα. Και τότε το επόμενο βήμα είναι ότι εμπλέκονται ενεργά με τον πυρήνα και χρηματοδοτούν τις εργασίες ανάπτυξης.

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

Μια ενδιαφέρουσα περίοδος για να είσαι μέσα στην Πληροφορική.

MS. Απόλυτα! Είναι μια θαυμαστή βιομηχανία, γιατί μπορείς πάντοτε να βρεις αλλαγή αν το θες, και καμιά άλλη περίοδος δεν ήταν πιο αληθινή από τη σημερινή. Το άλλο ενδιαφέρον πράγμα στην όλη ιστορία είναι ότι με διάφορους τρόπους η φούσκα της Νέας Οικονομίας έκανε τους ανθρώπους να νομίζουν ότι η καινοτομία χάθηκε. Στην πράξη, συμβαίνει το τελείως αντίθετο - είχαμε μια τεράστια ροή κεφαλαίων προς ανθρώπους του στυλ "ας ονειρευτούμε αυτό ή εκείνο". Βέβαια, αρκετά κεφάλαια πήγαν στον βρόντο, αλλά ο ρυθμός της αλλαγής ποτέ δεν μειώθηκε.

Πρωτύτερα ασχολούμουν με την έκδοση ψηφιακών πιστοποιητικών σε ιστοσελίδες, που είναι ένας πολύ ενδιαφέρον δείκτης για το πόσοι άνθρωποι ενδιαφέρονται να δημιουργήσουν ένα δικτυακό μαγαζί, ή να κάνουν κάτι που θεωρούν αρκετά ενδιαφέρον ώστε να μην θέλουν να μπορεί να το εκμεταλλευτεί ο οποιοσδήποτε. Και αυτός ο αριθμός αυξάνεται συνεχώς, στο βαθμό που παρακολουθώ αυτόν τον τομέα. Έτσι άσχετα με το τι συμβαίνει στον δείκτη NASDAQ και στη Wall Street, αυτό το πράγμα γίνεται όλο και περισσότερο μέρος της καθημερινότητάς μας.

Σύντομα όλοι θα έχουν το δικό του δικτυακό μαγαζί…

MS. Σίγουρα, ή θα συμμετέχουν μέσω άλλων ατόμων. Πόσα από τα Χριστουγεννιάτικα ψώνια σου έκανες από το Διαδίκτυο τα δυο-τρία τελευταία χρόνια; Υποπτεύομαι ότι οι περισσότεροι θα απαντούσαν ότι ξοδεύουν πολύ περισσότερα τώρα μέσω του Διαδικτύου από ότι την περίοδο της έκρηξης των dotcom. Η ουσία είναι ότι, παρά τις δυσκολίες που φέρνουν οι αλλαγές στη ζωή των ανθρώπων, κινούμαστε στη σωστή κατεύθυνση.

Μεγάλη αλλαγή προς το καλύτερο! Τέλος οι συνωστισμοί. Έχεις δίκιο το τεχνολογικό τοπίο αλλάζει όντως αρκετά γρήγορα.

MS. Με αυτό το project επέστρεψα στις ρίζες μου, όταν ήμουν κολλημένος με τον υπολογιστή. Γράφω πολύ κώδικα, και το απολαμβάνω.

Με τι ασχολείσαι προγραμματιστικά αυτόν τον καιρό;

MS. Κάνω αρκετή δουλειά στην υποδομή των διαδικτυακών υπηρεσιών μας. Το όραμα πίσω από αυτό είναι ένας μηχανισμός που πραγματικά θα βοηθά τον τρόπο συνεργασίας των ανθρώπων του Ανοικτού Κώδικα. Αυτή θα είναι η εποχή της συνεργασίας, και τα επόμενα 20 χρόνια θα ορίσουν το Λογισμικό και τα εργαλεία με όρους συνεργασίας. Θα αξιολογούμε τα εργαλεία στο πόσο αποτελεσματικά βοηθούν δύο ανθρώπους στις αντίθετες άκρες του πλανήτη να παράγουν κάτι πραγματικά χρήσιμο. Και τα παιδιά στον Ανοικτό Κώδικα κυριολεκτικά μας δείχνουν τον δρόμο.

Ο Ανοικτός Κώδικας είναι η φυσική απάντηση στην διαθεσιμότητα αυτών των εργαλείων. Ο Ανοικτός Κώδικας είχε εργαλεία όπως το diff, το patch, και το email για αρκετά χρόνια, και τι κατάφερε; Κατάφερε να παράγει αυτό το απίστευτο πράγμα που λέγεται Linux. Αυτή είναι φυσικό επακόλουθο αν έχεις εργαλεία όπως το diff, το patch, και το email. Ίσως να είμαι λίγο υπερβολικός, αλλά δεν νομίζω ότι έχουμε παρόμοια ποιότητα συνεργατικών εργαλείων στα γραφεία. Σκεφτείτε δυο ανθρώπους που έχουν να εργαστούν πάνω σε ένα λογιστικό φύλλο: πρέπει να το στέλνουν ο ένας στον άλλο. Και αν έχεις τρία άτομα που δουλεύουν στο ίδιο λογιστικό φύλλο, και κάνει ο καθένας τις αλλαγές του, τότε είναι αδύνατο να συμφιλιώσεις αυτές τις αλλαγές. Τώρα σκεφτείτε τι έχουμε πετύχει με το έλεγχο κατανεμημένων εκδόσεων (distributed version control). Μια από τις μεγαλύτερες επενδύσεις μου, που κανείς δεν έχει παρατηρήσει μέχρι τώρα, είναι το Bazaar, το οποίο βλέπω σαν τον αντικαταστάτη του BitKeeper. Αλλά το Bazaar είναι Ανοικτού Κώδικα, και είναι αληθινά έλεγχος κατανεμημένων εκδόσεων, που σημαίνει ότι αντί να έχεις ένα CVS εξυπηρετητή που όλοι πρέπει να αντιπαρατίθενται για να τον μονοπωλήσουν, αφήνεις ένα project να χωριστεί σε μια πολλαπλότητα παρακλαδιών. Και μετά επιτρέπεις σε αυτά τα παρακλάδια να ενωθούν ξανά, όπως και όποτε το θελήσουν.

Για παράδειγμα, συχνά βλέπουμε την εμφάνιση ενός κοινωνικού προβλήματος στην ανάπτυξη προγραμμάτων Ανοικτού Κώδικα, όπου ένα τρίτο των προγραμματιστών θέλουν να πάνε προς μια κατεύθυνση, και δύο τρίτα θέλουν να πάνε προς κάποια άλλη. Και τότε οι εντάσεις που ανακύπτουν πολύ δύσκολα επιλύονται γιατί στην περίπτωση που χρησιμοποιείται CVS εξυπηρετητής δεν μπορείς να έχεις την βάση του κώδικα να πηγαίνει προς διαφορετικές κατευθύνσεις ταυτόχρονα, αλλιώς δεν θα βγει τίποτε τελικά. Έτσι αυτό που πρέπει να κάνει ένας κατανεμημένος έλεγχος εκδόσεων είναι να επιτρέπει σε κάποιον να δημιουργεί ένα παρακλάδι. Τότε κάποιοι άλλοι μπορούν να αρχίσουν να επικεντρώνονται και να συνεργάζονται για αυτό, και μετά μπορεί να επιστρέψει στο κυρίως σύνολο πολύ εύκολα. Αυτό γίνεται με έναν ελεύθερο τρόπο - κανείς δεν έχει να επιτρέψει ή να συμφωνήσει να κάνει αυτό ή το άλλο, απλώς συμβαίνει.

Νομίζεις ότι το SubVersion απαλύνει κάπως το πρόβλημα;

MS. Το SubVersion φέρνει το CVS σε ένα ελαφρώς καλύτερο σημείο, αλλά εξακολουθεί να είναι βασισμένο στην εξουσιοδότηση. Και πάλι υπάρχει ένας κεντρικός εξυπηρετητής, και αν δεν μπορείς να αποκτήσεις το δικαίωμα να δημιουργείς παρακλάδια σε αυτόν τότε την πάτησες. Ο κατανεμημένος έλεγχος εκδόσεων επιτρέπει στον κόσμο του Ανοικτού Κώδικα να αναπτυχθεί με ένα τελείως διαφορετικό τρόπο. Και το είδαμε αυτό στην ανάπτυξη του πυρήνα για όσο διάστημα χρησιμοποιούσαν το BitKeeper. Ο πυρήνας έγινε ταχύτατα ένα πολύ πλουσιότερο και πιο κατανοήσιμο περιβάλλον, γιατί ο καθένας μπορούσε να διατηρεί την δικιά του οπτική σε αυτόν και οι ιδέες μπορούσαν να καλλιεργούνται και να αναπτύσσονται από μια κοινότητα ανθρώπων που ενδιαφέρονται και μετά να επιστρέφουν στο κυρίως σύνολο του κώδικα.

Αυτό που πρόκειται να συμβεί στο κόσμο των γραφείων είναι, νομίζω, ότι θα δούμε εργαλεία που επιτρέπουν την συνεργασία σε πραγματικό χρόνο. Για παράδειγμα, δουλεύεις στο MS Word, και καλείς τον τάδε που βρίσκεται κάπου αλλού και του λες, "Ξέρεις, διορθώνω το άρθρο σου. Το κομμάτι αυτό δεν βγάζει νόημα." Τότε, ο άλλος ανοίγει το ίδιο έγγραφο, βλέπει που είναι ο κέρσορας σου, και βλέπει τις αλλαγές που μόλις έκανες - σημειωμένες με έναν τέτοιο τρόπο ώστε να ξεχωρίζει τις αλλαγές που έκανες πριν από μια ώρα από τις πλέον πρόσφατες. Μπορεί τότε να αρχίσει να γράφει, και εσύ μπορείς να δεις τις αλλαγές που κάνει, δηλαδή και οι δύο μπορούν να κάνουν διόρθωση στο ίδιο έγγραφο σε πραγματικό χρόνο.

Έτσι, για να επιστρέψουμε στις υπηρεσίες του διαδικτύου, αυτό που προσπαθούμε να δημιουργήσουμε είναι μια ακόμη πιο αποτελεσματική συνεργασία για τους προγραμματιστές Ανοικτού Κώδικα. Για παράδειγμα, οι μεταφράσεις… Κάτι το οποίο επεξεργάζομαι εδώ στο φορητό μου [δείχνει μια εφαρμογή που "τρέχει" στην οθόνη του φορητού του]. Αυτό είναι στην πράξη μια ένα διαδικτυακό περιβάλλον συνεργασίας για μεταφράσεις λογισμικού. Αυτήν τη στιγμή, η διαδικασία μετάφρασης μοιάζει λίγο με την διαδικασία συνεργασίας σε ένα φύλλο Excel: διάφορα πράγματα στέλνονται με μηνύματα, πολλές μεταφράσεις πέφτουν κάτω και τελικά έχουμε ένα χάος.

Είναι εκπληκτικό που δεν έχει βρεθεί μια λύση για αυτό ακόμη.

MS. Σκεφτείτε, πως θα ήταν αν είχαμε διαδικτυακό περιβάλλον που θα επέτρεπε τη συνεργασία μεταξύ της πρωταρχικής πηγής του κώδικα και των διανομών; Με αυτό τον τρόπο, όταν μια μετάφραση προστίθεται στην πρωταρχική πηγή, η διανομή θα μπορούσε αυτόματα να τη δει, και αν μια μετάφραση γινόταν στη διανομή τότε η πρωταρχική πηγή κώδικα θα μπορούσε να το δει. Αυτό είναι ακριβώς ότι έχουμε εδώ. Αυτό το παρακλάδι στην οθόνη βρίσκεται πιθανώς δύο εβδομάδες μπροστά από ότι βρίσκεται στην παραγωγή αυτήν την στιγμή, και χρησιμοποιείται από τους μεταφραστές. Εδώ, για παράδειγμα, βλέπεις ότι έχουμε το Evolution στο Ubuntu Hoary και το Evolution στο πρωταρχικό του κώδικα - το κυρίως παρακλάδι, δηλαδή. Λοιπόν, αυτά τα δύο παράθυρα φαίνονται αρκετά παρόμοια, αλλά αυτό [το αριστερό παράθυρο] είναι μέσα στη διανομή, και αυτό εδώ [το δεξιό] είναι στον πρωταρχικό κώδικα. Και μπορείς ακόμη να δεις ότι είναι ελαφρώς διαφορετικά, υπάρχουν μερικές επιπλέον μεταφράσεις. Εάν μπω μέσα και θέλω να ξεκινήσω να μεταφράζω εδώ, θα δεις κάποιες προτάσεις που έχουν γίνει. Δεν είμαι όμως αρκετά καλός στα Ισπανικά! Οτιδήποτε προτάσεις για το πώς να τραβήξεις δεδομένα από διαφορετικές πηγές, όλα σε πραγματικό χρόνο, ή υπάρχουν μέσα στο διαδίκτυο, ή με αρκετά σοφιστικέ τρόπο ενσωματώνονται στο πως διαχειρίζεσαι τις άδειες σου.

Αν, για παράδειγμα, κάποιος θέλει να συνεισφέρει αλλά δεν έχεις ποτέ ακούσει για αυτόν και δεν τον ξέρεις, δεν θέλουμε να επαναλάβουμε την περίπτωση του κλειδώματος του CVS – θέλουμε να μπορεί να συνεισφέρει αλλά να μην πειράξει το interface του πρωταρχικού κώδικα. Τελικά, λοιπόν, αυτό είναι εργαλείο που το κάνει αυτό. Παρόμοια, υπάρχει αναποτελεσματικότητα και ανεπάρκεια στον τρόπο που διαχειριζόμαστε τα προγραμματιστικά σφάλματα. Αυτό, εδώ, λοιπόν είναι ένας κατανεμημένος ανιχνευτής σφαλμάτων. Μια κεντρικοποιημένη αποθήκη της κατάστασης των διάφορων σφαλμάτων σε πολλά διαφορετικά μέρη.

Αυτό που συμβαίνει με το Ανοικτό Κώδικα είναι ότι το ίδιο σφάλμα, για παράδειγμα, στον Apache εμφανίζεται στον πρωτεύων κώδικα και του Red Hat, και του Gentoo, και του Ubuntu, του Debian, του Fedora και σε όλα αυτά τα διαφορετικά μέρη. Έχουν όλα διαφορετικούς ανιχνευτές σφαλμάτων και δεν υπάρχει στην πράξη δυνατότητα να συνεργαστούν μεταξύ τους. Δηλαδή αυτό εδώ το εργαλείο μας προσφέρει τη δυνατότητα να πούμε, «ΟΚ, να αυτό το σφάλμα, και εμφανίζεται τόσο στο Debian και στο Firefox, όσο και στο Ubuntu…». Και μπορείς να ανιχνεύσεις την κατάσταση αυτού του σφάλματος σε διαφορετικά μέρη, καθώς και να διορθώσεις σε διαφορετικά μέρη.

Με αυτόν τον τρόπο, μπορούμε να φέρνουμε τις διάφορες διεργασίες και συζητήσεις πιο κοντά. Σε ένα τόπο μπορείς να βρεις την γενική συζήτηση για το τι γίνεται στο λογισμικό των διανομών. Τότε, για παράδειγμα, μπορείς άμεσα να δεις πότε διορθώθηκε ένα σφάλμα σε μια διανομή, και μπορείς τότε να πεις, «Δείξε μου όλα τα σφάλματα που έχουν διορθωθεί κάπου αλλού», γιατί αυτό είναι κάτι το εφικτό εδώ. Μπορείς αμέσως να πας εκεί, να πάρεις το patch και να το ενσωματώσεις. Μπορείς ακόμη να το συνδυάσεις με την ιδέα του κατανεμημένου έλεγχου αναθεωρήσεων: η διόρθωση για μια από αυτές τις εφαρμογές είναι στην πράξη ένα patch, που στην πράξη είναι ένα παρακλάδι. Αυτό το παρακλάδι μπορεί να ενσωματωθεί οπουδήποτε υπάρχει ο ίδιος κώδικας. Έτσι η Red Hat έχει ένα πακέτο Apache, και το μόνο που έχει να κάνει είναι να ενσωματώσει τη διόρθωση του από εκείνο το παρακλάδι, και τότε έχουν τελειώσει με αυτό το σφάλμα. Μπορούμε πραγματικά να σηκώσουμε τον πήχη ψηλά όσον αφορά το επίπεδο συνεργασίας.

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