Pull to refresh
8
0
Максим @MaxLevs

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

Send message

Специалист по ИИ утверждает, что ему удалось понять, на каком языке написан манускрипт Войнича

Reading time3 min
Views47K


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

Рукопись Войнича стала известной благодаря американскому книготорговцу литовского происхождения Вифриду Войничу. Он ее приобрел в 1912 году. В настоящее время книга находится в Библиотеке редких книг Байнеке (Beinecke Rare Book And Manuscript Library) Йельского университета. Она состоит из 240 страниц тонкого пергамента, размер страницы составляет 15*23 см. Толщина книги — около 3 см. В книге есть большое количество иллюстраций, почти на всех страницах.
Читать дальше →

Kali Linux в Windows

Reading time2 min
Views82K
image

 
С введением подсистемы Windows для Linux (WSL) в Windows 10 появились новые возможности, такие как поддержка Linux дистрибутивов, в частности Ubuntu. В этой статье я расскажу, как с помощью этой подсистемы подключить Kali LInux в Windows среде не используя системы виртуализации.

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

Как я чинил интерактивный логин, или Что там в кишках у //chrome/test/ChromeDriver?

Reading time17 min
Views20K

Эта статья возникла из-за одной моей ошибки и двух багов — по одному в Chromium Headless и ChromeDriver. В результате пришлось собрать всё это из исходников (в статье есть подробнейшая инструкция), отладить цепочку взаимодействия Selenium<->ChromeDriver<->Chromium в отладчике IntelliJ IDEA и Microsoft Visual Studio, покопаться в Java, C++ и JS.


Статья будет интересна тем, кто хочет понять, чем им грозит переход на Selenium + Headless Chrome и как с этим жить. А также всем, кто просто хочет немного поглумиться над несчастным быдлокодером.


Под катом есть пачка скриншотов (трафик!).




Кстати, всё это можно было бы сделать скринкастом — но нельзя, потому что время компиляции C++ необычайно долгое. Вместо этого тут будут скриншоты для привлечения внимания.


Вначале напомню названия участвующих продуктов. Их три штуки:


  • Chromium — это браузер. Небрендированная версия Google Chrome, без автообновлений, анальных следящих зондов, но и без несвободных компонентов типа кодеков.
  • Chromium ChromeDriver — это часть Chromium, которая отвечает за управление им с помощью внешних инструментов. Это standalone фронт-сервер (отдельный exe-файл), реализует стандарт W3C WebDriver и использует в качестве бэкенда Chrome DevTools.
  • Selenium и его Selenium Chrome Driver — эта штука предоставляет Java API для управления Хромиумом. Джава тут не принципиальна, на JavaScript и jWebDriver было бы то же самое (а на Puppeteer — возможно, нет, ибо он использует DevTools напрямую).

Всё вместе даёт нам в руки браузер, управляемый с помощью API на Java, JavaScript и так далее.


Вспомнили? Поехали дальше.

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

Почему опытные разработчики пишут тупой код и как распознать новичка за километр

Reading time3 min
Views87K
Предлагаю читателям «Хабрахабра» перевод публикации «Why Senior Devs Write Dumb Code and How to Spot a Junior From A Mile Away» за авторством Scott Shipp.


Одна из моих любимых цитат на все времена — Брайана Гетца (Brian Goetz), умнейшего чувака из мира Java, одного из авторов «Java Concurrency in Practice», кроме всего прочего. Цитата взята из интервью, опубликованного на сайте Oracle под заголовком «Пишите тупой код» («Write Dumb Code»). Гетца спросили, как писать хорошо работающий код.
Вот что он ответил

Две геометрические задачки, которые попадались на собеседовании, и где они обитают

Reading time3 min
Views81K
Когда программист ходит на собеседования, то рано или поздно сталкивается с математическими задачками. В этом посте я рассмотрю две геометрические задачи и их решения.
Читать дальше →

Мужчина лучше ориентируется по карте — до тех пор, пока женщина не пройдёт курс обучения

Reading time10 min
Views28K

Небольшое обучение способно стереть когнитивный разрыв между мужчинами и женщинами




Шерил Сорби [Sheryl Sorby], профессор инженерного дела в Университете штата Огайо, привыкла к отличным отметкам. Сколько она себя помнила, наука давалась ей легко. Она отлично разбиралась в математике и точных науках, но «я никогда не думала, что найдётся тема, об которую я споткнусь», — говорит она сухо.

Поступив в инженерную школу, она с удивлением обнаружила, что не справляется с курсом, который для большинства её сокурсников кажется лёгким: черчение [engineering graphics]. Это предмет для первого курса, и люди, не принадлежащие к инженерам, считают его чем-то вроде пафосного рисования.

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

Увеличиваем себе премию в два раза, или как взломать документы, подписанные усиленной квалифицированной подписью

Reading time4 min
Views51K

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


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

Недокументированные приемы CSS

Reading time8 min
Views56K
Всем привет! Зовут меня Дмитрий Григоров. Работаю фронтедером в Райффайзенбанке в команде RBO PRO. Я расскажу и покажу вам, как можно творчески применять данные возможности CSS. В статье мы рассмотрим следующие темы:

  • Фоны и рамки;
  • Фигуры;
  • Визуальные эффекты.

Сказ о тотальном переборе, или Томительное ожидание декрипта

Reading time13 min
Views14K
imageПриветствую жителей Хабра!

Итак, новые «криптографические игрища» пришли по мою душу. Поэтому сегодня поговорим о занудном упражнении, ориентированном на полный перебор паролей, реализации тривиального многопоточного брутера силами C++ и OpenMP, а также кратко об использовании криптобиблиотеки CryptoPP и стороннего модуля fastpbkdf2 (для Си и Плюсов) в своих проектах.

Го под кат, печеньки out there!
Читать дальше →

Компьютер научили визуализировать зрительные образы человека

Reading time3 min
Views24K

Слева — изображение лебедя, справа — изображение, пропущенное через сознание человека и отрисованное заново компьютером

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

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

Вы и ваша работа *

Reading time40 min
Views823K
Длинный материал. Время чтения – около 40 минут.

image

Доктор Ричард Хэмминг, профессор морской школы Монтерея в штате Калифорния и отставной учёный Bell Labs, прочёл 7 марта 1986 года очень интересную и стимулирующую лекцию «Вы и ваши исследования» переполненной аудитории примерно из 200 сотрудников и гостей Bellcore на семинаре в серии коллоквиумов в Bell Communications Research. Эта лекция описывает наблюдения Хэмминга в части вопроса «Почему так мало учёных делают значительный вклад в науку и так многие оказываются в долгосрочной перспективе забыты?». В течение своей более чем сорокалетней карьеры, тридцать лет которой прошли в Bell Laboratories, он сделал ряд прямых наблюдений, задавал учёным очень острые вопросы о том, что, как, откуда, почему они делали и что они делали, изучал жизни великих учёных и великие достижения, и вёл интроспекцию и изучал теории креативности. Эта лекция о том, что он узнал о свойствах отдельных учёных, их способностях, чертах, привычках работы, мироощущении и философии.
Читать дальше →

Ричард Хэмминг: Глава 28. Системная Инженерия

Reading time17 min
Views25K
Первое правило системной инженерии: «Если оптимизировать компоненты, то, вероятнее всего, производительность системы будет испорчена.»

imageПривет, Хабр. Помните офигенную статью «Вы и ваша работа» (+219, 2146 в закладки, 339k прочтений)?

Так вот у Хэмминга (да, да, самоконтролирующиеся и самокорректирующиеся коды Хэмминга) есть целая книга, написанная по мотивам его лекций. Давайте ее переведем, ведь мужик дело говорит.

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

Мы уже перевели 4 главы.

Глава 28. Системная Инженерия


(За перевод спасибо Юлии Перуновской, которая откликнулась на мой призыв в «предыдущей главе».) Кто хочет помочь с переводом — пишите в личку или на почту magisterludi2016@yandex.ru

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

Если бы в обычном кампусе вы решили опросить некоторую выборку профессоров о том, что они собираются делать в следующий академический час, то услышали бы, что они будут: «преподавать наипростейшие дроби», «показывать, как найти момент нормального распределения», «объяснять модуль упругости и его измерение» и т.д. Я сомневаюсь, что вы бы часто слышали от профессора фразу «Я собираюсь обучить студентов и подготовить их к будущей карьере».
Читать дальше →

Туториал по Unreal Engine. Часть 9: Искусственный интеллект

Reading time14 min
Views113K
image

В индустрии видеоигр искусственным интеллектом (Artificial Intelligence, AI) обычно называют процесс принятия решений не управляемыми игроком персонажами. Он может быть простым: враг видит игрока и атакует. Или же более сложными, например, управляемый ИИ противник в стратегии реального времени.

В Unreal Engine создавать ИИ можно с помощью деревьев поведения. Дерево поведения (behavior tree) — это система определения поведения, используемого ИИ. Например, у него может быть поведение боя или бега. Можно создать дерево поведения, при котором ИИ будет драться с игроком, если его здоровье выше. Если оно ниже 50%, то он будет убегать.

В этом туториале вы научитесь следующему:

  • Создавать ИИ-сущность, которая может управлять элементом Pawn
  • Создавать и использовать деревья поведения и blackboard
  • Использовать AI Perception, чтобы дать Pawn зрение
  • Создавать поведения, чтобы Pawn мог ходить и атаковать врагов
Читать дальше →

Как обучть мдль пнмть упртые скрщня

Reading time16 min
Views41K

Недавно я натолкнулся на вопрос на Stackoverflow, как восстанавливать исходные слова из сокращений: например, из wtrbtl получать water bottle, а из bsktballbasketball. В вопросе было дополнительное усложнение: полного словаря всех возможных исходных слов нет, т.е. алгоритм должен быть в состоянии придумывать новые слова.


Вопрос меня заинтриговал, и я полез разбираться, какие алгоритмы и математика лежат в основе современных опечаточников (spell-checkers). Оказалось, что хороший опечаточник можно собрать из n-граммной языковой модели, модели вероятности искажений слов, и жадного алгоритма поиска по лучу (beam search). Вся конструкция вместе называется модель зашумлённого канала (noisy channel).


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


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

Как узнать, не сволочь ли вы

Reading time8 min
Views54K

Если вам кажется, что вокруг вас одни сволочи, возможно, что сволочь — это вы




Вот, чего вы, вероятно, не делали сегодня с утра: не смотрели в зеркало, чтобы спросить себя, «а не сволочь ли я?» [англ. jerk — сволочь, «скотина», «козёл», подонок / прим. перев.]

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

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

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

Малоизвестное обобщение теоремы Пифагора

Reading time7 min
Views65K
Теорема Пифагора — пожалуй, самая известная из математических теорем. Сколько существует оригинальных доказательств! Сколько применений она находит в технике! Сколькими благами цивилизации мы обязаны этой великой теореме! Однако, совсем недавно, я открыл для себя совершенно новую, ранее неизвестную грань этой теоремы, которая значительно расширяет область ее применения. Именно этим открытием я и хочу поделиться с вами, уважаемые читатели Geektimes. Пожалуйста, не судите строго, если описанные с статье факты, вам известны. Это скроее развлекательная история с научно-популярным элементом, чем строгая математика.
Геометрическое доказательство теоремы Пифагора
Геометрическое доказательство теоремы Пифагора
Читать дальше →

Осознание человеческой сущности через понимание ИИ. Введение. Часть 1

Reading time12 min
Views15K

Введение


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

С давнего времени меня занимает проблема ИИ. В начале это были попытки сделать продвинутого чат-бота. Затем пришло осознание, что это будет всего лишь программа, которая на запрос будет давать ответ в соответствии со своей базой данных (БД). Благодаря тому, что все знания системы будут заполнятся относительно случайно (в процессе разговора, обучения), мы получаем псевдонепредсказуемые ответы, но ведь сама система не осознает, что она отвечает. Следом была попытка разработать систему с более подвинутыми источниками познания, в надежде, что это даст какой-то толчок к появлению ИИ. Обработка изображения с камеры, звуков с микрофона, попытка создать бинокулярное зрение, чтобы опознавать образы объемных предметов… Все это было всего лишь очередным вводом данных в БД. Бесспорно, все это полезно и необходимо в робототехнике, но к самому интеллекту не приведет.
Читать дальше →

Скачиваем видео с YouTube

Reading time7 min
Views100K
Эта история берет начало в далеком 2006-м году… Я тогда был в начале своей программистской карьеры и работал в одной говноконторе развивающейся ноунейм фирме. Тогда у нас было несколько заказов на сайты с похожим функционалом: нужно было сделать портал, на который люди могли бы заливать видео/картинки/музыку и потом этот контент просматривать, комментировать, а заодно и смотреть рекламу принося прибыль доброму дяде владельцу. Все бы хорошо, но чтобы завлечь людей на сайт нужно чтобы там уже было много контента. Таким образом создавалось бы впечатление что сайт работает давно и успешно. И вот заказчик ставит грандиозную цель: наполнить новоиспеченный портал видео с youtube.com. Еще не зная, что меня ждет, я с радостью взялся за работу…
Читать дальше →

Аутентификация в мобильных приложениях

Reading time6 min
Views27K

История с предысторией


Идеальный телефон, как верный пёс, должен узнавать хозяина по запаху и охранять имущество от посторонних.

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

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

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

Скоро этого стало не хватать. У первобытных программистов появились идентификаторы, затем логин с паролем – и вот перед нами классическая Basic Authentication протокола HTTP.
Читать дальше →

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity