17% скидка на размещение рекламы на площадках devby — до 20 ноября. Клац!
Support us

Почему язык Rust обречён на успех

5 комментариев
Почему язык Rust обречён на успех

«Проект Rust хорош настолько, насколько это возможно, а его сообщество ещё лучше», — пишет о мультипарадигмальном компилируемом языке программирования, разработанном компанией Mozilla, вице-президент мобильного подразделения Adobe Мэт Эсэй (Matt Asay).

Читать далее

Один из разработчиков Rust Алекс Кричтон. Фото: YouTube.

Некоторые open source-сообщества, кажется, вдохновляются цитатой из «Ада» Данте: «Оставь надежду, всяк сюда входящий».

Несмотря на то, что использовать и привносить свой вклад в открытый исходный код критически важно, довольно трудно с воодушевлением присоединиться к «сообществу», в котором каждый тянет одеяло на себя. Тем не менее, именно так многие open source-проекты и работают.

Но это не касается сообщества Rust. Начавшийся как амбициозный побочный проект сотрудника компании Mozilla, язык программирования Rust обещает совместить возможности контроля низкоуровневых языков с гибкостью высокоуровневых языков. Или, как пишет Сердар Егулалп (Serdar Yegulalp), «наибольшие планы Mozilla в отношении Rust, исходя из рекламы этого языка как средства достижения скорости без ущерба для безопасности, по-видимому, включают не только нативные приложения вроде веб-браузера, но также и целые операционные системы».

Это, конечно, очень здорово, но также требует от разработчиков и огромных усилий при обучении. И во многих open source-проектах это способ супергиков издеваться над более слабыми программистами, заинтересованными в участии.

К счастью, возможно, самым впечатляющим аспектом Rust является приветливость сообщества, которое вполне может стать «не таким уж секретным оружием» этого языка.

Будущее строится на Rust

Новые приложения всё чаще требуют новых подходов к разработке. Это одна из причин, по которым язык программирования Go от Google оказался весьма успешным. Это же может стать причиной и радужного будущего для Rust. Аналитик RedMonk Стивен О’Грейди (Stephen O’Grady) обращает внимание: «Случайные наблюдения, которые я производил некоторое время, говорят о пробуждении интереса разработчиков из разных областей».

Отчасти это из-за безопасности. Как полагает Дэвид Херман (David Herman), ведущий разработчик Mozilla, «Rust может предложить нечто уникальное, чего не предлагал ни один язык раньше: это та степень безопасности, которую языки типа С и С++ никогда не имели... В них есть вещи, которые делают системное программирование пугающим и которых нет в Rust».

Само по себе это не было бы столь захватывающим, несмотря даже на важную роль безопасности. Но потенциально наибольшее преимущество Rust вытекает из его способности предоставить такой же контроль, как у системного языка, и, кроме того, лёгкость и непринуждённость языка высокого уровня.

Как объясняет Херман, «Rust имеет много функций и удобств, которые делают его практически высокоуровневым языком, несмотря даже на то, что вы делаете такие вещи, как, например, ручное управление памятью, которое можно сделать на С++. Но Rust имеет и множество абстракций, которые не дадут застрять лишь на управлении памятью».

Словом, «низкоуровневый контроль и высокоуровневая безопасность». Это мощное сочетание, которое обещает дать разработчикам гораздо больше контроля над производительностью без бремени обучения С/С++ и без риска ошибок.

Уютное сообщество

Хотя подзаголовок звучит просто, процесс обучения и приобретения опыта в Rust таковым не является.

На Reddit есть отличный комментарий, в котором на вопрос «Rust слишком сложен?» дается ответ: да, довольно сложен. Но одним из факторов, смягчающих сложность, которая присуща изучению любого нового языка, особенно Rust, является сообщество, призванное помогать новобранцам.

Один из комментаторов (JArcane) делится подробностями:

«Программируя на Rust, я все ещё чувствуют себя глупым. Я все еще думаю «Ой, дурак, ты же должен это знать». Я еще стесняюсь того, что не знаю чего-то или не могу додуматься до этого сам. Когда я читаю книги, общий их тон звучит так: «Да, это сложновато, но не волнуйтесь, если у вас не вышло с первого раза. Со временем у вас получится». Когда я спрашиваю о чём-то на канале, я получаю быстрые и полезные ответы, причём зачастую более широкие, чем были сами вопросы: что, как и почему. И это словно подтверждение тому, что каждый такой вопрос –– это возможность научить, ожидаемый случай, а вовсе не повод для перепалки в надежде, что позже поможет кто-то другой».

Как говорят, «основной посыл в литературе, сообщениях компилятора, на канале IRC звучит так: «Мы понимаем».

Вот это да.

Это очень существенно отличается от сообщества Linux, где, например, Линус Торвальдс может поприветствовать участника словами «Ты несёшь полную чушь».

Или от писем Говарда Чу, ведущего архитектора OpenLDAP: «Если вы напишете в этой рассылке и ваше сообщение будет сочтено офтопиком или окажется недостаточно исследованным, то вы будете выруганы, осмеяны и унижены. Это касается и глупых вопросов».

Может быть, это и адекватная реакция, позволяющая потенциальным участникам обсуждения нарастить более толстую кожу. Но разве ей так уж нужно быть пуленепробиваемой?

В случае с Rust вам не придётся выбирать между изучением нового захватывающего проекта и собственным достоинством. Я говорил с несколькими членами сообщества Rust, а также с некоторыми сторонними наблюдателями, и каждый из них подтвердил существенный момент: сообщество Rust старается изо всех сил, чтобы помочь другим добиться успеха.

Именно поэтому в число причин светлого будущего Rust, помимо всех технических достоинств, амбициозных обещаний и возможных перспектив, входит и его сообщество, которое приветливо относится к новичкам и помогает им. Чтобы они остались, конечно, но также и чтобы вносили свой вклад. Это тот проект, за которым стоит следить, и то сообщество, которому стоит подражать.

Читайте также
Python больше не самый популярный на GitHub. Его сменил очень молодой язык
Python больше не самый популярный на GitHub. Его сменил очень молодой язык
Python больше не самый популярный на GitHub. Его сменил очень молодой язык
7 комментариев
В России русифицировали JavaScript
В России русифицировали JavaScript
В России русифицировали JavaScript
7 комментариев
JetBrains: каждому шестому разработчику ИИ экономит минимум день в неделю
JetBrains: каждому шестому разработчику ИИ экономит минимум день в неделю
JetBrains: каждому шестому разработчику ИИ экономит минимум день в неделю
1 комментарий
IEEE: из-за ИИ стало невозможно отслеживать популярность языков, их будущее под вопросом
IEEE: из-за ИИ стало невозможно отслеживать популярность языков, их будущее под вопросом
IEEE: из-за ИИ стало невозможно отслеживать популярность языков, их будущее под вопросом

Хотите сообщить важную новость? Пишите в Telegram-бот

Главные события и полезные ссылки в нашем Telegram-канале

Обсуждение
Комментируйте без ограничений

Релоцировались? Теперь вы можете комментировать без верификации аккаунта.

Комментариев пока нет.