Pull to refresh
0
0
Send message

Играть на уровне бога: как ИИ научился побеждать человека

Reading time27 min
Views65K


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

Мир изменился прямо на наших глазах, но не все заметили это. Когда и как программы научились играть безошибочно? Всегда ли проигрыш одного человека свидетельствует о поражении всего человечества? Обретет ли искусственный интеллект сознание?

Об авторе. Статья основана на лекции «Искусственный интеллект. История и перспективы», проведенной в московском офисе Mail.Ru Group Сергеем oulenspiegel Марковым. Сергей Марков занимается machine learning в «Сбербанке». В банковской сфере строят предиктивные модели для управления бизнес-процессом на основе достаточно больших обучающих выборок, которые могут включать несколько сотен миллионов кейсов. Среди своих хобби Сергей указывает шахматное программирование, ИИ для игр, минимаксные задачи. Программа SmarThink, созданная Сергеем Марковым, становилась чемпионом России (2004) и СНГ (2005) среди шахматных программ (2004), и сегодня входит в топ-30 сильнейших программ в мире. Также Сергей является основателем некоммерческого научно-просветительского портала 22 век.
Читать дальше →
Total votes 58: ↑55 and ↓3+52
Comments65

Как я делал костюм захвата движений

Reading time7 min
Views52K


Предисловие


В своем небольшом городе я занимаюсь решением нетривиальных технических задач. Так и в этот раз, организаторы одного шоу, в котором должна была выступить гимнастка со своей программой, решили добавить в ее представление некоторую «изюминку». А именно, выводить на экраны силуэт гимнастки, который бы повторял ее движения и как-то взаимодействовал с прочими эффектами, да так, чтобы все было интерактивно. Решить задачу «в лоб» не удалось. Kinect явно не справлялся со своей задачей и не был способен произвести захват движений человека, который удален от него на расстояние минимум 10 метров, к тому же в темноте. Так было принято решение сделать что-то «свое». Забегая вперед, скажу что выступление так и не состоялось, однако я настолько загорелся идеей, что продолжил свои эксперименты в качестве отдельного проекта, который впоследствии получил название impulse.
Читать дальше →
Total votes 47: ↑47 and ↓0+47
Comments83

Как я учился на своих ошибках или как сделать вторую игру лучше

Reading time4 min
Views33K
Привет, Хабр!



Хочу поделиться с вами опытом разработки двух игр под Андроид, их продвижением и рассказать об ошибках, которые я совершал, и как я решил их избежать в будущем. Год назад я начал делать свою первую игру на Андроид. Всё начиналось с идеи. Обычная, ничем не примечательная — запоминать фигурки на экране. Ради опыта и своего первого проекта на Google Play я начал усердно работать с моим братом.

Ошибка №1 — Нежелание прислушиваться к чужому мнению

Неделя работы — и у нас уже был мало-мальски рабочий прототип. Ну конечно же, я показывал его друзьям, говорил о планах, спрашивал мнение. Многие говорили, что идея не новая, не интересная, но я не хотел это слышать и мы продолжали разработку. В конце концов мы сами поняли, что от игры многого ждать не стоит, но желание закончить начатое превзошло все.
Читать дальше →
Total votes 58: ↑45 and ↓13+32
Comments8

Через тернии к Unity3D

Reading time6 min
Views28K
Приветствую!



Хочу поделиться своим знакомством с геймдевом. Рассказать о том, как я начал свой путь с XNA. Так же хотелось бы рассказать, как я стал программистом, жаждущим большего контроля над компьютером и том, как влип в написание своего движка на C++. Расскажу о познании готовых решений, таких, как Unity3D и покажуь на своих примерах, что из этого можно сделать.
Читать дальше →
Total votes 27: ↑20 and ↓7+13
Comments6

ASP.NET MVC. Урок 0. Вступление

Reading time2 min
Views782K
Я пишу сайты на asp.net mvc. В этих 16 главах я хочу рассказать, как я это делаю. Это некий учебник-справочник всех тех знаний, которые я накопил в течение трех лет.

Почему именно asp.net mvc

ASP.NET MVC я люблю потому что:
  • Это .net. Я знаю .net и С#.
  • Это компилируемый код.
  • Это не ASP.NET WebForms, я работаю с html-кодом.
  • Используется MVC-паттерн.
  • Visual Studio – самое популярное средство разработки, в котором есть IntelliSense.
  • Отличные инструменты отладки.


Читать дальше →
Total votes 290: ↑215 and ↓75+140
Comments67

Исследуем базы данных с помощью T-SQL

Reading time26 min
Views282K
Как dba и консультант по оптимизации производительности SQL Server в Ambient Consulting, я часто сталкиваюсь с необходимостью анализа узких мест производительности на экземплярах SQL Server, которые вижу первый раз в жизни. Это может быть сложной задачей. Как правило, у большинства компаний нет документации по их базам данных. А если есть, то она устарела, или же её поиск занимает несколько дней.

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

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

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

Ну, хватит слов, давайте я покажу скрипты!
Читать дальше →
Total votes 23: ↑23 and ↓0+23
Comments11

Update 3! Серия из 24 лабораторных работ по разработке, тестированию и управлению жизненным циклом ПО для Visual Studio 2013

Reading time5 min
Views13K
Казалось бы, что только совсем недавно мы опубликовали 24 лабораторные работы по разработке, тестированию и управлению жизненным циклом ПО для Visual Studio 2013 на русском языке (http://habrahabr.ru/company/microsoft/blog/236801/), как уже вышло долгожданное обновление Update 3 (http://habrahabr.ru/company/microsoft/blog/240639/).

Мы не могли остаться в стороне: ahriman перевёл обновлённые лабораторные работы на русский язык.
Ссылки на лабораторные работы, инструкция и т.д.
Total votes 27: ↑23 and ↓4+19
Comments0

Мы проанализировали 20 лэндингов крутых стартапов и вот чему мы научились

Reading time9 min
Views86K
main

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

Это как собрать идеальную девушку из топ моделей или любимых актрис. Только про лэндинги.
Итак, запаситесь чашкой кофе, понеслась.
Читать дальше →
Total votes 76: ↑59 and ↓17+42
Comments17

Потокобезопасные события в C# или Джон Скит против Джеффри Рихтера

Reading time11 min
Views69K


Готовился я как-то к собеседованию по C# и среди прочего нашел вопрос примерно следующего содержания:
«Как организовать потокобезопасный вызов события в C# с учетом того, что большое количество потоков постоянно подписываются на событие и отписываются от него?»


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

Особо внимательный читатель сможет найти в статье два комикса в стиле xkcd.
(Осторожно, внутри две картинки примерно по 300-400 кб)
Читать дальше →
Total votes 71: ↑68 and ↓3+65
Comments120

Асинхронность 2: телепортация сквозь порталы

Reading time27 min
Views49K


Не прошло и года, как я добрался до продолжения статьи про асинхронность. Эта статья развивает идеи той, самой первой статьи про асинхронность [1]. В ней обсуждается достаточно сложная задача, на примере которой будет раскрыта мощь и гибкость использования сопрограмм в различных нетривиальных сценариях. В заключение будут рассмотрены две задачи на состояние гонки (race-condition), а также небольшой, но очень приятный бонус.
Читать дальше →
Total votes 63: ↑60 and ↓3+57
Comments28

Интервью с легендой спортивного программирования Петром Митричевым

Reading time12 min
Views72K


Говорят, когда он появился на свет, к нему заглянул сам Дональд Кнут. Говорят, когда его пригласили работать в Google, он за 15 минут переписал весь поисковый алгоритм 16 раз. Говорят, он с улыбкой следит за прогрессом квантовых вычислений, так как при виде его числа от страха факторизуются сами. Но мы точно знаем одно: Пётр — настоящий бог спортивного программирования.
Читать дальше →
Total votes 91: ↑84 and ↓7+77
Comments8

Bootstrapping мобильного приложения, или как немного сэкономить на разработке и публикации

Reading time3 min
Views9.8K
Token2.com предоставляет сервис двухфакторной аутентификации (2fa as a service) и изначально в качестве основного метода доставки одноразовых паролей (OTP) для второго фактора планировалось использовать SMS. На SMS завязывалось все, и сама технология и даже монетизация — сам сервис предоставляется совершенно бесплатно, пользователь платит только за пакет SMS. На данный момент планируется набрать базу пользователей и установить аппаратный шлюз для SMS — после этого себестоимость снизится, и будет возможно снизить цены для пользователей и начать получать прибыль с проекта.

Однако, в процессе тестирования выяснилось, что надежность SMS оставляет желать лучшего: процент успешной доставки для многих операторов в странах СНГ не превышает 90% (тестировали как с интернет-шлюзами так и с аппаратными). Решение этой проблемы очевидно — авторизация с помощью мобильных приложений, однако никакого бюджета на это не предполагалось, а в команде людей с опытом разработки под мобильные платформы не было. В тоже время предлагать пользоваться другими приложениями (например Google Authenticator) не хотелось, а хотелось именно свое мобильное приложение, с функцинальностью не хуже, а в идеале, даже лучше существующих аналогов.

В этой статье я кратко опишу как мы решили это проблему с минимумом затрат и без привлечения сторонних разработчиков.
Читать дальше →
Total votes 25: ↑16 and ↓9+7
Comments6

История «Титанов», часть 2

Reading time7 min
Views25K


Первая часть истории «Титанов» закончилась на том, что мы завершили разработку новой социальной мидкорной стратегии. Игра в тестовом режиме была запущена в Одноклассниках, а полноценный запуск состоялся 15 августа. Почти целый месяц после релиза мы изучали статистику, и можно сказать, что запуск прошел вполне успешно. Сегодня я предлагаю вам посмотреть на реальную статистику современной социальной игры, а также попробовать на её основе сделать предположения о возможных изменениях в игре.
Читать дальше →
Total votes 52: ↑35 and ↓17+18
Comments25

Perception Neuron: Motion Capture в каждый дом

Reading time2 min
Views23K
Двое суток осталось до окончания кампании на Kickstarter по сбору средств на «Project PERCEPTION NEURON: Motion Capture, VR and VFX». Недавно на Хабре о ней уже проскакивала миниатюрная заметка. Считаю, что это устройство заслуживает большего внимания, тем более, что с момента старта кампании выяснилось довольно много интересных подробностей и добавились новые фичи.


Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments4

Лучшие грабли российских IT-стартапов

Reading time7 min
Views70K


1. Упарываться по хардкору
Это не ошибка, но очень характерная ситуация для IT-сферы. Пока другие стартаперы не имеют продукта, зато рассылают релизы со скриншотами, пьют смузи, выступают на конференциях и выставках, айтишники пишут код. Когда прототип собран и дело доходит до поиска инвестора, становится понятно, что пиар тоже был нужен. Вот только начинать его надо было месяца так два назад.

2. «Сам дурак»
Большая проблема — нежелание слушать мнение окружающих. Когда половина проекта готова и внезапно становится понятно, что проект нежизнеспособен, есть два варианта: резко меняться или сворачиваться. Знаете, что часто делают руководители IT-стартапов? Перестают слушать людей снаружи, превращают команду в секту и упорно допиливают продукт. Потому что полработы уже сделано.

3. Не знать конкурентов
Офигенный подход аутистов — взять и сделать прототип без изучения рынка. Незнание прямого конкурента, косвенного конкурента и западных аналогов продукта — это не самая хорошая идея. Нужно смотреть, кто уже работал в этом направлении и, главное, с какими проблемами сталкивался. Потому что эти проблемы придут к вам. Ещё полезно замерять показатели конкурентов и сравнивать со своими. Если конкурентов нет — это повод насторожиться. Возможно, ваш продукт никому не нужен.
Читать дальше →
Total votes 122: ↑99 and ↓23+76
Comments47

12 заповедей про бэкап, за которые я чуть не заплатил пальцем

Reading time6 min
Views196K


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

1. Бэкап должен быть всегда.
Как бы не развивались технологии, старая добрая резервная копия никогда не потеряет своей ценности, в трудную минуту сохраняя нам нервы, работу, премию, а также успокоительные средства. Она, в случае чего, позволяет нам не паниковать, действовать взвешено, допуская разумный риск.
Даже если в вашем сервере все компоненты дублированы, а данные лежат на дорогом массиве с избыточностью, отгоните от себя ложное чувство безопасности. Никто не застрахован от логических ошибок и человеческого фактора.
Читать дальше →
Total votes 71: ↑63 and ↓8+55
Comments80

Snap — новая платформа для создания отчетов. Часть 1

Reading time4 min
Views20K
Классно, когда отчеты делают не программисты, а сами пользователи. Но большиство существующих дизайнеров отчетов безумно сложны. Представьте, как было бы здорово, если бы ваш главный бухгалтер мог конструировать свои отчёты прямо в Ворде! Фантастика? Вовсе нет. Это Snap от DevExpress.

Посмотрите своими глазами, как прост в использовании этот контрол для программистов и конечных пользователей:



Под катом вы найдете подробное описание всего, что умеет делать Snap на текущий момент.
Читать дальше →
Total votes 31: ↑28 and ↓3+25
Comments9

Обзор расширений Visual Studio для веб-разработчиков

Reading time4 min
Views38K
На конференции //build/ у меня был доклад о Visual Studio Web Tools и расширении Web Essentials. Вы можете найти этот доклад онлайн на сайте Channel9. Во время доклада я использовал несколько расширений, которые будут полезными для любого веб-разработчика Visual Studio 2013. Ниже вы найдете список этих расширений.

Web Essentials


logoСайт: http://vswebessentials.com
Загрузить: Web Essentials в галерее VS

Это расширение команды ASP.NET и Web Tools, которое является неофициальной площадкой для тестирования и обкатки функций. Само расширение развивается opensource-сообществом. Web Essentials предлагает огромное число новых возможностей для веб-разработчиков, такие как компиляторы LESS/Sass/CoffeeScript, дополнительные возможности работы с кодом JavaScript/CSS/HTML/JSON, валидаторы, генераторы спрайтов изображений и многое другое.

SideWaffle


imageСайт: http://sidewaffle.com
Загрузить: SideWaffle в галерее VS

Очень вкусное дополнение для Visual Studio. Это отличный набор шаблонов, который содержит как шаблоны проектов, шаблоны элементов, так и сниппеты для широкого круга сценариев: от создания приложений Angular.js, проектов Nancy FX и до плагинов Browser Link, расширений Chrome и многого другого.
Читать дальше →
Total votes 39: ↑34 and ↓5+29
Comments7

Information

Rating
Does not participate
Registered
Activity