Pull to refresh
-1
0
NULL_byte @NULL_byte

Web

Send message

SQL HowTo: поиск пути и дихотомия (Advent of Code 2024, Day 18: RAM Run)

Level of difficultyEasy
Reading time8 min
Views1.2K

В этой челлендж-серии статей попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2024.

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

Сегодня напишем для решения простую реализацию алгоритма Ли и дихотомии.

Читать далее

Промпты для ChatGPT, которые могут повысить качество ответов ChatGPT

Level of difficultyEasy
Reading time3 min
Views78K

Давайте будем честными.

Простые промпты наподобие "Напиши статью из 1500 слов под заголовком: Топ-10 продуктов, которые разрушают вашу печень» не дадут вам и 1% тех результатов, которые способен дать Chat GPT.

Читать далее

LlamaIndex: создаем AI-бота без боли и страданий

Level of difficultyEasy
Reading time6 min
Views22K

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

Читать далее

8 инструментов для разработчиков, которые стоит попробовать

Level of difficultyEasy
Reading time5 min
Views11K

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

Читать далее

n8n. Автоматизация ИБ со вкусом смузи

Reading time13 min
Views63K
Всем давно очевидна польза тотальной автоматизации, в том числе, и в области информационной безопасности. В условиях большого кадрового дефицита как никогда актуальна идея снятия рутинной рабочей нагрузки как со специалиста по информационной безопасности, так и со специалистов в других областях. 

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

Источник

TL;DR: Telegram, REST API, Shodan, DNS-over-HTTPS. Пишем бота в Telegram  для парсинга инфы с shodan и поиска эксплойтов на exploit-db. Находим баг в работе n8n. 

Ответ есть – добро пожаловать во фронтенд со смузи и гироскутерами
Читать дальше →

Apache Kafka: основы технологии

Reading time9 min
Views518K

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


Статья подготовлена на основе открытого занятия из видеокурса по Apache Kafka. Авторы — Анатолий Солдатов, Lead Engineer в Авито, и Александр Миронов, Infrastructure Engineer в Stripe. Базовые темы курса доступны на Youtube.

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

Витрины данных DATA VAULT

Reading time3 min
Views9.5K
В предыдущих статьях, мы познакомились с основами DATA VAULT, расширением DATA VAULT до более подходящего для анализа состояния и созданием BUSINESS DATA VAULT. Настало время завершать серию третьей статьей.

Как я анонсировал в предыдущей публикации, эта статья будет посвящена теме BI, а точнее подготовке DATA VAULT в качестве источника данных для BI. Рассмотрим, как создать таблицы фактов и измерений и, тем самым, создать схему звезда.

Когда я начал изучать англоязычные материалы по теме создания витрин данных над DATA VAULT у меня возникло ощущение достаточной сложности процесса. Так как статьи имеют внушительный объем, там присутствуют отсылки к изменениям в формулировках, появившихся в методологии Data Vault 2.0, обозначается важность этих формулировок.

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

И так, давайте переходить к сути.
Читать дальше →

Как оптимально рассчитать объем «железа»: сайзинг-модель ЕФС

Reading time6 min
Views21K
В разработке Программы «Единая фронтальная система» Сбербанка участвуют больше сотни команд. Каждая команда создает и развивает определенный продукт или сервисный компонент. Для каждой новой инициативы требуется оценить объем «железа», который потребуется для разработки и внедрения этой инициативы. А это большой поток запросов на оценку. О том, как мы решаем эту задачу, читайте под катом.


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

Проектируем микросервисную архитектуру с учётом сбоев

Reading time10 min
Views17K
Перевод статьи Designing a Microservices Architecture for Failure.

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

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

Умный дом с радио из Cyberpunk: как я написал расширение для Home Assistant

Reading time14 min
Views10K

Два с половиной года назад я делал радио из игры Cyberpunk 2077 на базе проекта Ka-Radio32 и собственной интерпретации модели из игры. Радио спокойно использовалось по назначению все это время, но вот наступили новогодние праздники. Я решил настроить Home Assistant (HA) и объединить все домашние умные устройства в локальном хабе.

Часть устройств добавилась без проблем, другая — сопротивлялась и требовала дополнительных действий. Но самодельное радио стояло особняком: для проекта Ka-Radio32 нет ни официальной интеграции, ни пользовательской. Хотя у Home Assistant широкая документация, начать разрабатывать свое расширение довольно сложно. В этой статье я разберу основные этапы на примере интеграции с Ka-Radio32.
Читать дальше →

Опыт разработки на доработанном pgTap

Level of difficultyMedium
Reading time10 min
Views1.3K

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

pgTap – это расширение PostgreSQL для разработки юнит-тестов. Сами тесты, как, собственно, и pgTap, пишутся на plpgSQL, что означает низкий порог вхождения для разработчиков PG.

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

Читать далее

Геймификация любви: как соцсети и приложения для знакомств изменили отношения

Reading time6 min
Views12K

Давайте начистоту: время от времени приходит мысль, что онлайн-знакомства — это хорошая идея. Вы регистрируетесь в очередном приложении, заполняете данные профиля, подбираете настройки и оплачиваете подписку. А в следующее мгновение начинается игра, в которой сложно победить. Именно игра, потому что онлайн-знакомства — это, простите за тавтологию, не знакомства. Это их геймификация.
Читать дальше →

Математическое доказательство ненужности service-layer на бэкенде при взаимодействии через RPC

Level of difficultyMedium
Reading time4 min
Views1.7K

Холодная и беспристрастная как лезвие скальпеля опытного хирурга математика доказывает порой крайне неочевидные вещи... В современных веб-приложениях service-layer не нужен?!

Читать далее

Envoy — как писать чистый бизнес-код для микросервисной архитектуры

Level of difficultyHard
Reading time20 min
Views10K

Привет, Хабр, это моя первая статья. Меня зовут Константин, я системный инженер в компании ГНИВЦ. Здесь я хотел бы вам рассказать, что такое Envoy и как с его помощью можно упростить жизнь разработчикам и повысить надёжность взаимодействия микросервисов, минуя инфраструктуру для кого-то страшного и непонятного Kubernetes, а используя простой и старомодный Docker. Также эта статья поможет познакомиться с Envoy поближе и узнать, как он шагает в ногу с таким проектом как Istio.

Читать далее

Thrift в качестве REST API

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

Кому интересно, как мы это сделали, и какие «побочные» эффекты мы словили, прошу заглянуть под кат.
Читать дальше →

NestJS - тот самый, настоящий бэкенд на nodejs

Reading time6 min
Views172K
image

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

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

Чем отличается пессимистическая и оптимистическая блокировка в MySQL

Reading time5 min
Views5.1K
При проектировании приложений, использующих базы данных, часто возникают такие ситуации, в которых требуется конкурентный доступ к данным. Это может приводить к самым разным последствиям, поскольку состояние базы данных может нарушиться, или некоторые данные могут быть потеряны. Чтобы предотвратить такие сценарии, существуют различные способы контролировать доступ к ресурсам. Например, применяется оптимистическая и пессимистическая блокировка, о которых мы здесь поговорим.
Читать дальше →

Ловушка семантики и атрибутивных конструкций, или Почему architecture decision — это не архитектурное и не решение?

Level of difficultyMedium
Reading time4 min
Views2.7K

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

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

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

Читать далее

Рабочая станция в Docker контейнере

Reading time5 min
Views38K
Для чего? Мне постоянно приходят всякие идеи и некоторые из них сразу хочется попробовать, но рабочая станция не всегда под рукой, поэтому я настраивал IDE на всем что попадется под руку. В итоге устройства начали захламляться, а поддерживать и обновлять их стало тяжело.

Чтобы решить эту проблему я решил разместить такую «записную книжку» в облаке, и что бы ежедневно обновлялась и удаляла весь накопившийся мусор. А для работы подключаться к нему удаленно.

image

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

Чёрточки: только ли тире, минус и дефис?

Reading time4 min
Views182K
Однажды вечером я почувствовал, что пришло время расширить 97‐ й параграф «Ководства» Артемия Лебедева.

На клавиатуре одна чёрточка, она обычно правее нуля и повыше букв «З» и «Х». Неосведомлённые люди называют её попеременно то дефисом, то минусом, то тире. Лебедев объясняет нам, что это четыре (учитывая две разновидности тире) различных символа. На самом деле их как минимум девять, и об этом я и расскажу вам сейчас.

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

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity