Как стать автором
Обновить
1
0
LSiazsaHrd @LSiazsaHrd

АСУ ТП

Отправить сообщение

Зачем в iPhone чип, который убивает FaceID

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров53K

Разбирался я в низкоуровневой работе камер iPhone, и дошёл до FaceID — системы распознавания лиц, используемой Apple для разблокировки смартфона. И наткнулся внутри на интересную вещь: чип, единственное предназначение которого в том, чтобы вывести из строя FaceID. Навсегда.

О том, как в iPhone вообще работает FaceID, где там этот чип стоит, что именно он делает, зачем его сделали таким злым, и как в ремонте справляются с этой напастью — под катом!

Читать далее
Всего голосов 641: ↑640 и ↓1+758
Комментарии177

Руководство Google по стилю в C++: 2019 — 2024

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров13K

Все мы при написании кода пользуемся правилами оформления кода. Иногда изобретаются свои правила, в других случаях используются готовые стайлгайды. Однако, любой стайлгайд со временем корректируется и дорабатывается: иногда этому способствуют обновление стандартов языка, иногда меняются тенденции.
В статье приведены изменения Руководства Google по стилю в C++ за 5 лет: с 2019 по 2024.
Краткое содержание изменений:
+ C++20
- NULL
+ концепты 
- #pragma
+ constinit
- std:hash
+ consteval
- u8
+ аргументы-ссылки
- ENUM_VALUE_NAME
+ повесточка и "they" в единственном числе
- здравый смысл

Читать дальше →
Всего голосов 18: ↑16 и ↓2+20
Комментарии36

Ирина — опенсорс русский голосовой помощник. Offline-ready

Время на прочтение9 мин
Количество просмотров53K

- Ирина, таймер...
- Ставлю таймер на пять минут.

Вполне себе обыденная история из моего быта. Я таки сделал собственного автономного голосового помощника.

TL;DR> Ирина вполне неплохо работает дома 24x7.

Потребуется установить Python 3.5+ и зависимости через pip (немного знаний Python).

Скиллы "из коробки": таймер, погода, контроль медиа (громче/тише/дальше), контроль плеера MPC-HC, запуск медиа из папки, расписание ближайших электричек, "подбрось кубик/монетку".

Плагинами добавляются: другие скиллы, Text-to-Speech и Speech-to-Text движки.

Интересно? Поехали >
Всего голосов 91: ↑89 и ↓2+106
Комментарии88

Пора оставить RAID-5 в далеком прошлом

Уровень сложностиСложный
Время на прочтение4 мин
Количество просмотров22K

Для ЛЛ: RAID-5 совершенно не подходит для современных массивов из дисков на 5-10 Тб по нескольким причинам.

Читать далее
Всего голосов 81: ↑69 и ↓12+84
Комментарии136

Цивилизация Пружин, 2/5

Время на прочтение7 мин
Количество просмотров50K

Часть 2. Very Heavy Fuel


Предыдущая часть 1



Перед вами — Международная Космическая Станция. Массой в 420 тонн и стоимостью[20] в $150 миллиардов:



Её кинетическая энергия, старое доброе E = mv2/2, составляет 1.3*1013 джоулей. Добавив потенциальную энергию на высоте 400 километров, получим 1.4*1013 Дж.

Сколько бензина надо сжечь, чтобы получить эту энергию? Оказывается, не так уж и много. 350 тонн всего. Это примерно[200] однодневный энергетический бюджет Улан-Удэ.

Как же так получается, что далеко не самый богатый город мира за один-единственный день распоряжается энергией, достаточной для разгона МКС до орбитальной скорости, однако же станция у нас на весь мир одна, и стоит неприлично бешеных денег?
Читать
Всего голосов 143: ↑141 и ↓2+139
Комментарии156

Внедрение Keenetic в гостинице

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров17K

Предисловие

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

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

Я не имею никакого отношения к компании Keenetic.
Я всего лишь простой пользователь, который взвесив все "за" и "против", принял спорное и в какой-то степени неадекватное решение заменить сетевое оборудование Mikrotik на продукцию Keenetic.

Прекрасно понимаю, что многие пользователи направят в мою сторону вентилятор и накидают на меня г*вна, так как заменить Mikrotik на Keenetic... типа это примерно как заменить живую женщину резиновой... Я не стану вступать с вами в диалог, мы находимся в разных вселенных: вы - лютый айтишник, а я - управленец/маркетолог, который за 1.5 года вывел гостиницу по популярности в ТОП-1 по своему городу (среди 290 объектов), и в ТОП-3 по своему региону, в котором на данный момент порядка 2.000 гостиничных объектов.

Читать далее
Всего голосов 41: ↑40 и ↓1+48
Комментарии85

От советских компиляторов до грязных трюков: что поведают на C++ Russia 2024

Время на прочтение13 мин
Количество просмотров6.4K

Завсегдатаи C++ Russia уже хорошо знают некоторых спикеров и ждут их новых докладов. Например, Антона Полухина @antoshkkaa): в 2020-м все смотрели его «Грязные трюки из такси», а недавно — «C++ трюки из userver». Из необычного — серия докладов Петра Советова об автоматизации программирования в СССР: уже были выступления о теоретических результатах и о трансляторах.

Через месяц начнётся C++ Russia 2024. Там будут и Антон с новыми трюками (в этот раз грязными!), и Пётр с заключительной частью исторической серии. А ещё множество другого — от работы с GPU до новинок грядущего C++26.

И теперь, когда программа почти готова (возможны небольшие дополнения), показываем её Хабру: приводим короткие описания всех докладов, разбитые по тематическим блокам. А если интересует какая-то другая информация о конференции или билеты — всё это на её сайте.

Программа C++ Russia 2024
Всего голосов 15: ↑14 и ↓1+18
Комментарии1

Как Apple на самом деле следит за вами

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров38K

По счастливой случайности я оказался резидентом Евросоюза, а значит, на меня также распространяется GDPR. Он позволяет мне запросить копию информации, которая хранится обо мне у всяких разных компаний. Я решил сделать это у Apple, и был неприятно удивлен.

Apple старается собирать как можно меньше данных.

Читать далее
Всего голосов 144: ↑129 и ↓15+142
Комментарии152

Security Week 2418: приватность автотелеметрии

Время на прочтение5 мин
Количество просмотров1.6K
На прошлой неделе издание New York Times показало конкретные примеры того, как автопроизводители могут следить за пользователями, пользуясь большим количеством датчиков в автомобиле. Эта история началась еще в марте, когда то же издание впервые сообщило, что компания General Motors передает информацию о поведении водителей за рулем сторонним брокерам. Используя право на доступ к персональной информации, журналистка Кашмир Хилл запросила данные о семейном автомобиле Chevrolet Bolt, который был приобретен в 2023 году.


Информация у крупных брокеров данных LexisNexis и Verisk оказалась весьма подробной: общее количество поездок, километраж, а главное — число событий, когда имел место резкий разгон или торможение, либо превышение скорости. Эти данные впоследствии перепродаются страховым компаниям, которые на их основе могут принять решение о повышении страхового тарифа. Важной особенностью такого персонального расследования стало то, что Кашмир Хилл и ее муж, скорее всего, не давали согласия на сбор таких данных. Или как минимум сделали это, не понимая в полной мере, что эта информация будет доступна кому-то еще, кроме автопроизводителя. В такой же ситуации оказались примерно 8 миллионов владельцев автомобилей концерна GM. Так вышло, что все они обменяли свою приватность на геймификацию вождения, когда автомобиль выдает вам «бейджики» за разного рода достижения за рулем.
Читать дальше →
Всего голосов 11: ↑11 и ↓0+15
Комментарии0

LINUX: от космических кораблей и суперкомпьютеров до кинопроизводства  и интернета вещей

Уровень сложностиПростой
Время на прочтение16 мин
Количество просмотров6.2K

Привет, Хабр! Погрузимся в мир Linux и рассмотрим самые необычные и малоизвестные факты о легендарной операционной системе. Будь вы опытным пользователем или только начинаете знакомство с Linux, вы найдете здесь немало интересных фактов. 

Читать далее
Всего голосов 20: ↑19 и ↓1+27
Комментарии19

Вы все еще пишете многопоточку на C++ с ошибками синхронизации?

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров26K
Привет, коллеги! В этой статье я покажу свой подход к написанию многопоточного кода, который помогает избежать типовых ошибок, связанных с использованием базовых примитивов синхронизации.

Демонстрация идеи будет проходить на живых примерах кода на современном C++. Большинство описанных решений я применял сначала на собственных проектах, а теперь часть этих подходов уже используется в нашей собственной микроядерной операционной системе «Лаборатории Касперского» (KasperskyOS).

Сразу хочу оговориться, что тема многопоточности — очень большая и серьезная. И эта статья — не полноценный анализ проблем многопоточки, а только частНЫе (но довольно частЫе) кейсы, когда мы вынуждены использовать мьютексы.
Читать дальше →
Всего голосов 53: ↑47 и ↓6+57
Комментарии148

«Поздравляем с терабитом». Та самая статья про DDoS-2023 — без цензуры

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров31K

Дисклеймер ↓

Этот материал должен был выйти в декабре 2023, прямо перед Новым годом, — и это классический пример про «лучшее враг хорошего». Сначала нам не нравилось, что мало подробностей. Потом — что их излишне много. Была версия с цитатами, но без скринов. Со скринами, но без цитат. Мы записали столько интервью с сетевиками, что сами в них запутались.

Но в итоге сегодня наша статья наконец-то выходит в свет. Из цензуры — только внимательная рука корректора. Передаем слово Максу Яковлеву.
Читать дальше →
Всего голосов 86: ↑84 и ↓2+102
Комментарии46

iPad Pro 2021: будущее ретро

Время на прочтение9 мин
Количество просмотров26K
Изначально я хотел купить планшет с большим экраном, чтобы смотреть сериалы и кино во время занятий на велотренажере. В итоге «экран» оказался в три раза дороже тренажера. Вы знаете, как это бывает: то хочется побольше фич, то памяти слишком мало. В результате ты покупаешь планшет по цене ноутбука и смотришь на нем ютюб, как и на предыдущем устройстве, которое у тебя уже было. А велотренажер стоит без дела.


Среди всех притянутых за уши, пришитых белыми нитками, высосанных из пальца причин купить в 2021 году новый айпад была и вот такая. Я привык смотреть на устройства с точки зрения ретроколлекционера. Я стараюсь не забывать, что все рано или поздно превращается в старый хлам. И давно хотел посмотреть на новое, а не старое устройство именно с этой точки зрения. Не только «какое оно сейчас», в контексте сегодняшнего дня, а как выглядит в ретроспективе — по сравнению с устройствами 10-летней давности. И как будет выглядеть еще через 10 лет.
Читать дальше →
Всего голосов 30: ↑27 и ↓3+32
Комментарии35

Создание совершенной печатной машины из Sublime Text

Время на прочтение5 мин
Количество просмотров13K
UPD: Прошло больше месяца с тех пор, как я написал первоначальный черновик этой статьи. С тех пор я опубликовал еще три записи в блоге и более двадцати на моем канале в Телеграм. Настройки зарекомендовали себя фантастически, мне он очень нравится, и у меня нет желания искать где-либо еще.

Я был давним поклонником iA Writer из-за того, что писал. Я купил оригинальную версию для iPad, оригинальную версию macOS (когда она еще называлась MacOS X), версию для Android и даже ту, которую они переиздали как «платное обновление по полной цене». На мой взгляд, в нем есть идеальный баланс между функциями и простотой, дизайном и направленностью.

Вот скриншот первоначальной версии iA Writer от 2011 года:

image

А вот как это выглядит сейчас, в 2021 году:

image

Дизайн настолько вне времени, что практически не изменился за 10 лет.
И я этим доволен, я не собираюсь жаловаться. Это здорово и для вдохновения, и для нововведений, и для фактического воплощения. Я искренне рекомендую его всем, кто пишет.
Читать дальше →
Всего голосов 37: ↑23 и ↓14+21
Комментарии11

Каков C++ в gamedev'e?

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров29K

Хотел написать продолжение к статье Что почитать игровому программисту? про использование С++ в игровых движках, но размышления свернули куда-то не туда.

Завороженно смотрю как и какими темпами идет развитие языка в последние годы, и понимаю, что получить и особенно применить возможности С++20/3 в разработке игр и движков получится хорошо, если с опозданием лет эдак в пять, как раз на следующее поколение консолей, если вообще получится. Сейчас плюсы в игрострое зависли где-то между 14 и 17 стандартом, Сони только-только выкатила свою версию компилятора с полной поддержкой 17 стандарта, а учитывая реактивность игровых студий в изменении кор пайплайнов, что-то новое начнут только в новых проектах. Менять коня, т.е. компилятор посреди разработки игры равносильно стрельбе не только по ногам себе, но и соседям программистам: работает - не чини.

Если смена компилятора и стандарта не даст гарантированного прироста скорости работы больше 5%, то бюджет и людей я не одобрю. (с)

Знакомство с кодовой базой больших движков дает понимание уровня и объёмов кода в продакшене и в тулзах, и ситуация вырисовывается такая, что эти объемы стали в индустрии, что называется "too big to fall", т.е. написать что-то новое, уровня движков вроде Unity/Unreal/Dagor на другом языке, будь он хоть в тысячу раз безопаснее и в десять раз быстрее не получится, но попытки конечно делаются. И чем дальше продолжается поддержка существующих проектов на плюсах, тем меньше возможности выбора остается.

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

По техдолгам будут платить наши джуны
Всего голосов 74: ↑73 и ↓1+83
Комментарии59

Оффлайновое использование Git

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров14K

Некоторые компании, защищая свои системы от несанкционированного доступа, используют изолированные компьютерные сети, или полностью обходятся без сетей. Работа в таких системах может быть сопряжена со сложностями, но нельзя сказать, что в них невозможно разрабатывать программные проекты. А особую важность в подобных ситуациях имеет подбор подходящего инструмента для контроля версий наподобие Git.

Система контроля версий Git вполне благополучно работает без удалённого репозитория. Такова её природа. При таком подходе можно создавать ветви репозитория, можно индексировать файлы и коммитить их в репозиторий. Всё выглядит так же, как и при обычной работе.

Читать далее
Всего голосов 27: ↑25 и ↓2+36
Комментарии17

Что такое ZFS? И почему люди от неё без ума?

Время на прочтение4 мин
Количество просмотров133K
Сейчас мы обсудим ZFS, продвинутую файловою систему. Мы обсудим как она появилась, что из себя представляет, и почему так популярна в технических кругах и предприятиях.

Хотя я из США, я предпочитаю произносить ZedFS вместо ZeeFS, потому что это звучит круче. Вы же можете выбрать вариант произношения для себя.

Заметка: В этой статье вы увидите, что ZFS повторяется очень много раз. Когда я буду говорить об особенностях и установке, я имею в виду OpenZFS. Пути ZFS (разработанная Oracle) и OpenZFS разошлись, с того момента как Oracle закрыла проект OpenSolaris. (Подробнее дальше в статье.)
Читать дальше →
Всего голосов 41: ↑35 и ↓6+29
Комментарии117

Зачем рассказывать про контейнеризацию в 2023 году

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров23K
image
Техножрец DevOps бережно описывает документацию по проекту

Опытные специалисты с характерным оттенком глаз могут справедливо возмутиться, что это всё уже давным-давно разжёвано и вообще RTFM. И будут отчасти правы. Тем не менее приходят новые специалисты, которые не застали бесплатную рассылку дисков с Ubuntu и вдумчивую компиляцию ОС с нуля.

Каждая новая технология поначалу держится на энтузиастах, которые её полностью понимают. Например, первые пользователи радио знали почти всё про радиосвязь, могли на коленке собрать детекторный приёмник и ловить радио «Маяк» на металлическую вешалку и моток проводов. Первые пользователи GNU/Linux знали всё про ядро и ключевые принципы работы. По крайней мере, вариант «поправил и скомпилировал драйвера для модема, чтобы настроить сеть» был не самым редким. Текущие пользователи обычно не сталкивались с основами, так как начали щупать технологию уже после снижения порога входа.

Те же процессы идут не только в среде потребителей технологий, но и среди инженеров. С одной стороны, узкая специализация совершенно нормальна, с другой — мы рискуем получить аналог культа Галактического Духа на Анакреоне из цикла романов «Основание» Азимова. Техножрецы выполняют сложные ритуалы, ядерные реакторы пайплайны работают. Ровно до тех пор, пока всё не сломается к чертям на низком уровне, а чинить будет некому.

Так происходит и с контейнеризацией. Я всё чаще встречаю на собеседованиях devops-инженеров, которые знают, как пользоваться Docker и Podman, пишут Dockerfile, но теряются, когда спрашиваешь про namespaces, и начинают плавать при вопросе: «А зачем, чем RPM хуже?» Все собирают контейнеры, и я собираю. Таков Путь. Не всегда, кстати, оптимальный.
Читать дальше →
Всего голосов 59: ↑59 и ↓0+59
Комментарии13

Kubernetes: продолжаем говорить о контейнерах и архитектуре

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров6K

Каждый раз залипаю на анимацию работы Raft-протокола

В прошлый раз мы говорили о контейнерах, механизмах Namespace и о том, как это всё работает.

Сегодня мы пойдём дальше — к системам оркестрации, так как нам мало просто иметь контейнер. Нам нужно управлять сетью, распределять нагрузку и вовремя поднимать упавшие контейнеры и свои собственные компоненты.

Попробуем немного отойти от классического «yaml-программирования» и заглянуть под капот.

Коснёмся CAP-теоремы, важности ETCD и причинах его устойчивости к split-brain-проблеме. А ещё посмотрим, почему Kubernetes API можно распределить на кучу инстансов, работающих одновременно, а Controller Manager может работать только в одном экземпляре за раз.

Вот о том, как всё это работает в Kubernetes, кто и зачем тыкает в API, мы сегодня и поговорим.
Читать дальше →
Всего голосов 18: ↑18 и ↓0+18
Комментарии0

Новая блокировка OpenVPN и Wireguard замедляет интернет в России

Время на прочтение3 мин
Количество просмотров169K

Позавчера, 15 января ночью, по всему Рунету пошли сигналы, что протоколы WireGuard/OpenVPN массово «отвалились». Судя по всему, с понедельника Роскомнадзор снова взялся за VPN, экспериментируя с блокировками OpenVPN и Wireguard в новом масштабе.

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

Читать далее
Всего голосов 118: ↑82 и ↓36+70
Комментарии379
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность