Обновить
39
0
sysprg@sysprg

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

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

Гравитационные маневры

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

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

Читать далее

Интерпретации квантовой механики. На каком свете кот Шрёдингера?

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели11K

Придумывая мысленный эксперимент с котом в ходе переписки с Эйнштейном в 1935 г., Эрвин Шрёдингер даже предположить не мог, каким он станет популярным в XXI веке. Живого и в то же время мёртвого кота сделали героем множества мемов, и теперь многие физики готовы повторить слова Стивена Хокинга: «когда я слышу про кота Шрёдингера, моя рука тянется за ружьём…». Но насколько современная наука приблизилась к разрешению знаменитого парадокса? В этой статье я объясняю, в чём заключается проблема измерения, как её решают две самые распространённые интерпретации квантовой механики, можно ли ввести кота в суперпозицию и какие эксперименты могли бы положить конец спорам между сторонниками разных интерпретаций.

Читать далее

Реализация Paxos на Go: создаем алгоритм консенсуса без готовых решений

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели1.8K

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

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

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

Читать далее

Сонар из Диктофона

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели2.4K

Что если из диктофона сделать акустический локатор?

В этом тексте я попробовал использовать два смартфона в качестве сонара.

Все вычисления осуществлены в пост обработке.

Читать далее

Сортировка «Милосердный Сталин»

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели19K

Merciful Stalin Sort (сортировка «Милосердный Сталин») — это новый алгоритм сортировки, вдохновлённый пресловутым Stalin Sort (сталинской сортировкой). В ходе развлекательного эксперимента со сталинской сортировкой возникла интригующая идея: что, если вместо удаления выбивающихся элементов, сохранить те, которые идут по порядку, и рекурсивно упорядочить остальные? Логика заключалась в том, чтобы добиться повышения производительности за счёт уменьшения массива, требующего сортировки, особенно в случае частично упорядоченных массивов. Это и привело к разработке сортировки «Милосердный Сталин».
Читать дальше →

Энтропия – это мера того, как мало мы на самом деле знаем

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

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

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

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

Читать далее

Книги, софт, сайты для изучения китайского языка

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

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

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

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

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

Готовим кофе - список материалов обширный!

Гражданский суд против Big Pharma. Законы Австралии, FDA и псевдоэфедрин

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели907

Все началось с того, как FDA предложили изъять из продажи в США некоторые безрецептурные препараты от простуды и гриппа. Дескать: «эти препараты неэффективны». В этот же момент австралийская юридическая фирма подала коллективный иск против фармацевтического гиганта Johnson & Johnson, утверждая, что компания на протяжении многих лет сознательно продвигала и продавала неэффективные противоотечные средства. А камнем преткновения стал псевдоэфедрин.

Читать далее

Деление беззнаковых 8-битных чисел

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели4K

Деление — достаточно затратная операция. Например, на CPU Cannon Lake задержки 32-битного деления находятся в интервале 10-15 тактов, а на Zen4 — 9-14 тактов. Задержки 32-битного умножения на обоих CPU составляют 3-4 такта.

Ни в одном из популярных ISA SIMD (SSE, AVX, AVX-512, ARM Neon, ARM SVE) нет целочисленного деления, оно есть только в RISC-V Vector Extension. Однако во всех этих ISA есть деление с плавающей запятой.

В этой статье мы представим два подхода к реализации SIMD-деления 8-битных беззнаковых чисел.

Читать далее

Новогодний DIY: В лесу крутилась ёлочка

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

Незаметно подошло время новогодних праздников, а значит, самое время сообразить очередной тематический проект. Например, электронную самоделку. Например, прилагательное ёлочку из светодиодов. На Ардуино. Но не спешите расходиться с постными лицами, ведь я собираюсь вращать её со скоростью 1800 оборотов в минуту! Надеваем защитные очки и приступаем к созданию праздника.
Читать дальше →

Мир за пределами Pandas: достойные альтернативы для работы с данными

Время на прочтение7 мин
Охват и читатели8.2K

Хабр, привет! Это Леша Жиряков, техлид backend-команды витрины онлайн-кинотеатра KION. В мире дата-аналитики Pandas остается одной из самых популярных библиотек. Но это вовсе не значит, что нет других быстрых, удобных и производительных инструментов. Мой пост покажет альтернативы: от колоночной DuckDB и сверхскоростной Polars до мощного Modin и гибкого Vaex. В подборке я постарался передать главную суть — назначение и преимущества инструмента и его характеристики с GitHub.

Читать далее

Чёрное солнце. Что такое мурмурация, как роение двигает науку и при чем здесь каннибализм

Время на прочтение11 мин
Охват и читатели2.1K

Sort sol — «чёрное солнце». За зловещим названием скрывается, в общем-то, обычное для датской Ютландии явление. По весне и осени праздные туристы, груженые оптикой орнитологи и вертлявые фотографы наведываются в эти хмурые края, чтобы понаблюдать за метаморфирующими облаками скворичных стай. Птицы собираются на ночевку огромными, до миллиона особей, группами и порой застилают собой все небо, отчего солнце словно и правда гаснет раньше, чем обычно.

Миру подобное явление скоординированного полета птиц известно как мурмурация (от лат. murmuratio — «бормотание»). Несмотря на кажущуюся сложность, в своей сути оно подчиняется определенным алгоритмам — как и другие модели роевого поведения. В этом тексте поговорим о том, как устроена мурмурация, практикуют ли роение homo sapiens, какие существуют хайв-технологии и как сделать, чтобы коллеги по стае тебя не съели. Но обо всем по порядку.

Читать далее

Защита схемы от переполюсовки, что может быть проще?

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели36K
image
«Я не такая», «со мной этого точно не может случиться» — говорили они, но упорно продолжали пихать батарейки в пульт для телевизора не той стороной…

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

Содержание:



Всех неравнодушных к электронике прошу под кат!
Читать дальше →

Сжатие графики при помощи алгоритма LZ4

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели2.9K

Привет, Хабр! Меня зовут Александр Крестинин, я разработчик встроенного ПО в компании Whoosh. Мы в embedded-команде не только переливаем биты из одного регистра в другой, но и решаем разные бизнес-задачи. Иногда попадаются головоломки. 

Однажды мы подумали, что было бы здорово выводить на экраны самокатов анимации и изображения — показывать инструкции, как пользоваться сервисом, как начать и закончить поездку, и чтобы запускать DOOM.

Зачем?

1) Сделать комфортнее. Удобно видеть инструкции на большом и ярком экране перед глазами, а не нырять за ними в приложение на смартфоне. 

2) Сделать безопаснее. Пользователь меньше отвлекается на телефон, крепче держится за самокат и внимательнее смотрит на всё, что вокруг.

3) Почти у всех привычных устройств уже есть экраны, которые выводят пользователям видео и картинки, а почему бы не сделать то же самое на самокате?

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

Расскажу, как мы нашли решение этой задачи. Прошу под кат.

Читать далее

Баг в реализации SRWLock в Windows вешает многопоточные программы

Уровень сложностиСредний
Время на прочтение2 мин
Охват и читатели2K

Реализация SRWLock (Slim Reader/Writer Lock) на Windows может привести к серьёзным проблемам: многопоточное приложение может зависнуть (deadlock).

При частой конкуренции многих потоков, удерживающих shared_lock, и хотя бы одного потока, пытающегося получить unique_lock, возможно возникновение ситуации, когда потоки оказываются в состоянии взаимного ожидания. Код выглядит абсолютно корректным, но приложение зависает внутри вызова в WinAPI.

Это касается любых многопоточных программ для Windows, которые явно либо неявно используют SRWLock для синхронизации. В том числе написанных на старых реализациях Rust, пока в Rust не заменили реализацию для Windows, отказавшись от SRWLock (GitHub Issue). В том числе написанных на C# (фикса пока нет) и т.д.

Читать далее

Формальная верификация протокола IBFT: проверяем безопасность византийского консенсуса в блокчейне

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели598

Добрый день! Меня зовут Кирилл Зиборов, я представляю отдел безопасности распределенных систем Positive Technologies. В этой статье я продолжу рассказывать о том, как мы используем инструменты формальной верификации для предотвращения уязвимостей в различных компонентах блокчейна. Ранее мы верифицировали смарт-контракты дедуктивным методом. В этот раз речь пойдет о протоколах консенсуса — механизмах принятия узлами новых транзакций в цепочку, а именно об алгоритме Istanbul Byzantine Fault Tolerant и в целом о том, как можно гарантировать корректность подобных алгоритмов с помощью метода проверки моделей.

Читать далее

Коронавирус: долгожданное извержение правды

Время на прочтение5 мин
Охват и читатели21K

Комитет Палаты представителей США опубликовал 520-страничный отчёт по COVID-19. И это, конечно, нега для людей, на которых в период пандемии навесили ярлык ковид-диссидента. Тобишь для таких как я. Итак, прямые цитаты из анонса на сайте американского правительства...

Про мандаты на маски: «не было убедительных доказательств того, что маски эффективно защищают американцев от COVID-19. Должностные лица органов здравоохранения наперебой рассказывали об эффективности масок, не предоставляя американцам научных данных, что вызвало массовый рост общественного недоверия».

Про социальную изоляцию:  «рекомендация по социальной дистанции "6 футов друг от друга", из-за которой по всей стране закрывались школы и малые предприятия, была произвольной и не основанной на научных данных. Во время дачи показаний за закрытыми дверями доктор Фаучи заявил, что руководство "как бы просто появилось"».

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

Про цензуру: «представители органов здравоохранения распространяли дезинформацию, используя противоречивые сообщения, поспешные реакции и отсутствие прозрачности. Администрация Байдена даже использовала недемократические и, скорее всего, неконституционные методы — в том числе заставляла компании социальных сетей цензурировать определенный контент COVID-19 — для борьбы с тем, что она считала дезинформацией».

Читать далее

Малопотребляющий датчик с передачей данных по радиоканалу

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели15K
Несколько лет назад я опубликовал статью о простейших приемниках и передатчиках для обмена данными на частоте 433 МГц (на рисунке внизу левая пара). Публикация была вызвана в основном тем фактом, что абсолютно во всех источниках в интернете приемник подключался неграмотно, и это значительно снижало возможности удобного и дешевого способа связи. Приемник MX-RM-5V (известен также под названием XD-RF-5V) представляет собой дешевую регенеративную схему, которая крайне чувствительна к помехам и капризна к настройке, что хорошо известно радиолюбителям, но почему-то совершенно темный лес для остального мира, включая даже опытных ардуинщиков. Поэтому такой приемник, как минимум, следует включать с отдельным хорошо зафильтрованным аналоговым стабилизатором, что сразу повышает дальность в разы.



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

Разбираем алгоритм полнотекстового поиска BM25

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

BM25, или Best Match 25 — это широко используемый алгоритм полнотекстового поиска. Среди прочего, он по умолчанию применяется в Lucene/Elasticsearch и SQLite. В последнее время в рамках «гибридного поиска» часто начали комбинировать полнотекстовый поиск и поиск по схожести векторов. Мне захотелось понять, как работает полнотекстовый поиск и в частности BM25, поэтому в этой статье я постараюсь разобраться в этом.

Читать далее

Throttling в процессорах — инволюция. Зеленые против Красных

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели4.7K

Мы привыкли, что производительность процессоров растет с каждой новой моделью. Иначе зачем их покупать? Зеленые технологии в процессорах ранее присутствовали, но легко управлялись через схему питания в Windows. Однако новый кластер серверов от Lenovo сумел неприятно удивить, а после изучения документации возникло много вопросов к архитекторам и архитектуре. И зеленое будущее уже видится не таким приятным.

Читать далее

Информация

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