Мы привыкли к тому, что в нашем IT-мире всё течёт и меняется. Постоянно появляются новые версии операционных систем, сменяют друг друга приложения и фреймворки. То, что ещё вчера было мейнстримом, сегодня считается безнадёжно устаревшим. Но у многих из нас есть любимые программы, которые путешествуют с компьютера на компьютер, от одной версии операционной системы к другой. И продолжают служить нам верой и правдой — привычные и надёжные, как старые друзья. Для меня таким старым надёжным другом стала программа TreePad Lite. Она со мной уже без малого 30 лет. Вдумайтесь в эти цифры… Для компьютерного приложения это не просто почтенный возраст, это удивительное долголетие! Впервые я познакомился с маленьким древовидным блокнотом ещё в 90-х годах. Он появился на моём компьютере вскоре после установки новейшей и прогрессивной по тем временам Windows 95. Интернета у меня тогда ещё не было, я скачал программку с одной из многочисленных BBS. С тех пор я никогда не расстаюсь со своим «старым любимым фруктовым деревом» TreePad. TreePad Lite — это простая, но в то же время удивительно универсальная программа. По сути это простой блокнот с возможностью хранения записей, организованных в иерархическую структуру. В семействе Treepad есть и другие варианты реализации программы. Например, существуют версии TreePad Plus, Treepad Business и Treepad X Enterprise с гораздо более широкими возможностями. Например, там можно сохранять записи с форматированием текста и добавлением рисунков. Но я верен маленькому TreePad Lite. Он умеет работать только с простым текстом, и мне этого вполне достаточно. Сейчас в сети можно найти сотни программ с древовидной организацией записей. Есть реализации на любой вкус, любой сложности, с любыми вариантами интерфейсов. Прямо глаза разбегаются. Почему же я до сих пор верен программе, которая была написана 28 лет назад? Вот несколько причин: В TreePad Lite все записи дерева хранятся в едином текстовом файле с расширением HJT. Здесь ключевые слова — «единый» и «текстовый». По сути HJT-файл программы можно открыть как обычный TXT-файл и успешно его отредактировать. Единственное отличие от простого текста — это наличие тегов <node> и <end node>, а также нескольких служебных строк у каждой записи — тип содержимого и уровень записи в дереве. Такой подход выгодно отличает TreePad Lite от множества программ-конкурентов с бинарными форматами хранения записей. Простой файл удобно парсить и конвертировать. Я с удовольствием использую файлы программы как исходник для более сложных форматов. Например, я написал себе LUA-преобразователь HJT-файла в единый HTML-файл и использую его в любимом FAR. Кстати, в обратную сторону это тоже работает. Очень просто сгенерировать HJT-файл  нужной структуры с помощью простенького скрипта. Например, подготовить файл для ведения дневника с древовидной иерархией «год — месяц — день». Любая программа хоть раз, да «заглючит». Например, однажды, ещё в институте, мне удалось сломать даже пасьянс «Косынка» (подробностей уже не вспомню). Но TreePad Lite за 28 лет не ломался и не зависал ни разу. В это, конечно, сложно поверить. Возможно, мне просто повезло, хотя я ежедневно и очень активно использую эту программу. Интерфейс у TreePad Lite простой и незатейливый. Слева — дерево разделов, справа — окно для редактирования выбранного раздела. Есть кнопки для управления деревом, поиск и простейшие дополнительные функции — например, экспорт/импорт и добавление текущих даты и времени. В целом функциональность и интерфейс приложения довольно аскетичны — как раз то, что мне нужно для продуктивной работы. Справедливости ради нужно перечислить и некоторые особенности TreePad Lite. Сначала я хотел назвать их «минусами», но потом понял, что лично для меня это не недостатки, а скорее необременительные особенности, которые никак не мешают использованию программы. Все файлы TreePad Lite сохраняются в кодировке Windows. Существуют более навороченные версии, которые умеют работать с Unicode, но я их не использую. Для моих целей мне вполне хватает кодировки 1251. Более того, в современных версиях Windows программа вполне успешно справляется с такими символами, как кавычки «» и длинное тире. Для моих целей этого достаточно. В программе есть ограничение на длину одной записи. Эту особенность я обнаружил очень давно, когда хотел сохранить в одной заметке текст целой книги. Если вставить в заметку текст длиной больше 64 Kb, то он автоматически обрежется на полуслове. Для меня это тоже не недостаток, а особенность. Ведь я не использую TreePad для хранения текстов — это просто неудобно. В дереве удобнее хранить небольшие заметки, справочники, учебники. Если же требуется сохранить в виде дерева какую-то большую книгу, то её удобнее разбить на главы и разделы. Иначе зачем её вообще запихивать в файл с иерархической структурой. У Treepad Lite иконка не просто несовременная. Она вопиюще неаккуратная и нарисована в худших традициях дизайна времён Windows 3.11. Даже в те времена некоторые авторы умудрялись рисовать красивые пиктограммы, несмотря на все технические ограничения. В случае с Treepad этого не получилось — распознать в этом наборе пикселей фруктовое дерево довольно сложно. С другой стороны, в этой иконке тоже есть свой ретро-шик. Этакое ваби-саби — прекрасное несовершенство. Сразу вспоминаются времена древних версий операционных систем, когда деревья были большими пиксельными. Я так и не смог привыкнуть к этой плохо прорисованной пиктограмме. Но ведь иконку можно легко поменять. Хотя бы в ярлыке, что я и сделал. Тем более, что в стандартном moricons.dll есть как раз подходящее «благообразное» круглое дерево. Программа, которую используешь почти 30 лет — это уже не просто программа. Она становится частью твоего «я», без которой уже не представляешь свои рабочие процессы.  Мне близок минимализм TreePad: простота интерфейса, отсутствие необходимости установки, нетребовательность к ресурсам, открытый формат файлов, отсутствие каких-либо зависимостей от сторонних библиотек или интернета. Всё это выгодно отличает TreePad Lite от множества современных приложений. Я понимаю, что моему почтенному старичку TreePad можно легко подобрать замену — с современным интерфейсом и множеством дополнительных возможностей. Наверное, было бы интересно попробовать реорганизовать заметки в Wiki-формате или, например, с Markdown-форматированием. Но привычка — великая вещь. Ещё почитать: Прекрасный минимализм текстовых файлов Цифровая ностальгия: BBS, DOS Navigator, DOOM и Civilization  Техлид, технический писатель, программист