Γιατί η Python μοιάζει με τον Chuck Norris

Post Pic
στις 01.07.10. Kατηγορίες Python, Άρθρα με 3 Σχόλια

Ο οδηγός Python αποτελεί τον πιο ανεπτυγμένο, από άποψη περιεχομένου οδηγό, που έχω καταθέσει στο GreekTuts.net. Οι έμπειροι προγραμματιστές εντοπίζουν εύκολα πότε μια γλώσσα προγραμματισμού αξίζει της προσοχής τους. Με βάση αυτό το σκεπτικό ξεκίνησα να γράφο τον οδηγό της Python χωρίς να σκεφθώ ότι για κάποιους, η δύναμη της Python μπορεί να είναι ασαφής ή ακόμη και άγνωστη.

Μία πρόσφατη κουβέντα που είχα με μερικούς φίλους κατέληξε, ούτε λίγο ούτε πολύ στο εξής. «Γιατί να αρχίσεις έναν οδηγό για Python;». Φαίνεται πως η απάντησή μου «γιατί πήρε  το όνομά της από ταινία των Monty Python» δεν ήταν αρκετή. «Ε και; Θα χρειαστούν καλύτερα επιχειρήματα από αυτό για να πείσεις κάποιον να διαβάσει τον οδηγό σου!».

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

Ο Chuck Norris και η Python

Ο Chuck Norris αποτελεί πλέον persona – φαινόμενο χάρη στο διαδικτυακό καλαμπούρι που ξεκίνησε στις τάξεις των geeks του διαδικτύου (http://www.chucknorrisfacts.com/). Αποτελεί δηλαδή ένα παράδειγμα χαρακτήρα που, ενώ η πρωταρχική του ιδιότητα θα μπορούσε να χαρακτηρισθεί αδιάφορη, η χρήση του σε ένα πετυχημένο (και παράλληλα έξυπνο) project, όχι μόνον τον έφερε και πάλι στο προσκήνιο, αλλά εκτίναξε και το «κασέ» του, στα ύψη.

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

Αν λοιπόν η επιτυχία του Chuck Norris εκτινάχθηκε στα ύψη από την δημοσιοποίηση ενός καλοστημένου project σκεφθείτε που πρέπει να κατατάξουμε την γλώσσα Python μετά την παρουσίαση όχι μιας, ούτε δύο αλλά 4 + 1 εκπληκτικών εφαρμογών.

Έχετε δίπλα σας την κούπα με τον αγαπημένο καφέ ή τσάι; Ας ξεκινήσουμε…

Mercurial: Δουλέψτε ευκολότερα, δουλέψτε ταχύτερα

Αποτελεί εργαλείο που απευθύνεται κυρίως σε ανθρώπους που ασχολούνται με την ανάπτυξη λογισμικού. Πρόκειται για μια εφαρμογή ανοικτού λογισμικού (δηλαδή ο κώδικας διατίθεται ελεύθερα προς χρήση και τροποποίηση) η οποία λειτουργεί σε Windows, Mac OS X και στα περισσότερα συστήματα τύπου UNIX. Αποστολή του είναι η ομαδική ανάπτυξη ενός έργου λογισμικού με ταυτόχρονη παρακολούθηση, καταγραφή και τήρηση ιστορικού των αλλαγών που γίνονται από τους προγραμματιστές που συμμετέχουν στο έργο. Παρακολουθούνται αρχεία τύπου text αλλά και binary αρχεία.

Η εφαρμογή διατίθεται κάτω από άδεια GNU GPL ενώ ο δημιουργός και κύριος προγραμματιστής του έργου είναι ο Matt Mackall. Η υλοποίησή της βασίζεται στις γλώσσες Python και C.

Επίσημη ιστοσελίδα: http://mercurial.selenic.com/

Gwibber: Microblogging Freedom

Η εφαρμογή gwibber αποτελεί μια δωρεάν εφαρμογή πελάτη για τη διαχείριση γνωστών ιστοσελίδων κοινωνικής δικτύωσης (Twitter, Identi.ca, StatusNet, Facebook, FriendFeed, Digg, Flickr, Qaiku). Είναι φτιαγμένη για εμφανίζει στον χρήστη, ανά πάσα στιγμή, διαφορετικές ροές. Απευθύνεται σε λειτουργικά συστήματα Linux (είναι μάλιστα προεγκατεστημένη στην έκδοση 10.04 της διανομής Ubuntu).

Επίσημη ιστοσελίδα: http://gwibber.com/

Emesen: An IM for the WLMTM network

Πρόκειται για μία από τις αγαπημένες μου εφαρμογές για λειτουργικά συστήματα Linux. Αντικαθιστά επάξια το MSN των Windows.

Αποστολή του είναι να «αντιγράψει» τις ιδιότητες του MSN προσφέροντας στον χρήστη Linux Λειτουργικών συστημάτων ένα εύχρηστο αλλά παράλληλα οικείο περιβάλλον αποστολής προσωπικών μηνυμάτων.

Λειτουργεί άψογα με λογαριασμούς Microsoft και φυσικά διατίθεται δωρεάν με άδεια GNU GPL.

Όπως και πριν, το Emesen είναι γραμμένο σε Python.

Επίσημη ιστοσελίδα: http://www.emesene.org/

Trac: Integrated SCM & Project Management

Ακόμη ένα εξαιρετικό εργαλείο για ανάπτυξη και εκσφαλμάτωση λογισμικού γραμμένο αποκλειστικά σε Python. Διατίθεται δωρεάν και αποτελεί λογισμικό ανοικτού κώδικα. Η αρχική του ονομασία ήταν svntrac λόγω της ικανότητάς του να συνεργάζεται με το Subversion.

Επίσημη ιστοσελίδα: http://trac.edgewall.org/

(+1) Django: Web framework για τελειομανείς με deadlines

Το Jango αποτελεί στην κυριολεξία ένα trend της εποχής. Πρόκειται για ένα Web Framework που διατίθεται δωρεάν κάτω από BSD License και φυσικά ο κώδικάς του είναι ανοικτός. Η μυστήρια ονομασία του προέρχεται από τον τσιγγάνο κιθαρίστα Django Reinhardt. Είναι γραμμένο εξ’ ολοκλήρου σε Python.

Επίσημη ιστοσελίδα: http://www.djangoproject.com

Για όσους από εσάς λοιπόν δεν είναι ξεκάθαρο το πόσο σημαντική γλώσσα είναι η Python, οι παραπάνω εφαρμογές έρχονται να «ξεκαθαρίσουν» το τοπίο, κάνοντας σαφές με τον καλύτερο τρόπο ότι κάποιος που γνωρίζει καλά Python, μπορεί να υλοποιήσει μια μεγάλη γκάμα πραγμάτων, που εμπίπτουν σε ποικιλία τεχνολογιών.

Μέχρι την επόμενη λοιπόν φορά που θα τα πούμε…

…να είστε καλά και να προσέχετε τον εαυτό σας.

Tags: , , , , , , , ,

krap { Προσωπική Ιστοσελίδα / Άρθρα Στο GreekTuts }
Γεια χαρά. Ονομάζομαι Απόστολος. Είμαι αρθρογράφος στο GreekTuts σε θέματα προγραμματισμού και παραγωγικότητας. Είμαι επίσης συνιδρυτής του NewsFilter.gr, blog νέων γενικού ενδιαφέροντος που εδρεύει στη Θεσσαλονίκη. Συνήθως δεν έχω ελεύθερο χρόνο, αλλά όταν έχω ενημερώνω το προσωπικό μου blog. Επίσης, είμαι εθισμένος στην καφεΐνη :)

3 Σχόλια στο άρθρο Γιατί η Python μοιάζει με τον Chuck Norris

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>