Web-разработка

Все что касается web-разработки: Front end, Back end, Full stack; HTML, CSS, JavaScript, фреймворки, технологии, безопасность и многое другое!

Web Development

ТОП-5 проблем с доступностью, которые чаще всего игнорируют

Доступность стремительно становится одним из важнейших аспектов (если не самым важным) в использовании интернета. За 2017–2018 гг. в федеральном суде почти втрое увеличилось число...
Переиспользуем соединения OkHttp по-максимуму Журнал

Переиспользуем соединения OkHttp по-максимуму Журнал

Введение Мы на Booking.com знаем, как важна для наших пользователей производительность, в том числе сетевая. Недавно мы исследовали производительность сетевого стека нашего приложения для Android...
10 высокотехнологичных ресурсов для веб-разработчиков

10 высокотехнологичных ресурсов для веб-разработчиков

Ознакомьтесь с 10 малоизвестными сайтами, предназначенными для веб-разработки. Передовые технологии, используемые этими ресурсами, - от потрясающих возможностей UI/UX до молниеносных бэкенд-решений - поднимут ваши проекты на новый уровень.
Настройка Apache для PHP

Настройка Apache для PHP

Apache HTTP-сервер - свободный веб-сервер, основными достоинствами которого считаются надёжность и гибкость конфигурации. Он позволяет подключать внешние модули для предоставления данных, использовать СУБД для аутентификации пользователей, модифицировать сообщения об ошибках и т. д.
Как с With() улучшить написание кода на Swift

Как с With() улучшить написание кода на Swift

Все мы писали код, в котором какая-то функция создавала и возвращала сконфигурированный объект. func makeButton(_ title: String?) -> UIButton { let button...
Разбор методов Ruby

Разбор методов Ruby

В Ruby много методов, которые применяются не очень часто, и о тех случаях, в которых они задействуются, многие просто не знают, потому что никогда...
Как анимировать 3D-модель с помощью PyWeb3D

Как анимировать 3D-модель с помощью PyWeb3D

Погрузимся в мир анимации и создадим анимированный клип с 3D-моделью с помощью pyWeb3D.
Как проще всего выполнять запросы GraphQL в iOS

Как проще всего выполнять запросы GraphQL в iOS

Такие сторонние библиотеки, как Apollo iOS client и AWS AppSync нужны для связи с сервером GraphQL в iOS-приложении, но они также вводят в ваш...
PurePWA - радикальный поворот в веб-разработке

PurePWA — радикальный поворот в веб-разработке

Все еще находитесь в плену у выбранного раз и навсегда фреймворка? Пересмотрите свой подход и почувствуйте первозданную силу чистых веб-стандартов.
Как тренды визуального дизайна развивались со временем

Как тренды визуального дизайна развивались со временем

Пользовательский интерфейс действует по принципу шутки: если её приходится объяснять, то она не удалась. Интуитивность  —  одна из основных концепций в области продуктового дизайна....
Плюсы и минусы Deno

Плюсы и минусы Deno

Краткий обзор достоинств и недостатков новой среды выполнения Deno, а также ее сравнение со всем известной и привычной средой Node.
Автоматическая караоке-система на основе React и Vercel

Автоматическая караоке-система на основе React и Vercel

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

Знакомство с наблюдателями Vue JS

Vue JS создан Эваном Ю и 234+ любителями в сообществе. Это прогрессивный фреймворк для создания пользовательских интерфейсов. Он состоит из простой базовой библиотеки, которая...
Nodejs

Как создать Meetup+Slack приложение с помощью Standard Library и Node.js

Meetup — это популярный веб-сайт, на котором люди со схожими интересами объединяются в группы для организации тематических мероприятий в своих городах. После того, как мы успешно...
5 популярных пакетов и фреймворков Node.js

5 популярных пакетов и фреймворков Node.js

Трудно представить современного разработчика приложений, который никогда не слышал о Node.js. Сегодня рассмотрим наиболее популярные пакеты и фреймворки Node.js, которые помогают специалистам создавать проекты.
PHP: типы операторов

PHP: типы операторов

Предыдущая часть: “PHP: типы констант” PHP поддерживает следующие типы операторов: арифметические операторы;операторы сравнения;логические (или реляционные) операторы;операторы присваивания;условные (или тернарные) операторы. Посмотрим, что делает каждый тип. Арифметические операторы Предположим, что переменная...
Как правильно обрабатывать события

Как правильно обрабатывать события 

Немного поэкспериментируем. Возьмем простой дочерний компонент в двух вариантах (генерация события и использование функции в качестве входного параметра) и сравним их по ключевым показателям.
Laravel: неизвестный, но эффективный способ реализации фильтров в Eloquent

Laravel: неизвестный, но эффективный способ реализации фильтров в Eloquent

Фильтровочный конвейер: как его задействовать для построения запроса пользователей в Eloquent с применением фильтрации? Научимся реализовывать простой и выполнимый процесс фильтрации с конвейером.
Как масштабировать Angular без ограничений

Как масштабировать Angular без ограничений

Ограничения мешают успешному развитию продукта. Освободите свой разум от тормозящих стереотипов и приступайте к масштабированию проектов на Angular!
Ключевые понятия JavaScript, которые должен знать каждый разработчик — часть 1

Ключевые понятия JavaScript, которые должен знать каждый разработчик — часть 1

Предлагаем 32 ключевых понятия JavaScript, собранные из 50+ руководств. Они помогут усвоить премудрости JavaScript, чтобы создавать оптимизированный код и избегать ошибок. В этой части будут раскрыты первые 11 понятий, включая стек вызовов, примитивные типы, типы-значения, ссылочные типы, системы типизации, операторы равенства и др.
API

Улучшение производительности .NET Core API

Google предоставляет такую статистику посещаемости веб-страниц: 53% посетителей мобильных сайтов покидают страницу, если она загружается более трёх секунд.https://www.thinkwithgoogle.com/marketing-resources/data-measurement/mobile-page-speed-new-industry-benchmarks/ Это значит, что очень важно сделать ваш сайт...
JavaScript

Как это использовать: объявление функции и функциональные выражения

Первое отличие: название Если вы создаёте функцию с названием, то вам необходимо объявить функцию. В функциональных выражениях же название не обязательно. Объявление функции: function doStuff() {}; Функциональное выражение: const doStuff...
Звучащий UI: роль звуков в интерфейсе

Звучащий UI: роль звуков в интерфейсе

Ежедневно для сбора информации и взаимодействия с окружающим миром мы используем комбинацию зрения и слуха. Однако в веб-интерфейсах эта комбинация всё ещё не отражена — большинство...
React

Поиск и использование компонентов с bit.dev для создания приложений

Bit упрощает использование компонентов из библиотек и приложений. Bit’s hub (bit.dev) облегчает поиск и взаимодействие с этими компонентами. В этой статье мы узнаем, как найти...
Раскройте возможности генераторов PHP

Раскройте возможности генераторов PHP

Как в PHP с версии 5.5 устраняется ошибка нехватки памяти? Пошагово рассмотрим применение генераторов, обратную отправку данных и возвращение значений. Приведем примеры практического использования.
Как создать сетевой API с помощью Express.js, Bun и MongoDB

Как создать сетевой API с помощью Express.js, Bun и MongoDB

С появлением Bun - среды выполнения JavaScript, заменившей Node.js, - создавать высокопроизводительные API стало гораздо проще. Предлагаем пошаговое руководство по разработке сетевого API с помощью Express.js, MongoDB и Bun.
Почему разрабатывать веб-интерфейсы так сложно?

Почему разрабатывать веб-интерфейсы так сложно?

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

Кэширование с помощью Redis и Node.js

Redis - идеальный выбор как для хранения структур данных типа "ключ-значение", так и для кэширования. Из этого простого руководства вы узнаете, как выполнить подключение бэкенда Node.js к Redis и кэшировать данные.
Глубокое погружение в замыкания JavaScript 

Глубокое погружение в замыкания JavaScript 

Вероятно, вы часто используете замыкания в коде, даже не осознавая этого. Может показаться, что замыкания - одна из самых труднопостижимых концепций в JavaScript. Мы докажем, что это не так, подробно разобрав алгоритм их работы.
WebAssembly с Go: вывод веб-приложений на новый уровень

WebAssembly с Go: вывод веб-приложений на новый уровень

Развернем интеграцию WebAssembly с Go в браузерах, настроим среду Go, преобразуем код Go в WebAssembly и выполним его в веб-контексте. В итоге получим интерактивную платформу с конкретными, мощными возможностями.
Управление Node.js 19 и NPM 9 с помощью NVM

Управление Node.js 19 и NPM 9 с помощью NVM

Обучающее практическое руководство по работе с менеджером версий Node.js - NVM.
Психологические принципы для продуктового дизайнера

Психологические принципы для продуктового дизайнера

Ни для кого не секрет, что основная часть создания успешного пользовательского опыта заключается в понимании желаний и потребностей аудитории. Таким образом, психология становится ключевым элементом...
Design Patterns

Компоненты Wrapper в Vue 2.6 и Vue 3.0

Поговорим о компонентах дизайн-системы, в особенности о компонентах wrapper. Как создать мощную структуру компонента wrapper? В примере будем использовать поле ввода и...
8 приложений и сайтов, за которые стоит заплатить: UX/UI edition

8 приложений и сайтов, за которые стоит заплатить: UX/UI edition

Предлагаем список полезных платных приложений и сайтов для UX/UI дизайнера и подробно рассматриваем их преимущества и особенности.
Реализация шаблона Saga в микросервисах с помощью Node.js

Реализация шаблона Saga в микросервисах с помощью Node.js

Рассматриваем особенности использования шаблона Saga при создании приложений с наиболее востребованной сегодня микросервисной архитектурой.
Быстрый веб-скрейпинг с библиотекой Polars

Быстрый веб-скрейпинг с библиотекой Polars

Рассказываем, как с помощью Polars выполнить простой и быстрый веб-скрейпинг с превращением таблиц с HTML-страниц в датафреймы Polars.
Интеграция Django с материализованными представлениями PostgreSQL

Интеграция Django с материализованными представлениями PostgreSQL

Предлагаем пошаговое руководство по интеграции Django с материализованными представлениями PostgreSQL. Вы узнаете, как настроить ORM Django на полную поддержку материализованных представлений с возможностью создавать и обновлять материализованные представления с помощью системы миграции Django.
Создание готового к производству приложения React с помощью Next.js и Dokku

Создание готового к производству приложения React с помощью Next.js и Dokku

Хотите создать и запустить живое приложение React с минимальным бюджетом и возможностью масштабировать его в будущем? Воспользуйтесь руководством опытного разработчика ПО, успешно реализовавшего эту задачу.
Построение бесконечного списка с помощью SwiftUI и Combine

Построение бесконечного списка с помощью SwiftUI и Combine

С момента представления SwiftUI на WWDC2019 его популярность резко возросла. В течение последних двух лет отдел разработки Apple внес в этот UI-фреймворк много улучшений....
Как создать опрос удовлетворенности сотрудников с Angular и сохранить его результаты в коллекции MongoDB

Как создать опрос удовлетворенности сотрудников с Angular и сохранить его результаты в коллекции MongoDB

Представляем вашему вниманию пошаговое руководство по созданию опроса удовлетворенности сотрудников с помощью Angular и SurveyJS - бесплатной библиотеки опросов с открытым исходным кодом.
Web-design

Проблемы при использовании отзывчивого веб-дизайна

Новый подход к решению старых проблем Отзывчивый веб-дизайн Поскольку прошло уже несколько лет с тех пор, как отзывчивый веб-дизайн был на слуху, вспомним, что это такое. Отзывчивый веб-дизайн...
Добавление 3D-элементов на сайты с помощью Babylon.js и Vite

Добавление 3D-элементов на сайты с помощью Babylon.js и Vite

Хотите погрузиться в мир веб-разработки с 3D-элементами в 2024 году? Ознакомьтесь с актуальным решением по добавлению на сайты 3D-элементов, воспользовавшись пошаговым руководством по созданию базовой версии проекта Babylon.js + Vite.
Vue

Какие нововведения для веб-разработки представит Vue 3.0?

В ноябре прошлого года создатель Vue, Эван Ю, продемонстрировал ключевые обновления на Vue 3.0, благодаря которым Vue станет более эффективным, модульным и простым в...
Aurora UI  -  новый визуальный тренд в 2021 году

Aurora UI  -  новый визуальный тренд в 2021 году

UI-дизайн, особенно его художественная, визуальная сторона постоянно развивается. В то время как большинство современных продуктов повторяют одни и те же, проверенные и хорошо известные...
Зачем использовать HttpClientFactory вместо HttpClient в .NET

Зачем использовать HttpClientFactory вместо HttpClient в .NET

Как показала практика, использование стандартного HttpClient чревато подводными камнями. Обойти их и получить весомые преимущества позволяет HttpClientFactory. Убедитесь в этом, отправившись в увлекательное приключение с примерами использования HttpClientFactory.
PHP: типы констант

PHP: типы констант

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

Почему стоит задуматься о разработке статических сайтов

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

Платформы Аngular в деталях. Часть 3. Визуализация Angular-приложений в терминале

Часть 1, Часть 2, Часть 3 В этой статье мы с вами приступим к процессу создания пользовательской платформы. Но прежде, пожалуйста, просмотрите ещё раз...
Как работает проверка доступности API в Swift

Как работает проверка доступности API в Swift

Мы постоянно применяем проверки на доступность API, чтобы обеспечить откаты ПО для пользователей, использующих старые версии iOS. А задавались ли вы вопросом, как эту...
Как инженеру-программисту Reactjs перейти на Swift и SwiftUI

Как инженеру-программисту Reactjs перейти на Swift и SwiftUI 

Узнаем, как плавно перейти с ReactJS на Swift и SwiftUI. Для этого сопоставим их наиболее распространенные шаблоны проектирования.
PHP: массивы

PHP: массивы

Массив - это структура данных, которая хранит одно или несколько значений схожего типа в одном значении. Например, если вы хотите хранить 100 чисел, то вместо того, чтобы определять 100 переменных, можно определить массив длиной 100.
Интеграция Rust в Next.js: практическое руководство для разработчика

Интеграция Rust в Next.js: практическое руководство для разработчика

Как добавить Rust в свой инструментарий и проекты? Рассмотрим различные варианты развертывания кода Rust на Vercel с написанием конечных точек API, общие закономерности разработки API, проблемы применения Rust в продакшене. Весь код и примеры ― в шаблоне.
Путешествие в мир анимации с Lottie-React-Native

Путешествие в мир анимации с Lottie-React-Native

Вы создаете умопомрачительную анимацию с помощью After Effects и намереваетесь явить ее миру. Один из способов воплотить задуманное  —  использовать ее в качестве экрана-заставки...
Software Development

Создаем голосовое приложения для Alexa и Google Home

Голосовые приложения полностью изменили наше общение с цифровым миром. Голос добавляет во взаимодействие человека и компьютера новое измерение, которое разработчики только начинают исследовать. В этой...
SnowFlake

Запуск DBT в Azure Functions с помощью Snowflake

Практики DataOps очень быстро встают на вооружение в компаниях, работающих с данными, особенно в тех, которые переходят на Cloud Data Warehouses (облачные хранилища данных)....
Angular

Платформы Аngular в деталях. Часть 4. Визуализация Angular-приложений в терминале

Часть 1, Часть 2, Часть 3, Часть 4 В этой статье, последней из серии статей «Платформы Angular в деталях», мы с вами завершим процесс создания...
Парсинг HTML из строки на Ruby On Rails

Парсинг HTML из строки на Ruby On Rails

На одном из этапов моего проекта в школе программирования Flatiron Bootcamp мне пришлось столкнулся с проблемой, совершенно отличающейся от того, что я видел раньше....
Bun или Node: бенчмаркинг бессерверных сред выполнения на AWS Lambda

Bun или Node: бенчмаркинг бессерверных сред выполнения на AWS Lambda

В начале сентября был анонсирован Bun - новый конкурент Node. Судя по анонсу, Bun - это модернизированная альтернатива Node с улучшенным опытом разработки JS-приложений и более высокой производительностью. Выяснить, так ли это, помогут результаты тестирования Bun и Node.
Работа с WebAssembly в Golang

Работа с WebAssembly в Golang

WebAssembly - это удобный стандарт для компилирования приложений, который отличается быстротой и производительностью. Сегодня попытаемся создать проект, применив потенциал языка Go и технологии WebAssembly.
Анализ работы Guess.js в приложении Angular

Анализ работы Guess.js в приложении Angular 

Познакомимся с библиотекой Guess.js и посмотрим, насколько качественно она выполняет предварительную загрузку страниц в приложении Angular.
Что такое Recover в Golang?

Что такое Recover в Golang?

Разберем случаи применения recover, проиллюстрируем примерами. Напишем универсальную функцию для обработки всех неперехваченных паник и ошибок времени выполнения, сбора трассировок стека для них.
Нужны ли нам веб-компоненты?

Нужны ли нам веб-компоненты?

Возможности веб-компонентов, в частности повторно используемый код, значительно упрощают веб-разработку. Но могут ли они полностью вытеснить другие технологии, такие как React и Vue? Глубокий обзор веб-компонентов позволит честно ответить на этот вопрос.
Как с помощью Sentry реализовать захват исключений фронтенда

Как с помощью Sentry реализовать захват исключений фронтенда

Как вовремя осуществить захват исключений? Как определить точное местоположение исключений и ошибок? Как своевременно получить уведомление после обнаружения аномалии? Все эти проблемы поможет решить Sentry - продвинутый инструмент отслеживания ошибок с открытым исходным кодом.
Шаблоны рендеринга Next JS: полное руководство

Шаблоны рендеринга Next JS: полное руководство

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

Прощай, Adobe

Впервые я познакомилась с программами от компании Adobe примерно десять лет назад, когда, будучи подростком, открыла для себя Photoshop и магические свойства Clone Tool. Затем...
3D-формат в профессии дизайнера продукта

3D-формат в профессии дизайнера продукта

За время карантина у меня было много времени подумать о своих дизайнерских целях. Я точно осознал, что не хочу застыть на одном месте. Непрерывное...
Solibee: совершенно новая коллекция UI-компонентов для SolidJS

Solibee: совершенно новая коллекция UI-компонентов для SolidJS

Набор UI-компонентов, созданный командой Solibee, предлагает совершенно новый подход к веб-разработке SolidJS. С ним вы сможете просто и быстро создавать легкие приложения, экономя массу времени и сил. Но для начала узнайте, в чем отличие инновационного проекта от традиционных библиотек компонентов.
Конфигурация файла PHP.INI

Конфигурация файла PHP.INI

Файл конфигурации php.ini является прямым методом влияния на функциональность PHP. Расскажем о его важных настройках, которые могут понадобиться для парсера PHP.
Аутентификация и авторизация пользователей в Angular 16 с помощью JWT

Аутентификация и авторизация пользователей в Angular 16 с помощью JWT

Предлагаем руководство по созданию надежной системы аутентификации и авторизации пользователей в Angular 16 с использованием JWT. Интегрировав несколько компонентов в маршрутизацию и конфигурацию модулей приложения, вы обеспечите его пользователям повышенную безопасность и комфортные условия работы.
Входящий веб-перехватчик в MS Teams

Входящий веб-перехватчик в MS Teams

Microsoft Teams с нами уже больше четырёх лет. Этот инструмент призван заменить программу-клиент «Skype для бизнеса» и был разработан в Microsoft как конкурент других...
Эффективное ведение журнала для приложений Spring Boot

Эффективное ведение журнала для приложений Spring Boot

Предусмотренные в Spring Boot стандартные методы ведения журнала далеко не всегда эффективны. Рассмотрим практическую реализацию эффективных вариантов регистрации ошибок и служебных данных в веб-приложениях.
Protractor мертв, да здравствует Cypress!

Protractor мертв, да здравствует Cypress!

24 апреля платформа Angular объявила об отказе от своего инструмента сквозного тестирования (E2E) Protractor. Остается неясным, готовит ли Angular преемника Protractor или поручит это...
Событийно-ориентированная разработка на основе браузерного расширения

Событийно-ориентированная разработка на основе браузерного расширения

В событийно-ориентированном программировании иногда приходится решать задачи, которые на первый взгляд кажутся трудновыполнимыми. Тем не менее с ними легко справиться, зная определенные лайфхаки. Сегодня поговорим о создании механизма обработки событий, который поддерживает инициирование событий на основе поведения пользователя.
Доступная и масштабируемая 3-уровневая архитектура AWS

Доступная и масштабируемая 3-уровневая архитектура AWS

Построим структуру AWS, как трехуровневый торт: с уровнями веба, приложения и базы данных. Подготовим основу - виртуальное частное облако VPC, создадим подсети, шлюзы, маршрутную таблицу, шаблон запуска, группу автомасштабирования. Разберем значение и вклад каждого уровня.
Технологический стек для создания веб-приложений

Технологический стек для создания веб-приложений

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

Диспетчер загрузки на Swift

В этой статье будет показано, как легко загрузить аудио- или любой другой медиафайл из URL-адреса и сохранить его в локальной базе данных. Возьмем в качестве...
Web Development

Получение доступа к ID элементов в DOM в качестве переменных window/global

Первое, что я узнал, начав заниматься веб-разработкой: как управлять элементами по ID из JS, со ссылкой на элементы по ID <div id="so_many">So many to think...
Подстановка учетных данных 2.0: использование прокси-серверов и GUI-инструментов, обход CAPTCHA и системы безопасности Cloudflare

Подстановка учетных данных 2.0: использование прокси-серверов и GUI-инструментов, обход CAPTCHA и системы безопасности Cloudflare

Приготовьтесь к путешествию в темный мир высокотехнологичного хакерства. Вы узнаете о новейших видах подстановки учетных данных, украденных киберпреступниками: использовании прокси-серверов и GUI-инструментов, обходе CAPTCHA и системы безопасности Cloudflare.
Почему стоит использовать обратные вызовы и асинхронный код на NodeJS

Почему стоит использовать обратные вызовы и асинхронный код на NodeJS

Предлагаем вариант сценария, в котором повышение производительности приложения было достигнуто благодаря использованию событийного цикла в NodeJS.
PHP: строки

PHP: строки

Строки представляют собой последовательности символов, например "PHP supports string operations". Строки с одинарными кавычками обрабатываются почти буквально. Строки с двойными кавычками заменяют переменные на их значения, а также особым образом интерпретируют определенные последовательности символов.
Kubernetes

Практичные Canary-релизы в Kubernetes с Argo Rollouts

Основанная на микросервисах инфраструктура Soluto, совмещенная со всеми инструментами CI/CD, позволяет осуществлять по несколько релизов в день, предоставляя пользователям новые возможности и внося исправления. При...
Подробный разбор методов Ruby

Подробный разбор методов Ruby

Вы когда-нибудь задумывались о том, что происходит при написании кода на самом деле? Я много думаю об этом. И, будучи разработчиком Ruby, часто использую...
Отложенная загрузка на уровне шаблонов в Angular

Отложенная загрузка на уровне шаблонов в Angular

Знакомьтесь с новой фичей Angular 17  —  Deferrable Views. Этот API для отложенной загрузки зависимостей шаблонов обеспечит беспрецедентный уровень эргономики. Чтобы оценить его преимущества, предлагаем сравнить новый и традиционный подходы к отложенной загрузке шаблонов.
Design

Как добавить темную тему для сайта

Один сайт — две разные темы В прошлом году я решил провести полный редизайн своего сайта. Так как это был сайт-портфолио, то я захотел сделать что-то простое и...
Angular

Использование Angular Elements с расширением Chrome

Познакомьтесь с Angular Elements Angular Elements все еще широко не используется, хотя является мощным инструментом для создания независимых и автономных компонентов. Его можно использовать на любом...
Как создавать доступные веб-приложения для дальтоников с помощью Chrome DevTools

Как создавать доступные веб-приложения для дальтоников с помощью Chrome DevTools

Хотя существует множество инструментов и техник, чтобы улучшить пользовательский опыт и сделать программы удобнее, о потребностях людей с дальтонизмом часто забывают. По данным сайта colourblindawareness.org...
10 однострочников, позволяющих профессионально писать JavaScript-код 

10 однострочников, позволяющих профессионально писать JavaScript-код 

Это руководство предназначено для начинающих разработчиков, желающих, чтобы их код выглядел, как у профессионалов. Представленные здесь 10 однострочников помогут оптимизировать JavaScript-код, сделать его лаконичнее, яснее и удобнее для чтения.
Web Design

9 мифов об интерфейсах для людей с ограниченными возможностями

Большинство дизайнеров либо вообще не знают о доступности, либо неверно её понимают: к примеру, им может казаться, что ориентация на доступность подавляет их креативность...
Автоматизация: друг или враг дизайнера?

Автоматизация: друг или враг дизайнера?

В начале XIX века Британия находилась в процессе трансформации в результате промышленной революции. Отрасли производства, как, например, обрабатывающая или текстильная, сильно изменились благодаря инновациям...
3 альтернативы репозитория в Laravel

3 альтернативы репозитория в Laravel

Рассмотрим преимущества и недостатки шаблона «Репозиторий». Изучим три альтернативы абстрагирования управления данными: заготовки Eloquent, пользовательские запросы и классы action.
Совместное использование состояний между окнами без задействования сервера

Совместное использование состояний между окнами без задействования сервера

Как разделить состояние между несколькими окнами, чтобы создать иллюзию целостной картинки? Поговорим о приемах, с помощью которых можно реализовать такую задумку.
Состояние гонки в Node.js: практическое руководство

Состояние гонки в Node.js: практическое руководство

Специалисты, имеющие отношение к параллельному проектированию, иногда сталкиваются с так называемым состоянием гонок. Сегодня поговорим о том, чем чревато такое явление, что его вызывает и как с ним бороться.
Прощай, Ramda

Прощай, Ramda

Несмотря на свои сильные стороны, Ramda не всегда подходит для написания эффективного и понятного кода. Рассмотрим случаи, когда стоит придерживаться современного нативного JavaScript и Lodash.
Startup

Что я понял за год работы программистом в стартапе

Год назад я стал разработчиком в Foxintelligence, стартапе в Париже. До этого я работал в двух компаниях в качестве администратора проектов в отделах информационных...
Запускаем Rocket REST API на AWS

Запускаем Rocket REST API на AWS

Поэтапно развернем приложение Rust на AWS: запустим экземпляр EC2, подключимся по SSH, соберем, настроим и запустим проект как службу systemd. Что нужно при развертывании реального приложения Rocket для продакшена?
Как определить и протестировать SLO

Как определить и протестировать SLO

SLO - уровень удовлетворенности пользователей производительностью сервиса. Предлагаем подробное руководство по определению и тестированию SLO для REST API с помощью Grafana Labs K6.
Организация "глобальных" провайдеров во Flutter Riverpod с помощью миксинов

Организация “глобальных” провайдеров во Flutter Riverpod с помощью миксинов

Изучите методы структурирования области применения провайдеров в Riverpod с помощью миксинов. Такой подход имеет как минимум 5 преимуществ и оказывается особенно полезным при масштабировании приложения и увеличении количества управляемых провайдеров.
Design

Что значит быть креативным дизайнером

На главных страницах таких сайтов, как Dribbble или Behance, красуются яркие, уникальные и прекрасно выполненные работы. Несмотря на то, что эти сайты рекламируют себя...
Волшебство веб-разработки: создаем цифровую страну чудес

Волшебство веб-разработки: создаем цифровую страну чудес

Почувствуйте магию веб-разработки: узнайте, что представляют собой ее компоненты и инструменты, чтобы разработать свою первую веб-страницу. Пусть веб-разработка станет вашим холстом для цифрового творчества.
Создаем первый «Astroвной» проект

Создаем первый «Astroвной» проект

Сделаем блог с «островом интерактивности», полем поиска в реальном времени и индексатором. Подключим настаиваемую интеграцию для индексирования каждого поста и расширения поведения на этапах процесса сборки.
Как хранить и кодировать видео посредством Ruby on Rails, Lambda и S3

Как хранить и кодировать видео посредством Ruby on Rails, Lambda и S3

Рассмотрим простой, но масштабируемый подход, который позволит дополнить приложение такой полезной функциональностью, как загрузка и обработка видео.
CSS

Отзывчивость – это очень просто с CSS-переменными

Если вдруг до этого вы ни разу не слышали о CSS-переменных, то поясним, что это новая функция CSS, благодаря которой в таблице стилей вы...
Python

Выбор оптимального алгоритма поиска в Python

Когда дело касается обучения, мы, как правило, используем один из двух основных подходов: идём либо вширь и стараемся охватить как можно больший спектр области,...
5 самых полезных приемов в JavaScript

5 самых полезных приемов в JavaScript

Краткая и полезная информация о практичных приемах в JavaScript от опытного разработчика. Если вы уже работали с этим языком, то не будет лишним обновить знания, а новичкам стоит обратить особое внимание на эти приемы.
Получение общих данных в Next.js одним запросом

Получение общих данных в Next.js одним запросом

Просматривая процесс сборки своего текущего проекта, я обратил внимание на то, что при генерировании страниц с использованием getStaticProps выдается много запросов к одной конечной...