Обновить
512K+

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

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

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

Задание для саморазвития: HTML-форма со списком случайных строк и отбором по ним

Время на прочтение3 мин
Охват и читатели4.3K
Предлагаю вниманию хабровчан и гостей Хабра задание для саморазвития во frontend-стороне разработки. Задание ориентировано на исполнителей, начинающих разбираться с frontend-программированием и настроенных тесно познакомиться с базовыми механизмами программирования в браузере. Необходимые технологии: HTML, CSS, JavaScript (Vanilla).

image

Задание специально составлено так, чтобы как можно больше разобраться в базовых технологиях при минимальном подключении каких-либо дополнительных средств. По сути, требуется только браузер и редактор кода; никаких предварительных манипуляций, без необходимости обработки на backend-стороне. Кому интересно ознакомиться с постановкой — Добро пожаловать под кат!
Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №375 (5 — 11 августа 2019)

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


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

Тяжёлое бремя времени. Доклад Яндекса о типичных ошибках в работе со временем

Время на прочтение12 мин
Охват и читатели22K
В коде самых разных проектов нередко приходится оперировать временем — например, чтобы завязать логику работы приложения на текущее время у пользователя. Старший разработчик интерфейсов Виктор Хомяков victor-homyakov описал типичные ошибки, которые встречались ему в проектах на языках Java, C# и JavaScript от разных авторов. Перед ними вставали одни и те же задачи: получить текущую дату и время, измерить интервалы или выполнить код асинхронно.



— До Яндекса я работал в других продуктовых компаниях. Это не как фрилансер — написал, сдал и забыл. Приходится очень долго работать с одной кодовой базой. И я, собственно, смотрел, читал, писал много кода на разных языках и увидел много чего интересного. В итоге у меня родилась тема этого рассказа.

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

Сначала фронт, а потом бэк (когда-нибудь)

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

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


Разработка сложного функционала требует тонкой координации усилий коллектива инженеров.


И одним из важнейших моментов является вопрос распараллеливания задач.


Возможно ли избавить фронтовиков от необходимости ждать реализацию бэка? Есть ли способ распараллелить разработку отдельных фрагментов UI?


Тему распараллеливания задач в веб-разработке мы и рассмотрим в этой статье.


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

Figma — простое решение для дизайнера, сложное решение для верстальщика

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

Если вы работаете в области web-разработки, то рано или поздно, вам суждено будет познакомиться с Figma. Смиритесь с этим фактом и начинайте изучать. Я же попробую описать данный продукт, с точки зрения повседневного пользователя.
Читать дальше →

Анимированное руководство по базовым механизмам React

Время на прочтение4 мин
Охват и читатели19K
Автор заметки, перевод которой мы сегодня публикуем, говорит, что существует пропасть между использованием React для разработки пользовательских интерфейсов и необходимостью знать о том, как работает React на самом деле. Многие, применяющие React на практике, не знают о том, что происходит в недрах этой библиотеки. Здесь, в анимированной форме, будут рассмотрены некоторые ключевые процессы, происходящие в React при формировании пользовательских интерфейсов.


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

Правила подготовки макетов в Figma

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


Боль с одним проектом привела нас к решению написать правила работы


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

Результатом хождения по граблям между отделами дизайна и разработки стала идея сформулировать правила, высечь их в камне, поместить в pdf файл и раздать всем участникам процесса с директивой «следуй».
Читать дальше →

Генерируем одноразовые пароли для 2FA в JS с помощью Web Crypto API

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

Введение


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


Уверен, все, кто читают эту статью, хотя бы раз использовали двухфакторную аутентификацию (далее — 2FA, уж больное длинное словосочетание) в своей жизни. Сегодня я приглашаю вас разобраться, как устроена эта технология, ежедневно защищающая бесчисленное количество аккаунтов.


Но для начала, можете взглянуть на демо того, чем мы сегодня займемся.

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

Интеграция Опенкарт с учетными системами

Время на прочтение4 мин
Охват и читатели6.9K
Опенкарт — один из самых распространенных интернет-магазинов. Во многих случаях возникает задача интеграции со складской учетной системой (чаще всего с 1С).

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

Также часто стоит задача засинхронизировать сами товары, их параметры, фотографии и так далее.

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

Для решения данной проблемы создан модуль к Опенкарт который расширяет API опенкарта позволяя вносить изменения только на стороне учетной системы.

Модуль бесплатный с открытым кодом, расположен на гитхабе.
Читать дальше →

За и против: ценовой порог для .org все-таки отменили

Время на прочтение3 мин
Охват и читатели3.4K
ICANN разрешила регистратору Public Interest Registry, отвечающему за доменную зону .org, самостоятельно регулировать цены на домены. Обсуждаем мнения регистраторов, IT-компаний и некоммерческих организаций, которые были высказаны за последнее время.

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

Cython: более чем 30-кратное ускорение Python-кода

Время на прочтение4 мин
Охват и читатели119K
Python — это язык, который любят многие программисты. Этим языком невероятно легко пользоваться. Всё дело в том, что код, написанный на Python, отличается интуитивной понятностью и хорошей читабельностью. Однако в разговорах о Python часто можно слышать одну и ту же жалобу на этот язык. Особенно тогда, когда о Python говорят знатоки языка C. Вот как она звучит: «Python — это медленно». И те, кто так говорят, не грешат против истины.

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



Есть несколько способов ускорения Python-программ. Например, можно применять библиотеки, рассчитанные на использование нескольких ядер процессора. Тем, кто работает с Numpy, Pandas или Scikit-Learn, можно посоветовать взглянуть на программный комплекс Rapids, позволяющий задействовать GPU при проведении научных расчётов.
Читать дальше →

5 полезных плагинов для webpack

Время на прочтение5 мин
Охват и читатели23K
Привет, Хабр!

У webpack'а есть много полезных плагинов, о которых многие не знают и не используют в своих проектах. Под катом я собрал 5 таких, они могут здорово упростить вам жизнь!


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

Дайджест Joomla за июнь-июль 2019

Время на прочтение4 мин
Охват и читатели3.6K
Предлагаю вашему вниманию подборку ссылок на новые материалы по Joomla! CMS за июнь-июль 2019. В дайджесте: информация о Joomla 4, новости о Joomla, подборка ссылок на инструменты для разработчиков и вебмастеров.


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

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

Часто задаваемые вопросы о системах типов

Время на прочтение10 мин
Охват и читатели15K
Автор статьи, перевод которой мы сегодня публикуем, говорит, что источником вдохновения для её написания послужил этот пост и комментарии к нему. По его словам, IT-специалисты имеют неправильные представления о типах, используют некорректную терминологию и, обсуждая вопросы, связанные с типами, приходят к ошибочным выводам. Он отмечает то, что не является защитником статической системы типов. Единственное, что его беспокоит — это правильное использование терминов. Это позволяет вести конструктивные дискуссии. Автор говорит, что написал этот материал спонтанно, но надеется на то, что в нём нет ошибок. Если же он что-то и напутал — он просит дать ему об этом знать.



Давайте раз и навсегда разберёмся во всём том, что вызывает неразбериху при разговорах о системах типов.
Читать дальше →

Moscow SPA Meetup #5 — анонс встречи

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

Привет! Меня зовут Сергей Мелюков, я senior engineer в команде Frontend Architecture в Авито.
17 августа в нашем офисе пройдет пятый по счёту митап-сателлит Moscow.js — Moscow SPA, встреча для фронтенд-разработчиков, которым интересна тема веб-приложений (Single Page Application). Поговорим об интеграции Jest с QA-инфраструктурой, DI в качестве способа масштабирования, может ли UIKIt быть максимально гибким и подходящим для всего, росте библиотек компонентов и платформенной команде. С докладами, кроме меня, выступят эксперты из Mail.Ru, Яндекса, ВКонтакте и Тинькофф.


Встреча начнётся в 11:00. Регистрируйтесь сами и приглашайте коллег. Под катом — тезисы выступлений, ссылки на регистрацию и видеотрансляцию митапа.


О митапе

Функциональное программирование: дурацкая игрушка, которая убивает производительность труда. Часть 2

Время на прочтение8 мин
Охват и читатели21K
Сегодня мы представляем вашему вниманию продолжение перевода материала о вреде так называемого «функционального» программирования.


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

Обсуждение: что если работать без cookies — рассказываем, какие есть альтернативы

Время на прочтение3 мин
Охват и читатели8.9K
Говорим о «cookies free »решениях, которые используют, чтобы анализировать действия посетителей и показывать контекстную рекламу. Обсуждаем мнения экспертов и сообщества.

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

Typescript и react

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

Разработка на javascript иногда становится похожа на работу детектива. Как понять чужой код? Хорошо, если разработчик обладает тонким искусством называть переменные так, чтобы другие поняли суть. А как быть, если члены команды все таки не всегда способны понять замысел своего коллеги? Как понять, что приходит в аргумент какой-либо функции?


Предположим, что аргумент функции называется errors. Вероятно в errors находится массив. Скорее всего строк? Ну то, что массив это понятно. Ведь далее проверяется его длина. Но свойство length есть и у строки. Похоже, чтобы точно разобраться, необходимо поставить breakpoint и запустить скрипт. Затем полностью пройти по сценарию на UI (например нам нужен финальный шаг формы). Теперь в devtools видно, что errors — это объект с набором определенных полей, среди которых и поле length.


Подобная неоднозначность при разборе javascript кода приводит к пустой трате времени разработчика. Неплохим решением в данном случае может стать typescript (далее ts). Можно использовать его в следующем проекте, а еще лучше сделать поддержку ts в существующем. После этого время на понимание чужого кода сократится значительно. Ведь, чтобы понять структуру любых данных достаточно одного клика. Можно сконцентрироваться на логике работы с данными и в любой момент времени знать, что вы однозначно понимаете работу кода.

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

Зачем нужен собственный удостоверяющий центр

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

Примеры 1) промежуточного УЦ в открытой иерархии доверия и 2) частной иерархии, которая изолирована от открытой иерархии, со своим собственным корневым УЦ

Инфраструктура открытых ключей (PKI) традиционно имеет иерархическую структуру. В ней удостоверяющие центры (УЦ) связаны отношениями подчинённости. Все пользователи доверяют одному и тому же корневому (головному) УЦ, а каждый нижестоящий УЦ подчиняется более высокому в иерархии.

Но что, если мы хотим создать частную инфраструктуру PKI со своим собственным УЦ? Действительно, в некоторых ситуациях такие промежуточные или частные иерархии очень удобны на практике.
Читать дальше →

Смертные грехи разработчика

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

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

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