Category : javascript

javascript
Как я построил эффективное обучение Junior программистов

Александр ЧепайкинSenior Developer в крупном финтехе. С 2012 года в IT, участвовал в разработке мобильных приложений, игр и сложных распределенных систем. Несколько лет работал удаленно в крупных стартапах Кремниевой долины.Программирование — одна из самых востребованных профессий, но путь в IT для новичков часто оказывается сложным и запутанным. Курсы, онлайн-школы, самообучение — все это может дать базовые навыки, но далеко не всегда приводит к трудоустройству.Я много внимания уделяю контролю…

  • суббота, 1 марта 2025 г. в 00:00:02
javascript
Next.js 15 в Hikasami: Глубокая оптимизация рендеринга, загрузки данных и производительности

ВведениеВ эпоху цифрового контента каждая миллисекунда загрузки страницы может существенно повлиять на пользовательский опыт. В Hikasami, платформе, предоставляющей потоковое аниме и азиатские медиа для пользователей СНГ, наша цель — обеспечить мгновенную загрузку страниц, минимизировать задержки, а также гарантировать актуальность данных. Для этого мы внедрили Next.js 15, который открыл перед нами возможности глубокой оптимизации:Оптимизированное серверное рендеринг (SSR) с прогрессивным кешир…

  • пятница, 28 февраля 2025 г. в 00:00:08
javascript
Centrifugo v6 + FastAPI + Python: разрабатываем веб-опросник с обновлениями в реальном времени

Друзья, приветствую!Если вы следите за моими публикациями на Хабре, то знаете, что прошлую свою статью я посвятил теме разработки мини-чата с комнатами. Там я использовал такую технологию, как веб-сокеты. Реализовал я все через FastApi + Websockets, но это был лишь один из примеров возможной реализации Real-time приложений.Сегодня же на теоретико-практическом примере я рассмотрю ещё один подход к реализации Real-time приложений, но уже при помощи такой технологии как Centrifugo.План на сегодняС…

  • пятница, 28 февраля 2025 г. в 00:00:07
javascript
Popover = hint

Эта статья — перевод оригинальной статьи «Popover = hint»Также я веду телеграм канал «Frontend по‑флотски», где рассказываю про интересные вещи из мира разработки интерфейсов.ВступлениеChrome 133 развивает существующую функцию всплывающих подсказок, представляя новый режим: popover="hint". Этот режим, управляемый браузером, позволяет использовать новый контекст наложения, упрощающий создание всплывающих подсказок и подобных эфемерных плавающих элементов. Он снижает трудозатраты разработ…

  • пятница, 28 февраля 2025 г. в 00:00:06
javascript
Чистый код

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

  • четверг, 27 февраля 2025 г. в 00:00:08
javascript
Как я маркетдату агрегировал. Визуализация данных Nasdaq, LSE и MOEX

В предыдущей статье я рассказал о finmap.org - инструменте визуализации данных Мосбиржи и американских площадок. Спасибо хабравчанам за отзывы и предложения. Отдельная благодарность за донаты, вы помогаете покрыть расходы на AWS. Благодаря вашим идеям, в finmap.org появилась строка поиска по тикеру, а в portfolio можно отобразить американские ETF.Американские ETF в портфолио (finmap.org)Для каждого сектора можно посмотреть количество ценных бумаг, которые в него входят.Мосбиржа, количество бума…

  • четверг, 27 февраля 2025 г. в 00:00:07
javascript
Топ-5 библиотек для управления состоянием React в 2025 году

Хранение данных и управление глобальным состоянием в React-приложениях всегда было важной темой среди разработчиков. К 2025 году выбор подходящей библиотеки для решения этих задач стал еще более разнообразным — от проверенного Redux до современных, легковесных решений, таких как Zustand и SWR. Каждое из этих решений имеет свои особенности, плюсы и подводные камни, что делает выбор оптимального инструмента порой непростым. В этой статье я рассмотрю 5 самых популярных библиотек на сегодняшний ден…

  • четверг, 27 февраля 2025 г. в 00:00:06
javascript
Способы разделения длительных задач в JavaScript

Иногда возникает необходимость разделить длительную дорогую (с точки зрения вычислений) задачу на несколько тиков (ticks) цикла событий (event loop). Существует множество способов это сделать. Рассмотрим их. Легко "уничтожить" пользовательский опыт, позволив длительной дорогой задаче захватить основной поток (main thread). Неважно, насколько сложным является приложение, цикл событий может выполнять только одну задачу за раз. Пока выполняется одна задача, другие ждут своей очереди. Ка…

  • среда, 26 февраля 2025 г. в 00:00:06
javascript
Как я решил проблему гибкого управления порядком импортов в большом проекте

В одном из моих недавних проектов столкнулся с проблемой: в большом приложении, над которым работают десятки разработчиков, необходимо было обеспечить единообразный порядок импортов. Несмотря на то, что команда договорилась о том, в каком порядке импортировать модули, компоненты, директривы, миксины и прочее, в старом коде порядок импортов отличался, и его ручной рефакторинг оказался слишком трудоёмким и затратным по времени.ПроблемаНаш проект разрастался, и с каждым днём количество импортов в …

  • среда, 26 февраля 2025 г. в 00:00:04