Позвольте мне не согласиться на удобочитаемость. Нет, не полностью: хороший код должен быть читабельным, и этого можно легко достичь с помощью достаточного количества комментариев.
Но я рассматриваю два вида WTF: те, в которых вы задаетесь вопросом, продвинулся ли программист дальше программирования 101, и те, в которых вы абсолютно не понимаете, насколько гениален код. Поначалу некоторый код может выглядеть очень странно, но на самом деле это очень изобретательное решение сложной проблемы. Второе не должно учитываться в WTF-метре, и его можно избежать с помощью комментариев.
Очень читаемый код может быть очень, очень медленным. Менее читаемое решение может дать многократное улучшение скорости. R - отличный пример языка, где это часто бывает правдой. Каждый любит избегать петель там как можно больше. В общем, я бы посчитал самый быстрый код лучшим, хотя он менее читабелен. То есть, если улучшение является существенным, конечно, и достаточно комментариев, чтобы объяснить, что делает код.
Более того, управление памятью может иметь решающее значение во многих научных приложениях. Код, который очень читабелен, имеет тенденцию быть неаккуратным в использовании памяти: создается только больше объектов. В некоторых случаях разумное использование памяти делает код снова менее читабельным. Но если вы, например, манипулируете гигабайтами последовательностей ДНК, память является решающим фактором. Опять же, я считаю код с меньшим объемом памяти лучшим кодом независимо от читабельности.
Так что да, читабельность важна для хорошего кода. Я знаю адагиум Уве Лиггиса: мышление болит, а компьютеры дешевы. Но в моей области (статистическая геномика) время вычислений в неделю и использование памяти более 40 Гб не считаются ненормальными. Так что улучшение в два раза быстрее и вдвое меньше памяти стоит намного больше, чем этот дополнительный бит читаемости.