Pull to refresh
0
@LEmanRUSread⁠-⁠only

User

Send message

Как я докатился до ортосплита и почему 42 клавиши — это все, что нужно

Reading time12 min
Views29K

Привет! На связи Алексей, старший разработчик в Selectel. Вот уже четыре года я пользуюсь ортолинейной сплит-клавиатурой. Это альтернатива привычным нам устройствам ввода, которая привносит несколько инноваций для улучшения эргономики. Зачастую такие клавиатуры называют «ортолинейными эргосплитами» — название почти полностью отражает суть их конструкции.

За это время я успел опробовать множество подходов, собрать около десятка разных клавиатур и сделать выводы об их применимости. Пора рассказать, почему «меньше» на самом деле «лучше». Точнее, почему оптимум — это 42 клавиши, а не 36, 44, 56 или 58.

Читать далее

Немного о NixOS. Часть 1. Общая информация и установка

Level of difficultyMedium
Reading time8 min
Views33K

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

Читать далее

Чем заняться в выходные? Как я собрал домашнюю виртуализацию в контейнерах за 34 500 рублей

Level of difficultyMedium
Reading time17 min
Views23K

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

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

Читать далее

Obsidian+Github вместо Notion: синхронизация, бекап и версионность (3-в-1)

Level of difficultyEasy
Reading time9 min
Views124K

О том, как сделать прозрачную синхронизацию заметок Obsidian между устройствами (Desktop, Android, iOS) через GitHub:

1. Без сторонних приложений (вроде iCloud, SyncThing, Termux и пр)
2. Бесплатно
3. Бонусом — резервная копия: как самих заметок, так и истории изменений.

В результате получается полноценная замена Notion: структурированные заметки с автоматической синхронизацией между устройствами.

Инструкция:

Notion – это офисный плен! Объясняю, как выбраться с помощью Obsidian

Level of difficultyEasy
Reading time6 min
Views42K

Полгода назад Notion ушёл из России, оставив многих пользователей без удобного инструмента для работы и ведения заметок. Использовать VPN? Не вариант — продуктивность сразу падает. Я тоже столкнулся с этой проблемой, но вместо того, чтобы искать обходные пути, я решил найти достойную замену.

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

Читать далее

AFFiNE — Obsidian здорового человека

Reading time5 min
Views48K

9 сентября — это был последний день, когда мы могли еще нормально использовать Notion. Объективно, я что тогда, что сейчас так и не нашел инструмента лучше, удобнее, гибче и ПРОЩЕ, чем Notion. Да, он во всем был лучше как для жизни, так и для работы.

В конце концов, о его уходе анонсировали еще в конце августа, и я до сих пор помню статью «Obsidian — Notion свободного человека», после которой я, как и, думаю, многие другие, пытались пересесть. Однако у меня так и не вышло это, как бы я ни пытался — всегда слишком много сложностей и деталей. Так вот, эта история про поиск альтернативы.

Читать далее

Отправка и получение сообщений через RabbitMQ в Symfony

Level of difficultyEasy
Reading time4 min
Views2.8K

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

Итак, решили внедрить асинхронные процессы в своё Symfony-приложение? Отличный выбор! А выбор RabbitMQ для этой задачи — вообще идеален: надёжный, быстрый и отлично работающий в связке с Symfony. Наша цель — научиться отправлять сообщения (скажем, сообщения о новых котиках) в очередь и плавно обрабатывать их.

Читать далее

Symfony + RabbitMQ Быстрый старт для молодых

Reading time9 min
Views62K
Всем доброго времени суток, друзья.

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

Я не буду рассказывать про сам RabbitMQ, поэтому если вы пока и этого не знаете, почитайте следующие переводы:

Статья 1
Статья 2
Статья 3
Статья 4
Статья 5

Не бойтесь примеров на перле или пайтоне — это не страшно, все достаточно понятно из исходного кода.

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

Если вы уже знаете, что такое консумер и почему в нем нужно делать $em->clear() + gc_collect_cycles, а после закрывать соединение с базой данных, то, скорее всего, вы ничего нового для себя не узнаете. Статья скорее для тех, кто не хочет разбираться с AMQP протоколом, но которым нужно прямо сейчас применять очереди и выбор почему-то бездумно пал на RabbitMQ, а не тот же легковесный beanstalkd.

Если же у вас микросервисная архитектура и вы ждете, что я расскажу вам как сварить коммуникацию между компонентами через AMQP, как красиво делать RPC, то я сам чего-то подобного очень давно жду на Хабре…
Читать дальше →

Протокол MQTT: концептуальное погружение

Reading time12 min
Views278K
Протокол Message Queuing Telemetry Transport (MQTT) используется в течение многих лет, но сейчас он особенно актуален благодаря взрывному росту IoT: и потребительские, и промышленные устройства внедряют распределённые сети и граничные вычисления (edge computing), а устройства с постоянной трансляцией данных становятся частью повседневной жизни.

Это означает, что лёгкие, открытые и доступные протоколы со временем станут ещё важнее. В этой статье приводится концептуальное погружение в MQTT: как он работает, как используется сейчас и как будет использоваться в будущем.
Читать дальше →

С чего начинается Elasticsearch

Reading time14 min
Views319K

Elasticsearch, вероятно, самая популярная поисковая система на данный момент с развитым сообществом, поддержкой и горой информации в сети. Однако эта информация поступает непоследовательно и дробно.


Самое первое и главное заблуждение — "нужен поиск, так бери эластик!". Но в действительности, если вам нужен шустрый поиск для небольшого или даже вполне себе крупного проекта, вам стоит разобраться в теме поподробней и вы откажетесь от использования именно этой системы.

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

Разбираемся с Redis

Reading time19 min
Views431K

Этот материал представляет собой глубокое исследование всего, что связано с Redis. В частности — речь пойдёт о различных способах организации хранилищ Redis, о постоянном хранении данных, о форках процессов.

Читать далее

Когда и зачем нужен RabbitMQ

Reading time5 min
Views227K

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

Читать далее

Почему JWT — не панацея: разбор проблем сессий и безопасности

Level of difficultyMedium
Reading time6 min
Views27K

JWT для сессий: удобство или головная боль?

JSON Web Token (JWT) приобрёл популярность как удобный способ аутентификации и передачи данных между клиентом и сервером. Его ценят за простоту, stateless-подход и гибкость. Однако большинство гайдов рассказывают только о плюсах, забывая о недостатках.

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

Читать далее

Teensy 4: Arduino на скорости 600 МГц (почувствуй себя властелином вселенной)

Level of difficultyEasy
Reading time10 min
Views39K


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

Оказывается, последняя версия Teensy 4 сделана на основе Cortex M7 и работает на частоте 600 МГц, причём ядро там довольно продвинутое и позволяет исполнять две инструкции за такт, использует предсказание ветвлений и аппаратную обработку 64-битных чисел с плавающей точкой, а также много чего ещё, в том числе имеет на борту много RAM, Flash и PSRAM памяти и т. д.

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

В результате я пришёл к выводу, что с этим стоит познакомиться поближе и на Али был заказан комплект Teensy 4.1 с Audio и Ethernet расширениями, а затем я с большим удовольствием поэкспериментировал с этим железом. Ну а далее я предлагаю свой отчёт о проведённых экспериментах, а также поделюсь своими впечатлениями о Teensy 4.1.
Читать дальше →

Пять одноплатников, на которые стоит обратить внимание в 2025 году: интересные новинки февраля

Reading time6 min
Views40K

Источник.

Одноплатные компьютеры продолжают развиваться. Производители предлагают все больше разных моделей, как специализированных, так и более-менее универсальных. В феврале 2025 года на рынке появилось несколько интересных новинок, каждая из которых заслуживает внимания. В этом обзоре рассмотрим 5 самых интересных моделей, сравним их характеристики, особенности и разберём, для каких задач они подходят лучше всего. Поехали!
Читать дальше →

Obsidian + Dataview: Задачи

Level of difficultyMedium
Reading time5 min
Views43K

В прошлой статье Obsidian + Dataview: Таблицы я рассказал про установку плагина Dataview, формирование таблиц с его помощью и разобрал 4 кейса его использования.

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

Сегодня хотелось бы остановиться на задачах, тем более что Dataview позволяет сделать из Обсидиана полноценный task/todo-менеджер с календарём и прочими приятностями.

Читать далее

Obsidian — Мой сетап

Level of difficultyMedium
Reading time13 min
Views80K

Вот я и дописал свою четвёртую статью на хабр (А ведь в начале года поставил себе цель написать хотя бы одну статью, а тут аппетит пришёл во время еды и вот четвёртая). Предыдущие раз, два и три.

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

Поэтому вот сразу ссылка на мой сетап хранилища Обсидиана на гитхабе (о котором и пойдёт речь в данной статье), можно сразу его качать и тыкаться самому и если что-то не понятно подглядывать в статью. (Надо распаковать zip-файл в папку, а потом открыть открыть обсидиан и при выборе хранилища выбрать эту папку, куда распаковали zip-файл. Если у вас одно хранилище, то тогда жмём в левом нижнем углу кнопку сейфа)

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

В этом хранилище используются 10 плагинов, основные:

- Calendar - для календаря справа.

- Dataview - для статистики и для проектов.

- Tasks - для задач.

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

К такой настройке я шёл целый год используя обсидиан, постоянно дорабатывал её и искал "совершенство", в ней собраны разные подходы из разных статьей и книг (GTD, 7 навыков, Джедайские техники, Атомные привычки), данные подходы большинству могут быть знакомы. Но есть метод, до которого я дошёл сам и до этого я нигде его не встречал (возможно просто не попадался) - это метод одной задачи.

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

Погнали вкатываться в обсидиановый мир

Веб-сервер — это просто скрипт

Reading time7 min
Views25K

Есть категория людей, которые особо ценят надёжность, стабильность, безопасность и свободу информации. Наверное, именно такие люди поднимают медиасерверы Plex и Jellyfin, запускают ноды Bitcoin, мосты Tor, инстансы Mastodon и Matrix, приложения YunoHost, VPN-узлы Tailscale и так далее. Это как бы естественный процесс.

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

У обывателей часто возникает вопрос: наверное, это очень трудно? Поднять свои серверы? На самом деле сложность задачи часто переоценивают. Давайте посмотрим на примере простого веб-сервера.
Читать дальше →

SSD NVME M.2 через PCIe на Repka Pi 4 — это новый уровень. Впечатления, тесты, сравнения скорости

Level of difficultyEasy
Reading time21 min
Views6.5K

Недавно появилась новая модель Российского одноплатного микрокомпьютера - Repka Pi 4 Optimal, в котором множество улучшений - можно устанавливать модуль eMMC (Embedded MultiMediaCard), чтобы использовать его вместо карты памяти SD как для хранения данных, так и для загрузки операционной системы, но и это оказалось не самой главной “фишкой” новой модели Repka Pi - вскоре появилась версия платы этого одноплатника с интерфейсом PCIe 2.0 1x полностью совместимый с PCIe Raspberry Pi 5, т.е. все платы расширений для RPi 5 работают на Repka Pi 4 Optimal PCI. И это уже по настоящему интересно. Давайте посмотрим и попробуем вместе.

Читать далее

Модульный PHP монолит: рецепт приготовления

Reading time10 min
Views24K

Статья написана по мотивам моего доклада на митапе. В нем я рассказываю историю того, как мы взяли и не распилили монолит на микросервисы, и что сделали вместо этого.

На тот момент наша команда работала над приложением, начало которому было положено еще в 2009 году не искушенными в архитектуре студентами. К 2018 это уже был типичный big ball of mud (большой ком грязи), или, этакий «монолит-копролит», как выразился один наш коллега. Думаю, многим знакомо.

Читать далее
1
23 ...

Information

Rating
Does not participate
Registered
Activity

Specialization

Backend Developer, Web Developer
SQL
OOP
PostgreSQL
PHP
Docker
Tarantool
Yii framework