Используя Obsidian более двух лет, я привык организовывать в нём все свои заметки, в том числе и по проектам. Хоть Obsidian и предлагает широкий набор сторонних плагинов для расширения своего функционала, но мне так и не удалось найти идеальный для управления проектами и задачами. Это подтолкнуло меня к созданию нескольких автоматизаций, о которых и пойдет речь дальше.Алгоритм работы с проектомСоздаем заметку с типом проект.Проект автоматически добавляется в заметку Homepage.В проекте отображаю…
Привет, Хабр!Сегодня мы рассмотрим одну из тем, которая, как ни странно, остаётся недооценённой — JSON Schema. Если ты аналитик (или хочешь им быть) и в твоей работе часто мелькают JSON-файлы, то наверняка знаешь, как сложно порой бывает держать всё это под контролем. В этой статье мы разберём всё, что тебе нужно знать про JSON Schema.JSON Schema: что это и зачем тебе нужно?Итак, начнем с основ. JSON Schema — это спецификация для описания структуры JSON-документов. Представь себе это как строги…
С выпуском Angular 18 команда команда разработчиков значительно расширила функциональность RxJS Interop, что упрощает интеграцию между Signals и RxJS Observables, оптимизируя производительность и улучшая читаемость кода. В этой статье мы рассмотрим новые возможности RxJS Interop, примеры их применения и объясним, как они помогают сделать ваш код чище и эффективнее.Эволюция RxJS Interop в AngularRxJS Interop впервые был представлен в Angular 16 для преодоления разрыва между Signals и RxJS Observ…
Типичная фронтовая командаЧто имеем?А имеем мы довольно крупную команду фронтендеров, которая раздедлена на небольшие подгруппы, каждая из которых отвечает за свои микросервисы. В конечном итоге, эти сервисы интегрируются в единый масштабный проект. Мы придерживаемся общей дизайн-системы, стандартизированных правил, описываем все процессы и тд.Однако, несмотря на наличие единой системы, мы сталкивались с рядом проблем:Разнообразие реализации компонентов. Несмотря на стандарты, каждая команда им…
Бывает ситуация, когда нам необходимо протестировать middleware, либо асинхронное событие, которые возникает в хранилище redux.Цель этой статьи в том, чтобы показать как тестировать action в redux store.Есть готовое решение, redux-mock-store, но оно не позволяет оперировать реальным хранилищем, через него мы можем только проверить был вызван тот или иной action, а данные которые сохраняем мы в store, не можем проверить.Я предлагаю не создавать fake store, а просто добавить свой middleware, кото…
Всем привет! В данной статье рассмотрим такой javascript модуль как HMPL и как он может заменить HTMX в проекте. Также, рассмотрим в чём их отличия, преимущества и недостатки.При дальнейшем сравнение двух модулей стоит учесть, что один является языком шаблонов, когда как другой является набором инструментов для работы с HTML, реализуемых через атрибуты и не только. Начнём с общей концепции для двух модулей.Концепция сокращения javascript кода путём выноса компонентов пользовательского интерфейс…
Когда первый раз открываешь документацию Яндекс.Карт, то совершенно ничего не понятно. Ты смотришь быстрый старт, введение, руководство разработчика, общие сведения, подключение карты... ну да, окей, мы взяли такие, как-то вроде всё подключили, видим карту с населенными пунктами... а дальше-то что делать?DISCLAIMER: Чтобы не уточнять всякий раз, что все ниже перечисленное является сугубо моим личным мнением и лично моим взглядом на процесс познания, напишу это в самом начале один раз. Всякий ра…
В этой статье я хочу объяснить разницу между stackless и stackful корутинами: чем они отличаются, какие у них плюсы и минусы, а также в общих чертах рассказать, как в некоторых языках программирования реализована многопоточность.Я стараюсь писать статьи простым и понятным языком, чтобы их мог понять как можно больший круг читателей. Поэтому в тексте будут сделаны упрощения.НачнёмВ операционной системе есть процессы — это экземпляры программ, у которых есть своё виртуальное адресное пространство…
Привет, друзья! В этой серии статей я рассказываю о Convex — новом открытом и бесплатном решении BaaS (Backend as a Service — бэкенд как услуга), которое выглядит очень многообещающе и быстро набирает популярность среди разработчиков. На сегодняшний день Convex предоставляет реактивную базу данных смешанного типа, механизм аутентификации/авторизации, файловое хранилище, планировщик задач и инструменты интеллектуального поиска. Эта первая часть серии, в которой мы поговорим о функциях и базе д…