Pull to refresh
16
0
Сергей Козлов @s_kozlov

User

Send message

Борьба с мельницами — 1: интерполяционные сплайны

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

— Где вы видите великанов? — спросил Санчо Панса.
— Да вон они, с громадными руками, — отвечал его господин. — У некоторых из них длина рук достигает почти двух миль.
— Помилуйте, сеньор, — возразил Санчо, — то, что там виднеется, вовсе не великаны, а ветряные мельницы; то же, что вы принимаете за их руки, — это крылья: они кружатся от ветра и приводят в движение мельничные жернова.
— Сейчас видно неопытного искателя приключений, — заметил Дон Кихот, — это великаны. И если ты боишься, то отъезжай в сторону и помолись, а я тем временем вступлю с ними в жестокий и неравный бой…

Читать дальше →
Total votes 6: ↑5 and ↓1+4
Comments5

Самая базовая потребность: как мы реализовали DNS-хостинг в «Mail.Ru для бизнеса»

Reading time4 min
Views19K


В прошлом году мы запустили бесплатный DNS-хостинг на «Mail.Ru для бизнеса», а недавно он вышел из бета-тестирования. Сегодня я хочу рассказать, как мы его делали, какие технические решения принимались, и немного о том, как мы запускались на всю аудиторию.

Мы внимательно прислушиваемся к пожеланиям наших пользователей и ведем учет всех хотелок. В этом списке DNS-хостинг стабильно держался в первых строчках. В результате мы решили две задачи: реализовали дополнительную услугу, о которой просили многие, и добавили еще один способ подтверждения домена для новых клиентов. К тому же после перехода на наш DNS-хостинг все необходимые для работы почты DNS-записи добавляются автоматически.
Читать дальше →
Total votes 36: ↑31 and ↓5+26
Comments207

DevConf 2015: видео докладов секции PHP

Reading time4 min
Views17K
Ежегодная конференция профессиональных веб-разработчиков DevConf проходит с 2010 года. Она состоит из нескольких секций, посвященных самым популярным языкам и технологиям веб-разработки. В 2015 году году компания Badoo взяла на себя важную миссию — записать видео выступлений, чтобы те, кто не смог посетить конференцию, могли посмотреть их в любое время.

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

Секция PHP конференции DevConf 2015

В первую очередь хотелось бы отметить доклад Дмитрия Стогова (Zend Technologies) «Релиз PHP 7: что нас ждет в октябре 2015». Не будем мучить вас переводом «чейнджлога» седьмой версии, а скажем просто: смотреть всем, кто имеет хоть какое-то отношение к PHP. Если вы за свою жизнь написали хотя бы строчку кода на PHP, то, скорее всего, уже слышали про сумасшедшую производительность, JIT и spaceship operator. JIT в PHP так и не появился, но оптимизации проведены масштабные. В докладе Дмитрий рассказывает много о внутренней кухне PHP, есть графики производительности разных версий PHP и HHVM на реальных приложениях. Badoo сейчас как раз в процессе перехода на PHP 7, нам пришлось сильно «перекопать» инфраструктуру тестирования и переписать кучу расширений, но мы на финишной прямой и можем подтвердить, что PHP 7 действительно показывает очень серьезный рост производительности. Какой именно получается прирост? Пока секрет. Ждите от нас отдельной статьи на эту тему, когда мы поборем последние косяки, отлавливаемые на продакшн-трафике.


Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments1

10 гаджетов, помогающих следить за здоровьем с помощью смартфона

Reading time4 min
Views21K


Развитие интернета вещей уже сегодня серьезно изменяет многие традиционные отрасли. Одна из них медицина, где постоянно растет число устройств, позволяющих людям следить за своим здоровьем и дистанционно получать квалифицированную помощь, а также облегчающих работу врачам. Сегодня мы рассмотрим 10 медицинских гаджетов, работающих в связке со смартфоном.
Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments10

Rooti Labs представили трекер для постоянного мониторинга давления

Reading time3 min
Views7.6K
На прошедшей недавно Medica 2015 в Германии компания Rooti Labs представила ряд новинок из категории mHealth, которые позволяют носителям контролировать важные жизненные показатели, а врачам получать быстрый дистанционный доступ к статистике. Во-первых, речь идет о непрерывном мониторинге давления. Также был показан портативный ЭКГ-монитор, а также датчик для детального анализа сна.



Данные с этих девайсов передаются в ваше мобильное приложение, а также могут быть отправлены в облако клиники для вашего лечащего врача. Кое-что уже есть в России.
Читать дальше →
Total votes 7: ↑7 and ↓0+7
Comments1

Модель прогнозирования временных рядов по выборке максимального подобия: пояснение и пример

Reading time6 min
Views27K

Предисловие


Это моя модель. Я ее придумала, программно реализовала, изучила особенности и описала. Полученное описание защитила как диссертацию по теме «Модель прогнозирования временных рядов по выборке максимального подобия». Разработанная модель относится к классу статистических моделей прогнозирования и строит прогноз временного ряда на основании фактических значений того же ряда. Подробнее о классификации я писала ранее. Одна из модификаций модели позволяет учитывать влияние внешних факторов на прогноз.


Файлы с реализованным примером можно скачать в архиве.


UPD 07.03.2019: Доступна обновленная версия примера для MATLAB 2015b с комментариями на английском языке.

Определим вопросы и ответы
Total votes 16: ↑15 and ↓1+14
Comments20

Строим real-time веб-приложения с RethinkDB

Reading time10 min
Views43K
От переводчика: Совсем недавно узнал про эту довольно интересную базу данных и как раз наткнулся на свежую статью. На Хабре нет почти ни слова о RethinkDB, в связи с чем было решено сделать этот перевод. Добро пожаловать под кат!

image

База данных RethinkDB упрощает разработку веб-приложений, рассчитанных на обновления в режиме реального времени.
Читать дальше →
Total votes 25: ↑23 and ↓2+21
Comments36

7 правил создания красивых интерфейсов

Reading time8 min
Views180K


Недавно мы в «Я люблю ИП» закончили курсы по дизайну от trydesignlab.com. И это одна из самых важных статей, которую нам посоветовал ментор в процессе обучения. Именно поэтому мы решили её перевести. Посмотреть все наши работы с курсов можно в ВКонтакте по тэгу #design101@iloveip.

Вступление


Сначала о главном. Это руководство не для всех. Это руководство прежде всего для:
  • разработчиков, которые хотят уметь делать хорошие интерфейсы для себя, если вдруг прижмёт;
  • UX-дизайнеров, которые знают, что хороший UX-дизайн продаётся лучше в красивой UI-упаковке.

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

А пока давайте я расскажу, что вы найдёте в этой статье.

Читать дальше →
Total votes 86: ↑81 and ↓5+76
Comments34

Распределенные транзакции между RabbitMQ и MS SQL

Reading time5 min
Views18K
Для реализации асинхронного общения между двумя системами очень выгодно использовать очереди сообщений. Даже если одна из систем лежит, другая этого не замечает и спокойно продолжает слать ей сообщения, которые будут обработаны, когда вторую систему поднимут. В качестве очереди сообщений можно использовать таблицу MS SQL, но это не особо масштабируемое решение.

Однако, как только у нас появляется отдельная система для хранения очереди сообщений (мы используем RabbitMQ), сразу возникают проблемы с транзакционностью. Например, если мы хотим сохранить в БД отметку о том, что мы отправили сообщение в Rabbit, не так уж и просто гарантировать, чтобы отметка была сохранена только в случае успешной отправки сообщения. О том, как мы справлялись с этой проблемой читайте под катом.
Читать дальше →
Total votes 12: ↑11 and ↓1+10
Comments33

Распознавание физической активности пользователей с примерами на R

Reading time8 min
Views8.9K
Задача распознавания физической активности пользователей (Human activity Recognition или HAR) попадалась мне раньше только в качестве учебных заданий. Открыв для себя возможности Caret R Package, удобной обертки для более 100 алгоритмов машинного обучения, я решил попробовать его и для HAR. В UCI Machine Learning Repository есть несколько наборов данных для таких экспериментов. Так как тема с гантелями для меня не очень близка, я выбрал распознавание активности пользователей смартфонов.
Читать дальше →
Total votes 15: ↑14 and ↓1+13
Comments12

R-зубец электрокардиограммы как параметр дерева Пифагора

Reading time5 min
Views32K
image

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

Так появилось «Электрокардиографическое дерево Пифагора».
Читать дальше →
Total votes 25: ↑23 and ↓2+21
Comments30

Как создавать и зарабатывать на SaaS | Часть 17 | Персональные данные и врачебная тайна в облаке

Reading time6 min
Views9.8K
Сегодня сухой пост, написанный в ходе плотных консультаций с юристами компании Зарцин и партнеры и стартапа Dental Cloud. Добавить мне нечего, по-этому читаем и обращаемся к Людмиле Харитоновой за разъяснениями и консультациями. И внимание(!) в нем ссылки на 16 нормативно-правовых актов и предлагаю сначала сбегать за попкорном.

Кейс
Ключевой вопрос для обсуждения: «Может ли SaaS сервис передать третьему лицу на обработку и хранение данные, приравненные к врачебной тайне»? Потенциальный провайдер компания Облакотека, предоставляющая PaaS «Платформа AzuRus»
В кейсе персональные данные (ПДн), содержащие сведения о здоровье рассматриваются в кейсе, как производная от ПДн и по-этой причине речь пойдет, в т.ч. и о последних в целом.

image

Читать дальше →
Total votes 13: ↑9 and ↓4+5
Comments2

Rock Sanitize — простой и гибкий санитизатор

Reading time3 min
Views9.3K
Поговорим о Rock SanitizeВсем привет!

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

Санитизация удаляет (или экранирует) неправильные или небезопасные символы из пользовательского ввода, либо правильным образом формирует выходные данные.
Читать дальше →
Total votes 21: ↑15 and ↓6+9
Comments0

Как меняется наш уровень стресса в течение дня? Один день с Emvio на запястье

Reading time7 min
Views10K
Добрый день!



Наш проект (создание трекера эмоционального стресса Emvio) размеренно движется. Последние пару месяцев мы посвятили изготовлению и отладке прототипов. И вот один из них попал на тестирование к одному очень хорошему человеку.

Петр принимал участие на старте проекта, выполнив пару задач в части программирования (тогда Emvio был еще на стадии макета). Но после переключился на другой проект и не был в курсе последних изменений в нашем. Поэтому предложение протестировать прототип на соответствие показаний прибора внутренним ощущениям оказалось для него приятной неожиданностью. Мы получили возможность взглянуть на свое устройство свежим взглядом. А Петр — воочию увидеть, как меняется его уровень стресса в течение дня.

Итак, передаю слово автору нашего сегодняшнего поста.

Один день с Emvio или трекинг уровня стресса в действии (by petrpopov)...

Читать дальше →
Total votes 12: ↑10 and ↓2+8
Comments13

7 эффективных A/B-тестирований с приветственными письмами

Reading time11 min
Views34K
Рост популярности email-рассылок — следствие их эффективности. Чтобы использовать этот инструмент на все 100%, надо провести серьезную подготовку. Например, разобраться с тем, как приветствовать потенциального клиента. Это, оказывается, не так уж просто. Приветственные письма клиентам — залог успеха всех взаимоотношений. Текст, дизайн, время отправки и структура влияют на то, станут ли клиенты активными, купят ли еще. Ранее мы рассмотрели советы по времени, частоте, срочности, персонализации, призывам к целевому действию, в этой же статье хотим поговорить о том, как можно (и нужно!) тестировать приветственные письма. Опытом делится Питер Танхам, который имеет обширный практический опыт тестирования, которое давало результаты..
Читать дальше →
Total votes 37: ↑30 and ↓7+23
Comments2

Набор иконок Material Design от Google

Reading time1 min
Views105K


В списке самых популярных репозиториев Github за неделю на первое место вышел набор иконок Material Design, разработанный в компании Google.

Набор содержит аж 750 (!) глифов. Это пиктограммы, часто используемые в различных мобильных приложениях для воспроизведения медиа, коммуникаций, редактирования контента, установки соединения и т.д.
Читать дальше →
Total votes 66: ↑60 and ↓6+54
Comments16

Работа с COM портом в web-проекте

Reading time4 min
Views49K

Пролог


Один из клиентов нашего web-проекта захотел использовать для поиска заказов в системе сканер штрихкодов. Но, к сожалению, полностью отказался от идеи работы с ними в режиме имитации клавиатуры — только эмуляция COM-порта.
Вариантов решения было не особенно много:
  • отдельное нативное приложение, которое бы отправляло запрос на наш сервер, а сервер бы отдавал команду в браузер
  • работа с COM портом непосредственно из браузера

К счастью, есть способ решения проблемы вторым путём.

Читать дальше →
Total votes 52: ↑51 and ↓1+50
Comments31

Видео докладов с конференции DevConf 2014

Reading time2 min
Views23K
Этим летом в Москве проходила конференция профессиональных веб-разработчиков DevConf 2014. Мы в Badoo поддерживали конференцию, выступали с докладами и сделали видео докладов, которые были интересны нашим разработчикам. Так как спикеры были «за», то мы делимся видео с нашими подписчиками.

1. «StatsCollector, или «Мама! Он и меня посчитал!»».
Старынин Валерий, PHP разработчик отдела BI, Badoo.
Доклад о том, как мы собираем статистику для каждого пользователя, обсчитываем каждое открытие страницы (и не только!), обрабатываем 120000 событий в секунду и планируем расширяться.



Читать дальше →
Total votes 60: ↑55 and ↓5+50
Comments16

Венчурные инвестиции для биения сердца

Reading time3 min
Views13K


24 сентября 2014 года канадский стартап Bionym сообщил о получении $14 млн венчурного финансирования Series A, в том числе от Ignition Partners, Relay Ventures, MasterCard и Salesforce Ventures. Спрашивается, что конкретно вызвало такую бурную активность инвесторов? Это всего лишь маленький симпатичный гаджет — браслет Nymi, со встроенным сенсором для снятия электрокардиограммы.
Читать дальше →
Total votes 29: ↑17 and ↓12+5
Comments37

Обзор Mi Band от Xiaomi

Reading time7 min
Views384K


Похоже, я стал одним из первых русских обладателей трекера активности от Xiaomi [сяо ми]Mi Band. Сегодня я сделаю анбоксинг браслета, расскажу о его функциях и личных впечатлениях. Он совместим с любым смартфоном на Android 4.3 и выше, и обладающим Bluetooth 4 LE.

Цена игрушки — 79 юаней, или приблизительно $15 USD. Девайс куплен в Китае с официального сайта производителя. Если вы еще не знаете, каких трудов стоит покупка, в конце обзора я дам ссылку. Я не занимаюсь продажей браслетов, не сотрудничаю с перекупщиками — вы и сами знаете, где можно заказать китайские девайсы.

Технические характеристики


Вот заявленные характеристики и возможности трекера и приложения для смартфона:

  • Шагомер;
  • Трекер сна;
  • Умный будильник;
  • Уведомление о поступающих звонках;
  • Счётчик калорий;
  • Работа в режиме ожидания до 30 дней;
  • Разблокировка смартфона — для владельцев устройств с прошивкой MIUIv6 (и не только);
  • Размер: 36х9х14 мм;
  • Материал: пластик, алюминий;
  • Влагозащита: IP67;
  • Аккумулятор: 41mAh;
  • Bluetooth-чипсет: Dialog BT4LE;
  • А ещё некий «военный датчик»

Читать дальше →
Total votes 62: ↑53 and ↓9+44
Comments164

Information

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