Так как версионирование через плагин nx-semantic-release
происходит путем анализа изменений по связанным Typescript
-импортам, то нам нужно минимизировать эти изменения, для этого в проект подключаем lint-staged
и добавляем строгости в Typescript
-код.
User
Деконструкция монолита: Максимально производительный подход к проектированию программ
Как и почему компания Shopify перешла от монолитной архитектуры к модульно-монолитной.
У компании Shopify одна из крупнейших баз кода на Ruby on Rails. Над ней трудились более десяти лет свыше тысячи разработчиков. Она включает множество разнообразных функций, например, выставление счетов продавцам, управление сторонними приложениями, обновление информации о товарах, обработка доставки и так далее.
Изначально система была построена как монолит, то есть все эти разные функциональные возможности были встроены в одну кодовую базу без каких-либо разграничений между ними. В течение многих лет эта архитектура работала нормально, но в конце концов мы достигли точки, когда недостатки монолита перевесили преимущества. Нам предстояло сделать выбор, как действовать дальше.
Новые методы появятся в Set JavaScript
Привет всем! Я Кирилл Мыльников, frontend разработчик компании Usetech. Сегодня хочу поделиться информацией о новых методах, которые скоро появятся в коллекции Set в JavaScript.
Set был добавлен в стандарте ES2015, но всегда казался немного ограниченным. Работать с ним можно было только через добавление, удаление и проверку наличия элементов. Однако, при работе с несколькими коллекциями или сравнении их, приходилось писать дополнительные функции. Но теперь нам готовят новые методы, которые значительно упростят работу с Set и позволят избежать необходимости придумывать свои функции.
Давайте вместе погрузимся в мир Set и вспомним, что это такое, какие методы доступны на данный момент и какие новые методы могли бы появиться в следующей спецификации. Мы рассмотрим все на практических примерах.
Set - коллекция для хранения уникальных значений любого типа, где каждое значение может появиться только один раз.
Основные методы:
Что такое semantic-release и как с ним работать
Привет! Я — Алексей Бондаренко, работаю в команде Платформа Банки.ру. Сегодня хочу рассказать о semantic-release и его практическом применении на примере упрощения разработки и внедрения библиотеки в проект.
Не стоит недооценивать HTML
«HTML – это просто», «Разрабатывать фронтенд проще, чем бэкенд», «После реализации бэкенда обновление UI не должно составлять труда», – за время работы в сфере веб-разработки вокруг меня то и дело звучали эти и другие аналогичные утверждения.
И очень часто они вызывали у меня грусть.
Дело в том, что бо́льшую часть времени я проводила за написанием фронтенда, включая работу с HTML, CSS и JavaScript (по факту в основном TypeScript). Когда кто-нибудь говорит мне о «простоте» моей работы, я начинаю думать, что мои навыки не представляют высокой ценности, и меня может легко заменить любой разработчик…
В статье же я решила описать свои размышления, которые рождались в течение последних двух лет во время работы с людьми из разных команд с разным опытом в HTML-разработке и фронтенд-технологиях в целом. Здесь я озвучу несколько основных своих вопросов «Почему?», сопроводив их возможными ответами.
Подробная инструкция по изготовлению сплит клавиатуры на основе ATmega32U4. Аналог Iris / Jiran своими руками
Моя самоделка
Перед изготовлением своей клавиатуры я наметил следующие цели:
- Максимально возможный тактильный комфорт.
- Добиться того, чтобы совершенно не было необходимости смотреть на клавиатуру при работе, чтобы она никоим образом не отвлекала внимание на себя, чтобы даже смотреть на нее было бессмысленно. Именно поэтому на моих колпачках нет надписей.
- Клавиатура — это мой рабочий инструмент, сосредотачиваемся на ее функционале и удобстве. Внешний вид совершенно неважен. Кто не может жить без RGB подсветки и внешней броской красоты – нам с вами не по пути, эта статья совсем про другое. В этой статье я вас научу как недорого и просто сделать себе удобный и функциональный инструмент для работы.
- Удобство перевозки. Сделать компактное и удобное для переноски устройство.
Джойстик, тачпад, кнопки — делаем USB контроллер ввода на RP2040
Представим задачу, когда в некую систему управления необходимо добавить устройства ввода. Это может быть что угодно, например, комбинация кнопок, джойстика, тачпада, а также элементы подсветки и вибрации.
Самое простое - это найти готовую клавиатуру, тачпад, джойстик и т.д. и подключить к GPIO или нескольким портам USB основного контроллера. Нормальный вариант, многие так и делают. Но возможно, что либо GPIO не хватит, а может быть USB портов.
Тогда может быть имеет смысл добавить небольшой и дешевый микроконтроллер и всё-таки собрать свой собственный геймпад или пульт, оснастив его при этом стандартным USB HID Joystick драйвером для игровых контроллеров. В таком случае контроллер можно будет подключить к любой Win / Linux системе, без необходимости разработки драйвера для USB.
Насколько это сложно? Можно ли сделать свой собственный тачпад?
Raspberry Pi Pico на МК RP2040: начало и первые шаги. Что есть поесть за $4
Начало
Raspberry Pi Foundation всегда знает чем порадовать или удивить нас, а так же как подталкивать других производителей на интересные шаги и решения для хорошей конкуренции.
В четверг (рыбный день, кстати) 21-ого января 2021 года был анонсирован выпуск нового микроконтроллера RP2040 и небольшой платы с его применением, которая получила название Raspberry Pi Pico.
Честно говоря, я прочитал эту новость и не планировал ничего делать по этому поводу. Но потом случайно заметил несколько особенностей этого микроконтроллера, что разбудило любопытство во мне и подтолкнуло к покупке пары плат для дальнейших экспериментов. Очень привлекло наличие PIO блоков и множество PWM. Справедливости ради, PWM можно как-то решить, а вот с PIO есть смысл поиграться.
После пары дней занимательной возни я решил поделиться своим небольшим опытом с Хабром и его гостями.
К сожалению, с PIO я недостаточно освоился и поэтому возможности PIO выходят за рамки этой статьи. Но если будет очень интересно сообществу, то возможно продолжение после того, как будет чем поделиться.
Книга «Продвинутые алгоритмы и структуры данных»
Познакомьтесь с самыми необходимыми алгоритмами решения сложных задач программирования в области анализа данных, машинного обучения и графов.
Вы постоянно сталкиваетесь с бесчисленными проблемами программирования, которые поначалу кажутся запутанными, трудными или нерешаемыми. Не отчаивайтесь! Многие из “новых” проблем уже имеют проверенные временем решения. Эффективные подходы к решению широкого спектра сложных задач кодирования легко адаптировать и применять в собственных приложениях, а при необходимости создавать собственные структуры данных под конкретную задачу. Сбалансированное сочетание классических, продвинутых и новых алгоритмов обновит ваш инструментарий программирования, добавив в него новые перспективы и практические методы.
Паттерн порталов в Angular: для чего нужен root-компонент в Taiga UI
Мой коллега Роман недавно объявил о выходе нашей новой библиотеки компонентов под Angular Taiga UI. В инструкциях Getting started сказано, что приложение нужно обернуть в некий tui-root. Давайте разберемся, что он делает, узнаем, как и зачем мы используем порталы и что это вообще такое.
Клавиатура с трекболом. Как с ней работать
В этой статье хочу рассказать о том как работать с клавиатурой у которой есть трекбол.
Обычно, клавиатуры которые разрабатываются энтузиастами работают на прошивках с открытым исходным кодом. Если клавиатура работает по проводу, то чаще всего это QMK. Если клавиатура работает по bluetooth, то чаще всего это ZMK
Как быстро и удобно документировать Angular проект с помощью модуля AddOnDoc из TaigaUI
Не так давно вышла новая библиотека компонентов Taiga UI. Как говорят сами создатели Александр Инкин и Роман Седов, это конструктор Lego. И действительно: в нём есть много полезных модулей, которые можно использовать в своём проекте. В этой статье мы рассмотрим модуль AddOnDoc.
Возможности современного клавиатуростроения (программные)
О возможностях программируемых клавиатур и о том как можно увеличить скорость набора текста с помощью программных функций повышения физической совместимости
Фронтенд-дайджест 2023
Привет, Хабр! Я Софья, фронтенд-разработчик в одном из департаментов Тинькофф. Из года в год наша большая фронтенд-команда растет, ставит эксперименты и обменивается опытом. Уходящий год богат на достижения, поэтому мы решили поделиться статьями, докладами и находками для командной работы. Несем все самое полезное, что получилось запустить, внедрить, написать и подготовить.
Глубокий JS. Области тьмы или где живут переменные
В статье Глубокий JS. В память и типах и данных мы говорили о том, как выглядит структура переменной каждого конкретного типа в памяти движка V8. В этой статье предлагаю теперь рассмотреть, где именно эти переменные хранятся и каким образом попадают в память.
Речь пойдет об Абстрактном Синтаксическом Дереве (AST), типах переменных, областях видимости и выделении памяти в стэке и куче.
Знакомство с WebTransport API
Hello world!
На днях я прочитал статью о WebTransport API как будущей альтернативе или даже замене WebSockets. Мне стало интересно, что это такое и с чем его едят. Давайте разбираться вместе.
<dl> или <table>? Исследуем подходы к представлению пар ключ-значение в HTML
Казалось бы, простая задача - сверстать список пар ключ-значение. Бери <div>
и делай. Но что, если захотелось подушнить? Этим и займёмся в статье...
Рассмотрим три подхода к решению этой задачи: <div>
, <dl>, <dt>, и <dd>
, и <table>
. Обсудим преимущества, недостатки и примеры.
Цель - помочь выбрать наиболее подходящий подход для конкретной задачи.
Сборка мусора в JavaScript
Каждый из нас, хотя бы раз, слышал о сборке мусора. Мы знаем, что где-то там работает сборщик мусора, убирая за нами ненужные объекты и массивы. Но сколько из нас знают, как он устроен под капотом?
В этой статье мы заглянем под капот этого процесса, поймем, как работает память, и изучим алгоритм сборки мусора.
Погнали собирать мусор!
Atomic CSS здорового человека. UnoCSS
Продолжение перевода статьи «Reimagine Atomic CSS» двухлетней давности одного из членов команды Vue core Anthony Fu, автора UnoCSS, в которой рассматривается уже сам UnoCSS.
Почему я использую эргономичную сплит-клавиатуру и не собираюсь возвращаться к обычным
На Хабре не раз и не два обсуждались эргономичные клавиатуры разных видов. В частности — сплит‑клавиатуры, которые представляют собой две половинки целой клавиатуры, соединённые между собой либо проводами, либо беспроводным каналом связи. Я расскажу о собственном пути к сплитам, который занял много лет.
Information
- Rating
- Does not participate
- Registered
- Activity