Search
Write a publication
Pull to refresh
51
0
Антон Сердюк @m00t

Software Engineer

Send message

Dropquest 2012 начнется на следующей неделе

Reading time3 min
Views1.9K
Dropquest Logo
Многие из вас участвовали в квесте Dropquest в прошлом году, где вы попали на волшебное путешествие через Dropbox в интернете. Судоку были решены, музыкальные головоломки были расшифрованы, оригами были сложены, и драконы были побеждены. В общем почти полмиллиона участников Dropquest были вознаграждены за свою хитрость, мастерство и усилия. Это было более года назад, и мы до сих пор скрывали наши карты и придумывали новые пазлы чтобы сделать достойного приемника первому квесту Dropquest.

Вот что мы хотим сказать вам о грядущем Dropquest на следующей неделе


  • Квест возвращается.
  • Станет еще сложнее.
  • Будет еще эпичнее.

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

Реалтайм-система мониторинга активности пользователей на сайте. Теперь на Node.js + Socket.IO

Reading time7 min
Views16K
Добрый день.

В этой статье я расскажу о том, как реализовать систему мониторинга активности пользователей с помощью Node.js и Socket.IO. Выглядит это примерно так:
image
Читать дальше →

Технология построения 3D-моделей объектов по набору изображений

Reading time2 min
Views30K

Введение


На сегодняшний день существует целый набор программных продуктов для построения 3D-моделей объектов и сцен по наборам изображений (например, 123D Autodesk или Photomodeller). Описание работы с такими программами было показано в статье http://habrahabr.ru/post/134781/ и http://habrahabr.ru/post/64080/. В этой статье я хочу описать общую методику к решению данного вопроса, с возможностями каждого из этапов. Статья в первую очередь направлена для тех, кто «далек» от этой тематики, но хотел бы понять, а как оно там работает и что вообще можно получить.
Читать дальше →

Веб-сервисы играют в покер

Reading time7 min
Views12K
imageЗдравствуй, Хабр.

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

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

Изначальная идея проекта принадлежит моему другу (он не с Хабра). Первый раз она прозвучала примерно так:
Я считаю, что нет ничего дурного в том, чтобы боты играли в покер-румах. Хотя, может быть, честнее было бы организовать специальный покерный клуб, где роботы играли бы только друг с другом. Вот я бы с удовольствием написал такого бота. А ты?
Не помню, что я ответил. Мне интереснее было именно сделать такой сервис. Challenge accepted ;)
Читать дальше →

Нейросети для чайников. Начало

Reading time5 min
Views810K


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

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

Заинтересовавшихся прошу под кат.
Читать дальше →

Биоинформатика: взгляд изнутри

Reading time5 min
Views39K
Из всех известных мне технических и естественных наук, пожалуй, именно о биоинформатике представление у людей самое плохое. Оно либо в той или иной степени неверное, либо его нет совсем. Когда два года назад я начал заниматься бионформатикой, знаний об этой науке у меня самого не было ровным счетом никаких. Со временем я лучше стал представлять, какие задачи стоят перед биоинформатиками, чем они пользуются, и что может являться результатом их работы.

У биоинформатиков нет никаких пробирок, реагентов, бактерий, белых халатов. Главные инструменты у них – ноутбук, ручка с бумагой или белая доска с маркером – в общем, всё как у программистов. Да и сама работа очень сильно похожа на работу в IT компании, а лаборатория – на небольшой отдел разработки. А в чем же тогда отличия? Что ж, попробую ответить.

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

Советы начинающим фрилансерам

Reading time3 min
Views66K
Несколько сумбурных мыслей о фрилансе. Не воспринимайте каждое слово буквально.

Я ничего не знаю, мои услуги никому не нужны.


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

Symfony 2: Полезные библиотеки и бандлы

Reading time9 min
Views54K
Уже около полугода для разработки веб-проектов используем Symfony 2. Накопился список полезных библиотек и бандлов, не входящих в состав symfony-standard, но значительно экономящих время и избавляющих от изобретения велосипеда.



Обзор больше теоретический и включает следующие разделы:
  • Админгенераторы
  • Пользователи
  • Импорт/экспорт xls
  • API и OAuth 2.0
  • Меню/навигация
  • Мультимедиа
  • Формы
  • Поиск
  • Пагинация
  • Файловая система
  • HTTP клиент

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

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

Zend_Db_Table простота в использовании

Reading time6 min
Views5.4K
Мало кто использует этот удивительный класс на полную мощность. О некоторых его скрытых возможностях также мало кто догадывался, как и я до этого момента.
Читать дальше →

Что нам стоит «умный» продукт построить?

Reading time7 min
Views2.4K
В последнее время словосочетание «машинное обучение» (Machine Learning, ML) стало невероятно модным. Подобно любой распиаренной технологии, энтузиазм здесь превосходит уровень реализации конкретных продуктов. Можно спорить, но мало какие алгоритмические технологии со времен потрясающих инноваций от Google 10-15 лет назад привели к появлению продуктов, широко распространившихся в массовой культуре. Не то, чтобы с тех пор не было прорывов в машинном обучении, не было столь потрясших и имевших в основе вычислительные алгоритмы. Netflix может использовать умные рекомендации, но он и без этого Netflix. А вот если бы Брин и Пейдж не анализировали в своих корыстных целях графовую структуру веба и гиперссылки, у нас не было бы Google.

Почему так? Ведь пытались же. Немало стартапов хотели нести технологии машинной обработки естественного языка в массы, но все по очереди канули в Лету, после того, как люди, собственно, пробовали их использовать. Сложность получения хорошего продукта с использованием машинного обучения не в понимании основной теории, но в понимании сферы деятельности и поставленной задачи. Понимании столь глубоком, чтобы на интуитивном уровне видеть, что будет работать, а что нет. У интересных задач нет готовых решений. Наш текущий уровень в каких-либо прикладных областях, например, той же обработке естественного языка, сильнее движут вперед откровения, относящиеся к этой области, чем новые техники решения общих задач машинного обучения. Часто отличие программы, используемой каждый день, от полуработающей курсовой — это особый взгляд на проблему и хорошая модель решения.

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

Сжатие информации без потерь. Часть первая

Reading time9 min
Views80K
Доброго времени суток.
Сегодня я хочу коснуться темы сжатия данных без потерь. Несмотря на то, что на хабре уже были статьи, посвященные некоторым алгоритмам, мне захотелось рассказать об этом чуть более подробно.
Я постараюсь давать как математическое описание, так и описание в обычном виде, для того, чтобы каждый мог найти для себя что-то интересное.

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

Почему многие выбирают PHP

Reading time2 min
Views14K
Тут было задано много вопросов в одном топике, ответы на которые частично дали в другом.

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

И кажущаяся несправедливость, почему PHP рулит на рынке веб-приложений, как Microsoft в десктопном софте, обернется очевидностью.
Читать дальше →

Функциональное программирование для всех

Reading time33 min
Views354K

Доброго времени суток. Это статья — перевод заинтересовавшего меня поста в блоге аспиранта Университета штата Нью-Йорк в Стоуни-Брук. Статья в доступной форме описывает основные концепции функционального программирования, их преимущества и недостатки. Думаю она будет полезна широкому кругу читателей, которые сомневаются, нужно ли им углубляться в мир функционального программирования или нет. Пожелания, предложения и замечания по переводу и терминологии принимаются по личной почте.

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

UPD: альтернативный вариант перевода вы можете найти на rsdn (спасибо flamingo за ссылку).
Читать дальше →

PHP — отстой! Но я люблю его!

Reading time5 min
Views27K
Буквально вчера я прочёл весьма занимательный пост PHP: a fractal of bad design (русский вариант на хабреприм. перев.). Этот неоднозначный и провокационный топик широко обсуждается всем PHP-сообществом. Честно говоря, там есть как действительно хорошие позиции и замечания, так и откровенные ошибки, не позволяющие увидеть всю картину в целом.

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

Gearman — сервер очередей: использование в проектах на PHP

Reading time9 min
Views82K
Не так давно была замечательная статья, описывающая общие принципы работы с сервером очередей Gearman. Мне бы хотелось продолжить материал, дополнив его некоторыми деталями практического применения, а именно:
— установка и управление сервером
— управление очередью — что возможно и как
— PECL и PEAR php-расширения для работы с Gearman
— мониторинг сервера
— примеры кода
— передача данных порциями
— организация параллельных вычислений в PHP

Интересно? Прошу под кат
Читать дальше →

Оптимизация псевдостриминга FLV-видео

Reading time6 min
Views5.7K
Один из проектов нашей компании — это сервис online-видео, аналогичный youtube. Для вещания и реализации возможностей стриминга используется замечательный веб-сервер nginx с модулем ngx_http_flv_module.

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

Упражнения по взлому Linux-систем

Reading time2 min
Views16K
Для тех, кто интересуется вопросами безопасности и уязвимостями Linux, создан обучающий проект exploit-exercises.com с подборкой виртуальных Linux-машин, описаниями уязвимостей, документацией и практическими заданиями.

1. Виртуальная машина Nebula
торрент-файл
прямая ссылка

Самые общие уязвимости, связанные с эскалацией привилегий в Linux: это SUID-файлы, разрешения, состояние гонки (race conditions), метапеременные оболочки, уязвимости $PATH, уязвимости скриптовых языков, ошибки компиляции бинарных файлов.
Читать дальше →

Парсим Python код с помощью Flex и Bison

Reading time6 min
Views35K

Вступление


Уже около двух лет я участвую в OpenSource проекте SourceAnalyzer, и вот появилась необходимость написать парсер для языка Python, который должен уметь строить граф вызовов (Call Graph) и граф зависимостей классов (Class Graph Dependency). Если точнее, граф строится с помощью других инструментов, а парсер должен лишь подготовить для этих инструментов данные.

Процесс работы над парсером был довольно занятным и мне бы хотелось поделиться с вами приобретенным опытом, а также поведать о некоторых подводных камнях, которые встретились на этапе разработки.
Читать дальше →

Практика работы с сигналами

Reading time6 min
Views113K
Хочу запечатлеть небольшой опыт работы с сигналами в Linux. Ниже будут представлены примеры использования наиболее значимых конструкций в этой области. Постараюсь разложить все по отдельным полочкам, чтобы всегда было легко глянуть и вспомнить, что и как использовать.
Читать дальше →

Секреты MongoDB — масштабируемость и производительность (Мастер-класс от автора)

Reading time1 min
Views8K
imageЭтот мастер-класс познакомит вас с MongoDB и расскажет как выжать из неё всё возможное.

Одна из трудных задач при переходе на MongoDB — это выяснить как правильно структурировать ваши данные. Многие разработчики уже неоднократно решали эту задачу в приложении к РСУБД, но эти правила не всегда применимы с MongoDB. Тот простой факт, что документы могут представлять из себя детальные структуры данных при отсутствии схемы, означает, что у разработчиков есть масса альтернатив стандартной нормализованной реляционной модели.
Читать дальше →

Information

Rating
Does not participate
Date of birth
Registered
Activity