Search
Write a publication
Pull to refresh
2
0
Алексей @KaaPex

Пользователь

Send message

Как мы работаем со справочниками на интеграционной шине

Reading time2 min
Views17K

Принципы решения


При интеграции корпоративных систем возникает задача управления справочными данными. Для решения этой задачи часто используется Master Data Managment(MDM). MDM — это хранилище, которое содержит “эталонные” справочные данные, так называемые “золотые записи”. Справочники в MDM содержат очищенные полные и непротиворечивые данные.

Часто MDM используется как платформа для централизованного ведения справочников. Ввод и валидация справочных данных производится в MDM, а оттуда они реплицируются в IT-системы. Такой подход имеет несколько проблем

  • Создать эталонную модель данных, которая подойдет всем системам не так-то просто.
  • Справочные данные становятся оторванными от приложений.
  • Репликация данных из MDM часто требует серьезной доработки систем. Для систем “из коробки” такая доработка может быть очень дорогой.

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

Scrollport.js — новая анимация скролла

Reading time3 min
Views45K
image

Анимация скролла к месту страницы с момента изобретения почти не подвергалась никаким модификациям, никак не украшалась. Да никому и не надо вроде, и так все работает. Говоришь куда скроллить и за сколько нужно добраться. Всё.

Я решил на анимацию скролла посмотреть под другим углом. Не потому что сейчас с ним что-то не так, а потому что можно и поинтереснее. В результате некоторых наблюдений и всплесков фантазии удалось придумать 3 способа для более интересной анимации. В итоге завернул все в плагин «Scrollport.js» с 3 новыми и 1 классическим режимом. Смотрите демо и проходите под кат.
Читать дальше →

Сколько новичку можно заработать на YouTube в 2015 году?

Reading time8 min
Views236K
Ваш сайт – это ваши правила, но и полностью ваши проблемы с его развитием. 15 SEO-экспертов в прошлой статье указали причины, мешающие продвижению новых ресурсов. Легкая ошибка – и пришествие трафика откладывается на неопределенный срок. А вместе с ним – и запланированный доход. Но ведь можно использовать для заработка и чужие сайты, которые не нужно продвигать! И иногда зарабатывать с их помощью получается быстрее даже новичку… Рассмотрим нюансы привлечения трафика из второго по посещаемости сайта в Мире – YouTube.com. И поможет нам в этом Денис Коновалов (konoden).


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

50+ лучших дополнений к Bootstrap

Reading time5 min
Views202K


Благодаря популярности CSS фреймворка Bootstrap, для него разработали массу различных дополнений. Даже сейчас вы можете использовать Bootstrap практически для любой задачи при разработке и оформлении вебсайта.

Для статьи я подобрал наиболее полезные дополнения «на все случаи жизни».
Читать дальше →

Лекции Техносферы. 2 семестр. Методы распределенной обработки больших объемов данных в Hadoop

Reading time5 min
Views35K
Предлагаем вашему вниманию новый курс лекций Техносферы. Он представляет собой введение в Hadoop, фокусируясь на проектировании и реализации распределенных алгоритмов, которые могут применяться в различных сферах: обработка текстов, графов, связанных данных и т.п. Также рассматриваются различные компоненты платформы Hadoop и программные модели. Целью курса является знакомство студентов со стеком технологий Hadoop, применяемых для хранения, доступа и обработки больших объемов данных. Преподаватели курса: Алексей Романенко, Михаил Фирулик, Николай Анохин.

Лекция 1. Введение в Big Data и MapReduce


Что такое «большие данные». История возникновения этого явления. Необходимые знания и навыки для работы с большими данными. Что такое Hadoop, где он применяется. Что такое «облачные вычисления», история возникновения и развития технологии. Web 2.0. Вычисление как услуга (utility computing). Виртуализация. Инфраструктура как сервис (IaaS). Вопросы параллелизма. Управление множеством воркеров. Дата-центры и масштабируемость. Типичные задачи Big Data. MapReduce: что это такое, примеры. Распределённая файловая система. Google File System. HDFS как клон GFS, его архитектура.


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

Вместе веселей: python + flask + google app engine

Reading time6 min
Views29K
Предыстория: я, как и многие на Хабрахабре, чертовски люблю слушать музыку. Чаще всего делаю это в ВКонтакте. Иногда уже сфомированный плейлист надоедает — хочется чего-нибудь нового; но так, чтобы не сильно отличалось от того, что уже есть. Для этого на всех сервисах, предоставляющих возможность прослушивания музыки, существуют рекомендации. Признаюсь честно, рекомендации в ВКонтакте меня ужасают. Может кому-то нравится, но у меня тамошний подбор вызывает желание закрыть браузер (ИМХО, конечно). В общем, решил я эту ситуацию для себя исправить и реализовать свои собственные рекомендации с использованием API ВКонтакте и Last.fm. Так как я много слышал и читал про Google App Engine, но никогда его не использовал, решено было приобщиться к этой платформе.

Сразу скажу, что тонкости взаимодействия с API или алгоритм подбора рекомендаций здесь я описывать не буду. Об этом — в следующих статьях, может быть. В данной статье описан только процесс создания, настройки и деплоя приложения на платформе Google App Engine с использованием python и flask.
Об опечатках и неточностях просьба сообщать в личку. Спасибо.
Читать дальше →

Web API с помощью Django REST framework

Reading time4 min
Views158K
Веб-cервис (англ. web service) — идентифицируемая веб-адресом программная система со стандартизированными интерфейсами. Веб-службы могут взаимодействовать друг с другом и со сторонними приложениями посредством сообщений, основанных на определённых протоколах (XML, JSON и т. д.). Веб-служба является единицей модульности при использовании сервис-ориентированной архитектуры приложения.

Одним из подходов создания веб сервиса является rest.
Rest (сокр. англ. Representational State Transfer, «передача состояния представления») — стиль построения архитектуры распределенного приложения. Данные в REST должны передаваться в виде небольшого количества стандартных форматов (например HTML, XML, JSON). Сетевой протокол (как и HTTP) должен поддерживать кэширование, не должен зависеть от сетевого слоя, не должен сохранять информацию о состоянии между парами «запрос-ответ». Утверждается, что такой подход обеспечивает масштабируемость системы и позволяет ей эволюционировать с новыми требованиями.

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

RESTful API для сервера – делаем правильно (Часть 1)

Reading time13 min
Views334K
В 2007-м Стив Джобс представил iPhone, который произвел революцию в высокотехнологичной индустрии и изменил наш подход к работе и ведению бизнеса. Сейчас 2012-й и все больше и больше сайтов предлагают нативные iOS и Android клиенты для своих сервисов. Между тем не все стартапы обладают финансами для разработки приложений в дополнение к основному продукту. Для увеличения популярности своего продукта эти компании предлагают открытые API, которыми могут воспользоваться сторонние разработчики. Пожалуй Twitter был первым в этой сфере и теперь число компаний, последовавших этой стратегии, растет стремительно. Это действительно отличный способ создать привлекательную экосистему вокруг своего продукта.

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

Учим Python качественно

Reading time4 min
Views1.4M
Здравствуйте всем!

Решил поделиться методом обучения сего мощного, но в одно и тоже время лёгкого языка программирования. Он действительно лёгкий. Вам не надо будет запоминать и вводить лишних символов, которые Вы можете встретить в Си-подобных языках.

Удобочитаемый синтаксис, прост в обучении, высокоуровневый язык, Объектно-Ориентированый язык программирования (ООП), мощный, интерактивный режим, масса библиотек. Множество иных плюсов… И это всё в одном языке.
Для начала окунёмся в возможности и узнаем, что же умеет Python?
Читать дальше →

Принципы Remote: как организовать удалённую работу

Reading time10 min
Views25K
В моих руках книга «Remote» от 37signals. Это книга о том, что такое удалённая работа, о том, как использовать её преимущества и как сгладить недостатки. Книга очень пригодится предпринимателям, которые думают о полном или частичном переходе на удалённую работу. Но книга также пригодится и, собственно, удалённым сотрудникам (или фрилансерам), желающим работать эффективно. Предыдущие мои статьи были по книгам Getting Real и Rework.


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

От Backbone.js к Marionette.js

Reading time6 min
Views63K
Привет, Хабр.

В этой статье пойдет речь о том, из чего состоит Marionette.js, и о возможности не писать свой велосипед.

Статья рассчитана в первую очередь на работавших с Backbone.js и/или Marionette.js.
Для вновь знакомящихся будет полезна первая, обзорная, часть и ссылки в конце статьи.
Так из чего же состоит Marionette.js

Несколько бутстреппинг-советов, которые помогут превратить ваши идеи в реальность

Reading time3 min
Views4.7K
МюнхгаузенБольшинство стартапов начинали без вливания капитала от венчурных капиталистов и ангелов-инвесторов. Реальные цифры открывают глаза — венчурные капиталисты финансировали только 0,05% стартапов, а ангелы несут ответственность за финансирование 0,91%. Найдите минутку, чтобы действительно подумать об этих процентах по отношению к, примерно, 543 тысячам новых бизнесов, начинаемых каждый месяц.

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

Продвижение инди-игры на Steam Greenlight

Reading time11 min
Views97K
Всем, привет! Наша команда сейчас проходит важный этап становления любого разработчика игр — первый запуск игры на Steam Greenlight. Пока я готовил материал для этой статьи, наша игра вошла в ТОП-100 проектов на Greenlight, набрала почти 2000 голосов «ЗА» и через 12 дней получила зелёный свет.

В этой статье хочу поделиться информацией, которую «нарыл» в процессе подготовки к Greenlight'у, а также попробовать проанализировать, какие гипотезы по продвижению сработали, а какие пути оказались тупиковыми. Надеемся, эта информация окажется полезной и кому-то попадёт в избранное.

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

Разбор естественного языка: под капотом

Reading time4 min
Views15K


API синтаксического анализатора


Продолжаю свой предыдущий пост. Время сфокусироваться на деталях внутреннего устройства синтаксического анализатора. В качестве языка реализации я выбрал Go, поскольку хотел малой ценой получить параллельный (в смысле, использующий все доступные ядра CPU) производительный инструмент, без погружения в низкоуровневую пучину C++.

Полученный код предоставляет следующий API:
type Attribute struct {
    Name   string
    Value  string
}

type ParseMatch struct {
    Text            string
    Nonterminal     string
    Rule            string
    Attributes      []Attribute
    Submatches      []ParseMatch
    Hypotheses      []string
    HypothesisCount uint
}

func Parse(text, nonterminal string, hypotheses_limit uint) []ParseMatch

Match ссылается на дочерние объекты того же типа, соотвествующие нетерминалам или лексическим терминалам подошедшего правила. В общем случае, из-за неоднозначности, присущей естественным языкам, тексту соответствует несколько разборов (например, из-за наличия омонимов). Поэтому функция Parse возвращает множество объектов Match. Вышеупомянутая неоднозначность синтаксического разбора должна устраняться на следующем (семантическом) уровне анализа текста.

Итак, функция Parse берёт text — текст для разбора, nonterminal — название нетерминала (например, «sentence»), а также максимальное число выдвигаемых гипотез hypotheses_limit (об этом чуть ниже). Параметр nonterminal может быть пустым. В этом случае тексту будет сопоставляться лексический терминал, найденный в морфологической базе.

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

DevCon 2015: анонс мастер-класса по Unity 5 от создателей платформы

Reading time2 min
Views8K
Друзья, с удовольствием делюсь с вами анонсом мастер-класса по технологиям создания игр на Unity 5 от представителей самой компании Unity Technologies!



Мы рады представить мастер-класс Валентина Симонова – инженера из Unity Technologies, который в рамках DevCon 2015 поделится c участниками конференции основами и тонкостями создания игровых миров на платформе Unity 5.

Собираем игру на Unity 5. На этом мастерклассе вы под руководством Валентина сделаете игру с использованием новых возможностей Unity 5. Вам будут предоставлены все необходимые ресурсы: модели, анимации и скрипты. Мастер-класс рассчитан на людей любого уровня и знаний.“

Немного слов о самом авторе:
Читать дальше →

Первые две недели курса CS188.1x Artificial Intelligence или самообучение алгоритмам ИИ

Reading time4 min
Views13K
Как вы думаете, что машины с искусственным интеллектом сегодня уже умеют делать, а что нет?


На фото робот, умеющий складывать полотенца.

В дистанционном курсе CS188.1x Artificial Intelligence от Калифорнийского университета в Беркли профессор Dan Klein приводит список некоторых задач в области искусственного интеллекта. Часть из них уже решены (полностью или частично), а другая часть — еще нет. Курс посвящен алгоритмам ИИ, на которых базируются многие современные интеллектуальные системы. Хочется вкратце поделиться тем, с чего он начинается и подробней рассказать про первое практическое задание.
Читать дальше →

Elite: Dangerous – лучший, чёрт побери, космосимулятор. Но не завершённый и не без проблем

Reading time12 min
Views75K
image
Моя Анаконда

Это моя третья попытка написать обзор E:D. Одно дело – поиграть несколько часов, почитать мнения на форумах и написать обзор. Но я следил за игрой с июня 2014 года, и она постоянно менялась – что-то добавлялось, что-то исчезало. Поэтому я пытаюсь описать не несколько часов, а несколько месяцев игры, которые я провёл, бороздя тёмные моря космоса.

Сказать по правде, E:D была выпущена незаконченной, и она не закончена до сих пор. Судя по всему, выход версии 1.0 16 декабря был сделан только для того, чтобы сдержать обещание «выйти до конца 2014 года». Но много деталей игровой механики, например симуляция развития экономики и политики без участия игрока, не работали или просто отсутствовали. В игре было много плохо оттестированных или незамеченных возможностей для нечестной игры. p2p-архитектура была очень нестабильной и небезопасной. До недавнего времени в мультиплеере единственной возможностью общения с игроком было взорвать его корабль.

И несмотря на всё это, и на то, что даже после двух больших патчей от всех багов игра не избавилась, E:D настолько хороша, что проблемы уходят на второй план. Когда я надеваю Oculus Rift DK2 и оглядываюсь в рубке – я управляю своим собственным космическим кораблём.
Читать дальше →

Видеостудия для записи MOOC

Reading time4 min
Views15K
В прошлом посте, я рассказал, как мы делали студию для записи массовых открытых онлайн-курсов (MOOC) в офисном помещении. Теперь, по прошествии полугода, я бы хотел рассказать про наше решение, которое используется уже в двух студиях (в Санкт-Петербурге и Москве), а процесс разворачивания новой студии занимает не более суток при наличии всего железа.

Процесс записи курса происходит таким образом, что преподаватель приходит в студию в удобное для него время, и записывает себя сам. Всё автоматизировано, чтобы задействовать наименьшее количество людей. После сеанса записи получаются практически готовые видеофайлы, которые достаточно расставить в нужном порядке, отредактировать и загрузить на Stepic.org.
Итак, что же изменилось за последние полгода, или как мы снимаем онлайн-курсы...

Не рычите на собаку

Reading time5 min
Views37K
Я пишу конспекты с хороших книг. Сегодня это книга из второго списка от Milfgard «Не рычите на собаку» Карен Прайор. В книге описаны способы воздействия на людей, домашних животных, дельфинов, кого угодно. Автор утверждает, что если вы обучитесь описанным приёмам, — у вас будет сильно меньше проблем с коммуникацией.


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

Обзор SSD диска Transcend JetDrive 725 для апгрейда MacBook Pro Retina

Reading time3 min
Views72K
Случилось почти чудо! Еще недавно я писал про маааленький апгрейд системы хранения для моего MacBook Pro Retina 15” и вот сегодня я расскажу про полноценную замену SSD диска в этом чудесном агрегате. Причина апгрейда проста — я раздобыл Transcend JetDrive 725 объёмом 480 гигабайт. В связи с чем, хочу порадовать деталями процесса и финальными результатами (потому что Transcend заявляет о приросте производительности после замены SSD накопителя). Под катом фото, видео и текст.


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

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity