Με όραμα για ένα καλύτερο μέλλον, η Tesla όχι μόνο έγινε η πολυτιμότερη εταιρεία αυτοκινήτων που υπήρξε ποτέ, αλλά και ξεπέρασε τον εαυτό της ως μία από τις κορυφαίες εταιρείες τεχνολογίας στον κόσμο. Από τα αυτόνομα οχήματα μέχρι τα ρομπότ AI, η Tesla τα έχει κάνει όλα. Ποιες όμως γλώσσες προγραμματισμού έχουν βοηθήσει τον οργανισμό να δημιουργήσει τέτοια φουτουριστικά προϊόντα; Ας ανακαλύψουμε.
Γλώσσες προγραμματισμού που χρησιμοποιούνται στην Tesla
1. C & C++
Τα τελευταία χρόνια, έχει υπάρξει μια εισροή μεγάλου αριθμού νέων γλωσσών προγραμματισμού όπως Elixir, Pony, Julia, κ.λπ., που έχουν κατασκευαστεί για να διευκολύνουν τις εργασίες με όσο το δυνατόν λιγότερο κώδικα. Ωστόσο, η Tesla εξακολουθεί να βασίζεται σε μεγάλο βαθμό σε μία από τις πιο θεμελιώδεις γλώσσες: C & C++.
«Το μεγαλύτερο μέρος του λογισμικού σε αυτοκίνητα Tesla είναι C ή C++», δήλωσε ο Mehdi Amini, Engineering Manager στην Tesla. Ένα από τα μεγαλύτερα πλεονεκτήματα μεταξύ αυτών των παλαιών γλωσσών και πιθανώς ο λόγος για την επιβίωσή του στο χρόνο είναι ότι αυτές οι γλώσσες μπορούν να λειτουργήσουν σε σχεδόν οποιοδήποτε είδος συστήματος. Αποδίδοντας την εγγύτητά του με το ΛΣ, αυτά χαμηλού επιπέδου γλώσσες προγραμματισμού χρησιμοποιούνται στα περισσότερα IoT και ενσωματωμένα συστήματα και βοηθούν τους μηχανικούς να βελτιστοποιήσουν το λογισμικό.
«Καμία γλώσσα προγραμματισμού δεν έχει πλησιάσει τη C ή τη C++ όσον αφορά την αποτελεσματικότητα. Οι περισσότερες σύγχρονες γλώσσες προγραμματισμού με συλλέκτες σκουπιδιών δεν είναι ντετερμινιστικές όσον αφορά τη διαχείριση μνήμης, κάτι που απλά δεν είναι κατάλληλο για κρίσιμα ενσωματωμένα συστήματα όπως αυτά στα αυτοκίνητα Tesla», είπε ο Mehdi. Μια άλλη μεγάλη εταιρεία τεχνολογίας που χρησιμοποιεί εκτενώς τη C & C++ είναι Nvidia.
2 Python
Εκτός από την C & C++, η Tesla βασίζεται επίσης σε μεγάλο βαθμό στην πιθανώς την πιο δημοφιλή και ευρέως χρησιμοποιούμενη γλώσσα. Python. Σε μια σειρά από tweets, ο Elon εξηγεί πώς χρησιμοποιούν έναν συνδυασμό C/C++ & Python για να δημιουργήσουν τους αλγόριθμούς τους:
Το NN μας είναι αρχικά σε Python για γρήγορη επανάληψη, στη συνέχεια μετατρέπεται σε κώδικα προγράμματος οδήγησης C++/C/raw metal για ταχύτητα (σημαντικό!). Επίσης, απαιτούνται τόνοι μηχανικών C++/C για τον έλεγχο οχημάτων και ολόκληρο το υπόλοιπο αυτοκίνητο. Το εκπαιδευτικό υπόβαθρο είναι άσχετο, αλλά όλοι πρέπει να περάσουν σκληρό τεστ κωδικοποίησης.
- Elon Musk (@elonmusk) Φεβρουάριος 3, 2020
Αυτό το tweet ώθησε πολλούς προγραμματιστές να τονίσουν τις ελλείψεις της μετατροπής από Python σε C++/C, αλλά ας έχουμε κατά νου ότι το tweet είναι απλώς μια συμπυκνωμένη εξήγηση μιας καλά μελετημένης διαδικασίας και δεν ανταποκρίνεται στην πραγματικότητα τεχνικές που χρησιμοποιούνται. Ο Soumith Chintala, συνδημιουργός του PyTorch, εξηγεί ότι πιθανότατα ακολουθούν αυτόματη μετατροπή από Python σε C & C++. Ο Έλον επεσήμανε επίσης την εξάρτησή τους από την PyTorch.
Το PyTorch είναι το πιο συχνά χρησιμοποιούμενο εξωτερικό σύνολο εργαλείων/βιβλιοθήκη
- Elon Musk (@elonmusk) Φεβρουάριος 3, 2020
PyTorch είναι μια βιβλιοθήκη που δημιουργήθηκε για μηχανική μάθηση, όραση υπολογιστή και επεξεργασία φυσικής γλώσσας. Είναι εντελώς ανοιχτού κώδικα και έχει κατασκευαστεί από το ερευνητικό εργαστήριο AI του Facebook.
3. Java & Javascript
Με βάση μια έρευνα που διεξήχθη από την Burning Glass, η Java και η Javascript βρίσκονται στη συνέχεια στη σειρά όσον αφορά τη χρήση και τη σημασία για τις γλώσσες στην Tesla. Και οι δύο αυτές γλώσσες χρησιμοποιούνται σε μεγάλο βαθμό στην κατασκευή συστημάτων και εφαρμογών για τα αυτοκίνητά τους. Η C++, η Python και η Java είναι οι γλώσσες που απαιτούνται σε όλες σχεδόν τις θέσεις εργασίας στην Tesla. Επιπλέον, η Tesla απαιτεί ισχυρή επάρκεια στη Javascript για ρόλους που περιλαμβάνουν προγραμματισμό front-end. Μάθετε περισσότερα για τις θέσεις εργασίας στην Tesla εδώ.
4. Άλλες Γλώσσες
Η Tesla απαιτεί επίσης αριστεία σε άλλες γλώσσες προγραμματισμού με βάση τις συγκεκριμένες λειτουργίες που εκτελούνται από καθεμία από αυτές. Αντίδραση και Typescript είναι γλώσσες που βασίζονται σε Javascript που χρησιμοποιούνται εκτενώς από την Tesla για ανάπτυξη front-end. Εξάλλου, Ruby, CSS και PHP απαιτούνται σε ρόλους που αφορούν την ανάπτυξη Ιστού. Τέλος, η SQL χρησιμοποιείται σε μεγάλη κλίμακα για τη διαχείριση βάσεων δεδομένων. Όλες αυτές οι γλώσσες συνδυάζονται για να δημιουργήσουν τα προϊόντα που μας αφήνουν δέος.
Συμπέρασμα
Έτσι, παρά το γεγονός ότι είναι μια από τις μεγαλύτερες εταιρείες τεχνολογίας στον κόσμο, η Tesla βασίζεται κυρίως σε γλώσσες προγραμματισμού παλιάς σχολής. Οι Python, C & C++ είναι απαραίτητοι εάν θέλετε να εργαστείτε για εταιρείες όπως η Tesla, η SpaceX, η Nvidia, η Intel, κ.λπ. Ωστόσο, η Tesla έχει περισσότερους από 300 μηχανικούς στην εργασία με ποικίλα σετ δεξιοτήτων, τα οποία συνδυάζονται για να δημιουργήσουν πολύπλοκα δίκτυα για να τρέξουν τα προϊόντα τους. Η επιλογή σας για τη γλώσσα προγραμματισμού που θα μάθετε θα πρέπει να εξαρτάται αποκλειστικά από το είδος της λειτουργίας που θέλετε να εκτελέσετε. Επιλέξτε με σύνεση!
Αφήστε μια απάντηση