Pull to refresh
1
0.1
Send message

Процесс рендеринга Vue

Reading time10 min
Views7.1K

Добрый день! Меня зовут Александр, я работаю frontend-разработчиком в компании Nord Clan. В прошлой статье мы рассмотрели процесс компиляции Vue, а теперь надо как-то «пристроить» результат этой самой компиляции в процесс рендеринга.

Дизайн лого: Марина Четвертакова

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments0

Git. Скачем между ветками как древесные лягушки

Level of difficultyEasy
Reading time6 min
Views23K

Статей на тему много, но, видимо, недостаточно: время от времени слышу от коллег (последние 10 лет, в 4-х разных компаниях):

«Не могу пошарить экран с кодом, у меня другая ветка сейчас».

«Не хочу переключать ветку, придется запускать кодогенерацию, у меня сбросятся build-файлы, потом это опять пересобирать!»

«Стаскивать ветку для просмотра ПР? Это же неудобно, надо "стэшить" изменения, ветку переключать».

Читать далее
Total votes 87: ↑87 and ↓0+103
Comments71

Вселенная как театр одного актёра

Level of difficultyEasy
Reading time12 min
Views2.8K

На Хабре часто можно встретить статьи о том, что Вселенная - это компьютерная симуляция, чистая математика, живой организм или даже самообучающаяся нейронная сеть. Я и сам не без греха и имею за своим авторством несколько таких постов. Наш мир как раз и прекрасен тем, что каждая из подобных метафор прекрасно описывает всё мироздание - можно провести бесконечное количество аналогий между примерами из разных областей знания и устройством Вселенной. Это напоминает то, как в древнеиндийской философии описывается мир - в виде огромной сети из бесчисленного количества драгоценных каменьев, каждый из которых отражается во всех остальных и отражает их сам. Целое отражает часть, часть отражает целое - великий фрактал мироздания.

Некоторое время назад я публиковал пост под названием "Нейросети, виртуальная реальность и Бог-солипсист", в котором я вскользь коснулся темы того, что Вселенная представляет из себя игру божественного сознания с самим собой. В данном посте я собираюсь раскрыть эту идею, всесторонне её осветить и провести аналогию между устройством Вселенной и театром. Однако, стоит воспринимать этот текст не как дословную модель мироздания, а скорее как поэтическое описание реальности.

Читать далее
Total votes 17: ↑15 and ↓2+15
Comments8

Обзор OpenTofu 1.7.0: установка, миграция с Terraform, ключевые особенности

Level of difficultyEasy
Reading time11 min
Views4.3K

30 апреля из бета-тестирования вышел OpenTofu 1.7.0. Это Open Source-форк Terraform, который развивается под управлением Linux Foundation. Ранее мы уже писали о причинах разработки OpenTofu, связанных с изменением лицензионной политики HashiCorp в отношении своих продуктов. В этой же статье мы сделаем обзор версии 1.7.0: установим OpenTofu, выполним миграцию инфраструктуры с Terraform, а также рассмотрим ключевые особенности данного релиза.

Читать далее
Total votes 15: ↑14 and ↓1+18
Comments6

Web APIs, которые функционально приближают веб-приложения к нативным

Level of difficultyMedium
Reading time6 min
Views15K

Исходные данные: мы с командой делаем банковское приложение. Веб-приложение. Не все поверят, но сегодня реально реализовать на вебе такой пользовательский опыт, от которого люди не будут скрипеть зубами и умолять вернуть им натив. Расскажу, какие Web API мы используем, раскрою тонкости и покажу примеры кода.

Читать далее
Total votes 33: ↑31 and ↓2+35
Comments31

Шпаргалка по XPath и CSS-селекторам

Level of difficultyMedium
Reading time5 min
Views11K

Для написания автотестов используются XPath и CSS-селекторы. Они помогают найти элемент на странице, чтобы потом с ним как-то взаимодействовать (кликнуть, ввести текст, или что-то другое).

Я видела много статей о том, что это вообще такое, но мне очень не хватало шпаргалки по разным селекторам, причем в разрезе «Вот он в CSS и он же в XPath» для сравнения. 

А мне такое для студентов надо. Поэтому решила сделать сама. Вдохновлялась страничкой «Xpath cheatsheet», но сделала на свой вкус — под автоматизацию, а не XPath вообще. И с комментариями, с ними удобнее. 

Пишите, если где-то накосячила. Хотя я все селекторы проверяла на тестовых страницах, но мало ли… И надеюсь, вам такая шпаргалка тоже пригодится! =)

Читать далее
Total votes 12: ↑12 and ↓0+16
Comments12

Реализуем touch жесты на vanilla js. Часть 2 (drag, resize)

Level of difficultyMedium
Reading time6 min
Views1.6K

В предыдущей части мы подробно разобрали как устроены touch события и реализовали жест rotate, самое время добавить оставшиеся.

Читать далее
Total votes 8: ↑8 and ↓0+9
Comments3

Разработчикам: рецензия на книгу «Создание микрофронтендов» (Building Micro-Frontends) Луки Меццалиры

Level of difficultyEasy
Reading time4 min
Views2.6K

Продолжаем рецензии на книги по ИТ‑тематике с промокодом от нашего блога. Сегодня это перевод известной книги «Building Micro‑Frontends» O'REILLY по микросервисам, вышедший в издательстве БХВ‑Петербург весной 2024г. Книга рассчитана на широкий круг веб‑разработчиков, архитекторов и руководителей команд, работающих с веб‑приложениями. А в целом, полезна всем, кто столкнулся с проблемами масштабируемости, параллельной разработки и организации кодовой базы при создании сложных фронтенд‑приложений.

Читать далее
Total votes 9: ↑8 and ↓1+15
Comments4

Вы думаете рисовать линии это просто?

Level of difficultyMedium
Reading time13 min
Views26K

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

Читать далее
Total votes 60: ↑58 and ↓2+70
Comments39

Улучшаем региональное продвижение сайта

Level of difficultyMedium
Reading time7 min
Views2.7K

На одном из недавних проектов снова встал вопрос регионального продвижения. Проект уже имел региональный функционал на основе поддоменов. О том что нас не устраивало и как мы нашли win-win способ для поисковиков от Yandex и Google.

Читать далее
Total votes 9: ↑7 and ↓2+9
Comments12

Сравнение технологий WebSockets, Server-Sent-Events, Long-Polling, WebRTC и WebTransport

Reading time16 min
Views11K

При работе с современными веб-приложениями реального времени незаменима возможность отправлять события с сервера на клиент. Именно этой необходимостью продиктовано то, что за годы работы было изобретено несколько методов для этой цели, каждый с собственным набором достоинств и недостатков. Первоначально единственным вариантом был длинный опрос. Затем в качестве альтернативы появились веб-сокеты — более надёжное решение для двунаправленной коммуникации. Вслед за веб-сокетами появились события, отправляемые сервером (SSE), более простой метод, обеспечивающий однонаправленную связь от сервера к клиенту. Забегая вперёд, сейчас разрабатывается ещё и протокол WebTransport, который может тем более изменить ландшафт этой области, обеспечивая более эффективный и гибкий подход, располагающий к масштабированию. В некоторых нишевых случаях можно присмотреться и к технологии WebRTC, предназначенной для работы с событиями в направлении сервер-клиент.

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

Читать далее
Total votes 24: ↑22 and ↓2+27
Comments4

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

Level of difficultyEasy
Reading time14 min
Views9.7K

В статье расскажу и покажу, как сверстать письмо, чтобы оно наверняка правильно отображалось во всех почтовых клиентах — особенно в Outlook, который до сих пор возглавляет подборки по популярности в РФ.

В конце — пример целого письма в HTML.

Читать далее
Total votes 42: ↑40 and ↓2+40
Comments17

Пунктирные вау-эффекты: о магии простыми словами

Reading time7 min
Views38K


Продолжаем смотреть технические приемы создания различных анимаций в интерфейсах. Мы уже познакомились с частицами, масками и изменением форм различных объектов — настал черед рисовать пунктирные линии.

Перед тем, как перейти к статье, сделаю небольшое отступление. Эта серия статей предназначена для разработчиков (в первую очередь начинающих), которые хотят делать красивые вещи, но совершенно запутались в сложных инструментах. Каждый раз мы затрагиваем какой-то один прием использования того или иного инструмента и смотрим, к созданию какиих эффектов его можно применить. Комментарии о том, что “во времена флеша было лучше” или что “нужно анимации рисовать в AfterEffects” безусловно имеют право на существование, но будут вырваны из контекста и совершенно не помогут начинающим в решении их задачи.
Total votes 60: ↑60 and ↓0+60
Comments15

70+ бесплатных приманок для ловли хакеров

Reading time12 min
Views24K

Сегодня я хочу поделиться подборкой open source ханипотов, которые можно использовать для защиты своих серверов и локальных сетей от кибератак. Но для начала давайте разберемся, что такое ханипот и зачем он нужен.

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

Читать далее
Total votes 49: ↑49 and ↓0+49
Comments4

Тонкости Javascript/Node.js. Увеличиваем производительность в десятки раз

Reading time3 min
Views43K

Вступление


Появилась необходимость обмениваться сообщениями между сервером и клиентом в бинарном виде, но в формате JSON в конечном итоге. Начал я гуглить, какие существуют библиотеки упаковки в бинарный вид. Пересмотрел немало: MesssagePack, Bson, protobuf, capnproto.org и другие. Но эти все библиотеки позволяют паковать и распаковывать готовые бинарные пакеты. Не очень копался, возможно ли делать парсер входящего трафика по кускам. Но суть не в этом. С такой задачей никогда не сталкивался и решил поиграться с нодой и сделать свой. Куда же без костылей и велосипедов? И вот с какими особенностями Node.js я столкнулся…
Читать дальше →
Total votes 47: ↑35 and ↓12+23
Comments38

Как сделать Private Routes с авторизацией через JWT token

Level of difficultyMedium
Reading time8 min
Views27K

Статья о JWT-авторизации и создании приватных страничек сайта для авторизованных пользователей. Простым и понятным языком. Даже твой кот сможет написать эту фичу по этому туториалу :)

Читать далее
Total votes 2: ↑1 and ↓10
Comments12

Действительно ли у Вселенной есть больше трёх пространственных измерений?

Level of difficultyMedium
Reading time8 min
Views18K

Из любой точки пространства вы можете свободно двигаться в любом направлении. Независимо от того, куда вы повернётесь, вы сможете двигаться вперёд-назад, вверх-вниз или из стороны в сторону: у вас есть три независимых измерения, в которых вы можете перемещаться. Есть и четвёртое измерение — время. Мы движемся сквозь него так же неизбежно, как и сквозь пространство, и, согласно теории относительности Эйнштейна, наше движение сквозь пространство и время неразрывно связаны друг с другом. Но возможны ли дополнительные виды перемещений? Могут ли существовать дополнительные пространственные измерения, помимо трёх известных нам?

Этот вопрос волнует физиков уже около века, а многие математики и философы задаются им значительно дольше. Существует множество убедительных причин для того, чтобы рассматривать такую возможность, но есть и явные свидетельства того, что ничего подобного не существует. Об этом говорят как математика, так и физика. Хотя физические последствия, которые могут возникнуть в результате появления дополнительных пространственных измерений, имеют жёсткие ограничения, математические возможности интересуют нас не менее сильно.
Читать дальше →
Total votes 40: ↑36 and ↓4+53
Comments101

Кривые в компьютерной графике. Урок 1: Анимации

Reading time6 min
Views8.2K

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

Читать далее
Total votes 13: ↑12 and ↓1+13
Comments5

Information

Rating
2,676-th
Location
Россия
Date of birth
Registered
Activity

Specialization

Specialist
TypeScript
Vue.js
CSS
HTML