Search
Write a publication
Pull to refresh
40
0
sysprg @sysprg

User

Send message

Аудиогаджет специального назначения: ценная “вещь” для посольства США

Reading time6 min
Views71K
Возможно, кто-то понял о чем пойдет речь из заголовка, для прочих поясню — этот пост посвящен эндовибратору Льва Термена, который также именуют “Златоуст” и “The Thing” (“вещь”, “нечто”). С этим устройством связан беспрецедентный случай в истории мировых разведок, когда посольство США в Москве безнаказанно прослушивалось на протяжении семи лет. При этом у американских служб технической безопасности не было возможности обнаружить “жучок”, так как последний не имел источника питания и представлял собой небольшую конструкцию из металла.


Жидкий микрофон, или «в этом доме тебя слушают даже стены»

Level of difficultyEasy
Reading time10 min
Views28K
Картинка Нина Ватолина, Николай Денисов / gallerix.ru

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

Однако зададимся вопросом, а могут ли привычные для нас предметы быть выполнены в несколько ином, так скажем «форм-факторе» и при этом их функция будет сохраняться?

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

Сортировка слиянием — не так просто, как кажется

Reading time20 min
Views32K

В одной конторе соискателю на позицию Senior C# developer выдали тестовое задание: отсортировать файл со строками определенного формата.

Требования такие:

* Формат строки: число, точка, пробел, далее любые символы до конца строки.

* Порядок сортировки — сначала сортируем текстовой части строки, потом по числу если текстовые части совпадают.

* Кодировка — UTF-8.

* Размер файла — 100гб - гарантированно больше объема ОП.

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

Как и многие другие программисты, узнав о таком тестовом задании, я возмутился. Внешнюю сортировку слиянием практически всех проходили в ВУЗе, но практически никто никогда не писал её. Задача очень непрактическая и непонятно какие навыки проверяет. Так мне казалось.

Эта задача вызвала бурные обсуждения о способах её решения. Многие программисты, причисляющие себя к рангу senior, предложили использовать базы данных, ибо не барское это дело - вручную писать алгоритмы сортировки. Некоторые даже попытались сделать решение на Apache Spark. Однако никто до конца задачу не решил, ибо мало кому удалось отсортировать в нужном порядке даже 10ГБ файл менее чем за 15 минут без SSD.

Я подумал, что стоит решить задачу до конца с помощью программирования, и тоже причислить себя к рангу senior developer.

Читать далее

Сжатие без потерь — главная концепция в нашей жизни

Level of difficultyEasy
Reading time7 min
Views21K

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

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

Все мы знаем и используем компьютерные архиваторы: ZIP, RAR, Brotli и т. д. Но мало кто видит в них модель интеллекта. Это даже как-то странно на первый взгляд. Хотя если подумать, то идеальное сжатие — это синоним понимания.
Читать дальше →

Про нейросети

Reading time3 min
Views14K

Каждый раз читая очередную статью вида "Почему нейросети это тупик" (раз, два, три), испытываю странное чувство... несоответствия что ли. Как будто автор декларирует одно, а доказывает и аргментирует нечто совсем иное. Для мея сам тезис буквально звучит как оксюморон (не путать с рэпером ?), но почему именно - не так очевидно. Для этого надо разобраться, чем же на самом деле являются нейросети... Погнали!

Первое, чем современные нейросети (ИНС в общепринятом понимании, не путать с ИмНС aka SNN) не являются, это, собственно, нейросетями! ? Да, первый фрмальный нейрон, а за ним и перцептрон Розенблата были вдохновлены биологическими нейронами да и сверточные сети в некоторых аспектах демонстрируют некоторое сходство с обработкой визуального сигнала зрительной корой, но не более. Современный Data Since имеет общего с учением о нейронах примерно столько же, сколько современная аэродинамика с орнитологией: самолеты летают, но крыльями не машут!

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

Так что же такое все-таки ИНС? Жми далее...

Читать далее

Электронный конструктор, не бьющий током

Reading time13 min
Views49K

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

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

Световые эффекты на транзисторах и микросхемах

Reading time8 min
Views26K

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

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

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

Неизвестный UART: теория

Reading time12 min
Views37K

Можно с уверенностью сказать, что с момента публикации первой версии стандарта RS‑232 в мае 1960 года и по настоящее время, было написано приблизительно 109 независимых реализаций UART на всём, чём угодно. Однако, подобно «Hello world» в мире прикладного ПО, а также мигания светодиодом — «Hello world» в мире цифровой электроники (сигнализирующий об успешной настройке оборудования и среды разработки) — процесс написания UART способен проиллюстрировать особенности языка или платформы, демонстрируя применение тех или иных синтаксических конструкций для решения практических, насущных и понятных проблем.

В данном цикле статей будет рассказано про написание модуля UART на SystemVerilog, про синтез данного модуля на различных платформах и про некоторые другие аспекты применения UART в ПЛИС. Но прежде, чем писать код, поговорим про сам протокол и про особенности аппаратной части вне контекста ПЛИС.

СТАРТ_БИТ

Всё про USB-C: переходники вне стандарта

Level of difficultyEasy
Reading time8 min
Views30K

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

Лично я считаю, что как у хакера у вас должна быть возможность приобрести любую необходимую приспособу со стандартом подключения USB-C. Хакерам не нужны ограничения, обуславливаемые маркетингом, — им необходимо понимать, как можно или нельзя применить тот или иной девайс, исходя из его внутреннего устройства. И я хочу поделиться с вами таким пониманием, чтобы вы могли принимать осмысленные решения.

С другой стороны, USB-C создан для использования не умудрёнными опытом людьми, хотя и в этом плане у данного стандарта есть пробелы. Здесь нам поможет ясность определения того, что соответствует стандарту. Вот известная история о кабеле USB-C, который убил Chromebook и подтолкнул Бенсона Люна к запуску онлайн-блога с рекомендациями относительно USB-C. На деле существует множество подобных печальных историй.

Сегодня же мы разберём виды кабелей USB-C, которые в зависимости от своего использования могут как выполнить свою роль, так и подвести вас.
Читать дальше →

Что нужно чтобы не было бабаха? Три составляющих хорошего силового преобразователя. Часть 1

Reading time12 min
Views23K

Наверное, силовая электроника – рекордсмен по скорости и зрелищности начальных испытаний опытных образцов. Тут вам и свето-шумовые эффекты, и пластиковый короб для защиты глаз/лица, и даже острые ощущения. Вспомните первое включение. Это трепетное ожидание пиротехнического шоу, готовность выдернуть вилку, надеть шлём и убежать в бункер. А ведь так хочется, чтобы проект взлетел! Посмотрим, без чего проект точно успешно не взлетит, разберём примеры и полюбуемся на бабахи…
Читать дальше →

Изучить словарь «Властелина Колец» при помощи кривой Эббингауза

Level of difficultyMedium
Reading time18 min
Views6.1K

Все русские фанаты Толкиена знают, какая беда творится с переводами его великого романа (далее – ВК) на язык Пушкина и Достоевского. Поясню вкратце. Через советскую цензуру в 1982 году удалось протащить только первый том, дальше дело заглохло. Чтобы узнать, дошел ли Фродо до Роковой горы, десяток дилетантов независимо друг от друга перевели все остальное, кто как понял. Когда культура толкиенизма в России была уже сформирована, вышел, наконец, и полный профессиональный перевод. Но запал переводчика к тому времени уже иссяк, так что и этот труд вышел довольно неоднозначным: тюремный жаргон, ругательства, ежестраничные отсылки к советским реалиям…

Оригинал же производит на нашего читателя двоякое впечатление. С одной стороны, великолепная стилистическая работа гениального филолога, в руках которого жесткий английский язык гнется, как пластилин ("On he led them, into the mouth of darkness, and still on under the deep clouded night"). С другой - обилие идиом, фразовых глаголов, игры слов и вообще таких выражений, какие ни в одном словаре не сыщешь.

Поэтому я решила написать небольшое приложение, которое поможет освоить все это великолепие при помощи кривой Эббингауза.

Много кода на Python и Java

Свойства высокоразмерных пространств, которые применяются в машинном обучении

Reading time7 min
Views6.3K

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

Читать далее

Декаплинг: качество питания микросхем

Reading time13 min
Views33K

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

Читать далее

Земля круглая, вода мокрая, JPEG шакалит, небо голубое… Или нет?

Reading time11 min
Views16K

Вы можете сказать, что один факт выбивается из этого ряда в заголовке, потому что он не так очевиден, как остальные. Еще лет 10-15 назад я бы никогда не подумал, что тут могут быть возражения, а сейчас уже и не удивляюсь, что приходится объяснять простые истины: дело в том, что планеты обладают очень большой массой, поэтому гравитация стремится придать им форму шара. Вот и все! Хотел бы на этом закончить статью и поблагодарить за внимание.

Читать далее

Пишем обобщённую хеш-таблицу с открытой адресацией на чистом C

Reading time28 min
Views24K

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

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

К разработке этой библиотеки и написанию статьи меня натолкнуло отсутствие незаброшенной библиотеки эффективных хеш-таблицы для C.

Читать далее

Как устроен и как работает пин-пад

Reading time11 min
Views30K
Приветствую всех!

Многие из нас хоть раз читали, как происходит обработка банковских операций. И все мы знаем, что незашифрованный PIN не уходит никуда дальше пин-пада. А вот о том, как именно это реализовано, информации традиционно маловато.

image

Итак, в ходе данной статьи поговорим о пин-падах. Узнаем, как они устроены, какой защитой обладают. На примере реального девайса рассмотрим управление им. Как обычно, будет много интересного.
Читать дальше →

Стало скучно? Запусти астероид в Землю

Reading time3 min
Views57K

Чем заняться приятным пятничным вечером? Посидеть в баре с друзьями, зачистить рейд в WoWке? Да ну нафиг. Давайте запускать астероиды!

Сервис с незатейливым названием Asteroid Launcher предлагает поиграть в бога. Вы можете выбрать любую точку земного шара и направить туда астероид с выбранными настройками. Помимо симпатичной анимации вы получите сводку нанесённого ущерба.

Читать далее

Делаем физическую лабораторию из смартфона своими руками

Reading time7 min
Views13K

Всем привет! Продолжаем наш курс Galaxy Upcycling - Новая жизнь старого смартфона, где обсуждаем, как можно повторно использовать устаревший смартфон, иногда - в неожиданном качестве, как физическую лабораторию. Этому, например, посвящен небольшой курс “Лаборатория в кармане” педагога Анатолия Шперха. В самом деле, современный смартфон оснащен большим количеством сенсоров, способных измерять параметры окружающей среды.

Я рассмотрю сегодня три урока из приложения для проведения учебных физических экспериментов PhyPhox. Эти уроки относятся к разделу «механика» и задействуют разные сенсоры смартфона:

1. Скорость лифта (барометр и акселерометр)

2. Центрифуга (гироскоп и акселерометр)

3. Свободное падение (микрофон)

Читать далее

CAP двенадцать лет спустя: как изменились «правила»

Reading time23 min
Views6.8K


Эта статья впервые появилась в журнале Computer и подготовлена InfoQ & IEEE Computer Society.


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


За десятилетие, прошедшее с появления теоремы, разработчики и исследователи использовали теорему CAP (а иногда и злоупотребляли ею) как повод для изучения широкого спектра новых распределенных систем. Движение NoSQL также использовало её в качестве аргумента против традиционных баз данных.


В теореме CAP говорится, что любая сетевая система с общими данными может иметь не более двух из трех желаемых свойств:


  • согласованность (С), эквивалентная наличию единственной актуальной копии данных;
  • высокая доступность (A) этих данных (для обновлений); и
  • устойчивость к сетевым разделениям (P).

Такое толкование CAP помогало разработчикам быть открытыми для более широкого диапазона систем и компромиссов; действительно, за последнее десятилетие возникло множество новых систем и много споров об относительных достоинствах согласованности и доступности. Формулировка «2 из 3» всегда вводила в заблуждение, поскольку имела тенденцию чрезмерно упрощать противоречия между свойствами. Но сейчас такие тонкости имеют значение. CAP запрещает лишь крошечную часть проектного пространства: идеальная доступность и согласованность при наличии разделений, которые встречаются редко.

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

Information

Rating
Does not participate
Date of birth
Registered
Activity