Обновить
352.37

Веб-разработка *

Делаем веб лучше

Сначала показывать
Порог рейтинга
Уровень сложности

Использование закона Фиттса: основной принцип UI/UX при разработке интернет-магазинов

Время на прочтение6 мин
Охват и читатели18K


Математический закон середины XX века применяют к дизайну UI-интерфейса онлайн-магазина, чтобы превратить посетителей в клиентов.

Читать дальше →

Представляем новый редактор Razor в Visual Studio 2022

Время на прочтение4 мин
Охват и читатели12K

С выпуском Visual Studio 2022 вы можете использовать новый редактор Razor для локальной разработки ASP.NET Core с использованием MVC, Razor Pages и Blazor. Загрузите Visual Studio 2022 и обязательно обновите его до версии 17.0.2, чтобы получить последние обновления Razor. В статье подробнее о новых фичах и дальнейших планах на Razor.

Читать далее

Новые директивы HTTP для кеширования с учётом CDN

Время на прочтение7 мин
Охват и читатели7.5K

(с) xkcd

В данный момент на рассмотрении IETF находятся два стандарта. Это новые поля в заголовке ответа HTTP: Cache-Status и таргетированный Cache-Control.

Новые поля должны упростить разработку веб-приложений, а именно: упорядочить кеширование статического контента. Сейчас с этим небольшой бардак, поскольку кеширование происходит в нескольких системах на нескольких уровнях, почти как в этом ↑ комиксе. А синхронизировать все уровни непросто, ведь текущие стандарты разрабатывались в те времена, когда ещё не существовало CDN.
Читать дальше →

Как написать эмулятор CHIP-8 на JS

Время на прочтение18 мин
Охват и читатели9.7K
Chip-8

Автор провёл детство за играми в эмуляторах NES и SNES на своём компьютере, но никогда не думал, что однажды сам напишет эмулятор. Иван Сергеев поставил перед автором задачу написать интерпретатор Chip-8, чтобы изучить основные понятия низкоуровневых языков программирования и то, как работает процессор.

Результат — эмулятор Chip-8 на JavaScript, который автор написал под его руководством. Подробности рассказываем, пока у нас начинается курс по Fullstack-разработке на Python.
Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №496 (29 ноября — 5 декабря 2021)

Время на прочтение3 мин
Охват и читатели7.6K
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.

Читать дальше →

Мифология и реальные методы прагматичного программирования

Время на прочтение12 мин
Охват и читатели22K

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

Меня зовут Кирилл Мокевнин, и я — сооснователь школы программирования Хекслет. За последние пару лет я провел собеседования с более чем 400 человек, потенциальными наставниками по совершенно разным направлениям в разработке. В результате у меня собралась большая выборка наблюдений, которые мы и разберем в этой статье.

Читать далее

Включение метрик Apache Camel в Spring Boot Actuator Prometheus

Время на прочтение4 мин
Охват и читатели4K

В данной статье я привёл решение проблемы интеграции Apache Camel метрик с Spring Boot Actuator Prometheus, которое мне не встречалось в интернете.

Читать далее

MastermindCMS2 vs Next.js

Время на прочтение5 мин
Охват и читатели3.1K

Подходит концу 2021 г. и я думаю сейчас самое время подвести итоги как продвигалась веб разработка в условиях пандемии в мире и какие технологии сейчас используется для веб-программирования. 

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

Платформы с предложениями о работе в IT-сфере, просто кишат вакансиями фронтенд разработчиков со сознанием React.

С одной стороны React нам дал возможность частями программировать интерфейс пользователя, разбирая его на части. А с другой стороны мы получили “молоток и гвозди” с помощью которых нам придется построить дом. И получилось так что сообщество программистов использует фреймворк React, чтобы написать свой фреймворк. И поэтому на рынке появляются новые фреймворки, основанные на React, которые уже решают конкретные задачи на реальных проектах. Одним из таких фреймворков является Next.js

Меня подтолкнула к написанию данной статьи, огромное количество статей и обучающих видео в интернет пространстве о возможностях Next.js. А конкретнее сказать, я начал разбираться в чем же всё-таки преимущество этого Next.js. И к моему удивлению, я понял, что MastermindCMS2, которую я успешно использую на множестве проектов, решает те же проблемы, что и пытались решить разработчики Next.js.

А вот что конкретно сделали разработчики Next.js мы рассмотрим и сравним в этой статье с технологией MastermindCMS2. Поехали!

Fight!

Так ли важно, на каком стеке вы умеете писать бекенд? А фронтенд?

Время на прочтение6 мин
Охват и читатели16K

Мне рассказывали когда-то о компании, которая писала бекенд на Java и хотела нанимать талантливых разработчиков. Чтобы привлечь их, эта компания размещала вакансии на Haskell, и потом уговаривала этих кандидатов все-таки писать на Java. По-моему, это не очень красиво (вешать ложное объявление — нехорошо), но нас сегодня интересует сама идея, лежащая в основе этой тактики: толковый разработчик важнее, чем стек, которым он пользовался в последнее время.

Вот небольшое видео, иллюстрирующее эту идею:

Читать далее

Телеграф на RxJS

Время на прочтение9 мин
Охват и читатели8.2K

На днях я смотрел кино, где оператор использовал телеграф. Он знал наизусть азбуку Морзе и очень быстро нажимал свою единственную кнопку. Я задумался: с RxJS мы способны на большее! Давайте запилим телеграф, используя единственный fromEvent и массу интересных трюков. Потренируемся с Dependency Injection, директивами и операторами RxJS, чтобы собрать демо, которое выглядит круто и звучит аутентично.

Поехали!

Node.js: шаблон сервера для аутентификации и авторизации

Время на прочтение11 мин
Охват и читатели45K


Привет, друзья!


На досуге разработал шаблон Node.js-сервера для аутентификации/авторизации, которым хочу с вами поделиться. Надеюсь, кому-нибудь пригодится.


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


Также обратите внимание, что в коде имеется несколько console.log для облегчения процесса разработки приложения. В продакшне они не нужны. В производственном режиме также не следует возвращать столь информативные message.


Если возможностей, реализованных в шаблоне, окажется недостаточно, вот парочка более продвинутых инструментов:


  • oidc-client — разработчик отказался от дальнейшей поддержки, новый мейнтейнер пока не нашелся
  • oidc-provider — рекомендация моих более опытных коллег

Если вас интересует полноценная платформа для аутентификации/авторизации "из коробки", рассмотрите возможность использования Auth0.


Репозиторий


Сервер реализован с помощью Express.js


В качестве базы данных используется MongoDB Atlas

Читать дальше →

Как я в десять раз ускорил работу таблицы Google одной строкой CSS

Время на прочтение4 мин
Охват и читатели40K
Наша компания использует Google Search Console для проверки статуса индексации и оптимизации видимости наших веб-сайтов. Также в консоли можно проверить, какие внешние веб-сайты ссылаются на вашу страницу. Однажды я просматривал страницу «Top linking sites» и заметил сильное торможение скроллинга. Оно происходило, когда я выбирал отображение большого массива данных (500 строк) вместо стандартных 10 результатов.


Раздел «Top linking sites» в Google Search Console, 500 строк на страницу

Я интересуюсь производительностью фронтенда, поэтому не мог удержаться и решил разобраться, в чём дело. В конце концов, Google активно стремится к повышению веб-производительности, поэтому стоит ожидать, что собственные публичные приложения компании будут хорошим эталоном.
Читать дальше →

Убираем JavaScript. Как при помощи htmx красиво использовать HTML и уменьшить объем кода

Время на прочтение6 мин
Охват и читатели59K

htmx — инструмент для создания сложных и интерактивных веб-приложений на HTML, альтернатива клиентскому рендерингу на Javascript. В этой статье рассказываем, как библиотека помогает переиспользовать элементы на сервере, сократить объем кода на Javascript и отказаться от сборки.

Читать далее

Ближайшие события

«Все дороги ведут к Ruby»: сравнение smart-rb и dry-rb, лайв-кодинг вычислений и карьера в Канаде

Время на прочтение3 мин
Охват и читатели2.9K

Привет! Публикуем полезные материалы по Ruby с нашего митапа. Из видео узнаете:

— Как СберМаркет решает проблему нехватки Ruby-специалистов.

— Как на Ruby реализовать модель, сопоставимую по возможностям целому компьютеру.

— Плюсы и минусы новой серии библиотек smart-rb и уже известной в Ruby-коммьюнити dry-rb.

А еще бонус: мы приглашали Стеллу Миранду, старшего разработчика в Shopify и организатора RubyConfCo и сообщества Rails Girls Vancouver. Она ответила на вопросы о RoR, работе в Shopify, карьерном росте ruby-разработчиков и развитии лидерских качеств, а также о том, как устроены сообщества в Колумбии и Канаде.

Для удобства везде проставили таймкоды, залетайте на нужные темы!

Смотреть далее

Пишем сервис на GO. Backend для апплета

Время на прочтение25 мин
Охват и читатели37K


В первой части этой дилогии мы написали рантайм контроллер для приложения на golang. Все что он умеет делать — запускать методы интерфейса Resources и функцию MainFunc, контролировать результат их выполнения, и корректно обрабатывать сигнал операционной системы о завершении работы. Это не так уж и много, но довольно полезно.


Теперь я постараюсь показать, как этот пакет можно использовать на примере простейшего бэкенда для апплета “Труд всем”. Немного поясню идею этого апплета. Допустим у нас есть любой сайт — от хомяка до новостной ленты, а в любом свободном углу при обновлении страницы показана случайная вакансия. Код апплета будет отправлять запрос на сервер и получать в качестве результата HTML код (уже готовый рендер) для вставки на страницу сайта.


Правда интригующе? Где же получать информацию о вакансиях? Где хранить эту информацию? Какие критерии отбора вакансий использовать? Для того, чтобы узнать ответы на эти вопросы, прошу заглянуть под кат!

Читать дальше →

Рождественские календари для разработчиков

Время на прочтение2 мин
Охват и читатели4.2K

Добрый день, меня зовут Павел Поляков, я Principal Engineer в каршеринг компании SHARE NOW, в Гамбурге в ?? Германии. А еще я автор Telegram-канала Хороший разработчик знает, где рассказываю обо всем, что должен знать хороший разработчик.

Сегодня я хочу поговорить про Рождественские календари для разработчиков. А именно - как провести декабрь с пользой.

Читать далее

Как сделать удобное 3D-меню на CSS

Время на прочтение9 мин
Охват и читатели14K

В новых AR/VR-играх часто заставляют меню как будто парить в воздухе. Воссоздадим основу этого эффекта, добавим адаптивную цветовую схему и учтём пользователей, предпочитающих поменьше анимации. Меню будет работать со скринридером, геймпадом, сенсорным вводом и не только. Подробностями делимся к старту курса по Frontend-разработке.

Читать далее

PHP Дайджест № 216 (15 – 30 ноября 2021)

Время на прочтение5 мин
Охват и читатели10K


Подборка свежих новостей и материалов из мира PHP.
В выпуске: вышел PHP 8.1, создана организация PHP Foundation с целью развития и поддержки PHP, критическая уязвимость в doctrine/dbal, в PHP 8.2 будут объявлены устаревшими динамические свойства, вышли Symfony 6 и Symfony 5.4.
Также в выпуске полезные статьи, видео и другие новости сообщества.

Приятного чтения!
Читать дальше →

Создаем CLI-приложение с помощью React.js

Время на прочтение7 мин
Охват и читатели9.4K

Приложения с интерфейсом в виде командной строки (Command-Line Interface — CLI) стали популярными в экосистеме разработчиков по целому ряду причин. Самые банальные из них — это простота использования (CLI) и то, что многие важнейшие инструменты разработки представляют из себя терминальные приложения или предоставляют интерфейс командной строки, и многие разработчики уже к ним привыкли.

Читать далее

Вклад авторов