Как стать автором
Поиск
Написать публикацию
Обновить

Разработка

Сначала показывать
Порог рейтинга
Уровень сложности

DAX-style подход в C# для SUMMARIZECOLUMNS из Power BI

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров129

Привет, Хабр! Одной из важных функций в аналитическом языке DAX является SUMMARIZECOLUMNS, т.к. она готовит данные для дашбордов за счет декартова произведения полей группировки, если поля группировки из разных таблиц. Понятно, что на любом языке программирования можно реализовать логику, в чем-то аналогичную SUMMARIZECOLUMNS из DAX. Интересующимся DAX-style логикой для C# из NuGet пакета DaxSharp для функцииSUMMARIZECOLUMNS — добро пожаловать под кат :)

Читать далее

Новости

Решил перейти на Python и не пожалел

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров293

С полгода назад я начал чаще использовать для программирования Python. Почему? Конечно, из-за ИИ. Лично для меня очевидно, что сегодня эта сфера связана с очень большими деньгами перспективами во всех направлениях. А какой язык является самым распространённым для ИИ? Да-да, как-раз этот проныра.

Я уже писал на Python, но только небольшие скрипты. К примеру, вот этот скрейпит метаданные всех видео с моего канала на YouTube. Собранные метаданные выводятся в виде файла JSON, который я использую для показа красивой статистики роликов на этой статичной странице. Как можно видеть здесь, этот скромный скрипт через GitHub Actions выполняется в соло-режиме каждый понедельник. Просто реализовать всё это на Python куда проще, чем с помощью того же Batch. И не только из-за более дружественного синтаксиса, но и потому, что его интерпретатор нативно интегрирован во все дистрибутивы Unix. Разве не круто?

Читать далее

Новости кибербезопасности за неделю с 21 по 27 июля 2025

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров65

Всё самое интересное из мира кибербезопасности /** с моими комментариями.

На этой неделе новости про милый вредонос для Linux, Америка рассказала о своих стратегических планах в ИИ, Британия запретила платить хакерам, Google занялась безопасностью open source и другие только самые важные и интересные новости из мира информационной безопасности.

Читать далее

Docker для тестировщика: команды, приёмы и практическая шпаргалка

Время на прочтение4 мин
Количество просмотров436

Если вы работаете в тестировании, то Docker должен быть в вашем ежедневном инструменте так же прочно, как баг-репорт в Jira. Современный QA — это не просто “прокликать” интерфейс. Мы работаем с API, БД, UI-автотестами, моками и целыми микросервисами. А значит, нам нужно уметь быстро разворачивать изолированные и воспроизводимые окружения.

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

Читать далее

OWASP Top 10 API: Полный разбор всех угроз и как от них защититься

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров519

API — это «кровеносная система» современного веба, но без должной защиты они становятся лёгкой добычей для хакеров. OWASP выделил Топ-10 уязвимостей API, которые чаще всего эксплуатируют злоумышленники. Разберём ключевые риски и методы защиты.

Читать далее

C#, Логи которые пишут себя сами

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров663

Всем привет.

Пару лет назад мне пришлось заняться интеграцией СБП с АБС банка, писать надо было на C#. Первое о чём я подумал, конечно, это было логирование. Писать логи руками это конечно не мой выбор. Конечно хотелось чтобы при вызове метода в логи записывались его входные аргументы и выходные результаты и конечно эксепшены.

В C#, на тот момент (конец 2023 года), для этого надо было делать обёртку над классом, пример обёртки я приведу ниже.

Читать далее

Практические вопросы архитектуры ПО, из чего строить будем?

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров794

Вы знаете из чего и как строятся программы? Странно что ни в одной из статей о программной архитектуре вы не найдете упоминаний о том из чего эти программы строятся.

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

Читать далее

Сердце Фреймворка: Философия и Практика Dependency Injection в Angular

Уровень сложностиСложный
Время на прочтение18 мин
Количество просмотров520

Dependency Injection (DI) один из столпов, на которых держится фреймворк Angular. Каждый разработчик, так или иначе, сталкивается с ним с первого дня: запрашивает сервисы в конструкторе, добавляет providedIn: 'root' и видит, как «магия» работает. Но именно в этом и кроется ловушка.

Для многих DI так и остается на уровне «магии» удобного механизма, который просто работает. Однако поверхностное понимание этого мощнейшего инструмента неизбежно приводит к архитектурным компромиссам: неочевидным утечкам памяти, сложностям в тестировании, созданию неявных связей между компонентами и, в конечном счете, к коду, который трудно поддерживать и масштабировать.

Эта статья не очередной пересказ официальной документации. Это глубокое погружение в архитектуру и философию Dependency Injection в Angular. Наша цель демистифицировать «магию» и превратить ее в предсказуемый, управляемый и мощный инженерный инструмент в вашем арсенале.

Мы пройдем путь от фундаментальных принципов инверсии контроля (IoC) до тонкостей иерархического инжектора. Мы разберем на атомы все стратегии предоставления зависимостей, научимся управлять их жизненным циклом и областью видимости. Мы изучим продвинутые паттерны с использованием InjectionToken и multi-провайдеров и поймем, как современная функция inject() меняет подход к композиции логики.

Перейти к полному анализу

Стартап за выходные: AI-агент для БД, часть 1

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров2.4K

Ну кто не мечтает запустить стартап за одни выходные?
Давно хотел развеяться, и чутка отвлечься от рутины и работы.
А ещё давно хотел пощупать Tauri v2, и новомодные фреймворки для построения AI-агентов (ai-sdk / mastra / llamaindex.

Идея простая: десктопное приложение, внутри ИИ-агент, который подключается к БД, получает данные о структуре таблиц/вьюшек. Справа сайдбар: интерфейс чата с агентом, а основное пространство - холст, на котором агент размещает что хочет сам. А именно - виджеты, которые делают запросы к БД, и выводят их в приятном глазу виде.
Никакого удалённого бекенда, open-source, доступы к БД хранятся исключительно локально, всё секьюрно.

Так как весь код открытый, то процесс я буду логировать в репозитории: https://github.com/ElKornacio/qyp-mini

Читать далее

Разбираемся, на чём делают игры: обзор 13 лучших движков для геймдева

Уровень сложностиПростой
Время на прочтение29 мин
Количество просмотров11K

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

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

Читать далее

AsmX G3: От высокоуровневого ассемблера к нативному коду. Разбираем компилятор ZGEN

Уровень сложностиСложный
Время на прочтение14 мин
Количество просмотров1.6K

Мы не просто пишем код. Мы строим компиляторы, которые строят код. AsmX G3 — это не обновление, это переосмысление с первых принципов. Приготовьтесь к глубокому техническому погружению в архитектуру нашего нового компилятора ZGEN, где мы вскроем каждый компонент, от ядра до сборщика ELF, и покажем инженерные решения, которые определяют будущее системного программирования.

Читать полный технический разбор

Web3 Frontend — с чего начать?

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров4.1K

Создание фронтенда для Web3-приложений - это не только дизайн, кнопки и React. Это мост между пользователем и блокчейном. И ты, как фронтенд-разработчик - тот, кто этот мост может построить...

Читать далее

Новые правила обезличивания персональных данных с 1 сентября 2025 года

Время на прочтение19 мин
Количество просмотров2.5K

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

Читать далее

Ближайшие события

Google Indexing API для SEO-специалиста: пошаговая инструкция «без кода» для быстрой индексации

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров787

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

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

Готовый скрипт лежит здесь, но не спешите его качать, сначала всё подготовим.

Читать далее

Изящные монады точек эллиптической кривой

Уровень сложностиСложный
Время на прочтение3 мин
Количество просмотров1.9K

Перечитал давний доклад академика Арнольда В.И. о сложности последовательностей нулей и единиц, в которй он использует монады для определения сложности.
Доклад в двух вариантах, с цветными картинками и академик тут очень красиво и подробно рассказывает, почему одна последовательность сложнее другой и как это видно и строгий вариант "Доклад в Московском математическом обществе"

Вот тут можно прочитать и посмотреть, советую
https://elementy.ru/nauchno-populyarnaya_biblioteka/430178/430281

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

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

Читать далее

gRPC-микросервис на tonic

Уровень сложностиСложный
Время на прочтение6 мин
Количество просмотров1.2K

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

Сегодня мы рассмотрим, как поднять gRPC-микросервис на tonic и обвязать его аутентификацией плюс метриками через Tower-middleware.

Читать далее

Intel прикрыла Clear Linux: конец эпохи «самого быстрого» дистрибутива

Время на прочтение4 мин
Количество просмотров4.8K

Intel внезапно поставила точку в истории Clear Linux — дистрибутива, который больше десяти лет считался одним из самых шустрых в мире Linux. Разработка остановлена, поддержка прекращена, а пользователям настоятельно советуют паковать чемоданы и мигрировать на другие системы. Что привело к такому решению, какие уникальные фичи Clear Linux уже не увидят свет? А главное — что это значит для Linux-сообщества? Разбираемся в подробностях.

Press F

Автоматизация деплоя с помощью GitHub Actions: руководство для чайников

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.6K

Привет, Хабр! Меня зовут Микаэль Оганесян, я backend-разработчик, и сегодня хочу поделиться с вами опытом настройки CI/CD с использованием GitHub Actions. В этой статье мы разберём, как автоматизировать процесс деплоя вашего приложения, что сэкономит ваше время и уменьшит количество ошибок при ручном деплое.

Читать далее

Создаем 3D карту помещения лидаром Unitree L2 на Windows без ROS

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров1.6K

При обследовании зданий и сооружений практически всегда необходимо создать точную 3D модель помещения для формирования паспорта объекта или для разметки дефектов на уже существующей BIM-модели. То есть, лидар и 3D-сканер входят в необходимый джентльменский набор инженера, при этом стоит такой кит весьма недешево, в среднем 150к-1,5 млн рублей. Мы попробовали изучить возможность использования лазерных лидаров более бюджетного класса, к примеру, Unitree 4D LiDAR-L2 (далее Unitree L2), который стоит в пределах 28-40К рублей. Можно ли с помощью лидара, используемого не в промышленном сканировании, а в робототехнике (конкретно эта модель используется как навигатор для робособак) составлять из облаков точек 3D-модели зданий и сооружений? Дополнительно еще решили задачку, а можно ли это делать на Windows, так как у инженеров в поле чаще всего на ноутбуках стоит именно эта ОС, тогда как официально ПО Unitree L2 написано под Ubuntu? Наш вывод – оба ответа – да, можно!

Читать далее

Githab CLI и Github Actions на страже вайб кодинга с мобильными агентами Cursor

Уровень сложностиСредний
Время на прочтение22 мин
Количество просмотров1.1K

В этой статье, я расскажу, про опыт работы с агентами Cursor, github actions и великолепный Github Cli. Статья не претендует на истину и является частным практическим опытом.

Вступление

Лето. Время отпусков. Делать не фиг.

Можно залипать в рилсах или сериальчиках на пляже, но зачем, если можно создать что-то прикольное с мобильниого телефона, с помощью агентов. А конкретно, с помощью https://cursor.com/agents (стоит 20 баксов в месяц https://docs.cursor.com/account/pricing или 3к рублей в год, если немного поискать).

Итак, создаем репозиторий (В моем случае github.com/RobotAvi/MoneyGame) или берем готовый. Даем задачу агенту.

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