Pull to refresh
9
0
Сергей @schebotar

User

Send message

Почтовый сервер с нуля. Часть первая

Level of difficultyMedium
Reading time17 min
Views31K

Очень часто на этапе стажировки новых сотрудников мы в нашей компании сталкиваемся с типичными простыми ошибками, непониманием работы DNS и почты. При этом обучение новых сотрудников по этой теме — достаточно длительный и сложный процесс, так как сами вопросы требуют построения сложных логических цепочек в голове у начинающего инженера. В один момент мы составили свою вики и схемы для обучения и решили поделиться этим опытом на Хабре в виде серии статей, чтобы людям, которые решили связать свою жизнь с IT вообще и администрированием в частности, стало проще. Материалы этой серии предназначены для начинающих администраторов.

В этом материале будет представлена связка полноценного почтового сервера в виде Exim4+Dovecot+PostfixAdmin+RainLoop.

Читать далее
Total votes 20: ↑19 and ↓1+18
Comments27

Как разработчику организовать личную базу знаний: систематизация информации из книг, статей, видео и курсов

Level of difficultyEasy
Reading time6 min
Views46K

Привет, Хабр!

Хочу поделиться своими мыслями и опытом («сыном ошибок трудных») в организации своей базы знаний, регулярно приобретаемых после прочтения разных книг, статей, просмотра видосов, прохождения курсов и прочих самообразовательных активностей.

Начнем с краткой предыстории, потом опишу сам подход в целом, далее пробежимся по нескольким вариантам реализации и в конце остановимся на том, что для меня оказалось самым оптимальным. 

Читать далее
Total votes 69: ↑67 and ↓2+80
Comments96

Когда хочешь красную таблетку: гайд по matrix

Reading time14 min
Views65K

В статье рассказывается о том, как использовать Matrix для повседневной переписки.

Статья написана для тех, кого не устраивают существующие мессенджеры и соцсети, и кто хочет найти им лучшую замену.

Предполагается, что вы знаете самые основы безопасного общения: не приклеиваете пароли на мониторе и не боитесь ключей шифрования.

Погружение в матрицу стоит начать с понятия федерации.

Погружаемся в matrix далее
Total votes 31: ↑31 and ↓0+31
Comments22

Serverless telegram бот в Excel

Level of difficultyEasy
Reading time7 min
Views7.2K

Это история про камингаут телеграм‑бота, у которого нет VDS и он бомжует: одной ногой — в гугло‑облаке, другой — в Excel.

Да, жизнь бывает сложнее учебника по ботоводству. Например, для целей ботоводства гугло‑облако все еще может выглядеть надежнее, проще и удобнее VDS. И если в мире людей не зазорно бомжевать по съемным хатам, то кто осудит бомжебота за отказ от VDS?

Не станем особо заморачиваться на сравнении преимуществ и недостатков хостинга с и без VDS. Только напомним не только лишь для школьников, что у гугло‑сервисов все еще весомые бесплатные лимиты и их датацентрам пока еще не грозят негативные последствия того‑чего‑нельзя‑называть.

Читать далее
Total votes 15: ↑15 and ↓0+15
Comments2

Фамильный вики-движок Bonsai: 6 лет спустя

Level of difficultyEasy
Reading time9 min
Views2.9K
Прошло шесть с лишним лет с момента, когда я начал работать над проектом Bonsai. Если в двух словах, то это вики-движок, заточенный под хранение семейной истории и построение генеалогических деревьев. Он распространяется в полностью открытом и бесплатном виде, подразумевая установку на ваш собственный сервер в качестве docker-контейнера.



Более подробно о его устройстве и истории создания можно почитать в моих предыдущих статьях 3+ годичной давности: раз, два. Изначально я планировал выпускать мажорную версию и писать про нее статью раз в год, но родительство и переезд вносят в планы изрядную долю хаоса. Тем не менее, проект все еще активен и развивается. Сегодня я расскажу о том, что было реализовано и улучшено за последнее время.
Читать дальше →
Total votes 14: ↑14 and ↓0+14
Comments21

Сказ о том, как я за год решил более 600 leetcode задач

Level of difficultyEasy
Reading time7 min
Views82K

Всем салют!

Хочу рассказать вам историю о том, как я начинал с уровня — «не могу решить даже 1 easy задачу из 10» до уровня — «могу решить каждую вторую medium задачу» и прошел несколько coding сессий в таких компаниях как Meta, Booking, Careem, Avito...

Читать далее
Total votes 122: ↑113 and ↓9+132
Comments407

Надоевшая почта или как отправлять сообщения с сайта в Telegram через Node.js (Express)

Reading time5 min
Views46K
logicSchema

После нескольких писем, отправленных с сайта себе на почту, понял что это достаточно неудобно, не современно (возможно), как минимум не прикольно. Задался целью отказаться от использования smtp для формы в пользу api Телеграма.

Так как мое приложение работает на ноде, подумал почему бы не прокачать форму. Общая логика до боли проста. При отправке формы делается запрос к api приложения, где хранится токен бота, обрабатываются данные и далее делается запрос к api телеграмма, который отправляет сообщение в чат.

Но давайте обо всем по порядку.
Читать дальше →
Total votes 28: ↑24 and ↓4+20
Comments15

Как сисадмин Денис составлял шпаргалку на всякий случай

Reading time5 min
Views54K


Когда мы познакомились с будущей женой, у неё были очень странные подруги. Одна подрабатывала на одной интересной «работе», другая разводила щенков на продажу. А ещё одна, выпускница милицейской академии, меняла парней как перчатки. Но однажды привела не актёра или музыканта, как обычно, а весёлого мужичка лет на пятнадцать старше нас. Наверное, у девочки проснулся комплекс, связанный с отсутствием отца, такое иногда бывает.

Мужичок представился Денисом. Оказалось, он работает сисадмином в школе и лютый фанат убунты. Но только дома. Потому что в школе вынужден ставить детям «поганую винду», от чего его сильно мучает совесть.

На этом месте стало интересно…
Читать дальше →
Total votes 58: ↑56 and ↓2+77
Comments159

Понимаем с полуслова: как работает поиск товаров в СберМаркете

Reading time7 min
Views3K

Всем привет! Меня зовут Аня Власова. Я работаю ML-инженером в команде Поиска СберМаркета. В этой статье я расскажу, как устроены наши процессы: с момента, когда пользователь вводит запрос, до получения поисковой выдачи. Если вы разрабатываете поиск или просто интересуетесь темой, то наверняка сможете найти интересные инсайты для своей работы.

Коротко о том, что вас ждет:

- Зоны ответственности команды Поиска;

- Как мы отбираем кандидатов для отображения их в поисковой выдаче;

- Финальное ранжирование товаров ml моделью.

7 из 10 товаров в СберМаркете добавляются в корзину именно из Поиска, так что даже маленькие изменения в наших продуктах оказывают большой и видимый эффект на бизнес. Именно поэтому мы уделяем много внимания постоянному улучшению наших решений и уже добились хороших результатов. Надеюсь, что вы почерпнете что-то новое из нашего кейса и сможете применить это в своей работе. Поехали!

Читать далее
Total votes 15: ↑14 and ↓1+13
Comments18

Пингвин расставил сети: работа сети в Linux

Level of difficultyEasy
Reading time46 min
Views17K

Всем привет! С вами снова я, Аргентум! Сегодня я продолжу нашу серию статей об ядре Linux.

В этой статье мы будем изучать способ организации сети в мире серверов и то, как она эволюционировала от использования традиционного сетевого стека ядра Linux к виртуализации сети с использованием OVS и к обработке нагрузки телекоммуникационных компаний с использованием NFV и SR-IOV.

Читать далее
Total votes 12: ↑10 and ↓2+13
Comments5

Свободная музыка со словами, созданная нейронными сетями в «Бесконечном нейронном радио»

Level of difficultyEasy
Reading time3 min
Views7.4K

Привет, поклонники музыки! Думали ли вы о том, что наступит день, когда нейронные сети начнут генерировать музыкальные композиции в различных жанрах, начиная от Heavy Metal и заканчивая 80-ми? Недавно я выпустил большой апдейт для своего проекта с открытым исходным кодом «Нейронное радио», где музыка и подкасты созданы нейронными сетями. Однако в первых релизах музыка была без слов, и, мягко говоря, слабая. Но сегодня все изменилось. Качество музыки улучшилось, и появилась музыка со словами и голосами под жанры.

Послушать подробнее
Total votes 22: ↑21 and ↓1+23
Comments22

K8S для начинающих. Первая часть

Reading time10 min
Views181K

Технологический прогресс не стоит на месте, особенно если это касается области IT. Еще в 2014 году, когда Google открыл исходный код проекта Kubernetes, который вобрал в себя лучшее из Borg и Omega - внутренних систем Google, его мало кто знал и использовал. Но прошло 7 лет и K8S (он же Kubernetes) стал успешным open-source проектом, который используется по всему миру. В большинстве компаний инфраструктура построена на K8S - от маленьких проектов до огромных кластеров и облаков, которые обеспечивают бесперебойную доступность сервисов. Давайте коснемся Kubernetes и расскажем, как им пользоваться на практике. Но сначала надо спросить, а что такое этот ваш Kubernetes и для чего он собственно нужен. Подойдет ли он для ваших проектов.

Читать далее
Total votes 16: ↑15 and ↓1+15
Comments1

Так что же такое pod в Kubernetes?

Reading time6 min
Views73K
Прим. перев.: Эта статья продолжает цикл материалов от технического писателя из Google, работающего над документацией для Kubernetes (Andrew Chen), и директора по software engineering из SAP (Dominik Tornow). Их цель — доступно и наглядно объяснить основы организации Kubernetes. В прошлый раз мы переводили статью про high availability, а теперь речь пойдет про такое базовое понятие в Kubernetes, как pod.



Kubernetes — движок оркестровки контейнеров, созданный для запуска контейнеризированных приложений на множестве узлов, которые обычно называют кластером. В этих публикациях мы используем подход системного моделирования с целью улучшить понимание Kubernetes и его нижележащих концепций. Читающим рекомендуется уже иметь базовое представление о Kubernetes.

Pods (Поды) — базовые строительные блоки Kubernetes, однако даже опытные пользователи Kubernetes не всегда могут объяснить, что же это такое.

Данная публикация предлагает лаконичную мысленную модель, которая проливает свет на определяющие характеристики pod'ов Kubernetes. Ради этой краткости пришлось опустить некоторые другие особенности Pod'ов, такие как liveness и readiness probes, разделение ресурсов (включая появившееся недавно namespace sharingприм. перев.), работу с сетью.
Читать дальше →
Total votes 33: ↑30 and ↓3+27
Comments9

Существуют ли джуниор-DevOps-инженеры и почему их ищут

Level of difficultyEasy
Reading time7 min
Views12K

Привет! Меня зовут Сергей, я занимаюсь направлением DevOps в KTS. Сегодня поговорим о том, существуют ли джуниоры в DevOps-разработке — и какими они должны быть.

Читать далее
Total votes 31: ↑28 and ↓3+26
Comments4

Как на самом деле Async/Await работают в C#. Часть 1. Проблемы модели асинхронного программирования (APM)

Level of difficultyHard
Reading time13 min
Views18K

Это перевод первой главы из поста How Async/Await Really Works in C#

Этот пост .Net блога является продолжением исходного поста, глубоко погружающим в историю, приведшую к созданию конструкций async/await и стоящие за этим дизайнерские решения и детали реализации async/await в C# и .NET.

Исходный пост What is .NET, and why should you choose it? предоставляет обзор платформы на высоком-уровне, перечисляя различные компоненты и решения на уровне дизайна, и предваряя последующие посты в глубину обозначенных тем.

Ссылки в развитие темы:

1. Часть 2 Артефакты от EAP шаблона, SynchronizationContext

2. Уроки по асинхронному программированию из первой половины работы

3. Параллельные вычисления — Все дело в контексте-синхронизации (SynchronizationContext)

4. Async/Await из C#. Головоломка для разработчиков компилятора и для нас

Читать далее
Total votes 10: ↑7 and ↓3+4
Comments12

Обзор одноцелевых дистрибутивов Linux

Level of difficultyMedium
Reading time10 min
Views21K
image

Многие из тех, кто устанавливает дистрибутив Linux для одной-единственной цели, например, для работы с контейнерами, предпочитают развёртывание по принципу «поставил и забыл». На конференции FOSDEM 2023, состоявшейся в Брюсселе, было представлено несколько проектов из разряда таких «минимальных дистрибутивов Linux». Все они — Fedora CoreOSUbuntu CoreopenSUSE MicroOS и Bottlerocket OS – решают такие задачи по-своему. Из выступлений на FOSDEM можно составить интересную перспективу, демонстрирующую, в чём эти проекты отличаются на уровне применяемых подходов.
Читать дальше →
Total votes 21: ↑20 and ↓1+30
Comments5

Роадмэп по современному фронтенду от KTS

Level of difficultyEasy
Reading time25 min
Views43K

Эта статья — цельный план развития во фронтенде. Расскажем, что из себя представляет современный фронтенд и какие знания нужны для востребованности на рынке труда.

Статья подойдет как для начинающих специалистов, так и для более опытных, которые хотели бы получить какой-то ориентир для дальнейшего развития.

К статье прилагается роадмэп, который можно скачать, изучать, распечатать.

Читать далее
Total votes 47: ↑47 and ↓0+47
Comments14

Понимаем обычное дерево отрезков

Level of difficultyMedium
Reading time13 min
Views12K

Всем привет! Изучив несколько статей по этой теме, у меня остались вопросы, и некоторые моменты по-прежнему были не понятны, поэтому я решил написать свою, которая, как мне кажется, была бы понятна тем, кто не силен в спортивном программировании. В ней я объясняю, как устроено дерево отрезков. Примеры с кодом будут приведены на языке C++, однако на объяснение это не влияет.

Читать далее
Total votes 20: ↑19 and ↓1+24
Comments4

Оптимизируем шрифты и ускоряем сайт на 5-12%

Level of difficultyEasy
Reading time8 min
Views12K

Описываем способы максимально ускорить загрузку шрифтов на сайте.

Развенчиваем мифы и разбираем ошибки. В статье вас ждут полезные онлайн сервисы для ускорения работы.

Читать далее
Total votes 14: ↑13 and ↓1+16
Comments24

GOST: швейцарский нож для туннелирования и обхода блокировок

Level of difficultyMedium
Reading time13 min
Views99K

Начиная со вчера Роскмонадзор запрещает писать про инструменты для обхода блокировок, и это событие мы отметим очередной статьей про инструменты для обхода блокировок. Ибо не им указывать, на какие темы мне писать или не писать, пусть идут строем нафиг.

Сегодня я расскажу о замечательном инструменте под названием GOST. Не пугайтесь, он не имеет никакого отношения к ГОСТ-шифрованию или чему-то подобному, на самом деле это Go Simple Tunnel. Он действительно simple (простой) в использовании и настройке, но при этом невероятно мощный, поскольку поддерживает огромное количество протоколов и транспортов, из которых вы при желании сможете построить самые упоротые и бронебойные комбинации, а именно...

Читать далее
Total votes 145: ↑142 and ↓3+174
Comments113

Information

Rating
Does not participate
Location
Россия
Registered
Activity

Specialization

Backend Developer, Application Developer
Intern
From 35,000 ₽
Git
Linux
Docker
OOP
C#
.NET
ASP.NET MVC
ASP.Net
Database