LINUX.ORG.RU

Работа на rust - реально ли?

 


2

4

Я питонщик с где-то десятилетним опытом. Вроде в питоне все классно, есть работа, норм зп, да и эйчары регулярно сыплют в инбоксы заманчивыми предложениями. Но что-то надоел он мне. Точнее, динамическая типизация надоела. Где-то полгода пишу личные проекты всякие на rust'е, и могу с уверенностью сказать, что оно мне нравится с каждым днем все больше и больше.

Все больше закрадываются мысли что хочу кодить на расте за еду, а не только лишь ради фана. Но что-то на рынке как-то он не сильно нужен. На upwork'е работ нет от слова вообще. Хотя мелькают порой новости о success stories во всяких корпорациях, но реальные вакансии на глаза не попадаются.

Что думаете - реально ли это вообще? Что делать, чтоб осуществить мечту? Пока на ум приходит только оформить свои проекты до более-менее презентабельного уровня, написать доку и выложить на гитлаб. Но что-то маловато как-то что ли.

★★★★★

Сейчас работа на расте - это или мозила, или крипто-шлак.

Если повезёт, можно найти нанимателя, которому не особо важен язык.

RazrFalcon ★★★★★ ()

Хотя мелькают порой новости о success stories во всяких корпорациях, но реальные вакансии на глаза не попадаются.

Как я понял, там почти всегда местные спецы переползали на раст. Новых для этого не нанимали.

RazrFalcon ★★★★★ ()
Ответ на: комментарий от RazrFalcon

Если повезёт, можно найти нанимателя, которому не особо важен язык.

+1. Находить заказы, где неважно на чём будет сделан проект.

th3m3 ★★★★★ ()
Ответ на: комментарий от RazrFalcon

Неа. Я видел чуваков, которые инмемори сторадж на расте делали. На паверах :))

kirk_johnson ★★ ()

Питонщик со знанием раста? Интересное кино... Покажешь репозитории-то?

P.S. Из того кого знаю - Parity, Polkadot - криптонешлак. Но кажись и нам пригодится: больно вкусное пересечение опыта

michwill ★★★★ ()

Напиши виртуальную машину на питоне, которая будет крутить твой код на расте, прозрачно для всего остального питоньего окружения.

vasya_pupkin ★★★★ ()
Последнее исправление: vasya_pupkin (всего исправлений: 1)
Ответ на: комментарий от michwill

уфф, из более-менее законченных:

https://gitlab.com/morosophos/ssmon/ https://gitlab.com/morosophos/pk3rs https://gitlab.com/morosophos/dpcolors

из совсем не готовых:

https://gitlab.com/morosophos/luffa https://gitlab.com/morosophos/xinfra

Почти всё относится к игре Xonotic, потому что я администрирую там несколько серверов и поэтому идеи для пет проджектов черпаются главным образом оттуда :)

provaton ★★★★★ ()
Ответ на: комментарий от michwill

судя по лору, в раст первым делом как раз питонщики идут

MyTrooName ★★★★★ ()
Ответ на: комментарий от MyTrooName

Мне кажется, что изначальная популярность питона и руби (а раньше перла и пхп) была связана с тем, что тогдашние языки со статической типизацией были либо тупыми и многословными (напр ява), или небезопасными как C или C++. Сейчас же наука развилась до того уровня, когда можно создавать системы статической типизации, которые будут позволять писать гибкий код с нормальными абстракциями, при этом отлавливая львиную долю ошибок на этапе компиляции. Ну и вишенка на торте - type inference. Haskell, Rust - пионеры в этой области. Поэтому, мне кажется, что популярность динамической типизации будет снижаться со временем. Но инерция тут большая, процесс очень небыстрый.

provaton ★★★★★ ()
Ответ на: комментарий от provaton

Интересненько, почитаем.

Кстати, а через компилировать Rust в wasm чтоб в браузере работало не пробовали?

michwill ★★★★ ()
Ответ на: комментарий от michwill

Пробовал, но так, игрался только. Я вообще не фронтендщик. Хотя возможно моя нелюбовь к веб-фронтендам продиктована убогостью javascript'а, и с растом будет совершенно другая история :)

provaton ★★★★★ ()
Ответ на: комментарий от provaton

вишенка на торте - type inference. Haskell, Rust - пионеры в этой области.

если бы ты упомянул сначала OCaml, это выглядело бы правдоподобнее

Virtuos86 ★★★★★ ()
Ответ на: комментарий от provaton

уфф, из более-менее законченных:

https://gitlab.com/morosophos/ssmon/

Тебе нормально, что в main.rs всё в необработанных unwrap'ах? Причем main не возвращает Result, что могло бы служить оправданием.

Virtuos86 ★★★★★ ()
Ответ на: комментарий от Virtuos86

ssmon вообще мой первый проект, так что не судите слишком строго. Но за фидбек благодарен.

provaton ★★★★★ ()

Точнее, динамическая типизация надоела.

К тому есть какие-то обьективные основания, связанные с нуждами программной инженерии? Спрашиваю, потому что частенько приходится читать мнение о ДТ как о принципиально более отсталой системе типизации по сравнению с СТ. При этом аргументы в стиле «это очевидно», «у меня было минимум багов с СТ», «так профессор сказал». Более-менее грамотно поставленные эксперименты с практической разработкой на эту тему противоречивы и ни подтверждают, ни опровергают тезис о превосходстве СТ.

seiken ★★★★★ ()
Ответ на: комментарий от seiken

Основание одно - динамическая типизация не может отловить ошибки типов до запуска программы. Конечно, есть анализаторы с неплохими эвристиками, но это именно эвристики, и отрабатывают они не всегда правильно, и чаще всего только в простых случаях.

provaton ★★★★★ ()
Ответ на: комментарий от seiken

К JavaScript придумали TypeScript, к python тоже прикручивают статическую типизацию.

O02eg ★★★★★ ()
Ответ на: комментарий от O02eg

статическая типизация в питоне опциональна. Ты вполне можешь передать тип отличный от того, который требует тайпхинт.

provaton ★★★★★ ()
Ответ на: комментарий от provaton

TypeScript != JavaScript. Я не говорю, что сами языки ломают обратную совместимость и начинают принуждать к типам. Но появление и распространение дополнительных инструментов типизации как бы намекает.

O02eg ★★★★★ ()

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

snizovtsev ★★★ ()
Ответ на: комментарий от snizovtsev

странно, я на тег rust подписан, но не припомню такого треда

provaton ★★★★★ ()

В основном хотят удаленку и знание английского. Если устраивает — оформляй на линкдине профиль, набивай сеть и жди, пишут в целом часто.

В России полторы конторы есть, но они хотят сеньоров.

mersinvald ★★★★ ()
Ответ на: комментарий от RazrFalcon

По ссылке фото с какой-то презентации с цифрой про 38% багов в уже в разработанном проекте, и комменты к непонятно чему. Т.е. постфактум, когда проект уже сделан, они выяснили, что часть ошибок можно было бы избежать, если использовать СТ с самого начала. Во-первых, не факт, что в других проектах ошибок данной (исправимой СТ) категории было бы тоже примерно 38%, а не на порядок меньше. Во-вторых, неизвестно, сколько времени ушло на исправление этих 38% багов. Так что время на разработку с СТ могло бы быть значительно выше, чем с ДТ плюс исправление багов, а при выборе СТ/ДТ важны именно общие трудозатраты на разработку и поддержку, а не только обнаружение ошибок на этапе сборки. И даже при прочих равных общих временах разработки и поддержки, выиграет тот, кто первый выведет продукт на рынок.

seiken ★★★★★ ()
Последнее исправление: seiken (всего исправлений: 1)
Ответ на: комментарий от provaton

Ну если перед билдом образа, или в тестах, или перед деплоем (у кого как) я всегда запускаю проверку - то не могу.

vertexua ★★★☆☆ ()
Последнее исправление: vertexua (всего исправлений: 1)
Ответ на: комментарий от provaton

Сорри, дефолт кантри. С СНГ тоже пара вакансий были, но это буквально пара на страну.

А какие у тебя квалификации? Есть профиль на линкдине? Мы команду расширяем, мб заинтересуешься.

mersinvald ★★★★ ()
Ответ на: комментарий от seiken

Так они уже вывели давно, теперь переписывают, рефакторят и закрывают баги, в том числе засчет CT

mersinvald ★★★★ ()
Ответ на: комментарий от RazrFalcon

Ну какие есть. Обычно сравнить int со str хватает, и уже хорошо. Но то что выше сказано что мол можно как-то там типы любые пихать - нет же, на уровне организации должна быть policy о обязательной проверке типов на какой-то фазе

vertexua ★★★☆☆ ()

Нету пока ни работы, ни работников. Ничо, для начала в своей питонофирме повелел на новых проектах юзать mypy с disallow_untyped_defs и disallow_incomplete_defs и чтоб в CI само запускалось. Крестьянам токо так мозги вправляет, остальные пруцца. На няшной растишечке пока довелось переписать только одну тупую прокси, которая примерно ничего не делает, только принимает JSON через HTTP POST и сыпет его в кафку. Всё её ненавидели, потому что питон не может 10000 запросов в секунду, и пришлось на клятом жабоскрипте. По сравнению с ним няшная растишечка ну няша же! Да ещё и вместо 300% процессора теперь ест 30%, и памяти вместо полгига где-то 10 МБ. Это вообще законно? Правда, пришлось nightly из-за async/await, потому что за брейнфак с комбинаторами мне бы точно тёмную устроили. А в ночных зборках то rls на две недели сломают, то лютые баги компилятора, надо ещё знать, какой версией проект норм собирается. Но нед худа без добра: когда люди вдосталь потрахаются с невоспроизводимыми билдами, начинают сами интересоватьься «че это за default.nix там лежит с какими-то хэшами, это случайно не virtualenv для системных зависимостей? ЧО ПРАВДА?! ХОТЕТ!!!» Так двое уже научились ставить nix на убунту и запускать nix-shell. Потом они такие «ой а че оно опять всё по новой скачивается» - и открывают для себя сначала https://github.com/flyingcircusio/userscan, а потом https://github.com/target/lorri/ на этой неделе щас модно, и обе тулзы на растишечке, что характерно. Круг замкнулся, лол. Так потихонечку пролиферирует няшная растишечка. Ещё вот async/await в стабле выкатят и в дизеле хотя бы GROUP BY допилят и мануал напишут, чтоб миллионы смузи-кодеров могли на нём свои сайты вместо рельсов, и тогда точно взлетит.

Pacmu3ka ()
Ответ на: комментарий от RazrFalcon

Вот в коде-то у нас анальный порядок, просто всему баланс нужен, лол.

Pacmu3ka ()
Ответ на: комментарий от mersinvald

Ох, профиль на линкедине есть, но я его не обновлял лет 8 наверное. Надо заняться, спасибо за напоминание.

provaton ★★★★★ ()
Ответ на: комментарий от provaton

Также поищи и разместись на djinni.co там тоже по Расту вакансии пробегали.

pinachet ★★★★★ ()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)