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