Search
Write a publication
Pull to refresh
4
0.3

User

Send message

Простой и удобный шаблон для bash-скриптов выполняемых по расписанию

Level of difficultyEasy
Reading time4 min
Views27K

Хочу поделиться с сообществом простым и полезным шаблоном скрипта-обёртки на bash для запуска заданий по cron (а сейчас и systemd timers), который моя команда повсеместно использует много лет.

Сначала пара слов о том зачем это нужно, какие проблемы решает. С самого начала моей работы системным администратором linux, я обнаружил, что cron не очень удобный планировщик задач. При этом практически безальтернативный. Чем больше становился мой парк серверов и виртуальных машин, тем больше я получал абсолютно бесполезных почтовых сообщений "From: Cron Daemon". Задание завершилось с ошибкой - cron напишет об этом. Задание выполнено успешно, но напечатало что-нибудь в STDOUT/STDERR - cron всё равно напишет об этом. При этом даже нельзя отформатировать тему почтового сообщения для удобной автосортировки. Сначала были годы борьбы с использованием разных вариаций из > /dev/null, 2> /dev/null, > /dev/null 2>&1, | mail -E -s '<Subject>' root@.

Читать далее

7 шагов к результату эффективного обучения

Level of difficultyEasy
Reading time16 min
Views25K

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

Данная статья будет вашим персональным гайдом/учебником (называйте как хотите), по тому как именно обучаться, на что следует обращать внимание и какие техники могут помочь вам.

Проблемы мы обозначили 7-ю шагами, на которые вам нужно будет сделать акцент, чтобы повысить свою эффективность.

Читать далее

На пути из Web к Native, часть 1

Level of difficultyMedium
Reading time4 min
Views9.6K

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

Оставь надежду, всяк сюда входящий. Или.. нет..?

Имея небольшой опыт в веб-программировании, мне казалось, что все не так плохо. И так по началу и было. За вопрос я взялся основательно: без задачи — нет учебы.

Я решил поставить перед собой большую цель: давным-давно...

Читать далее

Написание Частного технического задания (ЧТЗ)

Level of difficultyMedium
Reading time6 min
Views30K

Всем привет! Меня зовут Мишинёва Екатерина, я – ведущий технический писатель с опытом работы в сфере IT более 10 лет.

Рассмотрим подробнее.

Читать далее

Настройка авторизации через ssl сертификат на уровне nginx

Level of difficultyMedium
Reading time5 min
Views16K

Привет уважаемые, хабровчане!

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

Читать далее

Написание компилятора C в 500 строк Python

Level of difficultyMedium
Reading time24 min
Views16K

Компилятор C на 500 строк Python? Почему бы и нет? Это сложно, даже если отказаться от многих функций. Но, в то же время, это ужасно интересно, а результат оказался на удивление функциональным и несложным для понимания!

Читать далее

Python: Построение графиков по данным из файла

Level of difficultyEasy
Reading time3 min
Views54K

В разных областях деятельности приходится строить графики. Построить график на компьютере можно десятками если не сотнями способов. В этот тексте я показал как строить графики при помощи интерпретируемого языка программирования Python.

Читать далее

Разбираемся с использованием неблокируещего ввода-вывода в ОС Linux. Пишем пример сервера на голых системных вызовах

Reading time11 min
Views14K

Как обычно пишут сервер, если не особо заботиться производительности? Программа запускается, затем начинает принимать входящие соединения от клиентов и для каждого клиента запускает новый поток, который занимается обслуживанием этого клиента. Если вы используете какой-нибудь, прости господи, Spring или Flask или там Poco, то он что-такое внутри себя и делает - разве что потоки можно переиспользовать, то есть брать из некого пула. Это всё довольно удобно, но не слишком эффективно. Скорее всего, ваши потоки, обслуживающие клиентов, живут недолго и большую часть времени ожидают либо получения данных от клиента, либо отправки их клиенту - то есть ждут возвращения системных вызовов. Создание потока ОС - довольно дорогая операция, как и переключение контекста между потоками ОС. Если вы хотите уметь обслуживать много клиентов эффективно, надо придумать что-то другое. Например, коллбеки. Но это довольно неудобно.

Читать далее

eBPF и его возможности

Reading time10 min
Views37K
image

Откройте для себя современные возможности ядра GNU/Linux, которые пригодятся вам для обеспечения мониторинга, наблюдаемости, безопасности, инжиниринга производительности и профилирования – всё это достижимо при помощи eBPF. Ниже будет разобрано несколько практических случаев и дана информация, касающаяся внутреннего устройства BPF.
Читать дальше →

Современные технологии обхода блокировок: V2Ray, XRay, XTLS, Hysteria, Cloak и все-все-все

Reading time20 min
Views439K

Три месяца назад здесь на Хабре была опубликована статья “Интернет-цензура и обход блокировок: не время расслабляться”, в которой простыми примерами показывалось, что практически все популярные у нас для обхода блокировок VPN- и прокси-протоколы, такие как Wireguard, L2TP/IPSec, и даже SoftEther VPN, SSTP и туннель-через-SSH, могут быть довольно легко детектированы цензорами и заблокированы при должном желании. На фоне слухов о том, что Роскомнадзор активно обменивается опытом блокировок с коллегами из Китая и блокировках популярных VPN-сервисов, у многих людей стали возникать вопросы, что же делать и какие технологии использовать для получения надежного нефильтрованного доступа в глобальный интернет.

Мировым лидером в области интернет-цензуры является Китай, поэтому имеет смысл обратить на технологии, которые разработали энтузиасты из Китая и других стран для борьбы с GFW (“великим китайским файрволом”). Правда, для неподготовленного пользователя это может оказаться нетривиальной задачей: существует огромное количество программ и протоколов с похожими названиями и с разными не всегда совместимыми между собой версиями, огромное количество опций, плагинов, серверов и клиентов для них, хоть какая-то нормальная документация существует нередко только на китайском языке, на английском - куцая и устаревшая, а на русском ее нет вообще.

Поэтому сейчас мы попробуем разобраться, что же это все такое и как это использовать и не сойти с ума.

Читать далее

Какой роутер с поддержкой OpenWrt купить в 2023 году

Level of difficultyEasy
Reading time5 min
Views176K

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

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

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

В последние 8 лет мой фаворит - это OpenWrt, прошивка на базе ядра Linux. Это полноценная операционка, в которой есть свой менеджер пакетов и туда до сих пор не проник systemd.

Читать далее

Основы генеративно-состязательных сетей

Level of difficultyMedium
Reading time10 min
Views28K

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

Читать далее

TeamViewer из подручных материалов

Reading time3 min
Views25K

Всем привет!

Сегодня хочу рассказать о двух случайно обнаруженных “фичах” известных протоколов, которые позволили сложиться “пазлу” из темы статьи.

И так, у сотрудника техподдержки есть необходимость подключаться к рабочему столу пользователя, что бы совместно что-то сделать. Раз нет TeamViewer, значить надо использовать что-то похожее, например VNC.Тут же “выплывают” проблемы.

Читать далее

iptv через VPN. Получение ip-адресов

Reading time1 min
Views13K

У меня дома перестало работать iptv с одного известного сервиса (где за 1 доллар в месяц тебе дают много-много каналов). Попробовал через vpn - всё работает. Но не буду же я весь трафик с роутера кидать через vpn?

Читать далее

Шпаргалка для подготовки к экзамену по машинному обучению

Reading time9 min
Views20K

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

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

Читать далее

Применение расстояния Левенштейна с целью оптимизации работы склада

Reading time14 min
Views10K

Активно изучаем различные алгоритмы? Читаем про поиск k-ближайших соседей, задачу о рюкзаке, всякие алгоритмы сортировки, поиска и т. п.? А часто читаем примеры их практического внедрения на каком-нибудь предприятии? Такие истории встречаются реже, чем даже обзоры книг по этим же алгоритмам.

Предлагаю всем вместе начать исправлять эту ситуацию и приглашаю почитать о том, как на промышленном складе применяли — внезапно! — алгоритм Левенштейна (способ нечёткого сравнения строк).

Значительная часть нюансов спрятана под спойлеры, чтобы не отвлекать от сути статьи, а также не отпугивать маленьких. Обычно такие статьи становятся очень длинными, но мне удалось уместиться примерно в 3200 слов.

Для понимания статьи читателю хватит самого поверхностного умения чуть-чуть читать код си-подобного синтаксиса. Познания в области работы склада не обязательны. Почитать про расстояние Левенштейна по ссылке выше желательно.

Читать далее

Дозиметр судного дня

Reading time14 min
Views22K

Хомяки приветствуют вас друзья! 

Сегодняшний пост будет посвящен одной из легендарных самоделок, дозиметр RAD BOY. Тут тебе и цветной экран, и возможность просмотра накопленной дозы за день, продолжительная автономность, в общем сливки в своем роде. В ходе поста рассмотрим как собрать такое устройство, самостоятельно запрограммировать и произвести примитивные манипуляции с настройкой высоковольтного трансформатора. Чтобы устройство выглядело подобающе, смоделируем и напечатаем корпус. В процессе повествования узнаем технические особенности, рассмотрим меню настроек, распилим счетчик Гейгера для изучения внутренностей и сравним показания самодельного прибора с профессиональным дозиметром Радиаскан-701.

Читать далее

Какую математику сегодня проверяют работодатели при найме Data Analysts & Scientists

Reading time9 min
Views25K

Всемирный экономический форум в своем прогнозе самых востребованных профессий до 2025 года поставил Data Analysts & Scientists на первое место рейтинга. За последние три года в России число вакансий в этой сфере выросло в 4 раза. Мы видим, что поток желающих получать образование в DA/DS постоянно растет. Успех трудоустройства напрямую зависит от того, насколько знания кандидата отвечают актуальным требованиям работодателей. И математика – важнейшая часть этих требований. Мы выяснили, знания по каким именно темам математики и в каком формате проверяют на собеседованиях, а также – зависят ли требования по математике от грейда и нужно ли высшее образование, чтобы пройти отбор.

Читать далее

Семь грехов численной линейной алгебры

Reading time6 min
Views11K

image


В численной линейной алгебре нас интересуют точное и эффективное решение задач и понимание чувствительности задач к возмущениям. К старту флагманского курса по Data Science делимся материалом от профессора Ника Хигэма о семи грехах линейной алгебры, из-за которых теряется точность/эффективность или информация о чувствительности [к возмущениям] оказывается недостоверной.

Читать дальше →

Малые АЭС и зачем они нужны

Reading time22 min
Views49K
Атомная станция – это огромное сооружение из бетона и стали, способное обеспечить энергией большой город или даже небольшую страну. Но в последние годы все больше интереса вызывают проекты малых АЭС, мощностью до 300 МВт. В мире насчитывается уже более 70 проектов компактных, многоцелевых реакторов самых разных типов и конструкций, называемых SMR — Small Modular Reactor. А некоторые из них уже успешно работают. В этой статье я расскажу о том, что такое малые АЭС, зачем они нужны, в чем их отличия, преимущества и недостатки по сравнению с классическими АЭС, а также пройдусь по основным типам малых реакторов с конкретными примерами. Ну и конечно, посмотрим на позиции России на рынке малых АЭС и их перспективы с учетом текущей международной обстановки.


На фото первая малая АЭС. Российская. Фото: «Страна Росатом»
Читать дальше →

Information

Rating
3,138-th
Registered
Activity