Друзья, мы хотим делать для вас самый лучший контент — и для этого нам нужно узнать вас получше.
Пожалуйста, ответьте на несколько вопросов — это не займет у вас много времени, но поможет нам делать более полезные и интересные посты!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍2
Ваш возраст:
Anonymous Poll
2%
Менее 18 лет
16%
18-24 года
40%
25-34 года
32%
35-44 года
7%
45-54 года
1%
55-64 года
2%
65 лет и старше
В каком городе вы живете последние 3 месяца?
Anonymous Poll
18%
Москва
9%
Санкт-Петербург
3%
Краснодар
1%
Нижний Новгород
4%
Минск
3%
Екатеринбург
2%
Киев
1%
Львов
2%
Алматы
55%
Другое
В какой стране вы живете последние 3 месяца?
Anonymous Poll
62%
Россия
7%
Украина
5%
Беларусь
3%
Казахстан
2%
Польша
1%
Кыргызстан
2%
Узбекистан
1%
США
1%
Грузия
15%
Другое
Ваш доход в месяц после налогов:
Anonymous Poll
9%
до $500
9%
от $501 до $800
12%
от $801 до $1100
22%
от $1101 до $2000
18%
от $2001 до $3000
14%
от $3001 до $4000
5%
от $4001 до $5001
3%
от $5001 до $6000
7%
от $6001
Какой у вас коммерческий опыт работы в IT?
Anonymous Poll
48%
от 6 лет
19%
от 3 до 6 лет включительно
20%
от 1 до 3 лет включительно
5%
до 1 года
8%
нет опыта
На каком языке программирования вы пишете больше всего?
Anonymous Poll
41%
Python
11%
Go
7%
Java
3%
JavaScript
1%
TypeScript
3%
C/C++
6%
С#
0%
Kotlin/Swift
3%
PHP
23%
Другой
Какая ваша специализация в IT?
Anonymous Poll
15%
Backend
1%
Frontend
7%
Fullstack
0%
Mobile
2%
Desktop
58%
DevOps/Sysadmin
2%
QA
1%
Data Science
4%
Кибербезопасность
10%
Другое
Какой грейд у вас на работе?
Anonymous Poll
4%
Стажер
13%
Джуниор
35%
Миддл
19%
Сеньор
11%
Тимлид
5%
Архитектор
4%
СТО
8%
я не в IT
💪🤓 Поднимаем домашний сервер со своим доменом
Тема не претендует на звание открытие месяца, но автор очень доступным языком все толкует, что начинающим будет весьма полезно узнать про DNS, OpenVPN, сети, маршрутизацию, Linux и прочие околотематические штуки. Приятного просмотра 😉
Смотреть видео
#гайд
Тема не претендует на звание открытие месяца, но автор очень доступным языком все толкует, что начинающим будет весьма полезно узнать про DNS, OpenVPN, сети, маршрутизацию, Linux и прочие околотематические штуки. Приятного просмотра 😉
Смотреть видео
#гайд
❤🔥19👍8🔥3😁1
👀 6 способов привлечь внимание работодателя
Как рассказать, что вы умеете программировать и хотите получать за это деньги, не говоря об этом напрямую:
1️⃣ Оформить профиль на Линкедин, Гитхаб и Стековерфлоу
2️⃣ Участвовать в хакатонах
3️⃣ Начать вести свой блог об IT
4️⃣ Стать участником конференций от IT-гигантов
5️⃣ Создать канал на YouTube и рассказывайте об IT
6️⃣ Написать в личку
👉 Подробнее о каждом пункте читайте в статье
Как рассказать, что вы умеете программировать и хотите получать за это деньги, не говоря об этом напрямую:
1️⃣ Оформить профиль на Линкедин, Гитхаб и Стековерфлоу
2️⃣ Участвовать в хакатонах
3️⃣ Начать вести свой блог об IT
4️⃣ Стать участником конференций от IT-гигантов
5️⃣ Создать канал на YouTube и рассказывайте об IT
6️⃣ Написать в личку
👉 Подробнее о каждом пункте читайте в статье
❤5🥱1
#вопросы_с_собеседования
Как узнать, какими процессами используется раздел?
lsof | grep /media/whatever
fuser -mv /path/to/mountpoint
Как узнать, какими процессами используется раздел?
👍9👏2
💪🔥 От AI к устойчивому развитию: почему новейшие центры обработки данных используют сеть 400G
400G — относительно новая технология, и она не получила такого широкого распространения в отрасли, как 100G, хотя ситуация начинает меняться. В этой статье обсуждается, почему решено начать использование 400G, требования к дизайну и архитектурные детали ЦОД 400G, а также затронутся некоторые проблемы, с которыми столкнулись первые пользователи, и извлеченных уроков. В заключение автор расскажет о планах на будущее по продолжению разработки с использованием новой технологии.
Читать статью
#почитать
400G — относительно новая технология, и она не получила такого широкого распространения в отрасли, как 100G, хотя ситуация начинает меняться. В этой статье обсуждается, почему решено начать использование 400G, требования к дизайну и архитектурные детали ЦОД 400G, а также затронутся некоторые проблемы, с которыми столкнулись первые пользователи, и извлеченных уроков. В заключение автор расскажет о планах на будущее по продолжению разработки с использованием новой технологии.
Читать статью
#почитать
👍4❤1
🤔 Очередной #дайджест статей и инструментов по DevOps
✔️ Контейнеры: Rootful, Rootless, Privileged and Super Privileged — различные типы, как они создают свою изоляцию, возможностях ядра, оверлейных файловых системах, seccomp и SELinux
✔️ System Design 101 — рассматриваются протоколы коммуникации, DevOps, CI/CD, архитектурные паттерны, базы данных, кэширование и прочее
✔️ Затраты на микросервисы — как правильно начать создавать микросервис, что учесть и как действовать
✔️ Prometheus и централизованное хранилище — когда вам это нужно, как это работает и что такое Mimir
✔️ Руководство по тестированию в Terraform — поддержание порядка в тестах, валидациях, проверках и политиках
✔️ Контейнеры: Rootful, Rootless, Privileged and Super Privileged — различные типы, как они создают свою изоляцию, возможностях ядра, оверлейных файловых системах, seccomp и SELinux
✔️ System Design 101 — рассматриваются протоколы коммуникации, DevOps, CI/CD, архитектурные паттерны, базы данных, кэширование и прочее
✔️ Затраты на микросервисы — как правильно начать создавать микросервис, что учесть и как действовать
✔️ Prometheus и централизованное хранилище — когда вам это нужно, как это работает и что такое Mimir
✔️ Руководство по тестированию в Terraform — поддержание порядка в тестах, валидациях, проверках и политиках
👍18❤3🔥1
🤔✏️ Как надо (и как не надо) разрабатывать REST API
➖ Используйте существительные во множественном числе для обозначения коллекций
➖ Не добавляйте ненужные сегменты пути
➖ Не добавляйте .json или другие расширения к URL-адресу
➖ Не возвращайте массивы в качестве ответов верхнего уровня
➖ Не возвращайте map-структуры
➖ Используйте строки для всех идентификаторов
➖ Применяйте префикс в своих идентификаторах
➖ Не используйте 404 для обозначения «не найдено»
➖ Будьте последовательными
➖ Используйте структурированный формат ошибок
Подробное объяснение с примерами кода тут
#туториал
➖ Используйте существительные во множественном числе для обозначения коллекций
➖ Не добавляйте ненужные сегменты пути
➖ Не добавляйте .json или другие расширения к URL-адресу
➖ Не возвращайте массивы в качестве ответов верхнего уровня
➖ Не возвращайте map-структуры
➖ Используйте строки для всех идентификаторов
➖ Применяйте префикс в своих идентификаторах
➖ Не используйте 404 для обозначения «не найдено»
➖ Будьте последовательными
➖ Используйте структурированный формат ошибок
Подробное объяснение с примерами кода тут
#туториал
🔥18👍5❤1
iptables-tracer
Утилита, позволяющая использовать точки трассировки в текущей конфигурации, чтобы отслеживать путь пакетов по цепочкам iptables.
Утилита, позволяющая использовать точки трассировки в текущей конфигурации, чтобы отслеживать путь пакетов по цепочкам iptables.
$ iptables-tracer -f "-s 192.0.2.1 -p tcp --dport 443" -t 30s
14:42:00.284882 raw PREROUTING 0x00000000 IP 192.0.2.1.36028 > 203.0.113.41.443: Flags [S], seq 3964691400, win 29200, length 0 [In:eth0 Out:]
14:42:00.287255 mangle PREROUTING 0x00008000 IP 192.0.2.1.36028 > 203.0.113.41.443: Flags [S], seq 3964691400, win 29200, length 0 [In:eth0 Out:]
14:42:00.288966 nat PREROUTING 0x00008000 IP 192.0.2.1.36028 > 203.0.113.41.443: Flags [S], seq 3964691400, win 29200, length 0 [In:eth0 Out:]
14:42:00.290545 mangle FORWARD 0x00008000 IP 192.0.2.1.36028 > 198.51.100.8.443: Flags [S], seq 3964691400, win 29200, length 0 [In:eth0 Out:eth1]
14:42:00.292123 filter FORWARD 0x00008002 IP 192.0.2.1.36028 > 198.51.100.8.443: Flags [S], seq 3964691400, win 29200, length 0 [In:eth0 Out:eth1]
14:42:00.293164 mangle POSTROUTING 0x00008002 IP 192.0.2.1.36028 > 198.51.100.8.443: Flags [S], seq 3964691400, win 29200, length 0 [In: Out:eth1]
14:42:00.293780 nat POSTROUTING 0x00008002 IP 192.0.2.1.36028 > 198.51.100.8.443: Flags [S], seq 3964691400, win 29200, length 0 [In: Out:eth1]
GitHub
GitHub - x-way/iptables-tracer: Insert trace-points into the running configuration to observe the path of packets through the iptables…
Insert trace-points into the running configuration to observe the path of packets through the iptables chains. - x-way/iptables-tracer
👍11
Что означает 2>&1?
Это про стандартные потоки вывода. Они имеют файловые дескрипторы:
stdout — 1 (общий поток вывода)
stderr — 2 (поток с ошибками)
Получается (2>&1) = stderr > stdout — направляем поток с ошибками, в стандартный поток вывода. Ошибки будут выводиться на экран в терминале.
Логичным было бы сделать конструкцию: 2>1. Но увы, эта схема отработает другую логическую операцию. Поток с ошибками stderr будет писать все данные в файл, у которого название будет 1.
Для этого и требуется указать символ & (амперсанд) перед stdout. Это будет интерпретировано как файловый дескриптор, а не обычный файл.
А почему тогда не &2>&1 ?
Символ & интерпретируется как файловый дескриптор только в контексте перенаправления.
Операция command &2>&1 анализируется так: command & 2>&1 — команда command будет выполнятся в фоновом режиме. А затем начнет выполнятся команда 2 с перенаправлением на стандартный вывод stdout.
Есть альтернатива с оператором |&.
|& это сокращенный вариант от 2>&1 |
Пример:
В официальной документации можно подробнее изучить эту штуку.
Это про стандартные потоки вывода. Они имеют файловые дескрипторы:
stdout — 1 (общий поток вывода)
stderr — 2 (поток с ошибками)
Получается (2>&1) = stderr > stdout — направляем поток с ошибками, в стандартный поток вывода. Ошибки будут выводиться на экран в терминале.
Логичным было бы сделать конструкцию: 2>1. Но увы, эта схема отработает другую логическую операцию. Поток с ошибками stderr будет писать все данные в файл, у которого название будет 1.
Для этого и требуется указать символ & (амперсанд) перед stdout. Это будет интерпретировано как файловый дескриптор, а не обычный файл.
А почему тогда не &2>&1 ?
Символ & интерпретируется как файловый дескриптор только в контексте перенаправления.
Операция command &2>&1 анализируется так: command & 2>&1 — команда command будет выполнятся в фоновом режиме. А затем начнет выполнятся команда 2 с перенаправлением на стандартный вывод stdout.
Есть альтернатива с оператором |&.
|& это сокращенный вариант от 2>&1 |
Пример:
script.sh |& tee -a /var/log/script.logВсе что
script.sh
выведет в потоки stdout и stderr, будет перенаправлено в файл script.log.В официальной документации можно подробнее изучить эту штуку.
👍28🔥1