Pull to refresh
-19
0
Send message

Как накрыли сеть Кадыр-Хана

Reading time5 min
Views28K

Автор: Владимир Герасименко

В продолжение темы про торговлю ядерными технологиями Абдул Кадыр Ханом и получение Пакистаном доступа к ним. Напомню основные моменты: В 1971 году в результате вмешательства Индии в Бангладешское восстание Пакистан теряет огромные территории (нынешний Бангладеш) и перед страной маячит угроза полного поражения в грядущем противостоянии. Срочно нужен был выход в виде собственного ядерного арсенала. Эта же мысль засела в голове молодого, амбициозного и талантливого "экспата" в голландском Делфте - Абдул Кадыр-Хана. Он как раз получил профильное образование вкупе с гражданством и устроился работать в FDO – дочку франко-германского концерна URENCO, конструировавшего и производившего оборудование для атомной отрасли Европы. В итоге 30-летней деятельности Хану удалось переправить на родину необходимую документацию для создания пакистанской Бомбы, но с производственными мощностями не заладилось - и тут на сцену выходит наш сегодняшний герой - швейцарец Фридрих Тиннер, с которым Хан немало контактировал ещё во время работы в FDO. 

Фридрих, как оказалось, держал в руках все нити поставок оборудования для проектов Хана. И только в 1999 году ЦРУ, пытаясь понять откуда у Ирана технологии для обогащения урана, случайно по наводке немцев вышли на Тиннера и его сыновей. Завербовав их, американцы получили просто вал информации, который их обескуражил.

Читать далее
Total votes 35: ↑29 and ↓6+35
Comments41

Какой предел у предсказателя ветвлений? Проверили на x86 и M1

Reading time13 min
Views35K

Некоторое время назад я смотрел на высоконагруженную часть кода и обратил внимание на это:

if (debug) {
    log("...");
}

И тут я задумался. Это — часть цикла, от которого требуется высокая производительность, но этот фрагмент выглядит как пустая трата времени, ведь мы никогда не устанавливаем флаг отладки. Нормально ли иметь в коде условные операторы, которые никогда не выполняются? Уверен, это влияет на производительность программы…
Читать дальше →
Total votes 113: ↑111 and ↓2+149
Comments91

Модели памяти C++ и CLR

Reading time16 min
Views37K

Это расшифровка-перевод доклада Саши Гольдштейна, признанного лучшим на конференции DotNext 2016 Piter. С годами этот доклад стал лишь актуальнее прежнего: появление Mac на ARM-процессорах — еще один пример, почему разработчикам сегодня нужно думать не только о x86-архитектуре.



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


То, что подходит процессорам Intel на архитектурах x86 и x86-64, может не подойти другой архитектуре. Как только вы перенесете свой код на другой процессор, например, на ARM для iPhone и Android, есть вероятность, что он перестанет работать как надо. Проблемы могут быть как очевидными (воспроизводиться с первого-второго раза), так и не очень (возникать только раз в миллион итераций). Вполне вероятно, что такие баги могут добраться до продакшна. Сегодня .NET и, конечно, C++ можно использовать не только на Windows и Intel, но и на других платформах, так что доклад будет полезен многим разработчикам.


Дисклеймер: статья предназначена для продвинутых читателей. Смотрите на свой страх и риск. За частое упоминание барьеров памяти и изменения порядка исполнения инструкций она получила возрастное ограничение 18+.
Читать дальше →
Total votes 53: ↑52 and ↓1+70
Comments4

Ещё раз о неопределённом поведении или «почему не стоит забивать гвозди бензопилой»

Reading time8 min
Views37K
Про неопределённое поведение писали не раз. Приводились цитаты из стандартов, объяснения их интерпретации, разного рода поучительные примеры, но, похоже, все люди, пытавшиеся об этом писать пропускали важный пункт: по-моему никто внятно так и не удосужился объяснить — откуда это понятие в языке, собственно, появилось, и, главное, кому оно адресовано.

Хотя на самом-то деле, если вспомнить историю Си, всё достаточно очевидно и, главное, логично. А все жалобы людей, «обжёгшихся» на неопределённом поведении для людей не забывших что такое Си и зачем он вообще существует звучат примерно как: «я тут гвозди бензопилой забивал… забивал и забивал, всё было хорошо, а потом я дёрнул за ручку и у неё коготки как забегают, задёргаются, мне руку оттяпало и полноги… ну кто так строит?».

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

Так какой же важный секрет люди упускают из виду?
Total votes 83: ↑76 and ↓7+69
Comments206

Поиск родственников через тест ДНК. Часть 4 – Расшифровка результата

Reading time15 min
Views30K
Итак, вы определились для чего нам нужен ДНК-тест, выбрали в какой лаборатории будете покупать его, заказали через интернет и дождались получения. Потом вы сделали тест себе или родственникам и отправили тест обратно, перейдя в режим ожидания.

И вот спустя несколько недель мы получаем извещение на e-mail, что наш тест готов, результаты загружены на сайт и теперь можно ознакомиться с его результатом!



Что мы увидим в результатах ДНК-теста на сайте лаборатории?


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

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

Далее будут много картинок, т.к. без этого обзор будет неполноценным.
Читать дальше →
Total votes 17: ↑17 and ↓0+17
Comments21

Все статьи Тима Урбана (Wait But Why) на русском [46 из 99]

Reading time5 min
Views42K
image

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

Я делаю проект «Ontol» — это GitHub для лонгридов (и видеолекций), где каждый может создавать свои подборки самых важных лонгридов (видеолекций) всех времен и народов по значимым темам жизни, постоянно их пополнять, улучшать и делиться ими со всеми в 1 клик. (прототип, телеграмм-канал)

Тим Урбан, пожалуй, самый продуктивный (даже в чем-то потеснил Пола Грэма) человек, который интересуется сложными вопросами и делится своими находками с человечеством, чтобы донести «кванты мировоззрения». Сферы его интересов от космоса и природы звука, крионики, нейроинтерфейсов и электромобилей, до выбора карьеры, дружбы и спутника жизни. Эти статьи входят в несколько моих онтолов (личных топ-10 самых полезных материалов на определенную тему: деньги, дело жизни, семья, космос, прокрастинация, искусственный интеллект, бессмертие).

А ещё, Тим Урбан — это человек, который больше всех сделал для понимания прокрастинации и борьбы с ней (а так же для инсайтов по GTD):


Вклад в философию и понимание космонавтики:



А какие ваши любимые статьи Тима Урбана?

Под катом все публикации Тима Урбана в хронологическом порядке (и перевод если есть).

UPD. 06.08.2020 Добавлен перевод «Всё, что Вам нужно знать о звуке» и "Глава 8. Лаборатории и эхо-камеры".
Читать дальше →
Total votes 16: ↑13 and ↓3+18
Comments0

Radarr, Jackett и бот в телеге. Качаем торренты по-новому

Reading time5 min
Views79K
image

В итоге, конечно, стриминг таки добьёт торренты. И если в 720/1080p мире это, по сути, уже свершилось, то Blue-ray/4k/8k контент пока ещё держится за счёт торрентов (у нас и в Европе) и юзнетов (штаты).

Сегодня стриминг выигрывает, в основном, за счёт удобства. Открыл апп, зашёл в раздел «новинки» и выбирай на любой вкус. Я прокачал свой процесс с торрентами, и теперь он смотрится, как минимум, не хуже.
Читать дальше →
Total votes 32: ↑32 and ↓0+32
Comments52

Как я пишу конспекты по математике на LaTeX в Vim

Reading time9 min
Views124K
Некоторое время назад на Quora я отвечал на вопрос: как успевать записывать за лектором конспект по математике на LaTeX. Там я объяснил свой рабочий процесс по конспектированию в LaTeX с помощью Vim и Inkscape (для рисунков). Но с тех пор многое изменилось, так что я хочу опубликовать несколько постов в блоге с описанием нового процесса. Это первая из статей.

Я начал использовать LaTeX для конспектирования во втором семестре курса математики, и с тех пор написал более 1700 страниц. Вот несколько примеров, как выглядит конспект:


Читать дальше →
Total votes 222: ↑220 and ↓2+218
Comments133

Information

Rating
Does not participate
Registered
Activity