icon
Personal Website

Кодить каждую неделю 8 часов • 2026-01-26

-= Поиск по моим постам =-

На прошлой неделе я начал делать текстовый поиск на моём персональном веб-сайте, и столкнулся и интересной особенностью SQLite. Оказывается, в SQLite нет поддержки Unicode из коробки в 2026 году 🤦 Есть возможность активировать поддержку Unicode с помощью какого-то подключаемого модуля, но как это сделать - вопрос. Автор SQLite драйвера для Golang пишет, что нужно прописать go build -tags "icu" , но у меня эта команда падает из-за отсутствия какого-то заголовочного файла C . Да-да, для работы SQLite в Golang требуется компилятор C ... В общем, сложностей много, а вот удобств маловато... Поиск сделать можно, но функция UpperCase для текста будет работать только с английским языком. Обозначил для себя три пути:

  1. Продолжать пытаться подключить модуль Unicode в SQLite, закопаться в C
  2. Сделать поиск с тремя вариантами написания каждого слова:
    1. слово
    2. Слово
    3. СЛОВО
  3. Сделать поиск полностью в Go
    1. При этом, SQLite будет стримить все данные из базы в мою программу, без своего встроенного фильтра

Выбрал для себя путь 3 . Не потому, что он самый правильный, а потому, что он для меня наиболее интересный из трёх. Сейчас у меня в постах примерно 1000 текстов (если считать вместе с переводами на английский и немецкий языки). Посмотрим, насколько быстро будет работать поиск по 1000 текстам на слабом железе Orange Pi Zero

-= Цели на январь =-

  1. Дойти до задачи номер 200 на LeetCode, как минимум ✅ сделано
  2. Написать новую фичу для моего персонального веб-сайта: 🔎 Текстовый поиск по всем постам ▶️ начато...
  3. Рассортировать все мои облачные файлы и их бекапы ⌛предстоит сделать