Стремясь к лучшему будущему, Tesla не только стала самой дорогой автомобильной компанией из когда-либо существовавших, но и преодолела себя как одна из ведущих технологических компаний в мире. От автономных транспортных средств до роботов с искусственным интеллектом Tesla сделала все. Но какие языки программирования помогли организации создать такие футуристические продукты? Давайте узнаем.
Языки программирования, используемые в Tesla
1. С и С++
В последние годы появилось большое количество новых языков программирования, таких как Elixir, Pony, Julia и т. д., созданных для упрощения задач с использованием как можно меньшего количества кода. Тем не менее, Tesla по-прежнему в значительной степени полагается на один из самых фундаментальных языков: C и C++.
«Большая часть программного обеспечения в Автомобили Tesla это C или C++», — сказал Мехди Амини, технический директор Tesla. Одна из самых сильных сторон этих старых языков и, вероятно, причина их выживания во времени заключается в том, что эти языки могут работать практически на любой системе. Ссылаясь на близость к ОС, эти низкоуровневые языки программирования используются в большинстве IoT и встроенных систем и помогают инженерам оптимизировать программное обеспечение.
«Ни один язык программирования не приблизился к C или C++ по эффективности. Большинство современных языков программирования со сборщиками мусора являются недетерминированными, когда речь идет об управлении памятью, что просто не подходит для критически важных встроенных систем, таких как те, что используются в автомобилях Tesla», — сказал Мехди. Еще одна крупная технологическая компания, активно использующая C и C++, — Nvidia.
2. питон
Помимо C и C++, Tesla также сильно зависит от, возможно, самого популярного и широко используемого языка; Питон. В серии твитов Илон объясняет, как они используют комбинацию C/C++ и Python для создания своих алгоритмов:
Наша NN изначально написана на Python для быстрой итерации, а затем преобразована в код драйвера C++/C/raw metal для ускорения (важно!). Кроме того, тонны инженеров C++/C необходимы для управления транспортным средством и всей остальной частью автомобиля. Образование не имеет значения, но все должны пройти жесткий тест на кодирование.
- Элон Муск (@elonmusk) 3 февраля 2020
Этот твит побудил многих разработчиков подчеркнуть недостатки перехода с Python на C++/C, но давайте помнить, что твит — это просто сжатое объяснение хорошо продуманного процесса, и он не отражает фактического используемые техники. Сумит Чинтала, один из создателей PyTorch, объясняет, что они, скорее всего, используют автоматическое преобразование с Python на C и C++. Илон также указал на их зависимость от PyTorch;
PyTorch — наиболее часто используемый набор/библиотека внешних инструментов.
- Элон Муск (@elonmusk) 3 февраля 2020
PyTorch — это библиотека, созданная для машинного обучения, компьютерного зрения и обработки естественного языка. Он полностью с открытым исходным кодом и создан исследовательской лабораторией искусственного интеллекта Facebook.
3. Java и Javascript
Согласно опросу, проведенному Burning Glass, Java и Javascript являются следующими в очереди с точки зрения использования и важности языков в Tesla. Оба эти языка активно используются при создании систем и приложений для своих автомобилей. C++, Python и Java — это языки, необходимые почти для всех вакансий в Tesla. Кроме того, Тесле требуется хорошее знание Javascript для ролей, связанных с программированием внешнего интерфейса. Узнайте больше о вакансиях в Tesla здесь.
4. Другие языки
Тесла также требует совершенства в других языках программирования, исходя из конкретных функций, выполняемых каждым из них. реагировать и Машинопись — это языки на основе Javascript, широко используемые Tesla для разработки интерфейсов. Кроме того, Ruby, CSS и PHP требуются на должностях, связанных с веб-разработкой. Наконец, SQL широко используется для управления базами данных. Все эти языки объединяются для создания продуктов, которые вызывают у нас благоговейный трепет.
Заключение
Таким образом, несмотря на то, что Tesla является одной из крупнейших технологических компаний в мире, она в основном полагается на языки программирования старой школы. Python, C и C++ обязательны, если вы хотите работать в таких компаниях, как Tesla, SpaceX, Nvidia, Intel и т. д. Однако в Tesla работает более 300 инженеров с различными наборами навыков, и все они объединяются для создания сложных сетях для запуска своих продуктов. Ваш выбор языка программирования для изучения должен полностью зависеть от того, какую функцию вы хотите выполнять. Выбирать мудро!
Оставьте комментарий