Pull to refresh
0
0
Andrii Iasynetskyi @buddy

User

Send message

Почему я оставил Google и перешел в Facebook: Ларс Расмуссен

Reading time 6 min
Views 2.6K
На этой неделе был просто шквал интереснейших новостей от Google. Это всех нас радует. Но есть и напоминания о проблемах, которые зреют внутри «Корпорации Добра»…
elgephest

www.smh.com.au/technology/biz-tech/why-i-quit-google-to-join-facebook-lars-rasmussen-20101101-1799q.html
Стивен Хатчеон
Эксклюзивное интервью

image

Там мое место… Ларс Расмуссен говорит, что с нетерпением ждет момента, когда начнет работать в Facebook. Фото: Эндрю Килти (Andrew Quilty)

Ларс Расмуссен, сотрудник сиднейского офиса Google и соучредитель Google Maps впервые рассказал о причинах своего увольнения и перехода к Facebook вслед за целой когортой известных гуглеров, отдавших свои симпатии Facebook. «Мне кажется, что Facebook принадлежит к тому типу компаний, которые появляются раз в десятилетие», — сказал Расмуссен вчера вечером в интервью по телефону, объясняя, как он решил закончить свою шестилетнюю карьеру в Google, получив «очень заманчивое предложение» от создателя Facebook Марка Цукерберга.
«Очевидно, что корпорация Facebook уже изменила мир, и кажется, еще гораздо больше ей предстоит сделать. И поэтому я считаю, что именно там
Читать дальше →
Total votes 110: ↑96 and ↓14 +82
Comments 89

В человеческом мозге столько же «транзисторов», сколько в мировой ИТ-инфраструктуре

Reading time 2 min
Views 25K
Стэнфордские нейробиологи потратили несколько лет, разрабатывая новый способ 3D-сканирования мозга. Они совместили объёмную компьютерную томографию (array tomography — техника «антенных решёток» из радиоастрономии) и специально разработанный софт, чтобы получить объёмную и реалистичную 3D-модель. Такую, по которой можно перемещаться, масштабировать и вращать её в разных измерениях.


Сканирование от мягкой оболочки коры мозга мыши через шесть слоёв и подкорковое белое вещество к прилегающему полосатому телу.

Изучив полученную картину, учёные пришли к выводу, что синапсы устроены гораздо сложнее, чем предполагалось раньше.
Читать дальше →
Total votes 90: ↑83 and ↓7 +76
Comments 193

Обзор планшета Zenithink Zt-180 10"

Reading time 4 min
Views 36K


В топике с обзором очередного китайского планшета был оставлен комментарий, что я являюсь владельцем одного из таких устройств, а именно Zenithink zt-180 c 10 дюймовым экраном. В результате чего были просьбы написать обзор этого планшета. Итак, как и подобает любому обзору, все будет по-порядку.

Читать дальше →
Total votes 99: ↑91 and ↓8 +83
Comments 182

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

Reading time 5 min
Views 4.5K
Где-то в архивах этого блога можно найти статью про тетрадь в клеточку и ее душевные переживания. Содержание у этой статьи скорее философское, чем прикладное. Но вот сама идея изобразить работу мозга с помощью карандаша и тетради в клеточку показалась мне довольно интересной. Как заметил автор той статьи, работу любой программы можно изобразить на бумаге. Будь то стек вызовов или регистры процессора – их легко можно изобразить с помощью клеточек.

Но это все низкоуровневые процессы. Возможность изобразить их на бумаге скорее теоретическая. На практике от нее мало пользы. Вот если бы можно было с такой же легкостью описывать более высокоуровневые процессы…
Читать дальше →
Total votes 67: ↑55 and ↓12 +43
Comments 29

Рингтоны Audiko для Android

Reading time 1 min
Views 10K


3 года назад, в феврале, мы анонсировали на Хабре наш проект Audiko — сервис для создания рингтонов. Забавно читать первые отзывы о стартапе, зная, что сейчас он отдает более 1 000 000 страниц в сутки.

Сегодня мы запускаем приложение, построенное на API Audiko — менеджер рингтонов для платформы Android:


Читать дальше →
Total votes 91: ↑72 and ↓19 +53
Comments 62

Генерация псевдослучайных чисел

Reading time 5 min
Views 133K
Довольно часто программисты в своей работе встречаются с необходимостью работать со случайными числами. Чаще всего случайные числа требуются в задачах моделирования, численного анализа и тестирования, но существует и множество других весьма специфических задач.
Конечно, во всех современных языках программирования есть функция random или её аналоги. Эти функции чаще всего дают действительно хорошие псевдослучайные числа, но мне всегда было интересно, как эти функции работают.
В этом топике я постараюсь объяснить, как работает линейный конгруэнтный метод (который чаще всего используется в функции random), и метод получения случайных чисел с помощью полиномиального счётчика (который часто используется для тестирования аппаратуры).
Читать дальше →
Total votes 39: ↑34 and ↓5 +29
Comments 36

Теория шести рукопожатий: еще одно подтверждение

Reading time 4 min
Views 77K
Однажды в студеную зимнюю пору я столкнулся с упоминанием того, что кто-то в Facebook пытается подтвердить теорию шести рукопожатий. Для тех кто не в курсе, эта теория заключается в том, что все жители земли в среднем знакомы друг с другом через цепочку из пяти друзей (т.е. шести рукопожатий). Подробнее об истории этой теории можно прочитать в википедии, там же можно узнать о том, что Майкрософт несколько лет назад пыталась подтвердить эту теорию на основе данных о контакт-листах мессенджера MSN — в результате у них получилось 6,6 рукопожатий, что вполне вписывается в теорию.

Очень мне захотелось эту теорию подтвердить самому, используя данные, которые есть под рукой — ВКонтакте. Для претворения моей странной идеи в жизнь надо было решить целый комплекс проблем:
  1. На каких данных это все расчитывать.
  2. Где эти данные взять.
  3. Как эти данные сохранять.
  4. Каким алгоритмом воспользоваться для расчетов.
подробнее о том, что получилось
Total votes 211: ↑203 and ↓8 +195
Comments 102

Завод по производству рингтонов на вашем сайте

Reading time 1 min
Views 590
image

Audiko Everywhere


Сегодня, как обычно в пятницу (1, 2), мы анонсируем новую фичу — Audiko Everywhere. Теперь владельцы музыкальных сайтов могут использовать сервис Audiko по нарезке рингтонов прямо у себя на сайте. Для этого необходимо разместить лишь небольшой javascript.

Мы в бете, есть что улучшить, но пример интеграции уже есть. API готово к новым партнерам. Прямо сейчас можно создать рингтон на сайте замечательной группы «… и Друг Мой Грузовик» — нажмите на колокольчик рядом с треком.

Теперь самое важное. Как получить API Key Audiko. Если вы хотите использовать Audiko Everywhere, оставьте в комментариях адрес вашего проекта или напишите мне лично, я расскажу что делать дальше.

Удачи!
Total votes 44: ↑27 and ↓17 +10
Comments 38

Задача нахождения максимума на отрезках фиксированной длины

Reading time 3 min
Views 37K

Постановка задачи


Пусть дан массив A длины N, и дано число K ≤ N. Требуется найти максимум (минимум, сумма ...) в подотрезках длины K данного массива. Это частный случай задачи RMQ (Range Minimum Query — минимум на отрезке), но с дополнительными ограничениями — постоянная длина отрезка поиска. В данном решении задача не предполагает возможность изменения элементов массива.
Читать дальше →
Total votes 54: ↑46 and ↓8 +38
Comments 3

Java Bytecode Fundamentals

Reading time 6 min
Views 62K
Разработчики приложений на Java обычно не нуждаются в знании о байт-коде, выполняющемся в виртуальной машине, однако тем, кто занимается разработкой современных фреймворков, компиляторов или даже инструментов Java может понадобиться понимание байт-кода и, возможно, даже понимание того, как его использовать в своих целях. Несмотря на то, что специальные библиотеки типа ASM, cglib, Javassist помогают в использовании байт-кода, необходимо понимание основ для того, чтобы использовать эти библиотеки эффективно.
В статье описаны самые основы, от которых можно отталкиваться в дальнейшем раскапывании данной темы (прим. пер.).
Читать дальше →
Total votes 57: ↑55 and ↓2 +53
Comments 9

Алгоритм «diamond-square» для построения фрактальных ландшафтов

Reading time 12 min
Views 116K
Карта игры Minecraft, созданная с помощью приложения CartographДумаю, многие знакомы с весьма необычной игрой Minecraft (справа — пример сгенерированной в ней карты), в которой игрок находится на (практически) бесконечной поверхности Земли и может исследовать окружающий мир с минимальными ограничениями.

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

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

Читать дальше →
Total votes 147: ↑146 and ↓1 +145
Comments 58

Знаешь ли ты JAVA, %username%?

Reading time 11 min
Views 148K
JAVA Evil EditionНедавно я сдавал экзамен Oracle Certified Professional Java Programmer (бывший Sun Certified), и за время подготовки прорешал огромное количество различных задачек. Отдельные задачки по джаве иногда появляются на хабре и вызывают немалый интерес, поэтому я решил поделиться накопленным и сделать небольшую подборку.

Итак, ниже представлен десяток наиболее, на мой взгляд, интересных задач по Java SE из более чем 1000, проработанных мной. Сложность варьируется от средней до ооооооочень сложной. Решение большинства задач практически не требует знания API, достаточно логики и фундаментальных основ Java.

К слову, сложность экзамена Oracle Certified Professional Java Programmer гораздо ниже чем сложность данного теста, поэтому все, кто правильно ответит хотя бы на половину этих вопросов, может смело сдавать этот экзамен без всякой подготовки.

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

ВНИМАНИЕ: во второй половине статьи — ответы и подробные пояснения по соответствующим нюансам JAVA.

Читать дальше →
Total votes 136: ↑124 and ↓12 +112
Comments 85

Прямой нечеткий логический вывод

Reading time 5 min
Views 18K

Введение


В 1965 г. в журнале «Information and Control» была опубликована работа Л.Заде под названием «Fuzzy sets». Это название переведено на русский язык как нечеткие множества. Побудительным мотивом стала необходимость описания таких явлений и понятий, которые имеют многозначным и неточный характер. Известные до этого математические методы, использовавшие классическую теорию множеств и двузначную логику, не позволяли решать проблемы этого типа.

Читать дальше →
Total votes 55: ↑46 and ↓9 +37
Comments 15

Как работают и зачем нужны датагриды

Reading time 5 min
Views 6.6K
Я думаю, ни для ни кого не секрет, что задачи, которые включают в себя отображение чего-либо в виде сетки (датагрида) или таблицы встречаются очень часто. При этом, если данных очень много, то отображение результатов (в HTML) становится весьма нетривиальной задачей, которая обычно решается разбиением на страницы.

Читать дальше →
Total votes 52: ↑46 and ↓6 +40
Comments 31

Алгоритмы поиска в строке

Reading time 4 min
Views 186K

Постановка задачи поиска в строке


Часто приходится сталкиваться со специфическим поиском, так называемым поиском строки (поиском в строке). Пусть есть некоторый текст Т и слово (или образ) W. Необходимо найти первое вхождение этого слова в указанном тексте. Это действие типично для любых систем обработки текстов. (Элементы массивов Т и W – символы некоторого конечного алфавита – например, {0, 1}, или {a, …, z}, или {а, …, я}.)

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

Поиск строки формально определяется следующим образом. Пусть задан массив Т из N элементов и массив W из M элементов, причем 0<M≤N. Поиск строки обнаруживает первое вхождение W в Т, результатом будем считать индекс i, указывающий на первое с начала строки (с начала массива Т) совпадение с образом (словом).
Пример. Требуется найти все вхождения образца W = abaa в текст T=abcabaabcabca.

Образец входит в текст только один раз, со сдвигом S=3, индекс i=4.
Читать дальше →
Total votes 86: ↑66 and ↓20 +46
Comments 38

Программирование молекулярной динамики

Reading time 3 min
Views 24K
Доброе время суток хабражители и хабражительницы. Сегодня хотел бы поделиться с вами своими попытками в программировании физических процессов. А конкретнее – попытке углубиться до молекулярных масштабов. Тема для разговора под хабракатом – молекулярная динамика.
Читать дальше →
Total votes 73: ↑72 and ↓1 +71
Comments 33

Алгоритм Дейкстры. Поиск оптимальных маршрутов на графе

Reading time 3 min
Views 431K
Из многих алгоритмов поиска кратчайших маршрутов на графе, на Хабре я нашел только описание алгоритма Флойда-Уоршалла. Этот алгоритм находит кратчайшие пути между всеми вершинами графа и их длину. В этой статье я опишу принцип работы алгоритма Дейкстры, который находит оптимальные маршруты и их длину между одной конкретной вершиной (источником) и всеми остальными вершинами графа. Недостаток данного алгоритма в том, что он будет некорректно работать если граф имеет дуги отрицательного веса.

Для примера возьмем такой ориентированный граф G:

image

Читать дальше →
Total votes 91: ↑62 and ↓29 +33
Comments 31

Алгоритм поведения привидений в игре Pac-Man

Reading time 13 min
Views 66K
Попробовал сделать перевод вчерашнего топика-ссылки на хабре. Заранее извиняюсь, если формулировки покажутся вам кривыми, я с удовольствием приму конструктивную критику. Поехали…

Мне кажется правильным начать этот блог с темы, которая вдохновила меня в первую очередь. Не так давно я наткнулся на статью Jamey Pittman «Pac-Man Dossier», в которой приводилось очень детальное описание механики игры Pac-Man. Она показалась мне очень интересной, поэтому этот сайт — попытка собрать такую же детальную информацию об остальных играх. Но в дань уважения я все же начну с Pac-Man, а в частности, с описания алгоритма поведения привидений. Это очень интересная тема и, надеюсь, мое объяснение будет немного более понятным и доступным, чем у Джейми, потому что я сосредоточусь лишь на поведении.

Об игре:
«В то время все доступные игры были очень жестокими — игры о войне и космических захватчиках. Не было ни одной игры для всех сразу, а особенно, которые понравились бы девушкам. Я хотел придумать «комическую» игру, которой могли бы наслаждаться даже девушки»
— Toru Iwatani, создатель Pac-Man


Читать дальше →
Total votes 211: ↑206 and ↓5 +201
Comments 24

Числа, которые должен знать каждый программист

Reading time 1 min
Views 16K
Чтобы было понятно, на чём следует концентрироваться при оптимизации, слайд из доклада «Создание программных систем в Google и его уроки»:
Таблица
Total votes 164: ↑108 and ↓56 +52
Comments 120

Information

Rating
Does not participate
Location
San Francisco, California, США
Date of birth
Registered
Activity