Pull to refresh
50
0
Send message

Основные принципы маскирования в CSS

Level of difficulty Medium
Reading time 8 min
Views 12K

В мире дизайна маскирование является популярной техникой реализации уникальных эффектов. Будучи дизайнером, я сам использовал эту технику много раз, но не очень часто в веб-среде. Думаю, что от её применения на сайтах меня удерживала недостаточная поддержка браузерами. Полноценно этот функционал поддерживается в Safari и Firefox, а вот в браузерах на движке Blink (Chrome и Edge) — лишь частично.

Радует то, что тема CSS маскирования будет частью Interop 2023, а значит, вскоре можно ожидать кросс-браузерную поддержку этой возможности (Вау!).

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

Поехали!
Читать дальше →
Total votes 44: ↑44 and ↓0 +44
Comments 1

Как на самом деле работает Async/Await в C# (Часть 1)

Level of difficulty Hard
Reading time 12 min
Views 49K

Несколько недель назад в блоге «.NET Blog» появилась статья «Что такое .NET, и почему вы должны выбрать его?». В нем был представлен высокоуровневый обзор платформы, кратко описаны различные компоненты и архитектурные решения, а также обещаны более подробные посты по затронутым темам. Этот пост является первым таким продолжением, в котором подробно рассматривается история создания, архитектурные решения и детали реализации async/await в C# и .NET.

Читать далее
Total votes 18: ↑17 and ↓1 +16
Comments 8

6 новых возможностей CSS, которые должен знать каждый front-end разработчик в 2023 году

Level of difficulty Easy
Reading time 2 min
Views 25K

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

Я считаю, что каждый front-end разработчик должен знать, как использовать container query, создавать привязку к прокрутке, избегать position: absolute с помощью grid, быстро создавать круг, использовать каскадные слои и достигать большего с помощью логических свойств. Эта статья — описание каждой из 6 новых возможностей CSS.

Читать далее
Total votes 19: ↑12 and ↓7 +5
Comments 6

Обучаем нейросеть распознавать цифры на выборке от MNIST. Реализация алгоритма обратного распространения на C#

Reading time 17 min
Views 15K

Привет!

Будем обучать нейросеть распознавать рукописные цифры

Читать далее
Total votes 18: ↑16 and ↓2 +14
Comments 15

DIY Zigbee датчик температуры

Reading time 6 min
Views 25K

Приветствую читателей Habr! В этой статье расскажу вам о своём очередном zigbee проекте беспроводного датчика. Проект называется Efekta THP_LR \ THP, это небольшой датчик измерения температуры и влажности воздуха на чипе СС2530. Есть несколько модификаций датчика, в одном из вариантов датчик дополнительно измеряет атмосферное давление. Ещё в одном варианте датчик работает на радиомодуле СС2530 с усилителем сигнала. В этом варианте возможна установка радиомодуля с печатной антенной или с выносной. Все модификации датчика работают на батарейках ААА, это обеспечивает длительный срок работы на одном комплекте батареек. Датчик предназначен для работы в сетях Zigbee. Проект с открытым исходным кодом.
Читать дальше →
Total votes 64: ↑64 and ↓0 +64
Comments 19

Чем дальше живёшь — тем меньше получаешь? Абсурд в условиях удалёнки

Reading time 6 min
Views 37K

Корпорации FAANG платят выше рынка, если учесть все премии, бонусы, стартовые и «оживляющие» опционы. Но оптимальные условия действуют только в Bay Area (на фото)

В прошлом году Facebook подвергся критике за дискриминацию в оплате труда программистов после перехода на удалёнку. Если сотрудник принимает решение уехать из Калифорнии на время карантина — ему сокращают зарплату. Мол, в провинции жить дешевле, чем в Сан-Франциско, поэтому «себестоимость труда» там ниже. Следовательно, компания имеет право платить меньше.

Многие российские компании делают так же. Например, в Москве айтишникам предлагают одну зарплату, а за пределами МКАД — гораздо меньше за такую же работу. То есть человек получает «штраф» просто по факту, что переехал в другой город.

Дискриминация в оплате труда в разных регионах сложилась исторически, ещё до интернета. Теперь некоторые компании ссылаются на эту историческую практику и говорят, что таковы законы экономики. Ситуация абсурдная в условиях дистанционной работы.
Total votes 78: ↑71 and ↓7 +64
Comments 414

Реверс-инжиниринг исходного кода коронавирусной вакцины от компаний BioNTech/Pfizer

Reading time 11 min
Views 104K
Добро пожаловать. В данном посте мы посимвольно разберём исходный код вакцины BioNTech/Pfizer SARS-CoV-2 мРНК.

Да, такое заявление может вас удивить. Вакцина – это ведь жидкость, которую вводят человеку в руку. При чём тут какой-то исходный код?

Хороший вопрос. Начнём мы с небольшой части того самого исходного кода вакцины BioNTech/Pfizer, также известной, как BNT162b2, также известной, как Tozinameran, также известной, как Comirnaty.


Первые 500 символов мРНК BNT162b2.

В сердце вакцины находится вот такой цифровой код. Его длина составляет 4284 символа, так что его вполне можно уместить в несколько твитов. В самом начале процесса производства вакцины кто-то закачал этот код в ДНК-принтер (ага), который, в свою очередь, превратил байты с накопителя в реальные молекулы ДНК.
Total votes 316: ↑310 and ↓6 +304
Comments 359

В одной лодке с «ублюдком»: 11 продвинутых советов по использованию Git

Reading time 11 min
Views 51K

*"ублюдок" — вольный перевод слова "git" — "an unpleasant or contemptible person", "неприятный или презренный человек".



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


Давайте посмотрим, что можно использовать, чтобы улучшить себе жизнь. Статья предполагает, что читатель умеет пользоваться основными возможностями git и понимает что делает, когда, скажем, вводит в консоль git rebase --merge --autostash.

Читать дальше →
Total votes 105: ↑100 and ↓5 +95
Comments 26

5 экспериментов с WiFi на ESP32

Reading time 11 min
Views 101K
Привет Хабр.

Платы ESP32 весьма популярны в виду низкой цены, неплохой вычислительной мощности (процессор 200МГц), развитого SDK с поддержкой как MicroPython так и Arduino IDE, наличием GPIO c поддержкой периферии (SPI, I2C и пр) и беспроводной связи (WiFi, Bluetooth). Сегодня мы посмотрим, что можно сделать на такой плате ценой всего лишь около 12$.



Мы рассмотрим разные варианты использования WiFi, от простого коннекта к сети до WiFi-сниффера. Для тестов понадобится любая плата с ESP32 (лучше с OLED-экраном, как на картинке) и Arduino IDE.

Для тех кому интересно как это работает, продолжение под катом.
Читать дальше →
Total votes 45: ↑43 and ↓2 +41
Comments 43

Angular без zone.js: максимум производительности

Reading time 12 min
Views 18K
Angular-разработчики в большом долгу перед библиотекой zone.js. Она, например, помогает достичь в работе с Angular почти волшебной лёгкости. На самом деле, практически всегда, когда нужно просто поменять какое-нибудь свойство, и мы меняем его, ни о чём не задумываясь, Angular производит повторный рендеринг соответствующих компонентов. В результате то, что видит пользователь, всегда содержит самую свежую информацию. Это просто замечательно.

Здесь мне хотелось бы исследовать некоторые аспекты того, как применение нового компилятора Ivy (он появился в Angular 9) способно значительно облегчить отказ от использования zone.js.



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

Обратите внимание на то, что подход к оптимизации Angular-приложений, представленный в этом материале, возможен лишь благодаря тому, что Angular Ivy и AOT включены по умолчанию. Эта статья написана в учебных целях, она не направлена на пропаганду представленного в ней подхода к разработке Angular-проектов.
Читать дальше →
Total votes 48: ↑46 and ↓2 +44
Comments 16

Чистим код в Angular. Готовим ESLint, codelyzer, stylelint, husky, lint-staged и Prettier

Reading time 8 min
Views 24K

Если вам не приходилось работать в команде, то, возможно, вы еще не используете эти вещи, а кто-то даже не знает про них. Работая один, вы сами себе хозяин.


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


Читать дальше →
Total votes 21: ↑20 and ↓1 +19
Comments 1

Переносим Angular проект на ESLint, с Prettier, Husky и lint-staged

Reading time 8 min
Views 30K
Привет, Хабр! Меня зовут Богдан, я работаю в ПИК Digital Front-End тимлидом. Большую часть проектов мы разрабатываем на Angular и недавно я решил пересмотреть наши стайл гайды, а также добавить новые инструменты для более удобной работы.

В качестве линтера я решил использовать ESLint, так как в скором времени на него планируют перевести Angular. И в этой статье я хочу поделиться инструкцией по переходу с TSLint на ESLint, а заодно рассказать, как запускать Prettier из ESLint, как добавить правила стайл гайда AirBnB, и как сделать линтинг удобным и незаметным с помощью настройки VS Code и Git хуков.
Читать дальше →
Total votes 10: ↑10 and ↓0 +10
Comments 5

Единственно верный способ загружать и скачивать файлы в Selenium тестах

Reading time 4 min
Views 51K

image


Selenium WebDriver создавался как кросс-платформенный инструмент для управления веб браузерами. И вот уже почти 14 лет он делает эту работу очень и очень хорошо. Впрочем, автотесты из реального мира создают ситуации, в которых Selenium бессилен. Например, по сценарию нужно загрузить или скачать какой-либо файл. После нажатия кнопки "Загрузить" или "Скачать", поверх окна браузера появляется окно файлового менеджера операционной системы к которому Selenium уже не имеет доступа. Тест останавливается.


Я слышал рекомендации использовать утилиты типа AutoIt или Sikuli для работы с такими системными окнами. Мой совет — никогда так не делайте, это порочная практика, которая приводит к нестабильным тестам:


  • Такое решение не кросс-платформенное. Приходится изобретать свой велосипед для каждой новой операционной системы.
  • Хрупкое. Нет гарантии, что скрипт будет работать корректно если на машине открыто несколько браузеров.
  • Это делает невозможным использование headless режима браузера

Меня зовут Ярослав Пернеровский. Я уже 15 лет в тестировании и около 8 лет в автоматизации. Сейчас я расскажу как нужно правильно обрабатывать такие ситуации.

Читать дальше →
Total votes 19: ↑17 and ↓2 +15
Comments 17

Как наблюдать Луну и планеты

Reading time 12 min
Views 27K
Наблюдение за Луной и планетами очень интересно. Наблюдению планет не мешает световая засветка и их можно наблюдать прям из города. Для наблюдения планет не требуются окуляры с большим полем зрения. Даже недорогие окуляры Плёссла могут обеспечить продуктивный результат визуальных наблюдений.

image

Юпитер, Сатурн и Марс являются, пожалуй, самыми доступными планетами, для астрономических наблюдений. Я до сих пор помню трепет и удивление от первого взгляда на Сатурн, который я увидел более 20 лет назад, в 80мм «Большом Школьном Рефракторе». Однако часто поступают сообщения от начинающих любителей, о первых наблюдениях, в частности Юпитера и Марса, в которых присутствует доля разочарования. «Я просто вижу шар света без деталей», или «Я вижу маленький диск, на котором не могу полностью сфокусироваться». «Мой телескоп неисправен?» Именно дня начинающих любителей астрономии может быть полезной данная статья. В ней подробно описываются тонкости и особенности визуальных наблюдений планет Солнечной системы.
Читать дальше →
Total votes 50: ↑47 and ↓3 +44
Comments 49

Особенности работы в интернациональной команде. Индия

Reading time 5 min
Views 14K


Встречаются однажды индиец, японец и русский… Звучит, как начало бородатого анекдота. На самом деле все намного ближе к жизни, чем может показаться на первый взгляд. Наверное многие знают, что Parallels – это международная компания с интернациональной командой. Сегодня у нас 13 офисов по всему миру. И если разработка сконцентрирована в основном в России, Эстонии и на Мальте, продажи в Северной Америке и Европе, то техническая поддержка распределена сразу между несколькими странами. Под катом рассказ о том, как живут и работают наши саппорт-гуру.
Читать дальше →
Total votes 39: ↑38 and ↓1 +37
Comments 32

Текстовый редактор — это вам не высшая математика, тут думать надо

Reading time 17 min
Views 95K
Современные текстовые редакторы умеют не только бибикать и не давать выйти из программы. Оказывается, внутри них кипит очень сложный метаболизм. Хотите узнать, какие ухищрения предпринимаются для быстрого пересчета координат, как к тексту приделываются стили, фолдинги и софтврапы и как это всё обновляется, при чем тут функциональные структуры данных и очереди с приоритетами, а также как обманывать пользователя — добро пожаловать под кат!



В основе статьи — доклад Алексея Кудрявцева с Joker 2017. Алексей уже лет 10 пишет Intellij IDEA в JetBrains. Под катом вы найдете видео и текстовую расшифровку доклада.
Читать дальше →
Total votes 208: ↑206 and ↓2 +204
Comments 189

Малоизвестные Git-команды

Reading time 4 min
Views 73K


У Git есть строгие обязательства по обратной совместимости: многие продвинутые возможности скрыты за разнообразными опциями, а не применяются как поведение по умолчанию. К счастью, Git также поддерживает и алиасы, так что вы можете создавать свои собственные команды, которые делают всю характерную для Git магию. Под катом — подборка полезных (или как минимум забавных) алиасов, определённых в моём .gitconfig.
Читать дальше →
Total votes 188: ↑162 and ↓26 +136
Comments 43

FAQ по программированию под Android от новичка, и для новичков

Reading time 16 min
Views 158K
Предисловие к FAQ.

Программирование является моим хобби уже давно (правда на других языках и платформах), но до андроида руки дотянулись совсем недавно. Прошло несколько этапов, прежде чем я добрался до написания программ.
Сначала была пара месяцев посвященных Java, на сайте с «Сгибателем».
После, долгие попытки подружится с Eclipse, закончившиеся побегом на Android Studio.
На данный момент выпущено 7 программ и две находятся в разработке.
Данная подборка возникла как попытка структурирования и оптимизации полученной в процессе информации.
Заранее извиняюсь за возможно некорректную терминологию – так как практикую обучение через создание, и в теоретической части есть пробелы.

Надеюсь, что приведенные примеры окажутся полезными.
Читать дальше →
Total votes 114: ↑98 and ↓16 +82
Comments 23

Запуск Android-приложений под Windows, OS X, Linux в Chrome

Reading time 1 min
Views 74K
archon

Корпорация Google довольно давно добавила Android-приложения в каталог Chrome Web Store, позволяя запускать ряд таких приложений на Chromebook или Chromebox. Не так давно несколько разработчиков сообщили, что есть возможность запускать и другие Android-приложения, не из каталога Chrome Web Store. Правда, перед запуском такие приложения нужно специальным образом подготовить.

Благодаря такой подготовке Android-приложения можно запускать не только на Chromebook, но и работать с ними в Windows, OS X, и Linux. Причем приложения запускаются, как нативные.

Читать дальше →
Total votes 48: ↑45 and ↓3 +42
Comments 27

RecyclerView и CardView. Новые виджеты в Android L

Reading time 4 min
Views 120K
Как известно, в июне проходила очередная конференция Google I/O, в ходе которой было вкратце рассказано о двух новых виджетах. И поскольку на хабре об этих виджетах пока ничего не написано, я решил написать эту статью с простенькой демонстрацией.

Демо приложение доступно на гитхабе по ссылке.

Собственно, под катом можно прочесть пару слов о RecyclerView, CardView и о подключении соответствующих библиотек в Gradle. Также, можно посмотреть коротенькое видео, демонстрирующее стандартную анимацию операций со списком в RecyclerView.
Читать дальше →
Total votes 19: ↑17 and ↓2 +15
Comments 15
1

Information

Rating
Does not participate
Location
Wien, Wien, Австрия
Registered
Activity