Вдохновившись статьёй для английских книг, решил проверсти аналогичный анализ для русских произведений. Преподаватель английского языка автора оригинальной статьи утверждал, что прочитав 20 страниц любой книги можно узнать 90% всех слов произведения и далее читать книгу будет значительно проще. В этой статье я хочу проверить аналогичное утверждение для русского языка: сколько страниц необходимо прочитать, чтобы узнать 90% книги. Спойлер: прочитав 20 страниц книги вы практически наверняка не узнаете 90% всех слов.

Continue reading

Наткнулся буквально только что, но, думаю, проблема известная: при запуске из консоли команды jupyter notebookбраузер запускается, но при открытии блокнота намертво зависает. Казалось бы, в чём может быть проблема, если только что на другом комьютере всё работало отлично? Однако, внимательный поиск в Googleмоей любимой поисковой системе натолкнул на мысль, что дело может быть в размере этого блокнота (на момент обнаружения проблемы блокнот дорос до 21Мб). Для проверки этой догадки получил одну из первых версий этого блокнота из VSC (около 200Кб).

Continue reading

Некоторые люди на React Conf спрашивали у меня о том, как улучшить свои навыки программиста. По некоторым причинам люди видят во мне продвинутого программиста, которого следует прислушиваться. Я подумал, что стоит написать статью о моей “мыслительной модели” того, как я подхожу к программированию в течение лет. Расскажу немного о себе: мне 32 года и у меня за спиной более 10 лет стажа. Но только в последние несколько лет я действительно начал чувствовать уверенность в том, что я делаю.

Continue reading

В продолжение темы про конфигурационные файлы, остановлюсь на формате .INI. .INI - формат конфигурационных файлов, применяемый, в основном в ОС Windows. Тем не менее, ничто не мешает его использовать и в других окружениях. Данный формат значительно проще, чем рассмотренные ранее TOML и YAML, но в некоторых (на самом деле большинстве, как мне кажется) случаях, его возможностей может оказаться достаточно. Синтаксис INI файлы имеют понятный синтаксис и имеют простой для чтения и изменения человеком формат.

Continue reading

В продолжение темы про конфигурационные файлы, взглянем на более распространённый формат YAML. YAML (YAML Ain’t Markup Language) - это надмножество над JSON с упрощенным синтаксисом. Синтаксис Основные типы Аналогично TOML, про который я писал ранее, в YAML можно использовать различные типы данных: # Комментарии начинаются со знака "#" # Пары ключ-значение разделяются через ":" # Строки, как значения, могут быть заключены в кавычки (одинарные, двойные), # но не обязаны key: значение another_key: еще одно значение # Числа можно использовать в экспоненциальной форме a_number_value: 100 scientific_notation: 1e+12 # Логические значения требуется записывать как true или false.

Continue reading

Если вы в IT более 15 минут, то должны знать, что практически каждая программа зависит от некоторых внешних переменных. Например, как я писал в статье про разработку бота для Telegram, к ним можно отнести API- ключи внешних сервисов, используемых в вашем приложении; строки подключения к базе данных; список RSS-лент; список e-mail для каких-либо уведомлений и прочее. Самый простой способ - прописать эти переменные явно в коде, но в этом случае есть недостатки:

Continue reading

После того, как бот был написан, прокачан и опубликован (на vscale или на heroku, например) возникает вопрос отслеживания того, как пользователи с ним общаются. Для этих целей можно воспользоваться, например, решением botan.io от Yandex. Botan - обёртка над AppMetric - версии Метрики для мобильных приложений. Платформа позволяет собирать большинство событий бота и отображать их в панели Метрики (со всеми доступными отчётами). Сейчас ботан умеет работать только с ботами для Telegram, но мне этого вполне достаточно.

Continue reading

Author's picture

feeeper

Разработчик enterprise-решений на .NET. В свободное время пишу на golang, python. Немного развлекаюсь с ML/DS.

Software developer

Russia