Search
Write a publication
Pull to refresh
4
0
xRay @xRay

Пользователь

Send message

[в закладки] Работа с изображениями в веб

Reading time18 min
Views128K
Одно из решений, которые приходится принимать фронтенд-разработчику при создании сайта, касается выбора способа включения изображений в состав веб-страниц. Этот способ может заключаться в использовании HTML-тега <img>. Это может быть применение CSS-свойства background или тега <image> элемента <svg>. Выбор правильного подхода к работе с изображениями весьма важен, так как это может очень сильно повлиять на производительность и доступность проекта.



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

Бережём зрение на удалёнке с помощью проектора вместо монитора — несколько неочевидных нюансов

Reading time3 min
Views40K

Моя история


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

Тут же на computeruniverse был заказан Epson EH-TW650 (это не реклама Epson'ов, более того, возможно, для наших целей они и вовсе не являются оптимальным вариантом, но об этом ниже). Экран на первое время был сделан из 12ти аккуратно склеенных между собой ватманов, позже мне настолько понравился этот вариант, что я оставил его насовсем. К обоям прикрепил с помощью пинов. Далее был непростой период приручения проектора для использования в качестве постоянного экрана для повседневной работы.

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

SMR (черепичные) жесткие диски без указания наличия SMR пошли в каналы продаж

Reading time2 min
Views71K

Все три производителя начали продажи относительно небольших, от 2ТБ HDD SMR дисков (черепичных), не указывая это в спеках: WD, Seagate, Toshiba

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

Яндекс, самоизолируй свой индекс (или когда нужно думать о последствиях)

Reading time2 min
Views57K
С понедельника, 20 апреля, в Саратовской области начнет действовать пропускной режим.
«В течение недели показатель самоизоляции саратовцев по данным Яндекса составлял 4,2 — 4,3. Это недопустимо. Мы должны пожалеть наших людей, в том числе возрастных людей, соблюдать безусловно режим повышенной готовности и самоизоляции, чтобы защитить наших родителей, наших детей», — заявил [председатель правительства области] Стрелюхин.
Читать дальше →

Banana Pi R64 Лучший роутер для OpenWrt, или нет?

Reading time6 min
Views33K
image

Здравствуйте меня зовут Дмитрий и сегодня я сделаю обзор на одноплатный компьютер Banana Pi R64. Мы узнаем как установить на него OpenWrt а также как собрать самому прошивку под этот компьютер.
Читать дальше →

Как добавить уведомления в реальном времени в Laravel с помощью Pusher

Reading time14 min
Views21K
Перевод статьи подготовлен специально для студентов курса «Framework Laravel».




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

К счастью, с Laravel и Pusher реализация этого функционала довольно проста.

Уведомления в реальном времени


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

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

Плоды изоляции: интерактивная карта COVID-19 с историческими графиками и миграционными ограничениям

Reading time5 min
Views9K

image


Три недели назад мы с командой в Routitude переключились с наших привычных задач на создание сервиса для мониторинга распространения вируса COVID-19. За это время мы реализовали:


  • дашборд с регулярно обновляющимися данными для всех стран (а также административных субъектов России и штатов США);
  • интерактивную карту распространения инфекции;
  • карту миграционных ограничений, введенных в связи с эпидемией;
  • исторические графики развития эпидемии по каждой стране.

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


Результат нашей работы можно посмотреть здесь: routitude.com/map/covid, а детали о том как все устроено — под катом.

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

Как мы в андроид приложение inDriver добавили поддержку Harmony OS

Reading time5 min
Views6.4K
Все началось с того, что министерство торговли США включило Huawei в список компаний, с которыми запрещено вести бизнес американским компаниям. Ответом Huawei стала операционная система Harmony OS для своих смартфонов, и отказ использовать в ней сервисы Google. И чтобы не потерять часть рынка, мы интегрировали в inDriver ее поддержку. Хотя «интеграция OS» звучит громко – наше приложение, как и любое другое, написанное под Android, запустится на Harmony, но для полноценной работы необходимо заменить Google-сервисы на аналогичные Huawei.


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

Как привести в порядок перегруженный сервер?

Reading time11 min
Views21K
Материал, перевод которого мы сегодня публикуем, посвящён поиску узких мест в производительности серверов, исправлению проблем, улучшению производительности систем и предотвращению падения производительности. Здесь, на пути к решению проблем перегруженного сервера, предлагается сделать следующие 4 шага:

  1. Оценка ситуации: определение узкого места производительности сервера.
  2. Стабилизация сервера: применение срочных мер по улучшению ситуации.
  3. Улучшение системы: расширение и оптимизация возможностей системы.
  4. Мониторинг сервера: использование автоматизированных средств, позволяющих предотвращать возникновение проблем.


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

Более безопасное подключение к SSH с помощью DNSSEC

Reading time6 min
Views17K

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

В реальной жизни почти никто не проверяет отпечаток SSH-ключа сервера не особенно задумываясь о возможности MiTM-атаках. С появлением DNS-записи SSHFP отпечаток ключа сервера можно хранить в DNS и проверять его подлинность с помощью DNSSEC. При этом не нужно даже подтверждать ключ при первом подключении. В статье разберем, как настроить запись SSHFP для своего SSH-сервера.
Читать дальше →

Введение в эксплоитинг и реверсинг с использованием IDA FREE и других бесплатных инструментов. Глава 2

Reading time15 min
Views10K
В первой части мы установили несколько инструментов, которые будут полезны для нас для прохождения этого курса. Их особенность в том, что они все бесплатны. Мы не будем использовать какой-либо платный инструмент, а из тех, у которых есть платная версия, таких как IDA или PYCHARM, мы будем использовать версию FREE или COMMUNITY.
Читать дальше →

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

Reading time7 min
Views25K

Эта статья о том, как изготовить респиратор из подручных материалов, которые у многих есть дома или на даче. Для чего это может быть нужно? Из за сложившейся ситуации с коронавирусом, приобрести респиратор даже класса защиты FFP1 стало довольно проблематично. А проблема защиты дыхания при выходе на улицу, строительных работах связанных с пылью, опрыскивании деревьев и т.п. — никуда не исчезла и даже стала еще актуальнее.



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

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

Собираем простейшую ZigBee-сеть, программируем под Mbed, общаемся через MQTT

Reading time14 min
Views33K
Эта статья — большой учебный практикум начального уровня по использованию XBee-модуля в связке с микроконтроллером, имеющим на борту Mbed OS. ZigBee — давно и прочно укоренившийся стандарт в системах «Умного дома» (например, он используется наряду с Z-Wave в хабе Samsung SmartThings, см. нашу статью), он отличается низким энергопотреблением, простотой использования, и, что самое интересное, возможностью создания самоконфигурируемых mesh-сетей. Вы увидите из практикума, что это действительно так — мы посмотрим на структуру такой сети через удобную утилиту-визуализатор.

Предполагается, что вы уже знаете, что такое ZigBee и для чего он нужен. Теперь вам хочется подключить свой первый XBee-модуль и решить с его помощью свои задачи, не вдаваясь в программирование самого модуля, а лишь используя его как интерфейс связи. В конце будем все данные пересылать через самодельный MQTT-шлюз куда угодно, хоть на локальный сервер, хоть в Интернет. Мы решили показать всё на примере Mbed как самой простой и доступной новичкам RTOS. Вы убедитесь, что всё работает «из коробки», и можете сразу начать делать свой проект, даже если до этого вы имели дело только с Ардуино.


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

Умный дом без пультов, но с кубиком

Reading time5 min
Views44K

Проблема



На время ремонта новой квартиры я вернулся в квартиру, в которой не жил 10 лет и решил поупражняться в дисциплине “Умный дом”, чтобы со знанием дела обустраивать уже новую квартиру. Техника в этой квартире тоже не самая умная и не самая новая, ибо была произведена ~10 лет назад. Больше всего в квартире меня напрягало обилие инфракрасных пультов, они терялись и нагружали мозг подбором нужного. До недавнего времени было принято на пультах делать огромное количество малоиспользуемых кнопок. А еще пульты не эстетичны и не гигиеничны, одни угловатые, другие с скруглёнными гранями, кнопки желтеют, в них копятся остатки жизнедеятельности обитателей на которых образуется «подкнопочный биоценоз». В итоге по дому разбросано десяток пультов с кучей ненужных кнопок, для простой операций приходилось искать по две-три штуки, их вид царапает взор, хотелось удобного тактильного и модного голосового управления.

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

Весь Хабр в одной базе. Комментарии и веб-приложение

Reading time8 min
Views7.5K

КДПВ


Часть 1 | mega.nz | Онлайн демо | GitHub


Наверное, это продолжение статьи, в которой я парсил Хабр в базу данных. Теперь настало время её применить.

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

ThinkPad E480 Intel на Windows VS ThinkPad E495 AMD на Ubuntu есть ли разница?

Reading time6 min
Views21K
Так получилось, что в один момент времени у меня дома оказалось два достаточно свежих ноутбука Lenovo Thinkpad E серии.

Первый


E480 в конфигурации core i7-8550U, 16GB RAM (одна планка) и дискретной видеокартой Radeon 550X, Windows 10 Pro, серый цвет — мой рабочий ноутбук, который я взял домой на время карантина.

Второй


E495 в конфигурации Ryzen 7 3700U, 8GB RAM (одна планка) и Ubuntu 18.04, черного цвета — мой личный ноутбук, который я купил перед карантином.

Оба ноутбука выполнены в одинаковом корпусе.


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

Активация discard (TRIM) на Linux для SSD

Reading time6 min
Views96K

Современные накопители данных такие как SSD нуждаются в команде TRIM интерфейса ATA и для этого в ОС построенных на базе ядра Linux предусмотрено два метода управления на уровне файловых систем:


  • discard — устанавливается как опция монтировании файловой системы. Позволяет ядру Linux сразу отправлять команду TRIM на устройство, как только об этом сообщит файловая система.
  • fstrim — утилита которая запускается вручную или по расписанию как сервис ОС, отправляет список удаленных блоков с ФС для зачистки их на устройстве.

Для включения fstrim достаточно активировать сервис fstrim.service в systemd, но лучше вместо сервиса, который будет висеть в памяти, использовать таймер fstrim.timer который будет запускать еженедельный TRIM.


Пример включения сервиса:


# Включение, старт и вывод статуса сервиса:
systemctl enable fstrim.service && \
systemctl start fstrim.service && \
systemctl status fstrim.service

Но этих мер недостаточно, если у вас файловые системы располагаются на томах LVM, а LVM в LUKS игла в яйце, яйцо в утке, утка в зайце:



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

Qualcomm QCC3020 — расцвет китайских TWS-наушников

Reading time3 min
Views29K
Заголовок с беспроводными TWS-наушниками и результатами поиска Google по запросу QCC3020

Если вы погуглите QCC3020, то результаты поиска вывалят гору обзоров наушников — от визуальных подражателей AirPods до псевдо-винтажных моделей для ценителей. Edifier, Tronsmart, Mifo, Pamu… их всех объединяет небольшая ценность родного бренда и китайское происхождение. Давайте разберёмся, что это за чип, и почему производители недорогих TWS-наушников используют QCC3020 и почему так им гордятся.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity