_Перевод статьи [«For Better or For Worse»][1] [разработчика][2] из компании DataDog Inc. Статья посвящена вопросу дизайна языков программирования и связи дизайна с попытками оценок качества языков. Частично является ответом на недавно переведенную [тут эту статью][3]._ В программистской тусовке возникает мем об “объективном качестве” дизайна Go. Буквально на днях я встретил его в [статье про выбор языков от Honza][4], где он был очень хорошо виден:
> Учтите, язык объективно очень плохо спроектирован. [...] И, при этом, Go гораздо более популярен, чем Haskell, если верить GitHub. При этом, уже столько отличных проектов, написанных на Go, вроде Docker, InfluxDB, etcd, Consul, Prometheus, packer и других.
Я думаю, что это [крайне интересный набор противоречий][5], и автор с этим согласен. Сложно было бы так безаппеляционно и уверенно утверждать, что Go плохо спроектирован, если бы это мнение не было столь расхожим. В прошлом году целый ряд статей и постов в блогах заложили основу этому мнению. Среди них были статьи людей, не любящих Go, потому что тот [не позволяет им чувствовать себя умными][6] или потому что [в нём нет ничего принципиально нового][7]. Они уверены, что Go, сознательно игнорируя определённые продвижения в дизайне языков программирования, остался в прошлом, из которого лучшие языки ушли далеко вперед. И они это утверждают [весьма настойчиво][8]. Когда люди с таким видением пытаются объяснить популярность Go, они неизбежно приходят к парадоксу. Если Go настолько плох, почему он так популярен? [Читать дальше →][9]
[1]:
http://jmoiron.net/blog/for-better-or-for-worse/
[2]:
https://github.com/jmoiron
[3]:
http://habrahabr.ru/post/270707/
[4]:
https://honza.ca/2015/11/language-choice
[5]:
https://twitter.com/jmoiron/status/662156246452060161
[6]:
http://nomad.so/2015/03/why-gos-design-is-a-disservice-to-intelligent-programmers/
[7]:
http://yager.io/programming/go.html
[8]:
https://www.quora.com/How-do-Go-and-Rust-languages-compare/answer/Costya-Perepelitsa?srid=u77Z&share=1
[9]:
http://habrahabr.ru/post/270981/#habracut