Pull to refresh
32
0

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

Send message

Безопасность памяти меня не волнует

Level of difficultyMedium
Reading time6 min
Views8.5K
Фото с сайта платформы CHERIoT, проекта Microsoft по решению проблем с доступом к памяти IoT-устройств на аппаратном уровне

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

То же касается и безопасности памяти. Для меня тот факт, что 70% уязвимостей возникают в результате её отсутствия, не говорит о важности этого аспекта. Важность безопасности памяти в том, что один связанный с ней баг может полностью подорвать все гарантии, на которые я опираюсь.
Читать дальше →
Total votes 27: ↑24 and ↓3+34
Comments7

Firefox остаётся самым быстрым браузером

Level of difficultyMedium
Reading time6 min
Views37K


Почти год назад случилось знаковое событие: впервые в истории Firefox обошёл Chrome по скорости работы.

Многие помнят, что с момента выхода в 2008 году Chrome отличался высокой производительностью, а Firefox на его фоне выглядел тяжеловесным и страдал от утечек памяти. Но постепенно Mozilla исправила ситуацию, так что в 2023 году браузеры наконец поменялись местами.

Единственное сомнение может вызвать объективность тех тестов, всё-таки Speedometer 2.0 — довольно старый набор 2018 года. Может, он не соответствует современному разжиревшему вебу? Что ж, теперь увидела свет новая версия Speedometer 3.0, поэтому взглянем на более достоверную и объективную картину: какой браузер быстрее на самом деле?
Читать дальше →
Total votes 93: ↑90 and ↓3+110
Comments129

Как пытались (пере)программировать мозги, и что из этого получилось? Часть 4: Нуарный коп, оргии и тюремные эксперименты

Level of difficultyEasy
Reading time10 min
Views11K

В прошлой части наш антигерой Сидни Готтлиб дорвался-таки до своего большого проекта MKUltra: ему дали много денег и ещё больше полномочий на то, чтобы научиться взламывать человеческое сознание с помощью психоактивных веществ, гипноза и любых иных способов без особого внимания к этике и законности. В ЦРУ были уверены, что КГБ и китайская разведка опережают их на несколько голов, давно отработали способы «промывки мозгов» и научились превращать в коммунистов даже самых твердокаменных либертарианцев. И считали, что для сокращения разрыва хороши все средства: ведь иначе можно однажды проснуться и обнаружить себя колхозником на кукурузных полях Оклахомской ССР!
Читать дальше →
Total votes 46: ↑41 and ↓5+57
Comments8

Доступная цветная 3D-печать?

Level of difficultyMedium
Reading time8 min
Views8K
Картинка Vecstock, Freepik

Цветная 3D-печать является своего рода мечтой для домашнего пользователя, и множество исследователей работают в этом направлении с переменным успехом.

Тем не менее, им удалось добиться некоторых результатов в одном из направлений, в то время как другие всё ещё остаются не разработанными (предоставляя вам поле для деятельности).
Читать дальше →
Total votes 43: ↑41 and ↓2+60
Comments44

Как пытались (пере)программировать мозги, и что из этого получилось? Часть 3: мрачный путь к MKUltra

Level of difficultyEasy
Reading time8 min
Views11K

В прошлой части мы рассказали о том, как в США 50-х годов от экспериментов по созданию «сывороток правды» перешли к попыткам программировать человеческое сознание. Сия гениальная идея пришла в головы американским спецслужбам по причине внутриведомственной конспирологии: они верили, что у коммунистов уже были такие технологии, и очень боялись отстать. Во главе проектов ЦРУ в этой сфере стоял Сидни Готтлиб: живое воплощение образа безумного учёного, ставящего самые странные и пугающие эксперименты над людьми… просто потому, что может и ему это очень интересно.
Читать дальше →
Total votes 40: ↑37 and ↓3+52
Comments11

Почему люди не делают бэкапы?

Level of difficultyEasy
Reading time6 min
Views15K
Есть у меня вузовский товарищ Сашка. Математик, физик, а теперь и разработчик (умело монетизирует мозги), умный до безобразия. Ещё в университете он проявлял патологическую собранность в походах: чего бы ни понадобилось, всё было у него в рюкзаке. Год за годом он погружался в тему жизнеобеспечения всё глубже — и вот в ковидные времена общество получило выживальщика, продуманного до мелочей. Это тот случай, когда тушёнка, сгущёнка, йодид калия, триста способов разжечь костёр, землянка в пригородном лесу уже выкопана и меблирована обставлена по последнему слову выживания. Так вот, этот разработчик, математик, физик и человек, желающий во что бы то ни стало сохраниться вместе с тихоходками, с полгода назад истерически кричал мне в трубку, что у него «стёрся» проект длиной в год. Причина истерики проста: он не сделал бэкап. И это могла быть курьёзная байка, но таких — сотни и тысячи. Это люди, которые доверяют какому-то авосю свой труд, свои силы, свой опыт, свои деньги, данные, судьбы своих компаний. А авось почему-то оказывается ненадёжным.


Это всё чёрная кошка виновата, а не бэкапы там какие-то несделанные

Почему так происходит? Предлагаю рассмотреть 9 возможных причин.
Читать дальше →
Total votes 43: ↑40 and ↓3+52
Comments90

Война стандартов. Как аналоговые компакт-кассеты победили в конкурентной борьбе

Level of difficultyEasy
Reading time9 min
Views26K


В одной из песен группы «Кафе» есть такая строчка: «…и проклятый китайский плеер зажевал две кассеты Майка». В восьмидесятые годы выбор музыкальных носителей и вправду был крайне невелик: постепенно уходящий в прошлое «винил» и компакт-кассеты, пришедшие на смену огромным бобинам «катушечных» магнитофонов. При слове «кассета» каждый из нас представляет себе одно и то же: что такое магнитофонная кассета, знают все, её внешний вид вплоть до малейших деталей знаком любому (даже бывшему) владельцу «кассетника» или плеера. Кассеты также использовались в качестве носителей информации для бытовых компьютеров и стали настолько привычными, что никто даже не задумывался об истории их появления, которая, оказывается, насчитывает немало интересных страниц. Как минимум, «традиционные» компакт-кассеты были всего лишь одним из стандартов, между которыми шла жесточайшая конкурентная борьба. Притом знакомые нам кассеты имели все шансы с треском проиграть эту гонку. Если бы не одно обстоятельство…
Читать дальше →
Total votes 77: ↑76 and ↓1+103
Comments80

Этот опасный рефакторинг

Level of difficultyMedium
Reading time7 min
Views6.6K

Ошибки во время рефакторинга могут дорого обойтись. Модернизация, ведущая к отказу системы, или внесение новой функциональности параллельно с ошибочными правками явно принесут вред. Но степень вреда может быть разной.
Читать дальше →
Total votes 27: ↑24 and ↓3+37
Comments19

HDD, SSD или NVMe: что выбрать для виртуального сервера (тесты внутри)

Level of difficultyMedium
Reading time6 min
Views13K


В сегодняшней статье разберём настройку одного из параметров конфигурации при заказе виртуального выделенного сервера. Речь пойдёт о типе накопителя, который будет использоваться для виртуалки. Попробуем вместе разобраться, чем виды накопителей отличаются друг от друга, и на что может повлиять тот или иной выбор.
Читать дальше →
Total votes 30: ↑25 and ↓5+32
Comments65

Чему разработчики ПО могут научиться у стоматологов

Level of difficultyMedium
Reading time6 min
Views11K

Для начала немного обо мне: я и практикующий дантист, и разработчик ПО. Со вторника по четверг я пишу код, а с пятницы по воскресенье принимаю пациентов. До того, как стать дантистом, я работал в таких компаниях, как Allstate Insurance, Lockheed Martin и ICS. Освоив обе эти профессии, я заметил, что разработчики ПО могут многому научиться у дантистов и наоборот. Я решил записать эти уроки в надежде, что они кому-то могут помочь. Это просто общие рекомендации — не стоит рассчитывать, что они идеально подходят для любой ситуации.
Читать дальше →
Total votes 49: ↑48 and ↓1+63
Comments37

Как пытались (пере)программировать мозги, и что из этого получилось? Часть 1: проект «Артишок»

Level of difficultyEasy
Reading time10 min
Views19K

Во все века разведчики, шпионы и спецслужбы полагались в своей работе на разные вещества и психологические уловки. Тёмные рыцари плаща и кинжала травили врагов всевозможными ядами, усыпляли стражу, подсылали убийц-фанатиков с промытыми пропагандой и веществами мозгами — как легендарные ассасины времён Крестовых походов, чьё название происходит от неумеренного накачивания одноразовых киллеров гашишем. Развитие науки и техники в ХХ веке только подстегнуло энтузиазм шпионских ведомств. Если в СССР секретная токсикологическая лаборатория №12 при КГБ занималась в основном ядами для ликвидации врагов трудового народа, то в США к боевым токсинам из закрытого центра Форт-Детрик добавлялись безумные во всех смыслах эксперименты ЦРУ по взлому чужих (и даже своих!) мозгов посредством веществ и гипноза. Это привело к грандиозному скандалу в 70-е годы, породило немало теорий заговора, а также отсылок в массовой и не очень культуре. Впрочем — обо всём по порядку.
Читать дальше →
Total votes 70: ↑54 and ↓16+58
Comments21

Форма, преобладающая над содержанием: любовь к бракованным кадрам, переросшая в бренд

Level of difficultyEasy
Reading time10 min
Views11K
image

Уже год я снимаю на плёнку. Не часто, но периодически уезжаю из Москвы в родной город с проявленной катушкой плёнки. И чем больше снимаю, тем чаще прихожу к выводу, что, по сути, занимаюсь ломографией тоже. А ведь ломография — вещь очень интересная!
Читать дальше →
Total votes 45: ↑45 and ↓0+45
Comments23

Графика древности: пятая волна. Sega Saturn и Sony PlayStation (часть 2/4)

Level of difficultyMedium
Reading time25 min
Views13K

В предыдущей части мы начали знакомиться с игровыми консолями пятого поколения, настоящим некстгеном своего времени. Сам этот термин пошёл в массы именно тогда: только-только выходящим на рынок новым консолям был посвящён американский видеоигровой журнал Next Generation, позже переименованный в NextGen.

История успеха консолей пятого поколения началась в 1993 году с консоли 3DO, но настоящая битва за внимание геймеров была впереди. Пятое поколение не только определило саму форму современных игр, но и смену главных действующих лиц — компаний, задающих тренды.

Сегодня рассмотрим две главнейшие платформы поколения, Saturn от некогда великой, но начинающей стремительно терять полимеры Sega, и PlayStation от новичка в индустрии видеоигр — Sony. Заодно узнаем кое-что про концептуальное противостояние квадов и треугольников, а также про необычные сложности в реализации эффектов полупрозрачности.
Читать дальше →
Total votes 57: ↑56 and ↓1+77
Comments19

Обнаружение SSH-туннелей по размеру пакетов

Level of difficultyMedium
Reading time8 min
Views18K

Иллюстрация из книги «Справочник киберсантехника»

Протокол SSH — очень мощный инструмент, который используется для удалённой консоли или передачи файлов (scp, sftp). Есть менее известная функция перенаправления портов. Такие SSH-туннели используются для пробития файрволов и хорошо скрываются от обнаружения стандартными средствами мониторинга типа Trisul, Zeek (ранее был известен как Bro), Suricata и Snort. Поэтому для их обнаружения в корпоративной сети используются другие методы.
Читать дальше →
Total votes 48: ↑44 and ↓4+66
Comments23

Советские игровые автоматы — ностальгический гейминг с запахом резины. Часть 2: «Городки» и электронные тиры

Level of difficultyEasy
Reading time5 min
Views7.5K

Советские игровые автоматы стали порождением сближения СССР и Запада в начале 70-х годов, при брежневско-никсоновской разрядке. Советский Минкульт выкупил большую часть игровых автоматов, которые появились в Москве на международной выставке «Аттракцион-71», и уже в 1974 году в серию пошёл самый знаменитый советский игровой автомат «Морской бой». О том, как он появился на свет, и какую роль в этом сыграли японские и американские разработки, мы поговорили в прошлой части. А теперь вспомним другие игровые автоматы СССР — менее культовые, но также дарившие множество ярких впечатлений до появления в нашей стране массовых компьютерных игр.
Читать дальше →
Total votes 44: ↑36 and ↓8+42
Comments11

Охота на недостающий тип данных

Level of difficultyMedium
Reading time11 min
Views14K
Направленный граф — это набор узлов, связанных стрелками (рёбрами). Как узлы, так и рёбра могут содержать данные. Вот несколько примеров:

Все графы созданы с помощью graphviz (источник)

В сфере разработки ПО графы используются повсеместно:

  1. Зависимости пакетов, как и импорт модулей, формируют направленные графы.
  2. Интернет — это граф, состоящий из ссылок между веб-страницами.
  3. При проверке моделей анализ выполняется путём изучения «пространства состояний» всех возможных конфигураций. Узлы — это состояния, а рёбра — это допустимые переходы между ними.
  4. Реляционные базы данных — это графы, в которых узлы являются записями, а рёбра — внешними ключами.
  5. Графы — это обобщение связанных списков, двоичных деревьев и хэш-таблиц.1

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

Я вижу графы повсюду и использую их для анализа всевозможных систем. В то же время я побаиваюсь использовать их в коде. Какой из популярных языков программирования ни возьми, поддержка графов в них практически отсутствует. Ни в одном её нет в виде встроенного типа, очень мало где они прописаны в стандартной библиотеке, и у многих языков нет для этой функциональности надёжного стороннего пакета. Чаще всего мне приходится создавать графы с нуля. Существует большой разрыв между тем, как часто инженерам ПО могут понадобиться графы и тем, в какой степени экосистема их поддерживает. Где все графовые типы?
Читать дальше →
Total votes 49: ↑47 and ↓2+69
Comments21

Ещё один шаг в сторону оптических наушников

Level of difficultyMedium
Reading time10 min
Views15K
Картинка Freepik

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

Дело в том, что мне не сильно нравится обилие электромагнитных полей вокруг нас, а в последнее время ещё и существенно усугубившееся. Эволюция человеческого тела занимала миллионы и миллионы лет, чтобы приспособиться к возникающим изменениям, исходя из этого, было бы странно ожидать, что человеческое тело быстро приспособится к лавинообразному росту электромагнитного излучения, увеличившегося буквально за десятилетия. Тут, конечно, критики наверняка захотят меня «поддёрнуть», что свет тоже является электромагнитной волной, но я сейчас не об этом, а о более проникающих излучениях, среди которых: сотовая связь, разнообразные беспроводные устройства и прочее, прочее, прочее.
Читать дальше →
Total votes 46: ↑37 and ↓9+43
Comments99

115 лет прогресса: от механического осциллографа до самодельного цифрового

Level of difficultyEasy
Reading time9 min
Views12K


Привет, Хабр! Вы ещё не собирали осциллограф DSO138? — Если нет, то вам можно позавидовать: впереди увлекательный проект со множеством перспектив. Если да, то почему бы не усовершенствовать уже собранный или собрать ещё один.

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

А начнём мы с истории осциллографов, и она гораздо интереснее, чем можно представить.
Читать дальше →
Total votes 42: ↑40 and ↓2+58
Comments27

Резервное копирование на дешёвом VPS-сервере

Level of difficultyMedium
Reading time6 min
Views8.3K


Мы уже рассказывали, как можно использовать ультрадешёвый VPS за 130 рублей в месяц. На самом деле 512 МБ оперативной памяти вполне достаточно для нормальной работы Linux (без GUI) и множества приложений, таких как VPN, веб-хостинг, некоторые игровые серверы, а также для резервного копирования файлов.

Конечно, в интернете куча облачных хостингов, но всё-таки приватные файлы спокойнее хранить на личном сервере, который полностью под нашим контролем.
Читать дальше →
Total votes 28: ↑26 and ↓2+40
Comments18

Как работает код, который спит месяц

Level of difficultyMedium
Reading time7 min
Views12K

В первой части этого небольшого цикла статей мы говорили о том, что механизм устойчивого выполнения (durable execution) сохраняет состояние программы в журнале, а также о связанных с этим сложностях в случае обновлений служебного кода, ведущих к утрате журналом актуальности. Мы увидели, что ограничение времени выполнения обработчика существенно облегчает эту проблему. Но… не ведёт ли это к потере одного из наиболее интересных свойств устойчивого выполнения — возможности создавать бизнес-процессы, работающие с длительными паузами? В Restate мы считаем, что при использовании правильных примитивов можно ничего не потерять.

Тем не менее, если вы любите писать код с долгими периодами ожидания, потому что он хорошо согласуется с вашей моделью мышления, то Restate поможет вам реализовать это в полной мере. Если же вы цените устойчивое выполнение, но скептично относитесь к долго выполняющимся обработчикам и проблемам с их версионированием, то для этого есть решение. Ниже описаны несколько способов получить те же свойства путём добавления в этот механизм устойчивого обмена сообщениями и состояния.
Читать дальше →
Total votes 30: ↑26 and ↓4+39
Comments10

Information

Rating
Does not participate
Works in
Registered
Activity