Как стать автором
Обновить
4
0

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

Отправить сообщение

Передача треков Google Analytics сторонним доменам без javascript

Время на прочтение4 мин
Количество просмотров5.5K


О чем статья?


  • О междоменном отслеживании
  • О том, что если чего-то нет в официальной документации, то это не повод печалится, а повод добавить такую возможность.

Зачем передавать?


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

Почему без javascript?


  • Если нужно выполнить редирект пользователя после обработки логики запроса на сервере.
  • Google Analytics api и так хорошо документирован, а читать копипаст документации это не уровень хабра, не так ли?

Суть метода проста. Берем все куки вида __utm и передаем их, как параметры, в урле на другой домен. Ничего не происходит. Расходимся. Добавляем последним параметром __utmk, который является особым хешем всех остальных кук гугл аналитики. Поздравляю мы сделали, то что делаем функция _link в известном файле ga.js от Google Analytics.
И так если у вас переход на другие сайты обрабатывал контроллер, то вам не надо во все ссылки добавлять конструкцию вида:

onclick="_gaq.push(['_link', 'https://www.payment-system.com?contractId=example']); return false;"


Если нужны исходники формирования хеша для ключа utmk, прошу в github.
Далее история о процессе получения данного метода.

Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии0

Рекомендательные системы: LDA

Время на прочтение3 мин
Количество просмотров31K
В прошлый раз я рассказывал о теореме Байеса и приводил простой пример – наивный байесовский классификатор. В этот раз мы перейдём к более сложной теме, которая развивает и продолжает дело наивного байеса: мы научимся выделять темы при помощи модели LDA (latent Dirichlet allocation), а также применим это к рекомендательным системам.


Читать дальше →
Всего голосов 14: ↑13 и ↓1+12
Комментарии7

Истинное могущество регулярных выражений

Время на прочтение16 мин
Количество просмотров94K
Как частый посетитель тэга PHP на StackOverflow, я очень часто встречаю вопросы о том, как распарсить какие-то конкретные аспекты HTML, используя регулярные выражения. Самый распространённый ответ на это:
«Ты не можешь парсить HTML с помощью регулярных выражений, потому что HTML не является регулярным. Используй XML парсер, и будет тебе счастье»

Это утверждение — в контексте вопроса — находится где-то между сильно вводящим в заблуждение и абсолютно неправильным. Что я хочу попытаться продемонстрировать в этой статье, так это то, насколько могущественны современные регулярные выражения на самом деле.
Читать дальше →
Всего голосов 182: ↑172 и ↓10+162
Комментарии39

Tolstoy Startup Camp: как Яндекс учит делать свой бизнес

Время на прочтение8 мин
Количество просмотров33K
Однажды в студёную майскую пору обычным рабочим утром я читал Хабр. В тот день здесь появился пост от Яндекса о том, что в скором времени начнётся мероприятие по выращиванию стартапов с нуля — тогда оно было летнее и называлось Tolstoy Summer Camp. Прочитав детали мероприятия, я ещё подумал: «Два месяца? Серьёзный подход. Где-то в тридцать раз более серьёзный, чем в среднем по стартап-рынку».

Меня зовут Александр Янковский, и среди 12 готовых прототипов в финале прошлого Tolstoy Camp и трёх, которые получили инвестиции и поддержку Яндекса, был и мой проект Speaking Mind — агрегатор новостей, который умеет их зачитывать. Сегодня я хочу рассказать о своём личном опыте на Tolstoy Camp, что мне дали эти два месяца, и почему это стоит внимания.

Сразу признаюсь, что поводом для этого поста стало то, что сегодня Яндекс объявляет о наборе в новый Tolstoy Startup Camp — мастерскую для тех, кто хочет научиться создавать, разрабатывать и запускать стартапы. Как и в прошлом году, Яндекс ждёт заявки от разработчиков, дизайнеров и менеджеров. Никаких требований к образованию, опыту или месту, где вы живёте, нет, а иногородним оплачивает проживание в Москве. В этот раз занятия будут проходить весной — с 3 марта по 25 апреля. Если готовы участвовать, заполняйте анкету и приступайте к тестовому заданию.

image

Итак, постараюсь рассказать о том, как я стал участником кэмпа и что он мне дал.
Читать дальше →
Всего голосов 82: ↑69 и ↓13+56
Комментарии54

Вычисление фрактальной размерности Минковского для плоского изображения

Время на прочтение10 мин
Количество просмотров98K
Доброго времени суток читатель. Сегодняшний пост будет посвящен вычислению приближенного значения фрактальной размерности плоского изображения, которая тесно связано с размерности Минковского. Это интересно как минимум по двум причинам. Во-первых оказывается, что размерность ограниченного множества в метрическом пространстве может быть не только целым числом, но и любым неотрицательным. Во-вторых значение размерности контура изображения (а это ограниченное множество в метрическом пространстве) является хорошим признаком. В рамках сегодняшнего поста не предусмотрено исследование робастности этого признака, но давайте рассмотрим показательный пример. Множество различных характеристик клеток опухолей молочной железы, полученное в результате анализа снимков тонкоигольной пункционной биопсии. Множество данных состоит из 30 признаков (поля таблицы) с пометкой злокачественная или доброкачественная опухоль, и одним из признаков является как раз фрактальная размерность ядер клеток опухоли. Под катом вас ждет объяснение смысла фрактальной размерности множества, по возможности доступным языком, алгоритм вычисления приближенного значения этой размерности, его реализация на c# и ряд примеров с картинками. Возможно вы открыли этот пост только из-за картинки справа, это изображение я позаимствовал из инстаграмма Jennifer Selter, и в конце мы вычислим фрактальную размерность, так сказать филейной части Дженифер. Хочется кстати вас попросить ответить на пару вопросов в конце поста.

Читать дальше →
Всего голосов 128: ↑116 и ↓12+104
Комментарии41

Извлечение «знаний» или классификация в один if

Время на прочтение23 мин
Количество просмотров10K

В статье мы постараемся классифицировать злокачественную опухоль груди от доброкачественной основываясь на наборе данных взятом отсюда. Как бы странно не звучало, но точность не будет главным приоритетом в этот раз, так как уже есть довольно хорошие решения с упором именно на точность, что и понятно, ведь от данных тестов зависит жизнь человека. Например в 2012 году Бриттани Венгер победила в конкурсе Google Science Fair с проектом cloud4cancer.appspot.com, который был обучен именно по выше указанному набору.
Читать дальше →
Всего голосов 35: ↑20 и ↓15+5
Комментарии19

Нечеткий динамический текстовый поиск? Не так уж и страшно

Время на прочтение19 мин
Количество просмотров13K
Владимир Румянцев - приключения Питерского... кота
Существует устойчивое мнение, что нечеткий поиск в динамике (онлайн)
малодоступен в силу своей невероятной сложности.
Далее мы будем развеивать это досадное заблуждение и покажем,
что построить свою собственную поисковую систему со сносной производительностью
на не таких уж и маленьких данных доступно каждому.
Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии14

Состоялся релиз Piwik 2.0

Время на прочтение1 мин
Количество просмотров23K
image

Отличная новость для вебмастеров и владельцев сайтов. Вчера вышел релиз веб-аналитики Piwik под версией 2.0 — свободной альтернативы Google Analytics.
Читать дальше →
Всего голосов 45: ↑44 и ↓1+43
Комментарии16

Веб-аналитика: Не все цифры одинаково полезны

Время на прочтение5 мин
Количество просмотров23K
Нас всё время спрашивают: какова погрешность сбора данных в Google Analytics? Какому счетчику лучше доверять? Нельзя ли избавиться ото всех несовпадений и получить точные цифры посещаемости?
Мы всегда отвечаем: погрешность обычно около 10%, явного лидера по точности нет, убрать все ошибки невозможно — так уж устроена технология.
Практически никто не понимает, что неточный сбор данных — это не единственная ошибка, влияющая на результат анализа. Даже идеально собранные данные не позволят нам точно подсчитать нужные показатели на сайте (прежде всего, процент конверсии). Собранных данных может быть недостаточно! Это понимает каждый: если на сайт пришли всего 15 посетителей и ни один из них не заполнил форму заявки на кредит, о конверсии говорить рано. Так подсказывает нам здравый смысл; но в какой момент можно сказать, что данных хватает? Ждать ли еще 100 посещений? 200? 500?
Читать дальше →
Всего голосов 27: ↑27 и ↓0+27
Комментарии6

Основы SQL на примере задачи

Время на прочтение6 мин
Количество просмотров684K
В этом руководстве мы рассмотрим основные sql команды на примере небольшой задачи. При прочтении желательно сидеть за консолью mysql и вводить все запросы для большей наглядности.

Постановка задачи


Дана база данных, в ней 3 таблицы следующего вида:




table1: user_id (INT(5), PRIMARY KEY), username (VARCHAR(50), INDEX)
table2: phone_id (INT(5), PRIMARY KEY), user_id (INT(5), INDEX), phone_number (INT(10), INDEX)
table3: room_id (INT(5), PRIMARY KEY), phone_id (INT(5), INDEX), room_number(INT(4) INDEX)

Необходимо выбрать номер комнаты в которой сидит пользователь с ником qux…
Читать дальше →
Всего голосов 72: ↑42 и ↓30+12
Комментарии42

Список Javascript библиотек для рисования графиков и диаграмм

Время на прочтение1 мин
Количество просмотров22K
О визуализация графов в вебе говорили здесь, навеяно этой статьей.

Под катом обзор JavaScript библиотек для рисования графов, диаграмм и прочей красоты.
Читать дальше →
Всего голосов 93: ↑89 и ↓4+85
Комментарии36

Латентно-семантический анализ

Время на прочтение4 мин
Количество просмотров98K
Как находить тексты похожие по смыслу? Какие есть алгоритмы для поиска текстов одной тематики? – Вопросы регулярно возникающие на различных программистских форумах. Сегодня я расскажу об одном из подходов, которым активно пользуются поисковые гиганты и который звучит чем-то вроде мантры для SEO aka поисковых оптимизаторов. Этот подход называет латентно-семантический анализ (LSA), он же латентно-семантическое индексирование (LSI)

Латентно-семантический анализ

Читать дальше →
Всего голосов 104: ↑101 и ↓3+98
Комментарии27

Ранжирование в Яндексе: как поставить машинное обучение на поток (пост #1)

Время на прочтение6 мин
Количество просмотров51K
Сегодня мы начинаем публиковать серию постов о машинном обучении и его месте в Яндексе, а также инструментах, которые избавили разработчиков поисковой системы от рутинных действий и помогли сфокусироваться на главном — изобретении новых подходов к улучшению поиска. Основное внимание мы уделим применению этих средств для улучшения формулы релевантности, и более широко — для качества ранжирования.

image
Читать дальше →
Всего голосов 63: ↑56 и ↓7+49
Комментарии53

Новый алгоритм Disney Research способен превращать 2D фотографии в 3D-модели

Время на прочтение2 мин
Количество просмотров32K
image
В Disney Research было разработано приложение, способное строить 3D-модели из обычных фотографий. Благодаря оригинальному алгоритму, программа способна из нескольких сотен изображений строить трехмерные модели сложных сцен прямиком из реальной жизни, и поэтому обещает стать полезным средством для создания фильмов, игр и моделей для 3D-принтеров.

Само построение 3D-модели из нескольких двумерных изображений, которые запечатлели объект с разных ракурсов, уже давно не в новинку, — но вот создание высоко детализированных окружений в большом разрешении оказалось трудной задачей из-за необходимости обрабатывать большое количество данных. Заслуга Disney Research в том, что созданный ими алгоритм умеет эффективно распоряжаться подобными масштабами данных, обрабатывая их без необходимости держать все данные в памяти одновременно.
Читать дальше →
Всего голосов 54: ↑46 и ↓8+38
Комментарии24

Окрашивание изображений

Время на прочтение2 мин
Количество просмотров57K

Здравствуй, Хабрахабр. Сегодня мы будем раскрашивать.
Что здесь будет? Будет поиск цветного изображения со схожими цветами по черно-белому и метод переноса цвета с первого на второе.
Читать дальше →
Всего голосов 120: ↑120 и ↓0+120
Комментарии60

Базы знаний. Часть 1 — введение

Время на прочтение5 мин
Количество просмотров67K
Одной из причин слабого использования Linked Data-баз знаний в обычных, ненаучных приложениях является то, что мы не привыкли придумывать юзкейсы, видя перед собой только данные. Трудно спорить с тем, что сейчас в России производится крайне мало взаимосвязанных данных. Однако это не значит, что разработчик, создающий приложение для русскоязычной аудитории совсем уж отрезан от мира семантического веба: кое-что всё-таки у нас есть.
image
Основными источниками данных для нас являются международные базы знаний, включающие русскоязычный контент: DBpedia, Freebase и Wikidata. В первую очередь это справочные, лингвистические и энциклопедические данные. Каждый раз когда вам в голову приходит мысль распарсить кусочек википедии или викисловаря — ущипните себя как следует и вспомните о том, что всё, что хранится в категориях, инфобоксах или таблицах, уже распарсено и доступно через API с помощью SPARQL или MQL-интерфейса.

Я попробую привести несколько примеров полезных энциклопедических данных, которые вы не найдете нигде, кроме Linked Data.

Эта статья — первая из цикла Базы знаний. Следите за обновлениями.


Читать дальше →
Всего голосов 69: ↑66 и ↓3+63
Комментарии29

Galileo — первый Arduino-совместимый микрокомпьютер на платформе Intel. Уже в продаже!

Время на прочтение1 мин
Количество просмотров66K
Начались продажи микроконтроллерной карты Galileo на базе процессора Intel Quark X1000. Intel Galileo полностью совместим с картами Arduino как с точки зрения ПО, так и по распиновке (все цифровые и аналоговые разьемы находятся на тех же местах, что и у Arduino Uno R3). Кроме того, Galileo имеет на борту ряд популярных цифровых интерфейсов: полноразмерный слот mini-PCI Express, порт 100Mb Ethernet, слот Micro-SD, последовательный порт RS-232, USB хост и клиент, а также 8Мб NOR флеш.
Читать дальше →
Всего голосов 35: ↑31 и ↓4+27
Комментарии61

Управленческие инструменты: Как играть в нелинейные шахматы

Время на прочтение7 мин
Количество просмотров68K
Менеджмент, на мой взгляд, сильно похож на шахматы. Ты изучаешь методологии, ходишь на тренинги (то есть, изучаешь дебюты, принципы миттельшпиля и эндшпиля), готовишься, рисуешь план и… начинаешь игру!

Разворачиваешь свои войска: пешки двинулись вперед, кони подтягиваются, слоны занимают диагонали. И тут к тебе подходит ферзь (тим лид) и говорит “Знаешь, старик, я, наверное, буду увольняться… Чего-то совсем меня все достало.” И через две недели сходит с доски.

Нападает небольшая растерянность: а че делать? В дебютах не писали про внезапное увольнение ферзей…

Идем к начальству. Там нас ждет знакомая песня: “Сейчас бюджета нет, ты давай там как-то коней помотивируй…“ А ты понимаешь, что мотивированный конь — это не совсем ферзь. Он продолжает действовать как конь, только у него глаза начинают гореть.

Или: “Мы тебе можем нанять три пешки, ты их там поментори и через шесть ходов они вполне могут стать ферзями.” А ты понимаешь, что через 6 ходов тебя уже закопают вместе с проектом.

Нелинейные шахматы. Причем со всей этой бандой ты как менеджер должен выдавать какие-то ожидаемые результаты…

К сожалению (и к счастью) у людей появляется интерес и пропадает интерес, рождаются дети, случаются разводы — и это все неминуемо сказывается на мотивации человека, и как следствие, его производительности.

Можем ли мы как менеджеры повлиять на нелинейность человека, про которую так много писал Алистер Коберн в своей программной статье [1]? На что-то можем, на что-то нет. Но мы абсолютно точно можем отслеживать состояние человека, используя ряд инструментов. Об одном из них сегодня и поговорим.

Вы сможете использовать этот инструмент как для оценки собственной мотивации, так и для оценки состояния своих сотрудников (а это вещи связанные, об этом мы тоже поговорим). Итак, поехали!

Читать дальше →
Всего голосов 28: ↑24 и ↓4+20
Комментарии19

Управленческие инструменты: 5 вопросов для прояснения целей или для чего нужен BMW X5?

Время на прочтение7 мин
Количество просмотров113K
Давным давно в одной из компаний, лидере мирового производства микропроцессоров, меня однажды поразила менеджерская напасть. Решил, знаете ли, заняться развитием сотрудников. (Периодически, такое с менеджерами случается, да.)

Подхожу к своему сотруднику — назовем его Серега:

— Серега, — говорю, — ты в какую сторону вообще хочешь развиваться: в техническую или в менеджерскую?

— Сань, ну голова варит уже не очень, возраст… (Серега старше меня на 3 года) Поэтому, наверное, в менеджерскую.


Ну, в менеджерскую — так в менеджерскую. Я ж на тот момент был менеджер опытный, уже 4 года опыта! Энергии много, желания помочь людям — через край!

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

А кончилось все тем, что пришлось нам с Серегой расставаться. Как так получилось, где Серега в итоге реализовал себя, и какой правильный управленческий инструмент я мог бы тогда применить — об этом сегодня и поговорим.

Заодно поговорим, что делать, если вы обнаружили себя и/или своих сотрудников в квадрате C в статье:

Читать дальше →
Всего голосов 133: ↑115 и ↓18+97
Комментарии56

Алгоритм энергосбережения на практике

Время на прочтение4 мин
Количество просмотров42K

От автора


Это моя первая статья — жду конструктивной критики, мнений, замечаний, вопросов.

Предисловие


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

Что имеем




Был разработан радио-модуль на «борту» которого: «мозг» — atmega128rfa1, со встроенным радиопередатчиком и датчик температуры FM75. Питается устройство от 1-ой батарейки CR2032 (3.3 В, ~200 мА*час).
Читать дальше →
Всего голосов 29: ↑28 и ↓1+27
Комментарии16

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

Systems Analyst, Web Analyst
SQL
Python
Docker
Linux
Git
JavaScript
PowerBi
Web analyst
Data Analysis
DWH