Search
Write a publication
Pull to refresh
4
0
Michael Elin @vanelm

Consulting Network Engineer

Send message

Простая настройка CI/CD для Фронтенда и Бэкенда в Github без сторонних инструментов бесплатно в 2024 году

Level of difficultyEasy
Reading time17 min
Views13K

Всем привет! Недавно решил попробовать, что из себя представляет Flutter Web, подумал, может попробовать сделать бота для Telegram, и заодно настроить простейший CI/CD для отдельного фронтенд- и бэкенд-проектов. Однако в интернете я не нашёл простой и исчерпывающей инструкции или процесса.

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

Читать далее

Двусвязный список в Python: простой инструмент для сложных задач

Level of difficultyEasy
Reading time5 min
Views9.5K

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

Эта статья написана для новичков, которые только начинают осваивать структуры данных на Python. Сегодня мы рассмотрим замечательную и очень полезную структуру — двусвязный список.

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

Начнем с основ, разберемся, как они работают, где их реально стоит применять и как реализовать двусвязный список с нуля (да, на время забудем про библиотеку collections и её deque).

Читать далее

Kafka для самых маленьких тестировщиков

Level of difficultyEasy
Reading time5 min
Views21K

Всем привет! Меня зовут Максим, я QA в Максилекте.

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

Читать далее

UART-терминал из LCD-дисплея, PS/2 клавиатуры и любого МК

Reading time5 min
Views6K

Совсем коротенький рассказ — о довольно бесполезной но забавной штуковине, извините :)

Как-тораз я написал интерпретатор BASIC, который можно использовать на контроллере хоть с 1кб памяти (в частности AVR / Arduino). В основном мы им пользовались через Bluetooth‑модуль с телефона (я уж рассказывал). Но у меня руки чесались сделать своеобразный «терминальчик» — ну я и сделал.

Как видите — в качестве экрана тут дисплей 4 строки по 20 символов. А клавиатура полноценная — обычная c PS/2 разъёмом. Между ними и UART‑ом воткнут контроллер (младший STM32). Вообще‑то можно было без него, реализовать общение с клавиатурой и дисплеем в том же контроллере где интерпретатор крутится — но тогда это не был бы терминал, его нельзя было бы использовать с любым другим UART‑интерфейсом.

Покажу картинки, код — и немножко расскажу про устройство. А если сами строили что‑то похожее — расскажите и вы :)

Что ж, посмотрим!

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

Reading time3 min
Views14K

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

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

Amazon: обратимые и необратимые решения
Матрица "Ценность vs. Затраты"
Матрица Эйзенхауэра

Читать далее

Использование технологии iBeacon в React Native

Reading time14 min
Views1.2K

В предыдущей статье мы рассказали про использование беакон-маяков и технологии BLE в приложениях на React Native c помощью библиотеки React Native BLE. Теперь перейдем к более совершенному подходу для работы с маяками, — разработаем нативный модуль на iOS.

Читать далее

На асинхронной логике можно сделать очень много, и особенно на FPGA

Level of difficultyEasy
Reading time12 min
Views5K

В естественной среде (в реальном мире), на асинхронной логике построено всё, и даже жизнь. Пытаться повторить последнее на FPGA разумеется можно только в виде игры, но и её пока что не будет. Хотя публикация имеет место быть, теперь с удвоенным объёмом материала, так как мне нельзя писать чаще раза в неделю, то я решил вторую публикацию включить сюда, материал которой мной планировался в статье "Асинхронные триггеры: цена стиля, и не каждая логика решения раскрывает суть решаемой ей задачи." Всё это - мой небольшой опыт работы с FPGA, который свидетельствует в пользу того, что материал распространённый ранее в сети, по части асинхронной логики, не то что не точный — а не соответствует естественному порядку вещей в действительности, это было‑бы можно объяснять специфичностью FPGA, но никакой такой специфичности на самом деле нет, не было, и вряд‑ли когда будет, поэтому пусть тот материал остаётся сам по себе, и рассматривать его далее, как минимум тут, не стоит. Итак поехали

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

Читать далее

FlexiPrompt: Удобное создание динамических промптов в Python

Level of difficultyEasy
Reading time4 min
Views2.7K

Эта статья будет полезна Python-разработчикам, работающим с языковыми моделями (LLM).

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

Читать далее

React Native полностью переделан

Reading time3 min
Views15K

После 6 лет разработки команда React Native представила полностью переписанную архитектуру фреймворка (0.76) – самое значительное обновление с момента создания React Native. Это результат масштабной работы над улучшением производительности, стабильности и возможностей платформы.

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

Памятка по классам скорости Wi-Fi

Level of difficultyEasy
Reading time5 min
Views31K

Покупая новый Wi-Fi роутер, я столкнулся со множеством их характеристик и как следствие классов скорости Wi-Fi: N300, AC2600, AX1800 и другие. По мере изучения параметров я решил написать эту статью, которую можно рассмотреть как памятку по основам Wi-FI. Главная цель этой статьи - рассмотреть основные характеристики и на что они влияют.

Читать далее

SQLAlchemy 2.0 + Python Generic, или как создать универсальный репозиторий для работы с БД

Level of difficultyEasy
Reading time5 min
Views6.1K

Доброго времени суток, товарищи, эта статья, так скажем, продолжение предыдущей статьи об SQLAlchemy 2.0 для новичков, в этой статье мы узнаем что такое Python Generic и как его можно использовать в наших целях при взаимодействии с БД.

Читать далее

Zabbix vs Prometheus. Что выбрать для гетерогенной инфраструктуры?

Level of difficultyEasy
Reading time15 min
Views19K

Разберемся в преимуществах и недостатках каждой системы, а также настроим мониторинг гетерогенной Linux-Windows инфраструктуры средствами централизованного управления.

Давайте разбираться

Зачем и где нужен API Gateway

Reading time6 min
Views14K

Елизавета Акманова, старший аналитик ГК Юзтех, снова на связи. Сегодня у меня в планах обсудить, зачем и где нужны API Gateway. Для этого верхнеуровнево пройдём по архитектуре этого паттерна, рассмотрим решаемые задачи. Ключевой вопрос на сегодня: Когда стоит использовать эту технологию? Это полезный инструмент но, увы, не всегда.

Читать далее

Не пытайтесь динамически загружать код в ваше Flutter-приложение

Level of difficultyMedium
Reading time14 min
Views3.4K

Привет, Хабр! Меня зовут Станислав Чернышев, я автор книги «Основы Dart», телеграм-канала MADTeacher и доцент кафедры прикладной информатики в Санкт-Петербургском государственном университете аэрокосмического приборостроения.

Исследуя тему плагинной архитектуры для Dart/Flutter-приложений. А точнее, проводя ритуал призыва группы изоляционных Dart-демонов при переносе опыта с предыдущих проектов в образовательный материал, наткнулся на интересную статью с обзором существующих решений и почему команда сервиса AppFlowy пока отказалась двигаться в этом направлении.

Читать далее

Удивительная недоказанная математическая гипотеза об одиноком бегуне

Reading time5 min
Views78K

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

Вот и гипотеза об одиноком бегуне оказалась одной из таких задач...

Читать далее

Всё своё ношу с собой. Мои простые правила организации личной базы знаний

Reading time4 min
Views54K

Помните те времена, когда Интернет был маленьким, модемы — медленными, а провайдеры — жадными? Мы сохраняли всё полезное у себя на винчестерах, героически пытаясь вместить всё нужное в скромный объём дискового пространства. Раньше это был единственный способ обеспечить себе быстрый и эффективный доступ к информации.

А потом высокоскоростной Интернет нас избаловал — мы перестали скачивать файлы и формировать свои собственные локальные библиотеки знаний и контента. Теперь всё лежит на сайтах и в облаках. Зачем что-то скачивать, если всё это моментально доступно по одному клику?

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

Читать далее

5 альтернатив TCP и UDP после блокировки Discord

Reading time4 min
Views41K

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

Я предлагаю вам 5 асинхронных способов общения. Синхронные способы общения как «повеселиться с друзьями», «сходить в церковь» и «посидеть на лавочке» мы не рассматриваем.

Читать далее

Учимся читать QR-коды без компьютера

Level of difficultyMedium
Reading time4 min
Views55K

Задавались ли вы когда-нибудь вопросом, как работают QR-коды? Если да, то эта статья для вас. Здесь вас ждёт интерактивное объяснение*, которое мы составили для семинара, проводившегося в рамках Всемирного конгресса хакеров 37C3, но вы также можете использовать его самостоятельно.

Прочитав статью, вы узнаете:

  • Из чего состоят QR-коды.
  • Как декодировать QR-коды вручную (используя нашу шпаргалку).
Читать дальше →

Рынок Wi-Fi сегодня. Из чего выбирать и как снизить риски?

Level of difficultyMedium
Reading time4 min
Views9.2K

Привет, Хабр! На связи Виктор Беляев, эксперт по беспроводным технологиям ИТ-компании К2Тех. Мы с коллегами проектируем и строим сети Wi-Fi на разных вендорах, следим за новинками и тестируем их оборудование. Сейчас этот рынок очень активен, постоянно появляются новые Wi-Fi решения и расширяется функциональность уже имеющихся. Выбрать, на чем строить сеть – задача часто непростая даже для интегратора, не говоря уже о заказчиках.

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

Под катом вы найдете краткий обзор ситуации на рынке и сравнительную таблицу с характеристиками вендоров.

Читать далее

Недолго песенка играла, недолго скамер кайфовал: кража 243 млн. $ в BTC и OSINT

Reading time3 min
Views17K

Кейс о том, как завышенная самооценка, понты и нелепые ошибки выдали цифровой след и реальное местоположение OSINT-методами скамеров укравших 243 млн. $ у кредитора Genesis...

Читать далее

Information

Rating
Does not participate
Location
Praha, Hlavni Mesto Praha, Чехия
Registered
Activity