Pull to refresh
0
0
Степан @Haze27

Веб-программист

Send message

Неизвестно полезный CSS. Часть 3

Level of difficultyMedium
Reading time7 min
Views14K


Привет, Хабр. Я продолжаю рассказывать про неизвестные широкому кругу разработчиков CSS-фишки. Я отбираю их так, чтобы они были полезны в разного рода проектах. Неважно, верстаете ли вы сайт для малого бизнеса или создаёте супермодное React-приложение. Они поддерживаются большинством браузеров. Отдельно отмечу, что я не считаю IE11 современным браузером. По этой причине я не учитывал его.


Сегодня мы рассмотрим:

  • возможность задать несколько фонов с помощью свойства background;
  • свойство display, которое позволяет сделать так, что свойства элемента будут влиять через потомка;
  • как заставить псевдоэлемент nth-child выбрать элементы без привязки к позиции;
  • где будет находиться элемент с position: absolute, если для него заданы свойства grid-column и grid-row.

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

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

Записываем музыку при помощи CSS Grid

Level of difficultyMedium
Reading time8 min
Views7.1K
Слишком часто я наблюдал за тем, как импровизирующий музыкант трясущимися руками пытается увеличить pdf размером A4 на крошечном экране телефона в самом разгаре исполнения. Мы обязаны создать плавный и отзывчивый рендеринг музыки для веба!

В вебе нотная запись должна быть столь же доступной и плавной, как текст; однако пока это не так, и это уязвляет мои чувства. Давайте решим эту актуальную проблему.

Прототип Scribe


SVG, отрендеренный Scribe 0.2

Несколько лет назад я создал прототип рендерера музыки, который назвал Scribe. Он выполняет преобразование JSON в SVG. Изначально я стремился к созданию адаптивного рендерера музыки. Это было хорошее демо, но для дальнейшего развития пришлось бы писать сложный многопроходный движок генерации макетов, а у меня тогда возникли другие дела.

Вскоре после этого я занялся адаптированием Grid под проекты компании, и тут мне почудилось нечто знакомое: я задался вопросом, а не станет ли он решением некоторых проблем, с которыми я столкнулся при разработке Scribe?
Читать дальше →

Предвестники шторма в малом и среднем бизнесе, и в государственных структурах среднего размера

Level of difficultyHard
Reading time18 min
Views11K

Для лиги лени: много лет в российском ИТ продвигалась политика «Умные нам не надобны. Надобны верные». В связи с этим в российском интернете уже сейчас много интересных моментов и криков боли – свободные мидлы кончились, а джуны не прыгают за табличкой 'морковка будет завтра'. Потому что морковки для них уже давно нет, осталась только табличка, и джуны это знают.

Посвящается моему бывшему руководителю Анатолию А., который на прошлой неделе (в апреле 2024 года) узнал, что контейнеры при настройке по умолчанию вовсе не предназначены для хранения чего-либо, и что скорость дисковых операций контейнера даже с подключенным локальным NVME несколько ниже, чем он представлял.

Читать далее

5 полезных JS-библиотек для анимации, которые могут пригодиться в работе

Reading time4 min
Views5.1K

Привет, Хабр! Сегодня поговорим о фронтенде, а точнее, о способах улучшения веб-приложения. В этом могут помочь JS-библиотеки для анимации. В подборке их пять, но если вы знаете и другие, причём те, что применяете в работе сами, расскажите о них в комментариях.

Читать далее

Welcome book: что мы включили в документ

Level of difficultyEasy
Reading time3 min
Views4.1K

Недавно мы писали на сайте о том, как проходит процесс адаптации в нашей компании. В одном из пунктов этого процесса есть знакомство с Welcome book.  Хотим рассказать, зачем нужен этот документ и что мы включили в него. 

Welcome book - это документ, представленный чаще всего в электронном виде, в котором собрана вся информация, которая понадобится новому сотруднику в начале своего пути в компании. Он отвечает на важные вопросы, которые могут появиться у новичка. Качественный Welcome book помогает быстрее влиться в рабочий процесс, стать полноценным участником команды и почувствовать свою ценность для компании.

Скорее всего, в большинстве компаний этот документ имеет примерно одно и то же наполнение. Мы расскажем, какие блоки входят именно в наш  Welcome book.

Читать далее

Вычислительные выражения: Типы-обёртки

Level of difficultyHard
Reading time8 min
Views1.4K

Четвёртая статья из цикла Вычислительные выражения Скотта Влащина. Скотт рассказывает о типах-обёртках и об их глубокой связи с вычислительными выражениями.

Читать далее

Знакомство с библиотекой libevent на примере создания простейшего Web-сервера картинок

Reading time7 min
Views12K
В данной статье я покажу как используя библиотеку libevent, написать простейший Web-сервер, который будет по запросу клиентов выдавать файлы jpeg картинок.

Библиотека libevent предоставляет программистам доступ к кроссплатформенному асинхронному сетевому API. На основе данной библиотеки можно создавать высокопроизводительные сетевые приложения. Например, libevent используется в таких известных приложениях как Memcached (распределённая система кэширования) и TOR (распределённая анонимная сеть).

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

Сборка мусора в V8

Reading time19 min
Views7.2K

В этой статье мы детально разберем процесс сборки мусора движком V8. Познакомимся с понятиями поколений, Minor и Major Garbage Collection, посмотрим, как аллоцируются, трассируются и маркируются объекты в памяти. Что происходит с пустыми областями после очистки, и как выполняется сборка мусора в фоновом режиме. 

Читать далее

Правильный подход к модульной архитектуре

Level of difficultyMedium
Reading time8 min
Views8.5K

Эта статья строится на двух простых идеях:

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

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

Читать далее

MiVOLO: новая State-of-the-Art нейросеть с открытым исходным кодом для определения пола и возраста по фотографии

Level of difficultyMedium
Reading time12 min
Views5.9K

Привет, Хабр!

Хочу рассказать вам нашу историю о том, как изначально рутинная рабочая задача закончилась созданием открытой state-of-the-art нейросети, научной работой и новым датасетом.

Читать далее

Simple Field Validation

Reading time4 min
Views6.1K
В процессе профессиональной деятельности приходится постоянно сталкиваться с валидацией полей ввода текста на экранах мобильных устройств. Чаще всего это пара-тройка экранов на приложение (SignIn, SignUp, Profile).

Ради этого подтягивать внешние зависимости представляется избыточным. Например, тот же Hibernate Validator добавляет порядка 8000 методов и 1 мб к весу финальной apk, что выглядит… избыточным )

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

Реализацией этой идеи под Android и хочу поделиться.
Читать дальше →
2

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity