Search
Write a publication
Pull to refresh
-11
0
Send message

Наглядное объяснение чисел с плавающей запятой

Reading time4 min
Views230K
image

В начале 90-х создание трёхмерного игрового движка означало, что вы заставите машину выполнять почти не свойственные ей задачи. Персональные компьютеры того времени предназначались для запуска текстовых процессоров и электронных таблиц, а не для 3D-вычислений с частотой 70 кадров в секунду. Серьёзным препятствием стало то, что, несмотря на свою мощь, ЦП не имел аппаратного устройства для вычислений с плавающей запятой. У программистов было только АЛУ, перемалывающее целые числа.

При написании книги Game Engine Black Book: Wolfenstein 3D я хотел наглядно показать, насколько велики были проблемы при работе без плавающей запятой. Мои попытки разобраться в числах с плавающей запятой при помощи каноничных статей мозг воспринимал в штыки. Я начал искать другой способ. Что-нибудь, далёкое от $(-1)^S * 1.M * 2^{(E-127)}$ и их загадочных экспонент с мантиссами. Может быть, в виде рисунка, потому что их мой мозг воспринимает проще.

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

Как «зашить» сетчатку и нужно ли это делать?

Reading time9 min
Views107K

Представьте ситуацию – живете вы спокойно, ничего не болит и не краснеет, носите очки или линзы, или ничем не пользуетесь и видите отлично – и случайно попадаете на прием к офтальмологу. Скажем, из-за призыва в армию, из-за беременности или просто на диспансерный осмотр. И вдруг узнаете, что сетчатка у вас «дырявая» или натянутая и вот-вот порвется.


И вам рекомендуют ее «пришить». А вы сомневаетесь – а это точно нужно? И насколько безопасно? А ведь ничего не беспокоит – тогда зачем? А может на мне хотят «заработать»? И первым делом начинаете читать посты в интернете, что скажет такой «независимый» эксперт как Google.


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


Или «забьёте» на все и продолжите жить как раньше – не беспокоит же ничего. В чем же риск?


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

История предсказания переходов с 1 500 000 года до н.э. по 1995 год

Reading time18 min
Views44K
Это приблизительная расшифровка лекции о предсказании переходов (предсказании ветвлений) на localhost, новом цикле лекций, организованном RC. Выступление состоялось 22 августа 2017 года в Two Sigma Ventures.

Кто из вас использует ветвления в своём коде? Можете поднять руку, если применяете операторы if или сопоставление с образцом?

Большинство присутствующих в аудитории поднимают руки

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

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

1 сентября – день знаний. Узнайте всё необходимое про нейронные сети

Reading time6 min
Views20K
Друзья!

Мы поздравляем всех наших подписчиков с днем знаний и желаем, чтобы знаний было больше, их приобретение – интересным, а сами знания – более полезными.

Чтобы воплотить эти пожелания в жизнь, мы предлагаем вашему вниманию видеозапись курса «Однодневное погружение в нейронные сети», который мы провели летом в рамках закрытой школы DevCon. Этот курс позволит за несколько часов погрузиться в тему нейронных сетей и «с нуля» научиться использовать их для распознавания изображений, синтеза речи и других интересных задач. Для успешного освоения курса будут полезны умение программировать на Python и базовые знания математики. Материалы курса и заготовки для практических заданий доступны на GitHub.


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

Готовимся к Java 9. Обзор самых интересных улучшений

Reading time7 min
Views56K


В эту среду, 30 августа, в офисе компании Oracle состоялась встреча JUG.ru с Олегом Шелаевым, Developer Advocate в компании ZeroTurnaround, которая делает JRebel и XRebel. Тема встречи — инструменты создания многопоточных программ на Java (от конструирования велосипедов и запуска потоков ручками, до ForkJoinPool-ов, зеленых потоков и транзакционной памяти).


Конечно, мы поинтересовались, какие фишки Java 9 считают в ZeroTurnaround наиболее полезными. В результате, разжились статьей, которую вы сейчас читаете. Оригинал статьи Олег опубликовал в блоге RebelLabs, там есть еще много интересного.

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

Как читать научные статьи: советы ученых

Reading time10 min
Views60K
«Чтение научной статьи – то, что заставит вас чувствовать себя глупее некуда», – пишет ученый Адам Рубин (Adam Ruben) в своей юмористической колонке для журнала Science. Адам прав: читая статью из рецензируемого научного журнала, многие из нас начинают с оптимизма («В конце концов это всего лишь несколько страниц»), а заканчивают отчаянным желанием срочно сменить сферу деятельности на такую, где научных статей или вовсе нет, или их пишут как-то иначе. На самом деле проблема не в статьях – а в том, как мы их выбираем и читаем.

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

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

Книга «Квантовая механика. Теоретический минимум»

Reading time7 min
Views20K
image Классическая механика интуитивна: она ежедневно и многократно используется людьми для выживания. Но до двадцатого века никто и никогда не использовал квантовую механику. Она описывает вещи столь малые, что они полностью выпадают из области восприятия человеческих органов чувств. Единственный способ понять эту теорию, насладиться ее красотой — перекрыть нашу интуицию абстрактной математикой.

Леонард Сасскинд — известный американский ученый — приглашает вас отправиться в увлекательное путешествие в страну квантовой механики. В пути вам пригодятся базовые знания из школьного курса физики, а также основы математического анализа и линейной алгебры. Также необходимо знать кое-что о вопросах, которые рассматривались в первой книге «теоретического минимума» Сасскинда — «Все, что нужно знать о современной физике». Но нестрашно, если эти знания несколько подзабылись. Многое автор напомнит и пояснит по ходу дела.

Квантовая механика — необычная теория: согласно ее постулатам, например, мы можем знать все о системе и ничего о ее отдельных частях. По поводу этого и других противоречий в свое время много спорили Эйнштейн и Нильс Бор. Если вы не боитесь сложностей, обладаете пытливым умом, технически грамотны, искренне и глубоко интересуетесь физикой, то этот курс лекций Леонарда Сасскинда придется вам по душе. Книга концентрируется на логических принципах квантовой теории и ставит целью не сгладить парадоксальность квантовой логики, а вытащить ее на дневной свет и попытаться разобраться с непростыми вопросами, которые она поднимает.
Читать дальше →

Выключаем Intel ME 11, используя недокументированный режим

Reading time11 min
Views83K


В ходе исследования внутренней архитектуры Intel Management Engine (ME) 11-й версии был обнаружен механизм, отключающий эту технологию после инициализации оборудования и запуска основного процессора. О том, как мы нашли этот недокументированный режим, и о его связи с государственной программой построения доверительной платформы High Assurance Platform (HAP) мы расскажем в этой статье.

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

Первые несколько миллисекунд HTTPS соединения

Reading time10 min
Views172K
После нескольких часов чтения обзоров, Боб с нетерпением нажал на кнопку перехода к оформлению заказа на галлон цельного молока, и…
Воу, что только что произошло?


Интересно? Прошу под кат

«Человек посередине», использующий отозванные сертификаты. Часть 2

Reading time13 min
Views13K

В нашей предыдущей статье были описаны основные механизмы проверки статуса сертификатов (проверки, является ли сертификат отозванным). В этой статье мы ответим на следующие вопросы:

1. Как механизмы проверки статуса сертификатов реализованы в современных Веб-браузерах?
2. Кто виноват? Почему они реализованы именно так?
3. Что делать? Какие есть перспективы?

Эта статья будет полезна тем, кому интересно разобраться в применяющихся на практике механизмах проверки статуса сертификатов.

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

Книга «Абсолютный минимум. Как квантовая теория объясняет наш мир»

Reading time10 min
Views12K
image Физика — это сложнейшая комплексная наука, она насколько сложна, настолько и увлекательна. Если отбросить математическую составляющую, физика сразу становится доступной любому человеку, обладающему любопытством и воображением. Мы легко поймем концепцию теории гравитации, обойдясь без сложных математических уравнений. Поэтому всем, кто задумывается о том, что делает ягоды черники синими, а клубники — красными; кто сомневается, что звук распространяется в виде волн; кто интересуется, почему поведение света так отличается от любого другого явления во Вселенной, нужно понять, что все дело — в квантовой физике.

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

Четыре типажа программистов

Reading time17 min
Views217K

Привет.


Я впервые пишу в поток об управлении и найме персонала. Речь пойдет об одном из способов классифицировать ваших будущих или действующих программистов. Мой основной тезис: все разработчики, грубо говоря, делятся на 4 больших типажа и каждому из этих типажей есть своя область применения. Попытка направить неправильный типаж на решение неподходящих для него задач ведет к провалу (неэффективная работа, или сотрудник покидает команду). Хотите знать почему так — добро пожаловать под кат. Приготовьтесь, текста много.

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

Лазерная коррекция зрения SMILE или «Почему мы делаем SMILE»

Reading time7 min
Views70K

Роговица после лазерного разреза

На сегодняшний день в интернет пространстве все чаще возникают дискуссии на тему: «Какой способ лазерной коррекции лучший?». Долгое время не хотелось вмешиваться в несущественную дискуссию, но, увидев очередные комментарии «крестоносцев против SMILE» из клиники, не имеющих технической возможности делать операции типа SMILE, все-таки не выдержала. Общаясь с коллегами из ФРГ во время одной из научных конференций услышала интересную фразу: «введение чего-то нового встречает конкуренцию по трём фазам развития:

  1. Не придается никакого внимания, ведь „всё равно ерунда“
  2. Активное нападение или отрицание конкурентного продукта – то, с чем мы сталкиваемся в интернетных постах
  3. Полный штиль, во время которого ведется разработка собственной продукции этого типа — так в своё время прореагировали компании Alcon и Schwindt, которые теперь сами разрабатывают технологию SMILE.

Видимо такого рода погрешности встречаются не только у коммерческих компаний, но и у отдельных российских хирургов.
Читать дальше →

Ломаем хаКс полностью. Читаем машинные коды как открытую книгу

Reading time9 min
Views11K
Если haXe оттранслирован в C++, а из него — в машинные коды, это может показаться безнадёжным, тем более, на первый взгляд этот код пестрит вызовами виртуальных методов, которые, не запуская отладчик, трудно соотнести с адресами тел методов.

Но всё не так уж плохо. Даже при отключенной поддержке сценариев (HXCPP_SCRIPTABLE) в файле можно обнаружить строки с названиями методов и полей. Разбираем, как можно размотать этот клубок, сопоставить имена методов с их адресами и смещениями в таблице виртуальных методов.

Поработать в Швеции

Reading time8 min
Views82K

Несколько лет назад я внезапно получил звонок от рекрутера с предложением поработать в Швеции в “хорошо финансируемом стартапе” (забавно, что моё резюме он нашёл на Odesk, где у меня давно был профиль, но ни одного завершённого проекта). Надо вам сказать, что в этой стране мне уже приходилось работать ранее, правда, находясь в затяжной командировке, как работник российской компании, потому неплохое представление о жизни в Швеции у меня уже было. С тех пор я обзавёлся детьми, и потому многие реалии шведской жизни мне предстояло открывать для себя впервые.

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

Путешествие за бугор и обратно: как не надо устраиваться работать за рубежом

Reading time11 min
Views222K

Тема трудовой эмиграции в IT-сообществе — одна из любимых. Кто не задумывался о том чтобы уехать туда где трава зеленее? Интернет кишит различными success story. Я же хочу показать, как вашу success story может испортить неудачный выбор места работы.


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


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

Мудрость толпы под управлением компьютера: гибридный интеллект учится предсказывать непредсказуемое

Reading time8 min
Views17K
Гонка искусственных интеллектов началась: нейросети осваивают всё больше неожиданных и интересных задач, которые они могли бы решать, и всё больше компаний и стартапов пытаются вывести их на качественно новый уровень, за которым лежит прохождение теста Тьюринга и сингулярность. Пока одни сыплют щедрыми обещаниями для тех, кто мечтает всех обойти («Первым триллионером станет тот, кто занимается ИИ»), другие стращают ужасами сингулярности и непредсказуемости отношений человечества и ИИ. Однако и те, и другие рассуждают в рамках одной парадигмы: ИИ неизбежен — вопрос только в том, принесёт нам он беды, процветание или сложную смесь того, и другого — тогда в каких пропорциях?

image

Но есть и третий путь, альтернатива миру безальтернативного превосходства ИИ, в котором мы сдаёмся ему на милость — надеясь, что это, и правда, будет милость. Это возможности самого человеческого мозга. В статье «Люди даже не поймут, как стали киборгами» я обрисовал идею теоретически: нейроинтерфейсы, разработка которых ведётся с не меньшим успехом, но меньшим апломбом, чем идёт развитие нейросетей, способны вывести человека и человечество в целом на новый уровень интеллектуальной мощи, который вполне способен отсрочить для нас наступление момента, когда мы превратимся в домашних питомцев на заботливом попечении роботов и «Скайнета», и продлить нам время, когда мы можем ещё позволить себе ощущать себя венцами творения — теперь уже собственного, а не эволюции, богов или Инженеров.
Читать дальше →

Безопасный OpenVPN на VPS за несколько минут

Reading time2 min
Views184K

Введение


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

Скрипт позволяет одной командой создать работающий сервер и создать файлы конфигурации для клиентов в unified формате (то есть с сертификатами, включёнными в файл конфигурации). Кстати, эти файлы подходят для мобильных устройств.

Скрипт создавался для машин с CentOS 7.x или Ubuntu Server 17.x, использование на Ubuntu 16.x. возможно, но там OpenVPN 2.3.x в репозиториях. При необходимости можно добавить другие дистрибутивы, но обычно при покупке VPS можно выбрать систему и это не так важно.
Читать дальше →

Автономный способ обхода DPI и эффективный способ обхода блокировок сайтов по IP-адресу

Reading time7 min
Views757K
Провайдеры Российской Федерации, в большинстве своем, применяют системы глубокого анализа трафика (DPI, Deep Packet Inspection) для блокировки сайтов, внесенных в реестр запрещенных. Не существует единого стандарта на DPI, есть большое количество реализации от разных поставщиков DPI-решений, отличающихся по типу подключения и типу работы.

Существует два распространенных типа подключения DPI: пассивный и активный.

Пассивный DPI

Пассивный DPI — DPI, подключенный в провайдерскую сеть параллельно (не в разрез) либо через пассивный оптический сплиттер, либо с использованием зеркалирования исходящего от пользователей трафика. Такое подключение не замедляет скорость работы сети провайдера в случае недостаточной производительности DPI, из-за чего применяется у крупных провайдеров. DPI с таким типом подключения технически может только выявлять попытку запроса запрещенного контента, но не пресекать ее. Чтобы обойти это ограничение и заблокировать доступ на запрещенный сайт, DPI отправляет пользователю, запрашивающему заблокированный URL, специально сформированный HTTP-пакет с перенаправлением на страницу-заглушку провайдера, словно такой ответ прислал сам запрашиваемый ресурс (подделывается IP-адрес отправителя и TCP sequence). Из-за того, что DPI физически расположен ближе к пользователю, чем запрашиваемый сайт, подделанный ответ доходит до устройства пользователя быстрее, чем настоящий ответ от сайта.
Читать дальше →

Квантовая сцепленность, информация и сигнал

Reading time4 min
Views11K
Издавна мы передаем сигналы при помощи различных носителей информации. Мы использовали сигнальные костры, барабаны, голубей, электричество. И в итоге опять пришли к свету — к передаче информации по оптике. А теперь изучаем сцепленные фотоны. Все мы знаем, что напрямую через квантовую сцепленность передать можно ключ, но не иную информацию. А если не напрямую, но при помощи? Кому интересно, добро пожаловать под кат.
Читать дальше →

Information

Rating
7,569-th
Registered
Activity