Dec. 22nd, 2015

CLI ☠

Dec. 22nd, 2015 03:57 pm
ermouth: (Default)

Я сегодня имел счастье поюзать vi – и переплевался в очередной раз от CLI и сопутствующих тулов. После этого у меня состоялся занятный диалог в тви:

Снимок экрана 2015-12-22 в 14.01.26

Во избежание недопонимания, я не против CUI вообще, но я резко против CLI. По моему глубокому убеждению засилье CLI снижает качество программного обеспечения и в целом тормозит всю отрасль.

Огромное количество отличного софта просто не доходит до массового пользователя из-за отсутствия человечьего UI. То-есть, случается софтинка давно уже вышла из детского состояния и обросла крутыми фичами – а так и пребывает в виде CLI-утилиты, даром, что ключей на 10 экранов.

Звоночки

Вообще, превращение списка ключей в дерево или разбухание ключей больше чем на полэкрана хэлпа – верный признак того, что пора с CLI подзавязывать и делать человечий UI.

Ещё хороший признак – если команды перестали совсем напоминать человеческую речь, пусть и существенно “туземную”. Полно утилит, которые абсолютно бесполезны, пока им не припишешь пару строк ключей из бессмысленных наборов букв.

Тут есть промежуточное решение, групповые ключи типа –O2, вместо –falign-jumps, –falign-functions и далее по списку. Но это уже полшага к UI.

Мифы

Я несколько раз имел переписки разной длительности и накала о сабже с самого разного уровня инженерами. Не зависимо от адекватности остальных суждений одна мысль всегда присутствовала – дескать, UI это непременно сложно.

Так вот, оно миф.

Хороший UI, да при этом современно выглядящий – да, это сложно. Но “модный” вид решительно не нужен для утилиты, у которой весь зоопарк CLI-ключей мапится на пару-тройку групп радио с чекбоксами – и сделать эти радио с чекбоксами совершенно не проблема же.

Бесспорно, есть целый класс случаев, когда CLI-наилучшее, а иногда – и вовсе единственно пригодное решение. Вот только расширять этот класс за счёт случаев “разработчику было лень” – это некомильфо. А именно так нередко и происходит.

Ещё один миф – что научиться делать хороший UI как-то очень сложно.

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

Простые вещи начинают получаться сразу, сложные – чуть погодя. Прикручивание UI к несложным CLI-тулам в этом плане дело благодарное, такие интерфейсы как раз несложные.

Итого

Уважаемые софтвэа девелоперы, не ленитесь, делайте UI к вашим CLI – и дано будет вам ))

Profile

ermouth: (Default)
ermouth

November 2021

S M T W T F S
 123456
78910111213
14151617181920
21 222324252627
282930    

Most Popular Tags

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 5th, 2025 08:31 am
Powered by Dreamwidth Studios