Pull to refresh
5
0
Павел Марковский @webxed

Пользователь

Send message

Как искать товар на всех маркетплейсах сразу?

Reading time4 min
Views41K

Решил ты обновить себе смартфон или корм докупить для собаки/кошки или подгузники ребенку, достаешь телефон и поехали: ищешь на Ozon, потом открываешь приложение WildBerries, потом в Яндекс Маркете, затем в СберМегаМаркете, потом еще на паре сайтов, потом уже забыл где нужный товар был дешевле и пошел снова по кругу, купил, а потом выяснилось, что именно сегодня нужный смартфон был дешевле в DNS, а подгузники по акции в Детском Мире, но ты забыл там посмотреть.

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

Читать далее
Total votes 37: ↑32 and ↓5+33
Comments220

Samba4, Radius и PPTP с использованием MS-CHAP v2

Reading time15 min
Views34K
…У-ф-ф, свершилось. Всё оказалось довольно просто, хотя времени потратить пришлось изрядно, в основном на поиск информации, коей на просторах Интернета (полезной, конечно) – кот наплакал… А уж как она (эта информация) разрознена! Поэтому, решил написать это руководство, основанное на собственном опыте внедрения. Главное, что всё будет собрано в одном месте (кроме, возможно, настроек bind9, но об этом чуть позже).

Итак, задача. Есть сервер с Ubuntu 12.04. Он должен стать:

  • PDC Windows-домена c Active-Directory.
  • Сервером VPN (пусть, например, это будет PPTP, но с обязательной поддержкой MS-CHAP v2 и MPPE-128) с авторизацией на Radius –сервере (для определённости – freeradius).
  • Соответственно – Freeradius-сервером.
  • Терминальным сервером, на котором прозрачно авторизуются пользователи AD.

Приступаем.
Читать дальше →
Total votes 22: ↑20 and ↓2+18
Comments48

Древовидные структуры в SQL в одну таблицу

Level of difficultyMedium
Reading time11 min
Views11K

Как реализовать хранение и работу каталога папок в PostgreSQL? Есть большое количество вариантов. Но хочется, чтобы реализация выглядела лаконично, не нарушала прозрачность выполняемых операций, не вызывала блокировок, не требовала большого вовлечения клиента в специфику работы и т.д. Потому сегодня попробуем реализовать хранение древовидных структур и работу с ними без использования триггеров, блокировок, дополнительных таблиц (представлений) и внешних инструментов в SQL.

Читать далее
Total votes 46: ↑46 and ↓0+53
Comments29

Классифицируем клиент-серверное взаимодействие от А до Kafka

Level of difficultyEasy
Reading time9 min
Views2.5K

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

Читать далее
Total votes 22: ↑20 and ↓2+19
Comments3

Пишем калькулятор на Rust с GUI

Level of difficultyEasy
Reading time18 min
Views13K

Зачем еще один калькулятор? Да незачем, просто как тестовый проект для рассмотрения GUI-библиотеки.

Изначально я хотел попробовать такие крейты, как GPUI, Floem и Xilem, но первая, кажется, пока работает только под MacOS и Linux, вторая не позволяет установить иконку окну и кушает оперативы побольше Webview в Tauri, а до третьей я так и не добрался, узнав об Slint.

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

Читать далее
Total votes 23: ↑22 and ↓1+26
Comments84

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

Level of difficultyEasy
Reading time4 min
Views22K

Хочу поделиться с сообществом простым и полезным шаблоном скрипта-обёртки на 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@.

Читать далее
Total votes 52: ↑49 and ↓3+55
Comments4

Как быстро и эффективно выгореть на работе: опыт выжившего

Reading time9 min
Views34K

Привет! Меня зовут Татьяна Белова и я автор нового DIY-медиа вАЙТИ от beeline cloud. Я руковожу управлением консультирования и обучения клиентов, и это та самая сфера «человек — человек», где сотрудники очень быстро выгорают. Однажды я боролась с профессиональным выгоранием: всё зашло очень далеко, и я чуть было не уволилась, но справилась.

Вы наверняка что-нибудь слышали о профессиональном выгорании или даже переживали его. По данным исследования hh, в сфере IT с выгоранием лично сталкивались 78% человек. Это очень высокий показатель. Выгорание ухудшает качество нашей жизни, делает работу неинтересной, а задачи, которые раньше приносили удовольствие и драйв, становятся в тягость. Есть и хорошая новость: с выгоранием можно бороться и даже сделать так, чтобы оно не наступило. Что для этого нужно — расскажу в этой статье.

Читать далее
Total votes 27: ↑20 and ↓7+18
Comments22

Где изучать Linux в 2024. Бесплатные курсы, книги и ресурсы

Level of difficultyEasy
Reading time7 min
Views51K

В настоящее время существует множество бесплатных ресурсов, которые предлагают уроки по Linux, от курсов до университетских программ, что делает эту ОС доступной для широкого круга людей. Знание Linux может открыть двери к различным IT‑профессиям, таким как системный администратор, разработчик, инженер по безопасности, этичный хакер, DevOps инженер и другие. Зарплаты таких специалистов высоки, спрос на кадров знающих Linux ожидается и в будущем.

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

Читать
Total votes 37: ↑33 and ↓4+34
Comments35

Как написать ТЗ на разработку чат-бота или AI-ассистента

Level of difficultyEasy
Reading time6 min
Views4.4K

 Привет, Хабр! Меня зовут Элина Тедеева, и я тимлид команды внедрения в команде Just AI. 

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

Читать далее
Total votes 4: ↑3 and ↓1+5
Comments2

Как подключить Google Analytics к Telegram боту?

Level of difficultyEasy
Reading time3 min
Views2.1K

Существует множество способов отслеживать активность пользователей Telegram бота. Многие разработчики предпочитают создавать собственные решения. В данной статье я попытаюсь по пунктам объяснить, как можно использовать всем известный сервис Google Analytics для отслеживания действий пользователей вашего Telegram бота.

Для примера я буду использовать свой бот для автоматической проверки и исправления текста на английском языке. Бот представляет собой ни что иное, кроме как обертку для одного из GPT сервисов. Поскольку база данных при этом не используется, использование Google Analytics для учета пользователей выглядит оптимальным вариантом. Поехали: 

Читать далее
Total votes 4: ↑2 and ↓20
Comments1

Управление зависимостями в Rust с Cargo

Level of difficultyEasy
Reading time6 min
Views3.1K

Привет!

Cargo - это хороший менеджер пакетов Rust, который берет на себя тяжелую работу по управлению зависимостями, сборке проекта, тестированию и многому другому.

В этатье рассмотрим что такое Cargo и как с ним работать.

Читать далее
Total votes 15: ↑9 and ↓6+4
Comments4

Как содержать пароли. Мой сетап

Level of difficultyMedium
Reading time7 min
Views52K

Я долго собирал информацию о том, как организовать свои аккаунты. Как сделать доступ к ним достаточно надёжным и стойким к утере девайсов. 

Меня интересовало, как я могу залогиниться туда, где многофакторная авторизация через телефон, в случае потери телефона. 

Или, как обезопасить себя от забывания мастер пароля от менеджера паролей? На моей практике я несколько раз забывал пин-код от банковской карты, состоящий из 4-ёх цифр, после ежедневного использования на протяжении многих месяцев. Мозг - странная штука. 

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

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

Junior PHP. Ответы на часто задаваемые вопросы на технических собеседованиях

Level of difficultyEasy
Reading time14 min
Views14K

Привет пользователям Хабра!

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

Читать далее
Total votes 19: ↑13 and ↓6+11
Comments27

VictoriaMetrics и мониторинг приватных облаков. Павел Колобаев

Reading time9 min
Views28K


VictoriaMetrics — быстрая и масштабируемая СУБД для хранения и обработки данных в форме временного ряда (запись образует время и набор соответствующих этому времени значений, например, полученных через периодический опрос состояния датчиков или сбор метрик).

Total votes 15: ↑15 and ↓0+15
Comments3

Обзор NativePHP. Инструмент для создания собственных нативных desktop приложений на Laravel

Level of difficultyMedium
Reading time7 min
Views13K

Привет, коллеги!

В этой статье я сделаю небольшой обзор NativePHP, который появился на последнем Laracon. Что из себя представляет NativePHP? Перед нами фреймворк, который позволяет нам писать нативные десктоп приложения, используя PHP. Приложения кроссплатформенные - можно писать под Mac, Windows и Linux. И все это с использованием нашего любимого PHP с использованием Laravel. Но как обещают разработчики в будущем появятся и другие драйверы.

Читать далее
Total votes 17: ↑15 and ↓2+17
Comments53

«Подарил удочки и попрощался с друзьями на год»: как я стал Android-разработчиком, отказавшись даже от прогулок

Level of difficultyEasy
Reading time6 min
Views55K

Всем привет! Меня зовут Пётр Гнесный, я студент и стажёр на финишной прямой — вот-вот окончу курс «Android-разработчик» в Практикуме и стажировку в американском медтех-стартапе RE.DOCTOR. В этом тексте я расскажу, как написал первый фрагмент кода, занимаясь биржевой торговлей, какие три вещи на самом деле важны в обучении программированию и почему 1 октября случится кое-что важное — я впервые за год пойду на рыбалку.

Читать далее
Total votes 30: ↑18 and ↓12+13
Comments94

Я бы не жил в Сочи в этих местах…

Level of difficultyEasy
Reading time6 min
Views30K

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

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

Читать далее
Total votes 33: ↑31 and ↓2+39
Comments78

Особенности проксирования через CDN/Websocket/gRPC для обхода блокировок

Level of difficultyMedium
Reading time15 min
Views63K

Эта статья — заключительная (наконец‑то!) из моего огромного цикла про недетектируемые инструменты для обхода блокировок. В предыдущих публикациях я упоминал, что клиенты и серверы XRay (форк V2Ray) и Sing‑box при использовании протоколов VLESS/VMess/Trojan могут работать через веб‑сокеты и gRPC, что позволяет подключаться к даже заблокированным Роскомнадзором прокси‑серверам через CDN (content delivery или content distribution network) и дает дополнительные преимущества. Сегодня мы поговорим об этом поподробнее.

Читать далее
Total votes 62: ↑60 and ↓2+76
Comments148

Собственный строковый тип на Rust

Level of difficultyMedium
Reading time14 min
Views6.9K

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

pub enum Expr<'src> {
  Int(u32)
  Ident(&'src str),
  // ...
}

Когда мы парсим идентификатор, то вместо копирования его названия в новую String мы заимствуем его из входной исходной строки. Это позволяет избежать дополнительных распределений, дополнительного копирования и экономит слово на представлении данных. Компиляторы могут быть очень требовательны к памяти, поэтому стоит выбирать краткое представление.
Читать дальше →
Total votes 48: ↑47 and ↓1+63
Comments6

Keycloak — больно не будет

Level of difficultyHard
Reading time17 min
Views33K

Привет! Меня зовут Алексей, я DevOps-инженер компании Nixys. «Как правильно и своевременно предоставлять и отнимать доступ у различных сотрудников?» — этот вопрос беспокоит всех. Особую важность эта задача приобретает, когда продукт начинает быстро расти — если ваш штат регулярно меняется, вопросы безопасности данных и работоспособности системы должны стоять на особом контроле.

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

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

Information

Rating
Does not participate
Location
Иркутск, Иркутская обл., Россия
Date of birth
Registered
Activity