Конспект лекции про дизайн игровых механик сэндбокс-проектов от создателя Life is Feudal

В феврале в Высшей школе бизнес-информатики НИУ ВШЭ проходила однодневная лекционная сессия по игровой индустрии, открытая для посещения всем желающим. Своим опытом с гостями делились преподаватели программы «Менеджмент игровых интернет-проектов» и приглашенные эксперты. Предлагаем вашему вниманию конспект и видео с лекции генерального и технического директора компании Bitbox, создателя популярной игры Life is Feudal: Your Own Владимира Пискунова.

Читать дальше →
Конспект лекции про дизайн игровых механик сэндбокс-проектов от создателя Life is Feudal
Source: habrahabr

[recovery mode] Зачем нужна тёмная материя и можно ли обойтись без неё?

Это перевод статьи Марка Андерсона [Mark Anderson] из журнала New Scientist (18-24 марта 2017г.)

На удивление притягательная сила

image


По идее, гравитация должна быть силой предсказуемой. Мы с ней хорошо знакомы, благодаря ей мы твёрдо стоим на Земле, а наша атмосфера не улетает в космос. Если же взять более крупные масштабы, то эта сила повлияла на эволюцию самой Вселенной. Как же обидно, что иногда гравитация нас подводит. Дабы объяснить спиралевидное вращение галактик и скоплений галактик гравитацией в том виде, в котором мы её понимаем, нам нужно придумать совершенно новую форму материи, которую никто никогда не наблюдал воочию — тёмную материю. Чтобы объяснить ускорение расширения Вселенной, нам нужно выдумать настолько же загадочную сущность — тёмную энергию.


Но что если мы никогда до конца не понимали гравитацию? Что если где-то вне нашего поля зрения гравитация играет не по правилам?
Читать дальше →
[recovery mode] Зачем нужна тёмная материя и можно ли обойтись без неё?
Source: geektimes

Скидка до 15 000 руб на устройства Huawei и Honor в апреле

Смартфоны и другие устройства Huawei и Honor в ближайшие дни будут продаваться в фирменном магазине Huawei со скидками 1000 — 15 000 руб. В этом году магазину Huawei в России исполняется 2 года. В честь […]
Скидка до 15 000 руб на устройства Huawei и Honor в апреле
Source: 4pda

Обновлённый Xiaomi Mi Notebook Air 12.5 стал на 12% мощнее

Компания Xiaomi анонсировала обновлённую версию прошлогоднего ультрабука Mi Notebook Air 12.5. Напомним, что орининальная модель оснащалась двухъядерным процессором Intel Core m3-6Y30 с тактовой частотой […]
Обновлённый Xiaomi Mi Notebook Air 12.5 стал на 12% мощнее
Source: 4pda

Легендарная стратегия от Blizzard стала бесплатной

StarCraft — культовая стратегия в реальном времени, которая в своё время
произвела настоящую революцию в жанре и поспособствовала зарождению киберспорта.
С сегодняшнего дня игра будет распространяться […]
Легендарная стратегия от Blizzard стала бесплатной
Source: 4pda

Кто-то пытается взломать пользователей GitHub, которые работают под Windows

С января 2017 года владельцы репозиториев GitHub и другие разработчики свободного программного обеспечения начали получать письма с вредоносным вложением. В письме некто говорит, что якобы заинтересовался репозиторием и может предложить работу над другим программным проектом: условия и расценки во вложении.


В одном из образцов вредоносной рассылки в клуджах зафиксированы российские почтовые серверы:

Return-Path: <ludv.jani-2015@vrg.se>

Received: from unknown (HELO mail.bsme-mos.ru) (95.163.65.54)

by ariel.informaction.com with SMTP; 27 Jan 2017 11:25:22 -0000

Received: from unknown (HELO o) (zayavka@bsme-mos.ru@94.23.58.202)

by mail.bsme-mos.ru with SMTP; 27 Jan 2017 14:25:17 +0300

Subject: question

Date: Fri, 27 Jan 2017 12:25:26 +0100

X-MSMail-Priority: Normal

X-Mailer: Microsoft Windows Live Mail 16.4.3528.331

X-MimeOLE: Produced By Microsoft MimeOLE V16.4.3528.331

This is a multi-part message in MIME format.

Читать дальше →
Кто-то пытается взломать пользователей GitHub, которые работают под Windows
Source: geektimes

Пост №3047330

Автор: batman956

Развернуть &epicComment_3047330& { «@context»: «http://schema.org», «@type»: «BlogPosting», «mainEntityOfPage»:{ «@type»:»WebPage», «@id»:»/post/3047330″ }, «headline»: «Pink Floyd :: The Wall», «image»: { «@type»: «ImageObject», «url»: «http://img1.joyreactor.cc/pics/post/full/Pink-Floyd-The-Wall-3753877.png», «height»: 750, «width»: 1142 }, «datePublished»: «2017-03-30T14:52:12+03:00», «dateModified»: «2017-03-30T14:52:12+03:00», «author»: { «@type»: «Person», «name»: «batman956» }, «publisher»: { «@type»: «Organization», «name»: «JoyReactor.cc», «logo»: { «@type»: «ImageObject», «url»: «http://joyreactor.cc/images/joyreactor_ie6.png», «width»: 207, «height»: 54 } }, «description»: «» }
Комментировать 
Пост №3047330
Source: Joyreactor

[Перевод] Инструменты машинного* дизайна

Это перевод статьи дизайнера-программиста Джона Голда, занимающегося системами дизайна в Airbnb, а ранее — сотрудника проекта Grid, который, как и мы, делает раннюю попытку применить нейросети и машинное обучение в дизайне и редизайне веб-элементов.


Дизайн – это почти бесконечный процесс выстраивания всевозможных гипотез с дальнейшей попыткой собрать детали воедино.


Получив бриф проекта c набором условий, мы отправляемся прорабатывать все варианты, которые им удовлетворяют. По ходу дерево гипотез растет, мы придумываем различные сценарии (дивергируем), а затем пробуем свести воедино опыт команды дизайнеров, заказчиков и пользователей, чтобы выбрать оптимальный вариант (конвергируем).
Читать дальше →
[Перевод] Инструменты машинного* дизайна
Source: habrahabr

[Перевод] Инструменты декларативного* дизайна

Это перевод статьи дизайнера-программиста Джона Голда, занимающегося системами дизайна в Airbnb, а ранее — сотрудника проекта Grid, который, как и мы, делает раннюю попытку применить нейросети и машинное обучение в дизайне и редизайне веб-элементов.


Дизайн – это почти бесконечный процесс выстраивания всевозможных гипотез с дальнейшей попыткой собрать детали воедино.


Получив бриф проекта c набором условий, мы отправляемся прорабатывать все варианты, которые им удовлетворяют. По ходу дерево гипотез растет, мы придумываем различные сценарии (дивергируем), а затем пробуем свести воедино опыт команды дизайнеров, заказчиков и пользователей, чтобы выбрать оптимальный вариант (конвергируем).
Читать дальше →
[Перевод] Инструменты декларативного* дизайна
Source: habrahabr

Шаблон проектирования «Спецификация» в C#

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


Я познакомился с этим термином в процессе чтения DDD Эванса. На Хабре есть статьи с описанием практического применения паттерна и проблем, возникающих в процессе реализации.


Если коротко, основное преимущество от использования «спецификаций» в том, чтобы иметь одно понятное место, в котором сосредоточены все правила фильтрации объектов предметной модели, вместо тысячи размазанных ровным слоем по приложению лямбда-выражений.


Классическая реализация шаблона проектирования выглядит так:

public interface ISpecification
{
    bool IsSatisfiedBy(object candidate);
}

Что с ним не так применительно к C#?

  1. Есть Expression<Func<T, bool>> и Func<T, bool>>, сигнатура которых совпадает с IsSatisfiedBy
  2. Есть Extension-методы. alexanderzaytsev с помощью них делает вот так:
    public class UserQueryExtensions 
    {
      public static IQueryable<User> WhereGroupNameIs(this IQueryable<User> users,
    string name)
      {
          return users.Where(u => u.GroupName == name);
      }
    }
    

  3. А еще можно реализовать вот такую надстройку над LINQ:
    public abstract class Specification<T>
    {
      public bool IsSatisfiedBy(T item)
      {
        return SatisfyingElementsFrom(new[] { item }.AsQueryable()).Any();
      }
    
       public abstract IQueryable<T> SatisfyingElementsFrom(IQueryable<T> candidates);
    }
    

В конечном итоге возникает вопрос: стоит ли в C# пользоваться шаблоном десятилетней давности из мира Java и как его реализовать?

Читать дальше →
Шаблон проектирования «Спецификация» в C#
Source: habrahabr