Обновить
256K+

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

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

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

Маршрутизация в большом приложении на React

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


Привет, меня зовут Борис Шабанов, я — руководитель Frontend-разработки в департаменте разработки рекламных технологий Rambler Group. Сегодня я расскажу вам о том, как на нашем приложении возникли проблемы маршрутизации, и про то, как мы их решали.

Каждый разработчик знаком с ситуацией выбора технологического стека для проекта. Приходится проанализировать множество факторов - от целей проекта и ресурсов до бюджета, соотнести все это с особенностями фреймворков, например, Angular и React, и на основе этого уже подбирать решение. Причем у разных разработчиков оно может быть разным: и каждый будет уверен, что он прав. Мы не будем сравнивать фреймворки, тем более что статей, отзывов и другой информации полно и на Хабре, и на других ресурсах. Да и на профильных конференциях о них постоянно говорят. Сегодня мы предлагаем вам сразиться в поединке умов.
К барьеру

Руководство по Node.js, часть 5: npm и npx

Время на прочтение9 мин
Охват и читатели78K
Сегодня, в пятой части перевода руководства по Node.js, мы завершим разбор возможностей npm, в частности, коснёмся таких вопросов, как выяснение установленных версий npm-пакетов, установка старых версий пакетов, обновление зависимостей, локальная и глобальная деинсталляция пакетов. Здесь же мы поговорим и об npx.



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

4 октября, Москва — Backend Stories 2.0

Время на прочтение1 мин
Охват и читатели3K
В четверг, 4 октября, на площадке Deworkacy (ул. Большая Полянка, д.2/10, стр 1) мы проведём митап для backend-разработчиков.



Начинаем в 19.00, подробности — под катом.
Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №331 (17 — 23 сентября 2018)

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


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

CSS Grid — швейцарский армейский нож для макетов сайтов и приложений

Время на прочтение9 мин
Охват и читатели54K
В течение последних двух месяцев я углубился в изучение CSS Grid. В этой заметке я хочу поделиться своими основными соображениями. Чтобы было более понятно, я объясню все с помощью диаграмм.

Вероятно, вы уже знакомы с блоковой моделью CSS для обычных элементов. Давайте начнем с аналогичного «общего обзора» для CSS Grid:


В основе структуры CSS Grid находится основной контейнер, представляющий собой обычный div, имеющий margin, border и padding. Для создания CSS grid контейнера добавим свойство display: grid. Элементы сетки — это потомки, размещенные внутри родительского контейнера. Они обычно определяются как список, описывающий header, sidebar, footer или другие аналогичные элементы макета сайта, зависящие от его дизайна.
Читать дальше →

11 JavaScript-библиотек для визуализации данных, о которых стоит знать в 2018 году

Время на прочтение7 мин
Охват и читатели48K
Мы живём во времена взрывного роста объёмов данных, генерируемых и потребляемых человечеством. Практически в каждом из разрабатываемых сегодня приложений данные либо используются где-то внутри них, либо визуализируются. Программисты, используя данные, стремятся сделать работу с их программами максимально комфортной.

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

Данные, которые представляют пользователю приложения, не только должны иметь для него ценность сами по себе. Их следует оформлять так, чтобы с ними было быстро, удобно и приятно работать.

image

Сегодня мы представляем вашему вниманию перевод материала, в котором рассмотрены опенсорсные JavaScript-библиотеки для визуализации данных.
Читать дальше →

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

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


Хочу поделиться с вами историей хорошей жизни и долгой, медленной и мучительной смерти одного, некогда крупного, портала недвижимости. Который не был готов меняться и делать резкие движения для того, чтобы подстроится под меняющийся рынок. Продукт, который за 10 лет прошел путь от ТОП-10 до дна. Это история о важном значении той нити, которая соединяет разработчиков, с их пониманием и сладом ума, и руководителей/директоров/менеджеров со своим подходом к управлению проектом.
Читать дальше →

Руководство по Node.js, часть 4: npm, файлы package.json и package-lock.json

Время на прочтение17 мин
Охват и читатели225K
Сегодня мы публикуем четвёртую часть перевода руководства по Node.js. В этом материале мы начнём разговор об npm а также рассмотрим особенности файлов package.json и package-lock.json.



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

Раскрываем формулу ИКС — индекса качества сайта Яндекса

Время на прочтение1 мин
Охват и читатели24K
image 31 августа Яндекс заменил ставший привычным тИЦ (тематический индекс цитирования) на непонятный ИКС — индекс качества сайта.

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

Что нам остается делать? Правильно, провести исследование и докопаться до истины!

Исследование проводилось на основе данных о 705 крупнейших форумах Рунета, Уанета и Байнета. Сведения о форумах были получены из рейтинга форумов ForumRate.ru.
Читать дальше →

Руководство по Node.js, часть 3: хостинг, REPL, работа с консолью, модули

Время на прочтение14 мин
Охват и читатели89K
Перед вами третья часть перевода руководства по Node.js. Сегодня мы поговорим о выборе хостинга для Node.js-проектов, о том, как работать с Node.js в режиме REPL и как запускать скрипты с аргументами, о взаимодействии с консолью и о модулях.



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

(Не)коммерческий проект: Redis меняют лицензии, но остаются в open source

Время на прочтение4 мин
Охват и читатели7.6K
Во второй половине августа на сайте Redis Labs, разработчиков одноименного сетевого журналируемого хранилища данных, появился пост, в котором говорилось об изменении лицензионной политики проекта. В сети сразу родилось мнение, что Redis планируют сделать проприетарным продуктом.

Тревога оказалась ложной. Redis останется открытым проектом и продолжит распространяться по лицензии BSD. Однако компания-разработчик все же изменила лицензию для ряда модулей с GNU AGPL на Commons Clause.

Разбираемся, что это значит для Redis и говорим о проблемах коммерциализации открытых проектов в целом.

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

VPS.today — каталог виртуальных серверов

Время на прочтение8 мин
Охват и читатели12K
В октябре моему проекту Поиск VPS исполнится 5 лет. В 2013 году я представил его общественности, и он был воспринят пользователями и хостерами крайне положительно. В течение следующего года я активно развивал сайт и добавлял различные функции, однако с 2015 года на сайте не происходило практически никаких изменений. Мое мнение практически во всем — если что-то хорошо работает, то лучше это не трогать. Сайт работает достаточно хорошо, нужно только обновлять тарифы, но мне всегда хотелось большего. Поэтому не так давно я решил сделать небольшое ответвление этого проекта, и в результате получился новый сайт для поиска виртуальных серверов — VPS.today, о котором я сегодня хочу рассказать.



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

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

Ленивая загрузка изображений с использованием IntersectionObserver

Время на прочтение7 мин
Охват и читатели23K
В наши дни главным камнем преткновения на пути к высокой скорости загрузки сайтов являются изображения. Это особенно характерно для проектов из сферы электронной коммерции. На них изображения, обычно довольно «тяжёлые», составляют основную часть содержимого страниц. Это, как правило, приводит к тому, что для того, чтобы показать пользователю страницу, его браузеру требуется загрузить несколько мегабайт графических данных. Как ускорить загрузку страниц в такой ситуации? Ответу на этот вопрос и посвящён материал, перевод которого мы сегодня публикуем.

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

Куда попадают web-сайты после смерти? Личный опыт

Время на прочтение3 мин
Охват и читатели13K
Привет habr.

Еще давно, более 10 лет назад, завел я себе веб-сайт. Точнее, даже два. Первый был типичной домашней страничкой в стиле narod.ru (если кто помнит), честно сверстанный с помощью Блокнота в HTML. Контактиков и ЖЖ еще не было, так что иметь свой сайт с фотогалереей, лентой новостей, гостевой книгой и счетчиком посетителей внизу страницы, тогда было круто. Второй сайт в домене com, предназначался для размещения нескольких shareware программ. Для него был даже куплен фирменный дизайнерский шаблон, так что выглядел сайт по тем временам, вполне неплохо.

Гением shareware я так и не стал, 1-2 продажи в месяц приносили доход не более 25$, чего могло хватить разве что на поход в Макдональдс, обновлять домашнуюю страничку со временем тоже надоело. Платить ежемесячно за хостинг стало бесмысленно, и было решено эти сайты закрыть, просто не продлевать их, и дело с концом.

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

Дайджест свежих материалов из мира фронтенда за последние две недели №330 (3 — 16 сентября 2018)

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


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

Поиск правильного способа разделения материалов сайтов с помощью Webpack

Время на прочтение17 мин
Охват и читатели29K
Поиск наилучшего способа организации материалов веб-проектов может оказаться непростой задачей. Существует множество различных сценариев работы пользователей с проектами, множество технологий и других факторов, которые нужно принимать во внимание.

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

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

Семь эмпирических правил для экспериментов с веб-сайтами

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


Перевод статьи: Experimenters Rules of Thumb

Владельцы веб-порталов, от самых маленьких, до таких крупных, как Amazon, Facebook, Google, LinkedIn, Microsoft и Yahoo, пытаются улучшить свой сайты, оптимизируя различные метрики, начиная с количества повторных использований до проведенного у них времени и выручки. Нас привлекали к проведению тысячи экспериментов на Amazon, Booking.com, LinkedIn и Microsoft, и хотим поделиться семью эмпирическими правилами, которые мы вывели из этих экспериментов и их результатов. Мы верим, что эти правила широко применимы как при оптимизации веба, так и в ходе анализа за пределами контрольных экспериментов. Хотя бывают исключения.

Чтобы сделать эти правила более весомыми, мы приведём реальные примеры из нашей работы, причем большинство из них будут опубликованы впервые. Некоторые правила озвучивались и ранее (например, «Скорость имеет значение»), но мы дополнили их допущениями, которые можно использовать при проектировании экспериментов, и делимся дополнительными примерами, которые улучшили наше понимание того, где скорость особенно важна, а в каких областях веб-страниц она не критична.

Эта статья преследует две цели.

Первая: научить экспериментаторов правилам хорошего тона, которые помогут оптимизировать сайты.

Вторая: предоставить сообществу KDD новые темы для исследований применимости этих правил, их улучшения и наличия исключений.
Читать дальше →

Различия Phoenix и Rails глазами новообращённого

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

Что больше всего бросилось в глаза заядлому рубисту, когда он только только начал изучать Elixir с Phoenix-ом.
Посмотреть чужими глазами

PHP-Дайджест № 139 (3 – 17 сентября 2018)

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

Свежая подборка со ссылками на новости и материалы. В выпуске: PHP 7.3 RC 1, PhpStorm 2018.3 EAP, Laravel 5.7 и другие релизы, HHVM прекращает поддержку PHP, типизированные свойства в PHP, порция полезных инструментов, видеозаписи докладов, и многое другое.
Приятного чтения!