Привет, Хабр! Сегодня мы рассмотрим, как работает Injector в Angular, зачем нужны декораторы @Optional, @SkipSelf, @Host, и чем отличаются провайдеры на уровне root, модуля и компонента. Читать далее
Опытного конструктора сложно чем-то удивить, но давайте попробуем вспомнить то захватывающее чувство, когда открываешь крышку механизма, не имея вообще никакого понятия о том, что внутри. Душа замирает, в глазах — предвкушение, в голове — мысли типа «надеюсь, это не очередная китайская импровизация на тему "как сделать сложно, когда можно просто"». Сегодня мы поговорим о магазине инструментов для металлорежущего станка. Смотрим, что внутри!
В основе каждого надёжного и масштабируемого программного решения лежат хорошо продуманные структуры. Паттерны проектирования — это не просто абстрактные концепции из умных книг, а проверенные временем шаблоны, которые позволяют эффективно решать распространённые задачи,…
Возьмём, к примеру, сложение. Одна из первых истин, которые мы усваиваем: 1 плюс 1 — это 2. Казалось бы, операция элементарная. Но даже она продолжает порождать у математиков вопросы без чётких ответов. Какие глубинные закономерности заложены в сложении? — до сих пор остаётся…
Есть множество материалов написанных о работе полупроводников и работе транзисторов.Зачем еще одна? Дело в том, что я заметил такую тенденцию в вузовских учебниках – довольно подробное описание работы p-n перехода и очень поверхностное описание работы биполярного транзистора.
Пришло время рассказать широкой аудитории о практиках, которые больше не работают для найма технических специалистов в 21м веке. Что точно не надо делать, если хотите нанимать нормальных специалистов. Читать далее
Задача нахождения неточных дубликатов текстовых строк - удивительно часто встречается на практике.Нахождение неточных дубликатов позволяет лучше понять структуру списка, повысить его качество (удаление дубликатов), провести техническую кластеризацию (выделить группы похожих). Всё это видно на графе выше.Но приключения начинаются, когда список становится размером несколько миллионов строк. В статье разберем что с этим можно сделать. Читать далее
В апреле OpenAI запустили расширенную память для ChatGPT: если раньше ИИ запоминал только определенные факты из беседы, выбирая их далеко не всегда верно, то с новым функционалом он (теоретически!) собирает важную информацию из всех чатов вообще и использует ее, чтобы давать ответы, максимально настроенные под пользователя.Я много экспериментировал с функцией памяти и решил поделиться опытом. Читать далее
Привет, Хабр!Сегодня рассмотрим, как работает fillfactor в PostgreSQL — тот самый параметр, который никто не трогает, пока таблицы не начинают раздуваться как на дрожжах. Разберём, зачем он нужен, что происходит при UPDATE, когда стоит менять его вручную и как не наломать дров. Читать далее
Практический разбор инженерного решения TAPP Group: от диагностики проблем до измеримых результатов.Привет, Хабр! С вами Дмитрий Лохов, генеральный директор TAPP Group. Сегодня я расскажу о технологическом вызове, с которым столкнулся Ковдорский ГОК, крупнейший производитель апатит‑штаффелитовой руды. Читать далее