0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<ul><li><a>Django-аутентификация: просто о сложном</a></li>
1
<ul><li><a>Django-аутентификация: просто о сложном</a></li>
2
<li><a>Триггеры в PostgreSQL: основы</a></li>
2
<li><a>Триггеры в PostgreSQL: основы</a></li>
3
<li><a>Где PostgreSQL выигрывает у Oracle DB</a></li>
3
<li><a>Где PostgreSQL выигрывает у Oracle DB</a></li>
4
<li><a>cgroups и namespaces в Linux: как это работает?</a></li>
4
<li><a>cgroups и namespaces в Linux: как это работает?</a></li>
5
<li><a>Стартер-пак книг для продуктового аналитика (и не только)</a></li>
5
<li><a>Стартер-пак книг для продуктового аналитика (и не только)</a></li>
6
<li><a>Прогреваем k8s cache: оптимизация загрузки образов размером 3 ГБ и запуск 1000 POD’ов за секунды</a></li>
6
<li><a>Прогреваем k8s cache: оптимизация загрузки образов размером 3 ГБ и запуск 1000 POD’ов за секунды</a></li>
7
<li><a>Статистические критерии и доверительные интервалы</a></li>
7
<li><a>Статистические критерии и доверительные интервалы</a></li>
8
<li><a>Ваш первый A/B-тест: гайд для тех, кто ещё ничего не пробовал</a></li>
8
<li><a>Ваш первый A/B-тест: гайд для тех, кто ещё ничего не пробовал</a></li>
9
<li><a>Препарируем слои образов Docker</a></li>
9
<li><a>Препарируем слои образов Docker</a></li>
10
<li><a>Ускоряем PostgreSQL с помощью Tuned</a></li>
10
<li><a>Ускоряем PostgreSQL с помощью Tuned</a></li>
11
<li><a>Хороший рефакторинг vs плохой рефакторинг</a></li>
11
<li><a>Хороший рефакторинг vs плохой рефакторинг</a></li>
12
<li><a>Пара слов о вредоносном ПО для Linux и способах защиты вашей системы</a></li>
12
<li><a>Пара слов о вредоносном ПО для Linux и способах защиты вашей системы</a></li>
13
<li><a>Как awk заменяет 10 команд Bash</a></li>
13
<li><a>Как awk заменяет 10 команд Bash</a></li>
14
<li><a>Task изнутри: управление потоками в .NET и создание своих планировщиков</a></li>
14
<li><a>Task изнутри: управление потоками в .NET и создание своих планировщиков</a></li>
15
<li><a>Динамические SQL-запросы в PostgreSQL: когда, зачем и как</a></li>
15
<li><a>Динамические SQL-запросы в PostgreSQL: когда, зачем и как</a></li>
16
<li><a>Мастерство работы с Java Stream</a></li>
16
<li><a>Мастерство работы с Java Stream</a></li>
17
<li><a>Что такое переобучение и как его избежать: основы</a></li>
17
<li><a>Что такое переобучение и как его избежать: основы</a></li>
18
</ul><h2>Django-аутентификация: просто о сложном</h2>
18
</ul><h2>Django-аутентификация: просто о сложном</h2>
19
<p>Аутентификация является фундаментальной частью любого веб-приложения. Мы рассмотрим различные способы реализации аутентификации в Django, начиная от стандартных методов и заканчивая более крутыми техниками, например как 2FA и OAuth2.</p>
19
<p>Аутентификация является фундаментальной частью любого веб-приложения. Мы рассмотрим различные способы реализации аутентификации в Django, начиная от стандартных методов и заканчивая более крутыми техниками, например как 2FA и OAuth2.</p>
20
<p><a>Читать далее</a></p>
20
<p><a>Читать далее</a></p>
21
<h2>Триггеры в PostgreSQL: основы</h2>
21
<h2>Триггеры в PostgreSQL: основы</h2>
22
<p>В этой статье поговорим про триггеры в PostgreSQL. Начнём с базы: триггер в PostgreSQL - это такая функция, которая запускается автоматически при определённом событии в таблице. С триггерами можно автоматизировать массу рутины и освободить приложение от сложных проверок и вычислений, но это палка о двух концах.</p>
22
<p>В этой статье поговорим про триггеры в PostgreSQL. Начнём с базы: триггер в PostgreSQL - это такая функция, которая запускается автоматически при определённом событии в таблице. С триггерами можно автоматизировать массу рутины и освободить приложение от сложных проверок и вычислений, но это палка о двух концах.</p>
23
<p><a>Читать далее</a></p>
23
<p><a>Читать далее</a></p>
24
<h2>Где PostgreSQL выигрывает у Oracle DB</h2>
24
<h2>Где PostgreSQL выигрывает у Oracle DB</h2>
25
<p>Если вы стоите перед выбором между PostgreSQL и Oracle DB, то эта статья для вас. Разберем где PostgreSQL побеждает Oracle. Будет код и примеры - всё, что нужно для практического сравнения.</p>
25
<p>Если вы стоите перед выбором между PostgreSQL и Oracle DB, то эта статья для вас. Разберем где PostgreSQL побеждает Oracle. Будет код и примеры - всё, что нужно для практического сравнения.</p>
26
<p>P.S: эта статья не про то, какой PSQL хороший в отличии от Oracle, а про то, в чем PSQL по мнению автора лучше.</p>
26
<p>P.S: эта статья не про то, какой PSQL хороший в отличии от Oracle, а про то, в чем PSQL по мнению автора лучше.</p>
27
<p><a>Читать далее</a></p>
27
<p><a>Читать далее</a></p>
28
<h2>cgroups и namespaces в Linux: как это работает?</h2>
28
<h2>cgroups и namespaces в Linux: как это работает?</h2>
29
<p>В этой статье рассмотрим изоляции процессов и управления ресурсами в Linux, изучив возможности cgroups и namespaces. Разберёмся, как работают контейнеры изнутри и научимся создавать собственное изолированное окружение без Docker.</p>
29
<p>В этой статье рассмотрим изоляции процессов и управления ресурсами в Linux, изучив возможности cgroups и namespaces. Разберёмся, как работают контейнеры изнутри и научимся создавать собственное изолированное окружение без Docker.</p>
30
<p><a>Читать далее</a></p>
30
<p><a>Читать далее</a></p>
31
<h2>Стартер-пак книг для продуктового аналитика (и не только)</h2>
31
<h2>Стартер-пак книг для продуктового аналитика (и не только)</h2>
32
<p>Автор недавно общался с одной командой аналитиков и обсуждали, что бы можно было порекомендовать тем, кто хочет прокачаться в продуктовой аналитике. Вспоминали кейсы, делились историями "до" и "после" прочтения некоторых книг. Так вот, этот список - это не просто <em>"лучшие бестселлеры по версии Google"</em>, а те книги, которые изменили подход меня и моих коллег к работе.</p>
32
<p>Автор недавно общался с одной командой аналитиков и обсуждали, что бы можно было порекомендовать тем, кто хочет прокачаться в продуктовой аналитике. Вспоминали кейсы, делились историями "до" и "после" прочтения некоторых книг. Так вот, этот список - это не просто <em>"лучшие бестселлеры по версии Google"</em>, а те книги, которые изменили подход меня и моих коллег к работе.</p>
33
<p><a>Читать далее</a></p>
33
<p><a>Читать далее</a></p>
34
<h2>Прогреваем k8s cache: оптимизация загрузки образов размером 3 ГБ и запуск 1000 POD’ов за секунды</h2>
34
<h2>Прогреваем k8s cache: оптимизация загрузки образов размером 3 ГБ и запуск 1000 POD’ов за секунды</h2>
35
<p><strong>Проблема</strong>: при обновлении k8s кластера не менее половины POD’в застряли в состоянии ContainerCreating из-за длительной загрузки и распаковки образов размером примерно 3 ГБ.</p>
35
<p><strong>Проблема</strong>: при обновлении k8s кластера не менее половины POD’в застряли в состоянии ContainerCreating из-за длительной загрузки и распаковки образов размером примерно 3 ГБ.</p>
36
<p>Для решения этой проблемы в корне (не только кейс с обновлением) предложена стратегия предварительного прогрева узлов кластера:</p>
36
<p>Для решения этой проблемы в корне (не только кейс с обновлением) предложена стратегия предварительного прогрева узлов кластера:</p>
37
<ol><li>Создание отдельной группы узлов для каждой feature-ветки (FB): Это обеспечило изоляцию и гибкость, позволяя легко изменять тип узлов.</li>
37
<ol><li>Создание отдельной группы узлов для каждой feature-ветки (FB): Это обеспечило изоляцию и гибкость, позволяя легко изменять тип узлов.</li>
38
<li>Загрузка базовых образов через cloud-init: При запуске новых узлов с помощью<a>скрипта</a>cloud-init автоматически загружаются необходимые базовые образы, что снижало нагрузку при последующем развертывании.</li>
38
<li>Загрузка базовых образов через cloud-init: При запуске новых узлов с помощью<a>скрипта</a>cloud-init автоматически загружаются необходимые базовые образы, что снижало нагрузку при последующем развертывании.</li>
39
<li>Использование DaemonSet с initContainers: Перед основным развертыванием запускался DaemonSet с initContainers, которые последовательно загружали необходимые образы на узлы, предотвращая проблемы с сверхутилизацией дисков и ускоряя запуск POD’ов.</li>
39
<li>Использование DaemonSet с initContainers: Перед основным развертыванием запускался DaemonSet с initContainers, которые последовательно загружали необходимые образы на узлы, предотвращая проблемы с сверхутилизацией дисков и ускоряя запуск POD’ов.</li>
40
</ol><p><a>Читать далее</a></p>
40
</ol><p><a>Читать далее</a></p>
41
<h2>Статистические критерии и доверительные интервалы</h2>
41
<h2>Статистические критерии и доверительные интервалы</h2>
42
<p>В этой статье поговорим о том, как понять, работает ли ваша новая фича или это просто случайный всплеск. Разберемся, что такое статистические критерии, доверительные интервалы, и как их использовать, чтобы принимать обоснованные решения.</p>
42
<p>В этой статье поговорим о том, как понять, работает ли ваша новая фича или это просто случайный всплеск. Разберемся, что такое статистические критерии, доверительные интервалы, и как их использовать, чтобы принимать обоснованные решения.</p>
43
<p><a>Читать далее</a></p>
43
<p><a>Читать далее</a></p>
44
<h2>Ваш первый A/B-тест: гайд для тех, кто ещё ничего не пробовал</h2>
44
<h2>Ваш первый A/B-тест: гайд для тех, кто ещё ничего не пробовал</h2>
45
<p>Если вы слышите "AB‑тесты" и у вас в голове возникает что‑то вроде "да, я это где‑то видел, но понятия не имею, как работает", то эта статья - для вас. Я объясню, что такое AB‑тесты, зачем они нужны, какие инструменты использовать и как их настроить, чтобы результат был не просто для галочки, а действительно полезным.</p>
45
<p>Если вы слышите "AB‑тесты" и у вас в голове возникает что‑то вроде "да, я это где‑то видел, но понятия не имею, как работает", то эта статья - для вас. Я объясню, что такое AB‑тесты, зачем они нужны, какие инструменты использовать и как их настроить, чтобы результат был не просто для галочки, а действительно полезным.</p>
46
<p><a>Читать далее</a></p>
46
<p><a>Читать далее</a></p>
47
<h2>Препарируем слои образов Docker</h2>
47
<h2>Препарируем слои образов Docker</h2>
48
<p>Технологии контейнеризации сейчас являются неотъемлемой частью процессов DevOps. Контейнеры активно используются в микросервисных архитектурах для изоляции отдельных микросервисов. Наиболее распространенным решением по контейнеризации на сегодняшний день является Docker, и именно о небезопасной работе с контейнерами Docker мы и будем сегодня говорить.</p>
48
<p>Технологии контейнеризации сейчас являются неотъемлемой частью процессов DevOps. Контейнеры активно используются в микросервисных архитектурах для изоляции отдельных микросервисов. Наиболее распространенным решением по контейнеризации на сегодняшний день является Docker, и именно о небезопасной работе с контейнерами Docker мы и будем сегодня говорить.</p>
49
<p><a>Читать далее</a></p>
49
<p><a>Читать далее</a></p>
50
<h2>Ускоряем PostgreSQL с помощью Tuned</h2>
50
<h2>Ускоряем PostgreSQL с помощью Tuned</h2>
51
<p>Администраторам баз данных всегда хочется, чтобы их СУБД работали быстрее. Всегда кажется, что можно прооптимизировать определенные настройки, и запросы начнут отрабатывать быстрее.</p>
51
<p>Администраторам баз данных всегда хочется, чтобы их СУБД работали быстрее. Всегда кажется, что можно прооптимизировать определенные настройки, и запросы начнут отрабатывать быстрее.</p>
52
<p>Есть множество различных параметров и настроек, которые позволяют оптимизировать работу БД PostgreSQL. В этой статье мы не будем пытаться охватить их все и поговорим об оптимизации параметров<a>операционной</a>и файловой систем, а также памяти на самом сервере СУБД.</p>
52
<p>Есть множество различных параметров и настроек, которые позволяют оптимизировать работу БД PostgreSQL. В этой статье мы не будем пытаться охватить их все и поговорим об оптимизации параметров<a>операционной</a>и файловой систем, а также памяти на самом сервере СУБД.</p>
53
<p><a>Читать далее</a></p>
53
<p><a>Читать далее</a></p>
54
<h2>Хороший рефакторинг vs плохой рефакторинг</h2>
54
<h2>Хороший рефакторинг vs плохой рефакторинг</h2>
55
<p>За последние годы я нанял многих разработчиков. И не раз случалось, что новички сразу заявляли, что наш код требует серьёзного рефакторинга. Но вот в чём дело: во многих случаях их "улучшенный" код оказывался сложнее для понимания и сопровождения. Более того, он обычно становился медленнее и содержал больше багов.</p>
55
<p>За последние годы я нанял многих разработчиков. И не раз случалось, что новички сразу заявляли, что наш код требует серьёзного рефакторинга. Но вот в чём дело: во многих случаях их "улучшенный" код оказывался сложнее для понимания и сопровождения. Более того, он обычно становился медленнее и содержал больше багов.</p>
56
<p>Не поймите меня неправильно. Рефакторинг - это не что-то плохое само по себе. Это важная часть поддержания кода в хорошем состоянии. Проблема в том, что <em>плохой рефакторинг</em> это действительно плохо. И, к сожалению, попасть в ловушку "хотели как лучше, а получилось как всегда" проще, чем кажется.</p>
56
<p>Не поймите меня неправильно. Рефакторинг - это не что-то плохое само по себе. Это важная часть поддержания кода в хорошем состоянии. Проблема в том, что <em>плохой рефакторинг</em> это действительно плохо. И, к сожалению, попасть в ловушку "хотели как лучше, а получилось как всегда" проще, чем кажется.</p>
57
<p>Давайте разберёмся, что отличает хороший рефакторинг от плохого и как не стать тем разработчиком, которого коллеги боятся подпускать к коду.</p>
57
<p>Давайте разберёмся, что отличает хороший рефакторинг от плохого и как не стать тем разработчиком, которого коллеги боятся подпускать к коду.</p>
58
<p><a>Читать далее</a></p>
58
<p><a>Читать далее</a></p>
59
<h2>Пара слов о вредоносном ПО для Linux и способах защиты вашей системы</h2>
59
<h2>Пара слов о вредоносном ПО для Linux и способах защиты вашей системы</h2>
60
<p>Если вы следите за последними новостями в области IT‑безопасности, то, возможно, заметили рост числа атак на сетевую инфраструктуру Linux‑систем. Среди основных разновидностей вредоносного ПО, о которых вы должны знать, можно выделить Cloud Snooper, EvilGnome, HiddenWasp, QNAPCrypt, GonnaCry, FBOT и Tycoon.</p>
60
<p>Если вы следите за последними новостями в области IT‑безопасности, то, возможно, заметили рост числа атак на сетевую инфраструктуру Linux‑систем. Среди основных разновидностей вредоносного ПО, о которых вы должны знать, можно выделить Cloud Snooper, EvilGnome, HiddenWasp, QNAPCrypt, GonnaCry, FBOT и Tycoon.</p>
61
<p>Linux считается очень безопасной операционной системой, но эти угрозы безопасности облачной инфраструктуры могут заставить пользователей сомневаться в защищенности вашей компании как таковой. В этой статье мы хотим поговорить о текущей ситуации с Linux‑угрозами, дать краткий экскурс в историю вредоносного ПО для Linux и пролить свет на другие связанные проблемы, которые могут возникнуть у пользователей.</p>
61
<p>Linux считается очень безопасной операционной системой, но эти угрозы безопасности облачной инфраструктуры могут заставить пользователей сомневаться в защищенности вашей компании как таковой. В этой статье мы хотим поговорить о текущей ситуации с Linux‑угрозами, дать краткий экскурс в историю вредоносного ПО для Linux и пролить свет на другие связанные проблемы, которые могут возникнуть у пользователей.</p>
62
<p><a>Читать далее</a></p>
62
<p><a>Читать далее</a></p>
63
<h2>Как awk заменяет 10 команд Bash</h2>
63
<h2>Как awk заменяет 10 команд Bash</h2>
64
<p>Когда только автор начинал работать с Linux, каждую задачу обрабатывал через кучку пайпов. Потом его коллега сказал ему: "Завязывай с этим, попробуй awk". И автор попробовал. И это действительно удобно. В этой статье он рассказывает, как awk может заменить несколько привычных команд bash.</p>
64
<p>Когда только автор начинал работать с Linux, каждую задачу обрабатывал через кучку пайпов. Потом его коллега сказал ему: "Завязывай с этим, попробуй awk". И автор попробовал. И это действительно удобно. В этой статье он рассказывает, как awk может заменить несколько привычных команд bash.</p>
65
<p><a>Читать далее</a></p>
65
<p><a>Читать далее</a></p>
66
<h2>Task изнутри: управление потоками в .NET и создание своих планировщиков</h2>
66
<h2>Task изнутри: управление потоками в .NET и создание своих планировщиков</h2>
67
<p>В этой статье поговорим о том, как работают задачи в .NET, зачем может понадобиться собственный TaskScheduler и как его реализовать.</p>
67
<p>В этой статье поговорим о том, как работают задачи в .NET, зачем может понадобиться собственный TaskScheduler и как его реализовать.</p>
68
<p><a>Читать далее</a></p>
68
<p><a>Читать далее</a></p>
69
<h2>Динамические SQL-запросы в PostgreSQL: когда, зачем и как</h2>
69
<h2>Динамические SQL-запросы в PostgreSQL: когда, зачем и как</h2>
70
<p>В этой статье поговорим о мощной штуке в PostgreSQL, которая одновременно помогает и открывает портал в ад: динамические SQL‑запросы. Динамика - это когда SQL собирается на лету, а не пишется заранее статичным текстом. Звучит неплохо, но при неправильном подходе легко превращается в катастрофу.</p>
70
<p>В этой статье поговорим о мощной штуке в PostgreSQL, которая одновременно помогает и открывает портал в ад: динамические SQL‑запросы. Динамика - это когда SQL собирается на лету, а не пишется заранее статичным текстом. Звучит неплохо, но при неправильном подходе легко превращается в катастрофу.</p>
71
<p><a>Читать далее</a></p>
71
<p><a>Читать далее</a></p>
72
<h2>Мастерство работы с Java Stream</h2>
72
<h2>Мастерство работы с Java Stream</h2>
73
<p>В этой статье рассмотрим, как использовать Stream для написания более элегантного кода на Java на основе нескольких примеров, а также кратко описали фактическую роль каждого API. </p>
73
<p>В этой статье рассмотрим, как использовать Stream для написания более элегантного кода на Java на основе нескольких примеров, а также кратко описали фактическую роль каждого API. </p>
74
<p><a>Читать далее</a></p>
74
<p><a>Читать далее</a></p>
75
<h2>Что такое переобучение и как его избежать: основы</h2>
75
<h2>Что такое переобучение и как его избежать: основы</h2>
76
<p>Если вы только начинаете свой путь в машинном обучении или уже успели столкнуться с его непредсказуемыми сюрпризами, то эта статья для тех, кто хочет понять и победить переобучение (оно же <em>overfitting</em>).</p>
76
<p>Если вы только начинаете свой путь в машинном обучении или уже успели столкнуться с его непредсказуемыми сюрпризами, то эта статья для тех, кто хочет понять и победить переобучение (оно же <em>overfitting</em>).</p>
77
<p><a>Читать далее</a></p>
77
<p><a>Читать далее</a></p>
78
<a></a>
78
<a></a>