Анализ страницы https://lbolla.info/tags/programming
Основное Готовность: 100%
Домен
lbolla.info
Состояние доменного имени
?
Проверяем корректность доменного имени и наличие технических проблем на уровне домена.
Домен второго уровня идеален для продвижения.
Отличный запоминающийся домен.
Ответ сервера
200 Успешный ответ
HTTP-код ответа и цепочка редиректов
?
Код 200 — страница доступна. Коды 3xx — редиректы (цепочки замедляют загрузку и размывают ссылочный вес). Коды 4xx/5xx — ошибки, поисковик не сможет проиндексировать страницу.
Сервер настроен корректно.
Цепочка редиректов:
https://lbolla.info/tags/programming
301 MovedPermanently
https://lbolla.info/tags/programming/
200 OK
Безопасность
Сайт безопасен
Использование HTTPS и SSL-сертификат
?
HTTPS — обязательный стандарт. Google и Яндекс отдают предпочтение защищённым сайтам. Отсутствие SSL или просроченный сертификат ведут к предупреждениям в браузере и снижению позиций.
На сайте работает защищенный протокол ssl и сайт открывается по https.
Ssl-сертификат действителен до 20.09.2026 8:34:50.
Включён HSTS (Strict-Transport-Security) — защита от подмены на http.
Поздравляем! Сайт не содержится в реестре РКН.
Кодировка
utf-8
Кодировка символов страницы
?
Стандарт — UTF-8. Неправильная кодировка вызывает нечитаемые символы и мешает поисковику корректно распознать текст страницы.
Указана кодировка на странице utf-8.
Язык
en-us
Атрибут lang в HTML-теге
?
Атрибут lang (<html lang="ru">) сообщает поисковикам и браузерам, на каком языке написана страница. Помогает при ранжировании в региональном поиске.
Язык документа указан явно: en-us.
Скорость загрузки
~0,76сек
Время отклика сервера (TTFB)
?
Time To First Byte — время до получения первого байта от сервера. Норма до 200 мс. Медленный отклик ухудшает пользовательский опыт и ранжирование: Яндекс и Google учитывают скорость страниц.
Скорость загрузки сайта 0,76сек оптимальна.
Объем документа
16Кб
Размер HTML-кода страницы
?
Слишком большой HTML замедляет парсинг браузером и сканирование поисковым роботом. Рекомендуется не более 200 Кб.
Объем html-документа 16Кб оптимален.
Структура html-документа корректна.
Ресурсы
Ресурсы: 1
Внешние ресурсы страницы (CSS, JS, изображения)
?
Количество и тип подключённых ресурсов влияют на скорость загрузки. Большое число запросов увеличивает время рендеринга страницы.
Кол-во файлов ресурсов 1 достаточно.
Показать полный список ресурсов
| Тип | Название | Значение |
|---|---|---|
| stylesheet | /css/custom.css |
Серверные заголовки
Кол-во: 10
HTTP-заголовки ответа сервера
?
Заголовки сервера передают браузеру и поисковику служебную информацию: кеширование, безопасность (CSP, HSTS), сжатие (gzip). Правильная настройка ускоряет загрузку и повышает защищённость.
Найдены серверные заголовки 10шт. Подробнее про серверные заголовки.
Показать полный список серверных заголовков
| Ключ | Значение |
|---|---|
| Accept-Ranges | bytes |
| Age | 0 |
| Cache-Control | public, must-revalidate, max-age=0 |
| cache-status | "Netlify Edge"; fwd=miss; fwd-status=200; stored |
| Date | Mon, 24 Aug 2026 20:43:30 GMT |
| ETag | "906bddd0628ad6f2846f988be3f14e44-ssl" |
| Server | Netlify |
| Strict-Transport-Security | max-age=31536000 |
| Vary | Accept-Encoding |
| x-nf-request-id | 01M0TR74E1RD5S8TTQ7R7TKY3C |
CMS
Не определена
Система управления сайтом (движок)
?
CMS — это движок, на котором работает сайт (WordPress, 1C-Bitrix, Tilda и др.). Знание CMS помогает понять возможности SEO-оптимизации и подобрать подходящие инструменты. «Не определена» — вероятно, самописный сайт или нестандартная сборка.
CMS не определена. Вероятно, сайт самописный либо движок надёжно скрыт. Это не ошибка.
Веб-сервер
Netlify
Программное обеспечение сервера
?
Веб-сервер — это ПО, которое отдаёт страницы посетителям (nginx, Apache, IIS, LiteSpeed и др.). Определяется по серверным заголовкам ответа (Server, X-Powered-By и т.п.). «Не определён» — сервер намеренно скрывает эти заголовки, это нормальная практика безопасности.
В заголовке Server указано: Netlify.
Мета-теги Готовность: 50%
Title
Programming | Lorenzo Bolla
Заголовок страницы в браузере и поисковой выдаче
?
Title — главный SEO-заголовок страницы. Влияет на CTR в поиске и ранжирование. Оптимальная длина: 50–70 символов. Ключевые слова — ближе к началу.
Необходимо увеличить число символов в title (текущее значение: 27, оптимально: от 40 до 45)
Дублей словоформ в title не найдено.
Description
Описание страницы в поисковой выдаче (сниппет)
?
Meta Description — текст под заголовком в выдаче. Напрямую на позиции не влияет, но влияет на CTR. Оптимальная длина: 120–160 символов.
Установите мета-тег description!
Keywords
ai,article,book,elixir,emacs,erlang,go,haskell,italiano,javascript,linux,lisp,media,meme,music,obsidian,philosophy,pkm,programming,python,reading,rust,tornado,
Список ключевых слов страницы (устаревший тег)
?
Meta Keywords не учитывается Яндексом и Google для ранжирования с 2009–2012 годов. Заполнение не обязательно, но не вредит. Конкурент может использовать содержимое для анализа.
Keywords установлены.
Канонический Url
Указывает поисковику основную версию страницы
?
Canonical (rel=canonical) предотвращает проблему дублей страниц. Должен точно совпадать с URL проверяемой страницы. Неправильный canonical может передать ссылочный вес на другую страницу.
Рекомендуем прописать канонический Url.
Robots
Ошибок нет
Директивы для поисковых роботов на уровне страницы
?
Meta Robots управляет индексацией конкретной страницы: index/noindex — индексировать ли, follow/nofollow — следовать ли по ссылкам. Noindex полностью исключает страницу из поиска.
Meta-тег robots не указан. Страница свободна для индексации.
Адаптивность
width=device-width,initial-scale=1
Настройка масштабирования на мобильных устройствах
?
Тег viewport (<meta name="viewport">) сообщает браузеру, как масштабировать страницу на мобильных. Стандарт: width=device-width, initial-scale=1. Отсутствие — признак отсутствия мобильной версии.
Meta-тег viewport со значением-константой width=device-width задаёт ширину страницы в соответствии с размером экрана.
Meta-тег viewport со значением initial-scale=1.0 определяет масштаб 1:1, т.е. «не масштабировать».
Разметка OpenGraph
Кол-во: 5
Мета-теги для красивых превью в соцсетях
?
OpenGraph (og:title, og:description, og:image) управляет тем, как страница выглядит при репосте в социальных сетях и мессенджерах. Отсутствие OG-тегов — невзрачный превью при шеринге.
Разметка OpenGraph задана. Страница оптимизирована под социальные сети.
Показать полный список og мета-тегов
| Тип | Значение |
|---|---|
| og:url | https://lbolla.info/tags/programming/ |
| og:site_name | Lorenzo Bolla |
| og:title | Programming |
| og:locale | en_us |
| og:type | website |
Все мета-теги
Кол-во: 12
Полный список мета-тегов страницы
?
Таблица всех meta-тегов, включая нестандартные. Позволяет найти опечатки, дубли и лишние теги.
Найдены мета-теги 12шт. Мета-теги не видимы для человека и предназначены для обмена информацией между веб-страницей и поисковыми системами, браузерами и другими веб-службами. С ними роботы 🤖 и устройства ведут себя более ожидаемо.
Показать полный список мета-тегов
| Тип | Название | Значение |
|---|---|---|
| name | viewport | width=device-width,initial-scale=1 |
| name | title | Programming |
| name | description | |
| name | keywords | ai,article,book,elixir,emacs,erlang,go,haskell,italiano,javascript,linux,lisp,media,meme,music,obsidian,philosophy,pkm,programming,python,reading,rust,tornado, |
| name | twitter:card | summary |
| name | twitter:title | Programming |
| name | referrer | no-referrer-when-downgrade |
| property | og:url | https://lbolla.info/tags/programming/ |
| property | og:site_name | Lorenzo Bolla |
| property | og:title | Programming |
| property | og:locale | en_us |
| property | og:type | website |
Оптимизация Готовность: 60%
Структура
Ошибок нет
Семантические HTML-элементы страницы
?
Проверяет наличие основных структурных элементов: nav, header, footer, main. Корректная семантическая структура помогает поисковику понять архитектуру страницы.
Структура документа корректна (теги <html> и <body> присутствуют в единственном экземпляре).
Контент
Есть ошибки
Объём и качество текстового содержимого
?
Анализирует объём полезного текста на странице. Слишком мало — страница может считаться малополезной. Слишком много — ухудшается читаемость и восприятие.
Абзацев с текстом 0 слишком мало. Добавьте больше абзацев с текстом (тег <p>)!
Среднее число слов в абзаце 0 слишком мало. Сделайте контент более читаемым!
Кол-во слов 590 не очень много. Добавьте побольше текста (хотя бы 800 слов)!
Слова из title 3 встречаются в тексте достаточно.
Кол-во знаков контента 3300 на странице оптимально.
Заголовки
Ошибок нет
Иерархия заголовков H1–H6
?
H1 должен быть один и содержать ключевой запрос. H2–H6 описывают подразделы. Пропуск уровней (H1 → H3) и несколько H1 — типичные ошибки, снижающие понятность страницы для поисковика.
На странице присутствуют заголовки <h2> 1. Это хорошо.
На странице присутствуют заголовки <h3> 1.
Тошнота
4,24
Насколько одно слово доминирует в тексте
?
Классическая тошнота = √(частота самого повторяющегося слова). Норма до 7–8: текст воспринимается естественно. Выше — поисковик может счесть страницу переспамленной.
Тошнота превышает норму 3. Измените текст страницы!
Академич. тошнота
12,20%
Насколько текст перенасыщен ключевыми словами
?
Академическая тошнота = (частота слова / общее количество слов) × 100%. Показывает долю конкретного слова в тексте. Норма 5–15%.
Академическая тошнота страницы в пределах нормы.
Семантическое ядро
20
Наиболее часто встречающиеся слова на странице
?
Топ слов по частоте использования. Показывает, какие слова доминируют в тексте с точки зрения поисковика.
Контент страницы содержит осмысленный текст и слова.
Показать список слов
| Слово | Кол-во | Частота |
|---|---|---|
| python | 18 | 3,05% |
| useful | 5 | 0,85% |
| scripts | 5 | 0,85% |
| tornado | 4 | 0,68% |
| haskell | 4 | 0,68% |
| wordpress | 3 | 0,51% |
| javascript | 3 | 0,51% |
| client | 3 | 0,51% |
| browser | 3 | 0,51% |
| blocking | 2 | 0,34% |
| flycheck | 2 | 0,34% |
| checker | 2 | 0,34% |
| simple | 2 | 0,34% |
| postgres | 2 | 0,34% |
| hsgrep | 2 | 0,34% |
| benchmark | 2 | 0,34% |
| lorenzo | 1 | 0,17% |
| filtering | 1 | 0,17% |
| "programming" | 1 | 0,17% |
| remove | 1 | 0,17% |
Индексация Готовность: 45%
Индексирование
Ошибок нет
Разрешено ли индексирование страницы
?
Проверяет, не закрыта ли страница от индексации через robots.txt, meta robots или X-Robots-Tag. Страница, закрытая от индексации, не появится в поисковой выдаче.
Анкоров на странице 88 оптимально. Поисковые роботы обязательно проиндексируют сайт.
Robots.txt
Не найден
Файл управления сканированием сайта роботами
?
Robots.txt указывает поисковым роботам, какие страницы сканировать, а какие — нет. Ошибки в файле могут случайно закрыть важные разделы от индексации.
Файл robots.txt не найден (ошибка 404). Крайне рекомендуем добавить файл robots.txt, это правило хорошего тона для поисковых роботов.
Sitemap
Кол-во: 0
XML-карта сайта для поисковиков
?
Sitemap.xml помогает поисковику быстрее находить и индексировать страницы. Особенно важен для крупных сайтов и новых страниц, на которые ещё нет входящих ссылок.
Robots.txt не содержит ссылку на карту сайта. Рекомендуется добавить карту сайта и указать ссылку на нее в robots.txt.
Внутренние ссылки
Кол-во: 88
Ссылки на другие страницы своего сайта
?
Внутренние ссылки распределяют ссылочный вес между страницами и помогают поисковику обходить сайт. Пустые анкоры и ссылки на запрещённые robots.txt страницы — типичные ошибки.
На странице присутствуют внутренние ссылки с пустым анкором: 1!
Внутренних ссылок на странице 88 оптимально.
Показать внутренние ссылки
| Url | Анкор | Состояние |
|---|---|---|
| / |
<h2>Lorenzo Bolla</h2>
|
|
| /cv/ |
CV
|
|
| /blog/ |
Blog
|
|
| /the-shelf/ |
The Shelf
|
|
| /blog |
Remove filter
|
|
| /blog/python-mro-surprises/ |
Python MRO surprises
|
|
| /blog/gio-in-cronjob/ |
gio in cronjob
|
|
| /blog/goodbye-linode-welcome-aws/ |
Goodbye Linode, welcome AWS!
|
|
| /blog/impl-specialization-in-rust/ |
Impl specialization in Rust
|
|
| /blog/nice-threads-in-python/ |
Nice threads in Python
|
|
| /blog/speeding-up-oh-my-zsh/ |
Speeding up Oh-my-zsh
|
|
| /blog/edit-kubernetes-secrets/ |
Edit Kubernetes secrets
|
|
| /blog/kubectl-outdated-plugin/ |
Kubectl outdated plugin
|
|
| /blog/org-based-lbolla.info/ |
org-based lbolla.info
|
|
| /blog/elixir-pipe-operator-in-python/ |
Elixir pipe operator in Python
|
|
| /blog/comparison-of-blocking-and-non-blocking-python-multiprocessing-queue/ |
Comparison of blocking and non-blocking Python multiprocessing Queue
|
|
| /blog/flycheck-checker-for-erlang-dialyzer/ |
Flycheck checker for Erlang dialyzer
|
|
| /blog/empy-1.0-is-out-python3-compatible/ |
EMpy 1.0 is out! Python3 compatible!
|
|
| /blog/flycheck-checker-for-flow/ |
Flycheck checker for Flow
|
|
| /blog/experiments-in-pickling/ |
Experiments in pickling
|
|
| /blog/die-zombie-die/ |
Die zombie, die!
|
|
| /blog/long-running-processes-manager/ |
Long running processes manager
|
|
| /blog/overcoming-python-gil-with-cython/ |
Overcoming Python GIL with Cython
|
|
| /blog/connect-to-mssql-from-python-with-odbc-and-freetds/ |
Connect to MSSQL from Python with ODBC and FreeTDS
|
|
| /blog/python-and-c-with-ctypes/ |
Python and C with ctypes
|
|
| /blog/simple-chat-with-postgres-listen-notify-and-tornado-ioloop/ |
Simple chat with Postgres LISTEN NOTIFY and Tornado IOLoop
|
|
| /blog/use-postgres-advanced-types-in-python/ |
Use Postgres advanced types in Python
|
|
| /blog/blocking-tasks-in-tornado/ |
Blocking tasks in Tornado
|
|
| /blog/unshareme/ |
UnshareMe
|
|
| /blog/useful-scripts---watch/ |
Useful scripts - Watch
|
|
| /blog/useful-scripts---htmlind-and-xmlind/ |
Useful scripts - htmlind and xmlind
|
|
| /blog/useful-scripts---csvfmt-xmlfmt-jsonfmt/ |
Useful scripts - csvfmt, xmlfmt, jsonfmt
|
|
| /blog/wordpress-to-markdown/ |
Wordpress to markdown
|
|
| /blog/useful-scripts---c+-c-/ |
Useful scripts - c+-c-
|
|
| /blog/useful-scripts---a+-a-/ |
Useful scripts - a+-a-
|
|
| /blog/url-counter-in-go/ |
URL Counter in GO
|
|
| /blog/asynchronous-programming-with-tornado/ |
Asynchronous programming with Tornado
|
|
| /blog/tornado-vs.-warp-vs.-yesod/ |
Tornado vs. Warp vs. Yesod
|
|
| /blog/empy-has-moved/ |
EMpy has moved!
|
|
| /blog/pipelines-in-python/ |
Pipelines in Python
|
|
| /blog/hsenv/ |
hsenv
|
|
| /blog/sudoku-solver-in-haskell/ |
Sudoku solver in Haskell
|
|
| /blog/https-authentication-in-nginx/ |
HTTPS authentication in nginx
|
|
| /blog/ulint-universal-lint/ |
ulint, Universal Lint
|
|
| /blog/hsgrep-benchmarking/ |
HSGrep benchmarking
|
|
| /blog/hsgrep-sorted-grep-in-haskell/ |
HSGrep Sorted grep in Haskell
|
|
| /blog/git-pre-commit-hook-for-python-and-javascript/ |
git pre-commit hook for Python and Javascript
|
|
| /blog/haskell-and-vim/ |
Haskell and VIM
|
|
| /blog/they-broke-delicious/ |
They broke delicious
|
|
| /blog/http-client-in-haskell/ |
HTTP client in Haskell
|
|
| /blog/pylint.vim/ |
pylint.vim
|
|
| /blog/md5-vs-sha1-in-python/ |
MD5 vs SHA1 in Python
|
|
| /blog/sleepsort/ |
sleepsort
|
|
| /blog/javascript-templating-benchmark/ |
Javascript templating benchmark
|
|
| /blog/related-to...-andrew-lloyd-webber/ |
Related to... Andrew Lloyd Webber!
|
|
| /blog/get-registered-domain-in-python-and-javascript/ |
Get registered domain in Python and Javascript
|
|
| /blog/handling-an-iframe-from-the-inside/ |
Handling an iframe from the inside
|
|
| /blog/twill-revived/ |
twill revived
|
|
| /blog/year-2038-bug-in-mysql/ |
Year 2038 bug in MySQL
|
|
| /blog/sbcl-quicker-than-c/ |
SBCL quicker than C?
|
|
| /blog/find-hyperlinks-with-lisp/ |
Find hyperlinks with lisp
|
|
| /blog/lisp-threading-example/ |
lisp threading example
|
|
| /blog/simple-wordpress-api-lisp-client/ |
Simple Wordpress API lisp client
|
|
| /blog/missing-dec_0-and-friends-from-python-decimal/ |
Missing `Dec_0` and friends from Python Decimal
|
|
| /blog/wordpress-python-library/ |
Wordpress Python library
|
|
| /blog/editors-speed-on-opening-big-files/ |
Editors speed on opening big files
|
|
| /blog/trivial-terminal-speed-benchmark/ |
Trivial terminal speed benchmark
|
|
| /blog/surf-browser-hints--3/ |
surf browser hints -3
|
|
| /blog/installing-pcf-fonts-in-x/ |
Installing pcf fonts in X
|
|
| /blog/surf-browser-hints--2/ |
surf browser hints -2
|
|
| /blog/surf-browser-hints/ |
surf browser hints
|
|
| /blog/vim-and-python-comments/ |
vim and Python comments
|
|
| /blog/test-with-gnome-blog/ |
Test with gnome-blog
|
|
| /blog/qwerty-vs-dvorak-vs-colemak-to-edit-python-code/ |
qwerty vs dvorak vs colemak to edit Python code
|
|
| /blog/this-is-another-weblog-client-test/ |
This is another weblog client test
|
|
| /blog/tab-completion-in-python-shell/ |
Tab completion in Python shell
|
|
| /blog/memoize/ |
Memoize
|
|
| /blog/india/ |
India!
|
|
| /blog/iq-test/ |
IQ test
|
|
| /musings/photopedia/ |
Пустой анкор
|
|
| /blog/photopedia/ |
Photopedia
|
|
| /blog/empy/ |
EMpy
|
|
| /blog/numerical-computing-matlab-vs-python-+-numpy-+-weave/ |
Numerical computing Matlab vs Python + numpy + weave
|
|
| /blog/il-metodo/ |
Il Metodo
|
|
| /blog/google-docs/ |
Google Docs
|
|
| /blog/maestro/ |
Maestro
|
|
| /blog/ontologisches-beweis/ |
Ontologisches Beweis
|
|
| /blog/mi-vr-mi/ |
mi-vr-mi
|
|
Внешние ссылки
Кол-во: 1
Ссылки на сторонние сайты
?
Исходящие внешние ссылки передают часть ссылочного веса на чужие сайты. Ссылки на авторитетные ресурсы безопасны; ссылки на мусорные сайты могут навредить репутации страницы.
Внешних ссылок на странице 1 оптимально.
Показать внешние ссылки
| Url | Анкор |
|---|---|
| github.com |
Hugo ʕ•ᴥ•ʔ Bear
|
Конкуренты Готовность: 0%
Конкуренты в Яндексе
Кол-во: 0
Топ сайтов-конкурентов в Яндексе
?
Сайты, чаще всего появляющиеся в ТОПе Яндекса по запросам из семантического ядра этой страницы.
Мы не нашли у вас конкурентов в Яндексе. Сайт или очень молодой или плохо продвигается.
Конкурентов в ТОП-10 Яндекса не нашлось.
Конкуренты в Google
Кол-во: 0
Топ сайтов-конкурентов в Google
?
Сайты, чаще всего появляющиеся в ТОПе Google по запросам из семантического ядра этой страницы.
Конкуренты в Google тоже не найдены. Займитесь продвижением сайта!
Конкурентов в ТОП-10 Google не нашлось.
ЗоЗПП: права потребителей Готовность: 100%
Нарушения
Не выявлены
Признаков дистанционной продажи товаров (интернет-магазина) не обнаружено — требования ЗоЗПП о раскрытии информации продавца к сайту не применяются. Нарушений нет.
ФЗ-149: рекомендательные технологии Готовность: 100%
Нарушения
Не выявлены
Рекомендательные блоки («с этим покупают», «похожие товары» и т.п.) на сайте не обнаружены — требования ст. 10.7 ФЗ-149 к сайту не применяются. Нарушений нет.
ФЗ-38: реклама Готовность: 100%
Нарушения
Не выявлены
Рекламных тематик с обязательными оговорками (медицина, БАД, кредиты и займы, новостройки) на сайте не обнаружено. Нарушений нет.
ФЗ-436: защита детей Готовность: 100%
Нарушения
Не выявлены
Признаков информационной продукции (новости, видео, книги, игры, курсы) не обнаружено — обязательная возрастная маркировка по ФЗ-436 сайту не требуется. Нарушений нет.
Вердикт
Страница https://lbolla.info/tags/programming готова к продвижению на 64%. Чтобы еще улучшить страницу и попасть на первые места поисковой выдачи необходимо:
Исправьте ошибки в мета-тегах.
Исправьте ошибки оптимизации.
Исправьте ошибки индексации.
Поделитесь с друзьями: