Pull to refresh
22
0
Дмитрий Бабокин @DmitryBabokin

Compilers

Send message

Стенограмма доклада про Фантом-ОС, сделанного Дмитрием Завалишиным на ADD-2010

Reading time22 min
Views4.4K

Аннотация


Дмитрий Завалишин рассказал о текущем состоянии в разработке своего любимого детища — оригинальной операционной системы PhantomOS, близкой по концепции Microsoft Singularity, но при этом open-source (опубликована большая часть исходных кодов этой операционной системы).

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

Петр Митричев — победитель Facebook Hacker Cup

Reading time5 min
Views8.3K
imageПодведены итоги Facebook Hacker Cup. Соревнование, в котором приняли участие 11768 человек со всего мира, проходит в формате решения сложных алгоритмических задач в три раунда «на вылет». Двадцать пять финалистов были приглашены в штаб-квартиру Facebook в Пало-Альто для последнего состязания.

В финал попали 7 представителей Польши, 6 — из России, 4 — из США, 2 — из Японии и по одному из Китая, Германии, Нидерландов, Сингапура, Швейцарии и Украины. Все они смогли провести 2 дня в офисе Facebook: встретиться с разработчиками, пообедать в Cafe X, поиграть Catan и попытаться прокатиться на RipStik.

Участники имели возможность выбора машины (Mac или PC), после чего начался финальный раунд. От финалистов требовалось решить три алгоритмические задачи: Party Time, Safest Place и Alien Game — как можно быстрее.

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

Условия задач можно посмотреть в блоге Facebook Engineering (впрочем, если будет спрос — я могу попробовать перевести их позже).

В итоге «золото» досталось нашему соотечественнику Петру Митричеву (участнику и призеру многих аналогичных соревнований).

UPD #1 — интересные подробности от Skiminok:
Добавлю ещё, что там была потрясающая интрига касательно победителя.
Главный соперник Митричева — Lou Tian Cheng, также известный как ACRush.
Принцип этого соревнования таков, что каждая из трех задач оценивается в 1 очко, и в турнирной таблице выше тот, у кого больше сдано задач, а при равенстве выше тот, у кого суммарное время, потраченное на каждую задачу с начала раунда, ниже. При этом финальная проверка ответов происходит только после того, как раунд закончится.

Так вот, ACRush опережал Митричева на протяжении всего раунда. Митричев сдавал те же задачи, по количеству они всегда были одинаковы — но ACRush сдавал их быстрее, мы уже и не надеялись на победу Пети. И тут раунд заканчивается, происходит финальная проверка, и у ACRush падает одна из задач с неправильным ответом, и он оказывается с двумя очками, и опускается на два места, пропуская вперед Петю с тремя решенными медленнее, но правильно.

UPD #2 — перевод собственно задач (опять же спасибо Skiminok)
Читать дальше →

Вышел непривязанный Jailbreak для iOS 4.2.1

Reading time1 min
Views21K

Вышел непривязанный Jailbreak «greenpois0n» для следующих устройств (с прошивкой 4.2.1)

iPhone 3G
iPhone 3GS с любым бутромом
iPhone 4
iPod Touch 2G
iPod Touch 3G
iPod Touch 4G
iPad

Важно! спасибо хабрачеловеку zobov за ссылку на исправленную версию.

Пока сайт grenpois0n.com лежит — скачать можно по ссылкам из этого поста. Качать лучше исправленную версию.
Инструкция по установке.

UPD: Пока только версии для Mac OS X и Windows
UPD2: У кого в результате пишет «failed :(» — Кладем файл с джейлом, например в /Applications
и запускаем через терминал:
open /Applications/Greenpois0n.app/Contents/MacOS/greenpois0n
UPD3: У меня loader не находит Cydia для загрузки. Для жаждующих ковыряться дальше вот одна из немногих грамотных ссылок — у остальных все слишком гладко проходит.
UPD4 и последний на ближайшее время: У кого loader пустой — действительно можно поставить Cydia через ultrasn0w 0.9.7b6 — проверил, джейл отвязанный Cydia стала, правда пришлось перезагрузиться в ручную, т.к. после ultrasn0w — девайс висел на экране с ананасами.

Интервью с Дональдом Кнутом

Reading time1 min
Views2.2K
Роберт Скобл взял интервью у известного преподавателя программирования, члена Российский академии наук, профессора Дональда Кнута (часть 1, часть 2).

Кнут скромно говорит, что стал «гуру программирования» благодаря стечению обстоятельств, что он писал книги не ради денег (а потому что считал, что «рождён гиком»), даёт советы нынешним 20-летним компьютерщикам и высказывается о современных веб-технологиях.
Читать дальше →

FizzBuzz, или почему программисты не умеют программировать

Reading time4 min
Views296K
[Автор этой статьи — Джеф Этвуд (Jeff Atwood), один из основателей stackoverflow.com. Сама же статья, несмотря на довольно приличный возраст (она написана в 2007 году) до сих пор популярна, а введенный в ней термин «FizzBuzz question» стал общеупотребительным. Оригинал можно найти здесь.]

Я весьма скептически отнесся к следующему наблюдению Реджинальда Брейтвайта (Reginald Braithwaite):

«Меня немного удручает тот факт, что 199 из 200 соискателей программистских вакансий не умеют программировать. Повторю: они не умеют писать код. Вообще.»

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

Анализ существующих подходов к распознаванию лиц

Reading time14 min
Views153K
С завидной регулярностью на Хабре появляются статьи, рассказывающие о тех или иных методах распознавания лиц. Мы решили не просто поддержать эту замечательную тему, но выложить наш внутренний документ, который освещает пусть и не все, но многие подходы к распознаванию лиц, их сильные и слабые места. Он был составлен Андреем Гусаком, нашим инженером, для молодых сотрудников отдела машинного зрения, в образовательных, так сказать, целях. Сегодня предлагаем его все желающим. В конце статьи – впечатляющих размеров список литературы для самых любознательных.
Читать дальше →

Сверхбыстрое распознавание речи без серверов на реальном примере

Reading time10 min
Views334K

В этой статье я подробно расскажу и покажу, как правильно и быстро прикрутить распознавание русской речи на движке Pocketsphinx (для iOS порт OpenEars) на реальном Hello World примере управления домашней техникой.
Почему именно домашней техникой? Да потому что благодаря такому примеру можно оценить ту скорость и точность, которой можно добиться при использовании полностью локального распознавания речи без серверов типа Google ASR или Яндекс SpeechKit.
К статье я также прилагаю все исходники программы и саму сборку под Android.

Прикручиваем Pocketsphinx к своему Андроиду

Набор инструментов для построения графиков, блок-схем и диаграмм

Reading time3 min
Views180K


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

Логика мышления. Часть 2. Факторы

Reading time11 min
Views81K


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

Книга «Linux. Системное программирование. 2-е изд.»

Reading time2 min
Views68K


На днях у нас вышло второе издание замечательной книги «Linux. Системное программирование. 2-е изд.». Как обычно для Хабра-читателей действует скидка 20%. Акция продлится до 20 апреля. При покупке книги введите код: 1f8e5be3.
Книга доступна в печатном и электронном виде.

Аннотация:



Пишите программы, опирающиеся непосредственно на службы ядра Linux и на основные системные библиотеки. Автор этой универсальной книги, Роберт Лав, участвовал в разработке ядра Linux. Книга представляет собой руководство по системному программированию для Linux, справочный мануал по системным вызовам Linux, а также инсайдерский рассказ о том, как писать более быстрый и умный код.
Читать дальше →

Логика мышления. Промежуточный итог

Reading time3 min
Views29K


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

Что такое на самом деле Big Data и чем они прекрасны. Лекция Андрея Себранта в Яндексе

Reading time3 min
Views107K
Директор по маркетингу сервисов Яндекса Андрей Себрант рассказал студентам Малого ШАДа о том, что такое большие данные, и о тех, зачастую неожиданных местах, где они находят своё применение.




Bid Data как понятие у всех на слуху уже не первый год. Но точное представление о том, что же представляет собой это понятие, есть далеко не у всех, особенно это касается людей за пределами IT-сферы. Проще всего несведущему человеку объяснить это на практическом примере.

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

Вероятность в алгоритмах. Лекция Яндекса

Reading time4 min
Views31K
Многие алгоритмы являются детерминированными – то есть последовательность их действий зависит лишь от входных данных и программы. Но что будет, если разрешить алгоритму по ходу работы использовать случайные числа?

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


Конспект лекции

Алгоритмы и структуры данных поиска. Лекции и курсы от Яндекса

Reading time4 min
Views157K
Сегодня мы завершаем новогоднюю серию постов, посвященных лекциям Школы анализа данных. Последний по порядку, но никак не по важности курс — «Алгоритмы и структуры данных поиска».

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

Мы учли то, о чём нас просили в комментариях к прошлым курсам — теперь при желании можно не только смотреть/скачивать лекции по отдельности, но и загрузить всё разом в виде открытой папки на Яндекс.Диске. Кстати — в предыдущих постах тоже появились такие же апдейты (вот ссылки для удобства: «машинное обучение», «дискретный анализ и теория вероятностей», «параллельные и распределённые вычисления»).



Лекции читает Максим Александрович Бабенко, заместитель директора отделения computer science, ассистент кафедры математической логики и теории алгоритмов механико-математического факультета МГУ им. М. В. Ломоносова, кандидат физико-математических наук.
Содержание курса, тезисы лекций и ссылки на видео

Параллельные и распределенные вычисления. Лекции от Яндекса для тех, кто хочет провести праздники с пользой

Reading time3 min
Views79K
Праздничная неделя подходит к концу, но мы продолжаем публиковать лекции от Школы анализа данных Яндекса для тех, кто хочет провести время с пользой. Сегодня очередь курса, важность которого в наше время сложно переоценить – «Параллельные и распределенные вычисления».

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



Лекции читает Олег Викторович Сухорослов, старший научный сотрудник Центра грид-технологий и распределенных вычислений ИСА РАН. Доцент кафедры распределенных вычислений ФИВТ МФТИ. Кандидат технических наук.
Содержание и тезисы лекций

Лекции от Яндекса для тех, кто хочет провести каникулы с пользой. Дискретный анализ и теория вероятностей

Reading time3 min
Views144K
Для тех, кому одного курса на праздники мало и кто хочет больше, продолжаем нашу серию курсов от Школы анализа данных Яндекса. Сегодня подошла очередь курса «Дискретный анализ и теория вероятностей» – даже более фундаментального, чем предыдущий. Но без него нельзя представить ещё большую часть современной обработки данных.

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



Читает курс Андрей Райгородский. Доктор физико-математических наук. Профессор кафедры математической статистики и случайных процессов механико-математического факультета МГУ им. М. В. Ломоносова. Заведующий кафедрой Дискретной математики ФИВТ МФТИ. Профессор и научный руководитель бакалавриата кафедры «Анализ данных» факультета инноваций и высоких технологий МФТИ. Руководитель отдела теоретических и прикладных исследований компании «Яндекс». (Ещё больше можно узнать в статье о нём на Википедии).

Содержание курса и тезисы лекций

Machine Learning. Курс от Яндекса для тех, кто хочет провести новогодние каникулы с пользой

Reading time8 min
Views266K
Новогодние каникулы – хорошее время не только для отдыха, но и для самообразования. Можно отвлечься от повседневных задач и посвятить несколько дней тому, чтобы научиться чему-нибудь новому, что будет помогать вам весь год (а может и не один). Поэтому мы решили в эти выходные опубликовать серию постов с лекциями курсов первого семестра Школы анализа данных.

Сегодня — о самом важном. Современный анализ данных без него представить невозможно. В рамках курса рассматриваются основные задачи обучения по прецедентам: классификация, кластеризация, регрессия, понижение размерности. Изучаются методы их решения, как классические, так и новые, созданные за последние 10–15 лет. Упор делается на глубокое понимание математических основ, взаимосвязей, достоинств и ограничений рассматриваемых методов. Отдельные теоремы приводятся с доказательствами.



Читает курс лекций Константин Вячеславович Воронцов, старший научный сотрудник Вычислительного центра РАН. Заместитель директора по науке ЗАО «Форексис». Заместитель заведующего кафедрой «Интеллектуальные системы» ФУПМ МФТИ. Доцент кафедры «Математические методы прогнозирования» ВМиК МГУ. Эксперт компании «Яндекс». Доктор физико-математических наук.
Содержание и видео всех лекций курса

Вышла новая версия Embree 2.1

Reading time1 min
Views19K

Доступна для загрузки новая версия разработанных в Intel ядер трассировки лучей (ray tracing) Embree 2.1. Embree предназначена для разработчиков графических приложений, желающих увеличить производительность своих программ с помощью ядер от Intel, которые оптимизированы для рендеринга изображений фотографического качества на новейших процессорах Intel с поддержкой SSE, AVX, AVX2 и векторных инструкций Xeon Phi. Для достижения максимальной производительности рекомендуется задействовать Embree посредством API. Embree представляет собой ПО с открытым кодом и распространяется под лицензией Apache 2.0.

На КДПВ — рендеринг автомобильной блок-фары с использованием Embree, автор — Martin Lubich.
Что нового в Embree 2.1?

Электронные дети на рекламных билбордах реагируют на реальные самолеты

Reading time1 min
Views50K
На днях я читал какой-то топик на Хабре (увы, не могу найти поиском), где автор говорил о своем увлечении авиацией и том, как он любуется авиатрафиком. Меня эта фраза зацепила, но немного по другой причине. Дело в том, что за неделю до этого я видел похожую новость, но совсем из другой области – из рекламы.



Итак, представьте, вы стоите в пробке недалеко от аэропорта. Перед вами билборд-экран с рекламой авиакомпании British Airways. На экране маленький ребенок и обычный рекламный текст. Но как только в небе появляется настоящий самолет, принадлежащий British Airways, экранный ребенок встает и указывает на него пальцем. При этом на билборде появляется текст вида «посмотрите, это летит рейс BA431 из Амстердама». Или «Вот рейс на Мальдивы, минимальная цена за билет – столько-то».
Читать дальше →

Ждали, ждали и дождались! OpenMP 4.0

Reading time5 min
Views23K


Каждая новая спецификация OpenMP вводит очень полезные и необходимые дополнения к уже существующему функционалу. Например, в версии 3.0 были добавлены так ожидаемые задачи (tasks), позволившие решать ещё больший спектр задач по распараллеливанию приложений. В 3.1 целый ряд улучшений по работе с задачами и редукциями.

Но по сравнению с тем, что нам теперь даёт стандарт 4.0, предыдущие нововведения кажутся какими-то мелкими. Последняя версия расширила типы поддерживаемого параллелизма, чего раньше никогда не замечалось.
Поясню, что я хочу сказать.

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity