четверг, 10 января 2019 г.

[prog.thoughts] "За*бало" как основная причина хайпа вокруг Rust?

Поводом к написанию данной заметки стали комментарии от ув.тов Сергея Скороходова, свежая запись в блоге ув.тов.kaa.python про социальные факторы и Rust, а так же ссылка на эту статейку, найденную на Hacker News.

Реально, очень интересно, почему от Rust-а кипятком писают все: не только C/C++ разработчики, но и пользователи гораздо более безопасных и удобных в работе языков с GC (начиная от Java и заканчивая JavaScript-ом, включая и Scala, и Haskell).

И знаете, похоже, что ключевое слово здесь -- за*бало!

Ну вот, на самом деле, многих разработчиков просто за*бало то, что творится в софтостроении.

За*бали Java и .NET, которые и монстрообразные, и с лишними слоями абстракции, и с возведенным в абсолют дрочеством на паттерны и корпоративные бест-практицес.

За*бали динамически типизированные языки. Всякие Python-ы, Ruby-и и, особенно, JavaScript. Потому, что тормозные. Потому, что в более-менее большой кодовой базе х*й разберешься. Потому, что пока не напишешь на каждую строку по unit-тесту, них*я не заработает. А даже если и заработает сперва, то потом обязательно перестанет после первого же рефакторинга.

За*бали C и C++. Потому что UB, отстрелы ног и вот это вот все. А C++ за*бал особенно, потому, что стандарт уже 1500+ страниц, а комитет, сука, страдает какой-то х*йней вместо того чтобы сделать из C++ язык-конфетку. И да, всем пох*й на то, что это в принципе невозможно.

За*бало ООП. Потому, что оно сосет и это известно всем и каждому. А из-за того количества паттернов, которые сейчас неизбежно идут в нагрузку к тривиальным, в принципе, идеям ООП, это самое ООП сосет еще больше.

ФП, впрочем, тоже почти что за*бало. Но не потому, что сосет. А потому, что нормальное ФП доступно в нах*й никому не нужных Haskell-ях с OCaml-ами. А их за*бешся, но не выучишь. А даже если выучишь, то х*й потом работу найдешь.

Количество идиотов среди программистов реально за*бало. Войти-в-ойти сумело большое количество народу, изрядную часть которого к программированию вообще допускать нельзя было бы. Но спрос гораздо выше предложения, поэтому имеем кучу дырявого софта, который завязан на leftpad.

В общем, мощность компьютеров с начала 1980-х растет невиданными темпами. А в софтостроении творится какая-то неведомая х*йня.

И вот на этом фоне появляется Rust. Который не тормозит. Не требует JVM или .NET. Статически типизированный. С жестким контролем со стороны компилятора. Без ООП. С ФП, но без матана. Единственный компилятор (C++ники рыдают). С менеджером зависимостей (рыдания C++ников переходят в истерику). С достаточно высоким порогом входа, чтобы отсечь пользователей leftpad-а. На котором не нужно писать скучную корпоративную по*бень.

Бл*дь, да это же просто новый дивный мир какой-то!

Глоток свежего воздуха.

Луч света в темном царстве.

Ну как тут можно устоять и не поехать крышей?

Никак.

Комментариев нет: