Generative adversarial networks

Автор: admin от 11-04-2018, 16:40, посмотрело: 17

В прошлой статье мы рассмотрели простейшую линейную генеративную модель PPCA. Вторая генеративная модель, которую мы рассмотрим — Generative Adversarial Networks, сокращенно GAN. В этой статье мы рассмотрим самую базовую версию этой модели, оставив продвинутые версии и сравнение с другими подходами в генеративном моделировании на следующие главы.



Generative adversarial networks

Категория: Программирование

 

Три истории микросервисов, или MSA для Enterprise

Автор: admin от 11-04-2018, 12:00, посмотрело: 20

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


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

Микросервисы — одна из самых важных и значимых составляющих Web-scale архитектуры, имеющая наибольшие последствия для переделки устройства техник и паттернов в Enterprise. Трудно сейчас сказать, на каком участке сейчас находится сама технология — может быть, на самом верхнем пике, и нам предстоит еще десять раз разочароваться. Но, тем не менее, это не повод не изучать её прямо сейчас.

Категория: Программирование

 

Держим дизайн системы под контролем, используя изолированное юнит-тестирование

Автор: admin от 11-04-2018, 12:00, посмотрело: 18

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

Держим дизайн системы под контролем, используя изолированное юнит-тестирование

Сегодня мы поговорим о том,


  • Как делать тестирование сложными зависимостями?

  • Как добиться большого тестового покрытия?

  • Как тесты влияют на дизайн?

  • Что делать, когда много логики в базе?

  • Как соблюсти компромисс между дизайном и «не дизайном».


Категория: Программирование

 

Генерация страниц сайта средствами сервис-воркеров

Автор: admin от 11-04-2018, 11:10, посмотрело: 19

Генерация страниц сайта средствами сервис-воркеров
(С)

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


  • кэширование страниц сайта для офлайн доступа;

  • ведение учета страниц, доступных офлайн, проброс необходимых данных;

  • мониторинг статуса сети, онлайн или офлайн;

  • общение сервис-воркера со страницами и вкладками, которые он обслуживает;

  • перехват сервис-воркером запроса на открытие адреса /offline/ и генерирование новой страницы прямо на устройстве, без запроса к серверу.


Если тема сервис-воркеров и Progressive Web Apps (PWA) для вас новая, то перед чтением этой статьи необходимо познакомиться с ними поближе.

Меня зовут Рыбин Павел, я работаю во фронтенд-разработке Медиапроектов Mail.Ru Group. Это руководство мне помогали писать грабли, набитые шишки и подводные камни, попавшиеся мне при реализации PWA для мобильной версии Авто Mail.Ru.

В тексте будут встречаться небольшие примеры кода, иллюстрирующие рассказ. Расширенную же демо-версию можно посмотреть на GitHub.

Категория: Программирование » Веб-разработка

 

Почему в 2018 году я использую метод разработки, которому уже 30 лет

Автор: admin от 11-04-2018, 11:10, посмотрело: 27

Почему в 2018 году я использую метод разработки, которому уже 30 лет

Создавать игры сложно


И самая сложная часть создания игр — это препродакшен. Это заявление может показаться обескураживающим. Все мы слышали о очень тяжёлых периодах продакшена игр и часто видели лёгкие, простые и интересные периоды препродакшена. Почему же я утверждаю, что препродакшен сложнее? Потому что один из аспектов, способных отравить продакшен — это выполняемый во время него препродакшен. Как бы ни был сложен препродакшен, гораздо сложнее (и намного дороже) выполнять его на этапе продакшена. Позвольте объяснить: в идеальном мире никто не брался бы за производство коммерческой игры, которую ждёт провал. Если вы намереваетесь создать игру с целью извлечения прибыли, и вы знаете, что игра прибыль не принесёт, то к продакшену вы не перейдёте.

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

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

Категория: Программирование » Веб-разработка

 

Обзор новшеств ECMAScript 2016, 2017, и 2018 с примерами

Автор: admin от 11-04-2018, 11:10, посмотрело: 40

Сложно уследить за новшествами различных версий ECMAScript, а ещё сложнее — найти полезные примеры их применения, не перекапывая горы информации. Поэтому сегодня мы публикуем перевод материала, автор которого проанализировал 18 новых возможностей ECMAScript, в число которых входят те, что имеются в уже вышедших стандартах ES2016 и ES2017, а также — те, которые должны появиться в стандарте ES2018. Автор этой статьи обещает, что каждый, кто её прочтёт, узнает много интересного и полезного о новых возможностях javascript.

Обзор новшеств ECMAScript 2016, 2017, и 2018 с примерами

Категория: Программирование » Веб-разработка

 

С чего начинается качественная стратегия и для чего она нужна в управлении продуктом?

Автор: admin от 11-04-2018, 07:00, посмотрело: 25

Управление продуктом становится важнейшей частью функционирования большинства компаний. Однако для некоторых стартапов и даже крупных команд процесс управления продуктом остается не до конца понятным явлением.



Процесс управления продуктом состоит из нескольких этапов, где один из главных и основополагающих — это определение стратегии и ее грамотное использование на протяжении всего жизненного цикла продукта.



С чего начинается качественная стратегия и для чего она нужна в управлении продуктом?

Категория: Программирование

 

Компилятор на JavaScript с использованием ANTLR

Автор: admin от 11-04-2018, 07:00, посмотрело: 22

Компилятор на JavaScript с использованием ANTLR





В начале этого года я присоединилась к команде, работающей над MongoDB Compass — графическим интерфейсом для MongoDB. Пользователи Compass через Intercom запросили инструмент, позволяющий писать запросы к базе данных, используя любой удобный им язык программирования, поддерживаемый драйвером MongoDB. То есть нам нужна была возможность трансформировать (компилировать) язык Mongo Shell в другие языки и обратно.



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

Категория: Программирование

 

Докеризируем Socket.io, redis и php

Автор: admin от 11-04-2018, 07:00, посмотрело: 31

Для передачи данных сервером на php клиенту можно использовать следующий алгоритм:




  • Сервер php публикует данные в канал redis.

  • Сервер node подписывается на события в соответствующем канале redis и при

    наступлении события поступления данных публикует эти данные уже в

    socket.io

  • Клиент подписывается на сообщения socket.io и обрабатывает их при поступлении



  • Исходный код проекта можно найти на github

    Категория: Программирование

     

    Приглашаем на лекционный вечер по геймдизайну 18-го апреля в ВШБИ

    Автор: admin от 11-04-2018, 06:15, посмотрело: 23

    18 апреля в Высшей школе бизнес-информатики НИУ ВШЭ в Москве пройдет сразу несколько лекций по геймдизайну. Начало лекций с 19:00, сбор гостей с 18:30.

    Будут выступать как преподаватели ВШБИ, так и приглашенные эксперты, которые будут делиться с гостями мероприятия опытом и знаниями по геймдизайну.



    Место проведения: ул. Трифоновcкая, д.57, стр. 1 (ст. метро Рижская).



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



    Приглашаем на лекционный вечер по геймдизайну 18-го апреля в ВШБИ

    Категория: Программирование » Веб-разработка