26 Σεπτεμβρίου 2017

Οι κορυφαίες τάσεις στο προγραμματισμό: Η άνοδος των Big Data

Πλέον το IEEE Spectrum έχει φτάσει στη τρίτη χρονιά του στην ετήσια βαθμολόγηση γλωσσών προγραμματισμού. Μπορούμε, λοιπόν, να κοιτάξουμε την τάση στις γλώσσες προγραμματισμού στο χρόνο. Ποιες είναι σε άνοδο, ποιες χάνουν έδαφος και άλλες πληροφορίες. Σε αυτό το άρθρο θα επικεντρωθούμε στις λεγόμενες γλώσσες προγραμματισμού για Big data, όπως οι Julia, Python, R και Scala. Οι περισσότερες από αυτές είναι χτισμένες για τον χειρισμό μεγάλων ποσοτήτων αριθμητικών δεδομένων, με σταθερά πακέτα που μπορούν να χρησιμοποιηθούν εύκολα και γρήγορα για αναλύσεις. Αυτές οι γλώσσες αυξάνουν την σημαντικότητά τους όσο τα δεδομένα που συλλέγουν κυβερνήσεις, οργανισμοί, εταιρείες, επιστήμονες και άλλοι πολλοί αυξάνονται σε όγκο και σε ποικιλία.

Η γλώσσα με την μεγαλύτερη άνοδο στη κατηγορία ήταν η GO, μία open source γλώσσα προγραμματισμού που δημιουργήθηκε από τη Google για να τη βοηθήσει να αντιμετωπίσει κάποια ζητήματά της. Ανέβηκε 10 θέσεις σε σχέση με το 2014 για να είναι σήμερα στη 10η θέση. Άλλες γλώσσες που είδαν άνοδο ήταν οι R και Scala, με άνοδο 4 και 2 θέσεις αντίστοιχα. Η γλώσσα Julia προστέθηκε στη λίστα για πρώτη φορά το 2015 και έχει ανέβει από τη θέση 40 στη 33, δείχνοντας ότι έχει αποκτήσει μομέντουμ στην ανάπτυξή της.

Ο κυριότερος λόγος που ανέβηκε η GO φαίνεται να είναι η μεγάλη αύξηση στην σχετική δραστηριότητα στο Github. Η άνοδος της R φαίνεται ότι συνεχίζεται, πλέον στην πέμπτη θέση στην σχετική κατάταξη. Η μεγάλη άνοδος του αριθμού τον ερωτήσεων στο Stack Overflow φαίνεται να έχει παίξει σημαντικό ρόλο στην άνοδο της στην κατάταξη αλλά καταλυτικό ρόλο έχουν παίζει οι αυξανόμενες αναφορές στην R σε επιστημονικά ερευνητικά άρθρα. Η βαθμολόγηση που δίνει το Spectrum δίνει μεγάλη βαρύτητα στις αναφορές σε επιστημονικά άρθρα και βιβλία. Το 2015 υπήρχαν μόλις 39 papers με αναφορά στην R ενώ φέτος έφτασαν τα 244.

Με αυτά τα στοιχεία, τίθεται πλέον το ερώτημα αν η R μπορεί τελικά να ξεπεράσει την Python ή τη java σαν την κορυφαία γλώσσα για big data. Όμως, ενώ η R έχει τεράστια άνοδο τα τελευταία χρόνια, οι Python και java δείχνουν αξεπέραστες. Για παράδειγμα, οι θέσεις εργασίες είναι πολύ περισσότερες για χρήστες της Python παρά για την R. Αυτό συμβαίνει γιατί ενώ η R είναι σπουδαία για visualization και περιγραφική ανάλυση και είναι πολύ δημοφιλής στον ακαδημαϊκό κόσμο, η Python έχει ξεκάθαρα πλεονεκτήματα στην παραγωγή και είναι πιο γενική ως προς τι μπορείς να κάνεις με αυτή.

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

Πηγή: spectrum.ieee.org