don't get charmed
Jan. 18th, 2023 01:33 pmОдна из спорных мудростей по технологиям - don't get charmed. Мол, технология - это технология, и не надо впадать в восторг, и тогда не будет разочарований. Пришло/ушло откопал/закопал идём дальше.
Я как раз стараюсь избегать такого отношения. Love-hate relationship с технологиями позволяет больше инвестировать времени и внимания в те технологии, которые хороши, и активно избегать технологий, которые неприятны. Ориентация на "приятно/неприятно" очень важна, потому что часто является самым ярким индикатором управленческих/инженерных практик в ПО, которое реализует технологию.
Самый яркий пример для меня в последние годы - это Chef. Был момент, когда он был лидером хайпа. Я начал его щупать, и у меня не проходило ощущение инженерной брезгливости. Вместо интеграции с системой, chef относился к хостовой системе как к чужеродной сущности. /opt, deb-пакет для chef-sdk на 600Мб с трижды завендоренным эрлангом в разных каталогах.
Я для себя его записал в технологии неопрятные и неприятные. И что ж... Прошли годы, и где chef? Доит неудачников в жадных ручках прогрессивов. Ансибл, при всей душераздирающей ужасности type conversion, не производил ощущение небрежного. Итог? Живее всех живых. Хоть у меня к нему и есть претензии.
Сейчас ровно такая же ситуация с go vs rust. Go - полон странных инженерных глупостей (начиная со своего собственного именования параметров командной строки, которые называются "флаги" и имеют -singledash форму), rust - вершина инженерной мудрости и тщательности в мелочах. Я не хочу go по эстетическим соображениям, хоть вокруг него и сложился существенный хайп и даже тулстек.
Rust - charming.
Я как раз стараюсь избегать такого отношения. Love-hate relationship с технологиями позволяет больше инвестировать времени и внимания в те технологии, которые хороши, и активно избегать технологий, которые неприятны. Ориентация на "приятно/неприятно" очень важна, потому что часто является самым ярким индикатором управленческих/инженерных практик в ПО, которое реализует технологию.
Самый яркий пример для меня в последние годы - это Chef. Был момент, когда он был лидером хайпа. Я начал его щупать, и у меня не проходило ощущение инженерной брезгливости. Вместо интеграции с системой, chef относился к хостовой системе как к чужеродной сущности. /opt, deb-пакет для chef-sdk на 600Мб с трижды завендоренным эрлангом в разных каталогах.
Я для себя его записал в технологии неопрятные и неприятные. И что ж... Прошли годы, и где chef? Доит неудачников в жадных ручках прогрессивов. Ансибл, при всей душераздирающей ужасности type conversion, не производил ощущение небрежного. Итог? Живее всех живых. Хоть у меня к нему и есть претензии.
Сейчас ровно такая же ситуация с go vs rust. Go - полон странных инженерных глупостей (начиная со своего собственного именования параметров командной строки, которые называются "флаги" и имеют -singledash форму), rust - вершина инженерной мудрости и тщательности в мелочах. Я не хочу go по эстетическим соображениям, хоть вокруг него и сложился существенный хайп и даже тулстек.
Rust - charming.