Пятнадцатого июня я сел писать собственную оболочку для работы с моделями — проект тогда назывался Улей. К следующему вечеру она работала целиком. В журнале у меня записано без лишней скромности: функционально полный за ночь.
Мне нужен был не чат с моделью. Чат — это развлечение. Мне нужно было рабочее место: чтобы модель читала мои документы, правила код, запускала команды и показывала, что именно собирается изменить, до того как это сделает. Готовые оболочки тогда либо тянули всё в облако, либо не умели инструментов вовсе, либо просили денег за каждый чих.
Следующие три дня были из тех, ради которых вообще занимаешься этим делом. Каждый вечер появлялось что-то, чем можно пользоваться завтра: показ правок перед применением, вопросы от модели с вариантами ответа, потоковый вывод, подключение внешних инструментов, зрение. Я сидел и складывал себе инструмент под руку, и он рос на глазах.
А потом наступило отрезвление, и оно определило всё дальнейшее.
Инструмент был хорош, а работать в нём было тяжело — потому что модель отвечала медленно. И я поймал себя на том, что перестаю ею пользоваться: проще сделать самому, чем ждать. Вот это было неприятное открытие. Не «модель глупая» — с умом всё было в порядке. Просто медленной моделью человек не пользуется, какая бы умная она ни была.
Два вывода я сделал тогда и не поменял до сегодня.
Первый: половину пользы даёт не модель, а обвязка вокруг неё. Одна и та же модель в хорошем окружении работает, в плохом — болтает.
Второй оказался важнее: скорость — это не удобство, это условие того, что вещью вообще будут пользоваться. Из него выросло всё остальное — вопрос о битах, троичные веса, собственное ядро. Я не сжимал модели из любви к сжатию. Я хотел, чтобы ответ приходил раньше, чем я успею отвлечься.
Андрей Рощупкин