Как стать автором
Обновить
3
0
Роман @promka

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

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

Веб-аналитика: анализируй это! Часть 2. Сбор данных

Время на прочтение5 мин
Количество просмотров18K
Перед тем, как анализировать данные статистики, нужно понимать, как они были собраны, какие из них могут быть неточными, и почему.

Сервер в интернете получает от браузера пользователя запросы и отдает данные. На каждый просмотр страницы сервер получает один запрос (на тело страницы), а затем несколько дополнительных (картинки, скрипты, таблицы стилей и другие дополнительные данные для отображения страницы). Скрипты на странице также могут генерировать запросы к серверу — в том числе, к отдельному серверу статистики.
Читать дальше →
Всего голосов 34: ↑28 и ↓6+22
Комментарии24

Веб-аналитика: анализируй это! Часть 1. Вступление

Время на прочтение3 мин
Количество просмотров27K
Часть 1. Вступление.
Часть 2. Сбор данных.
Часть 3. Базовые метрики.
Часть 4. От статистики к аналитике
Часть 5. Разделяй и думай
Часть 6. Action!
Счетчики посещаемости знакомы всем пользователям интернета уже много лет. Многие владельцы сайтов ставят сразу несколько иконок разных счетчиков, и день за днём цифры на них растут и всё больше радуют хозяина.



Далеко не все знают, какую информацию можно извлечь из статистики сайта, кроме цифр посещаемости и, иногда, источников посетителей. Однако, современные системы статистики предоставляют куда больше возможностей для подсчета, обработки и анализа данных посещаемости. Их даже стали по-другому называть: «инструменты веб-аналитики»!

Сейчас большинство успешных коммерческих сайтов уделяет огромное внимание сбору и анализу статистических данных. В частности, крупнейший международный онлайн-магазин Amazon.com создал целый культ аналитики.
Читать дальше →
Всего голосов 48: ↑42 и ↓6+36
Комментарии39

Getters & Setters в Javascript

Время на прочтение9 мин
Количество просмотров29K
Много людей знают, что такое getter'ы и setter'ы во многих языках программирования. Есть эти чудесные штуки и в JavaScript, хоть узнал я об этом совсем недавно (темень я необразованная). Речь пойдёт не только и не столько про методы getSomeProperty()/setSomeProperty(...), а про более интересную реализацию — псевдо-аттрибуты, при изменении которых будут вызываться функции-обработчики.

Дальше...
Всего голосов 73: ↑67 и ↓6+61
Комментарии26

Что такое транзакционная память и чем она полезна

Время на прочтение2 мин
Количество просмотров6K
По мере того, как многоядерные процессоры получают все большее и большее распространение, умение писать программы, использующие все доступные процессоры становится все более и более важным. Давайте рассмотрим то, почему существующие широко используемые средства написания программ для многоядерных процессоров не достаточно хорошее решение, что такое транзакционная память, и как она решает указанную проблему.
Читать дальше →
Всего голосов 44: ↑41 и ↓3+38
Комментарии21

Партиционирование таблиц в mySQL

Время на прочтение4 мин
Количество просмотров183K
Начиная с версии 5.1 mySQL поддерживает горизонтальное партицирование таблиц. Что это такое? Партиционирование (partitioning) — это разбиение больших таблиц на логические части по выбранным критериям.. На нижнем уровне для myISAM таблиц, это физически разные файлы, по 3 на каждую партицию (описание таблицы, файл индексов, файл данных). Для innoDB таблиц в конфигурации по умолчанию – разные пространства таблиц в файлах innoDB (не забываем, что innoDB позволяет настраивать индивидуальные хранилища на уровне баз данных или даже конкретных таблиц).

Как это выглядит?

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

Анализ рыночной корзины и ассоциативные правила

Время на прочтение3 мин
Количество просмотров29K
В продолжении темы о Data Mining поговорим о том, с чего все начиналось. А начиналось все с анализа рыночной корзины (market basket analysis).

Из глоссария BaseGroup:

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

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

Читать дальше →
Всего голосов 35: ↑31 и ↓4+27
Комментарии11

The Tucan Project

Время на прочтение1 мин
Количество просмотров1.1K
Есть Universal Share Downloader — www.dimonius.ru/?usd

Аналог этого дела под линукс The Tucan Project — tucaneando.com/index-en.html

Tucan Manager is a free and open source software designed for automatic management of downloads and uploads at hosting sites like rapidshare or megaupload.

Main Features:

* Written entirely in Python.
* Multiplatform (GNU/Linux, FreeBSD, Microsoft Windows…).
* Easy to expand with plugins.
* Lightweight and fast.
* Premium accounts support.
* Captcha recognition where needed.
* Management of interchangeable links.

для убунту брать тут: www.getdeb.net/app/Tucan
Всего голосов 14: ↑6 и ↓8-2
Комментарии3

Отличная идея: цветовая индикация ввода пароля

Время на прочтение1 мин
Количество просмотров1.9K
Разработчик Mattt Thompson предложил, на мой взгляд, очень оригинальную и интересную идею цветовой индикации ввода пароля в поля формы. Для введенного пароля считается хэш который представляется в виде трех цветных полосок рядом с полем ввода пароля. Таким образом, во-первых, производится валидация повторного ввода пароля. А во-вторых и это самое главное, зная свой цветовой код вы сможете сразу узнать ошиблись вы или нет при первом вводе пароля.


Более подробно о идее в блоге автора. Попробовать идею на живом примере можно здесь.
Плагин для jQuery с реализацией идеи github.com/mattt/Chroma-Hash доступен по лицензии MIT.

PS: НЛО! Введи такую фичу на Хабре, поддержи оригинальную идею!
Всего голосов 181: ↑148 и ↓33+115
Комментарии101

Чеклист запуска сайта

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

Этот чеклист будет полезен всем, кто запускает сайты или следит за этим увлекательным процессом. Ничего не пропустите!
Читать дальше →
Всего голосов 168: ↑140 и ↓28+112
Комментарии70

Бизнес кейсы использования Data Mining. Часть 1

Время на прочтение3 мин
Количество просмотров13K
Привет, хабр.
Очень рад, что тема Data Mining интересна сообществу.

В данном топике (а если понравится, — в серии топиков) расскажу, какие примеры использования Data Mining есть в Российском и не только бизнесе. Почему я пишу об этом? Я работаю в компании, которая тесно связана с ВЦ РАН (Вычислительный центр Российской академии наук), что позволяет нам иметь отличный научно-исследовательский отдел и разрабатывать новые проекты, применяя отечественные достижения в математике. В данном топике будет больше бизнеса, чем науки, но если последняя все же вас интересует, тогда вам сюда: mmro.ru или сюда: www.machinelearning.ru

Итак, поехали:
Читать дальше →
Всего голосов 44: ↑44 и ↓0+44
Комментарии70

Сортировка больших объёмов данных, реализация на Java

Время на прочтение15 мин
Количество просмотров17K
Недавно на Хабре была статья Сортировка миллиона 32-битных int'ов в 2 мегабайтах памяти на Питоне. Заинтересовался, попробовал реализовать на Java.

Конечно, 32 строчки не получилось. Получилось 235.
Но мне показалось, что результат вполне можно использовать в качестве первого поста — не судите строго ;)
Читать дальше →
Всего голосов 14: ↑9 и ↓5+4
Комментарии14

Защита пользователей почтового сервера от спаммеров — несколько шагов, которые помогут вам отослать спаммеров подальше

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

Здравствуйте, Хабровчане!

Хочу внести свою лепту в общую историю борьбы со спаммерами.
Все вы прекрасно знаете (ощущали), как противно бывает, когда ваш почтовый ящик завален кучей писем, содержащих всякий хлам, а по-простому спам. Я не говорю о бесплатных сервисах, я говорю о корпоративной почте.

Читать дальше →
Всего голосов 52: ↑41 и ↓11+30
Комментарии72

Обзор способов вывода электронных денег в России

Время на прочтение5 мин
Количество просмотров64K
Вступление

Тема весьма избитая, уж что только нам не предлагают всяческие обменники и операторы денежных переводов… Но всё же. В этой статье приведён мой личный опыт и частное субъективное мнение касательно существующих вариантов. Статья не зациклена на одной конкретной системе, приведены различные варианты.
Читать дальше →
Всего голосов 70: ↑64 и ↓6+58
Комментарии114

DNS Tunneling via iodine: сыр действительно бесплатный

Время на прочтение3 мин
Количество просмотров26K
Есть:
— отключенный за неуплату интернет (adsl, lan, etc)
или
— нешифрованная wi-fi сеть c закрытым интернетом, но работающим dns
или
— очень строгий firewall с открытым dns

Хочется:
полноценный интернет, пусть даже очень медленно
Как?
Всего голосов 85: ↑78 и ↓7+71
Комментарии70

Алгоритмы на графах — Часть 0: Базовые понятия

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

Вступление


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

Читать дальше →
Всего голосов 130: ↑118 и ↓12+106
Комментарии70

pv — маленькая, но очень полезная утилита

Время на прочтение2 мин
Количество просмотров83K
Один мой друг сказал по поводу pv следующее «Я админю семь лет, мне нужна была эта тулза десятки раз, а я даже не знал что она существует». В размышлениях над тем как заполучить инвайт на Харбе, я набрал в поиске pv. И ничего не нашел.
Читать дальше →
Всего голосов 290: ↑280 и ↓10+270
Комментарии94

Извлечение данных или знаний?

Время на прочтение3 мин
Количество просмотров11K
Приветствую!

Стало любопытно, насколько представлена тема Data Mining на хабре. Увидел лишь одну статью, посвященную данной тематике. Хочу сделать свой небольшой вклад в развитие данной темы.

Исторически сложилось, что у термина Data Mining есть несколько вариантов перевода:
  • извлечение данных
  • извлечение знаний, интеллектуальный анализ данных

Если говорить о способах реализации, то первый вариант относиться к прикладной области, второй — к математике и науке, и, как правило, они мало пересекаются. Если говорить о возможности применения — тут вариантов очень много. Так получилось, что я работал как с первым вариантом (в университете — научная работа), так и с другим (работа, фриланс). Рассмотрим подробнее.

Извлечение данных


Извлечение данных — это процесс нахождения, сбора информации, а также сохранения (конвертация) их в разных форматах. По простому, программы для извлечения данных называют парсерами (parser), граберами (grabber), спайдерами (spider), кроулерами (crawler) и т.д. Фактически, такие программы существенно облегчают всем жизнь, так как позволяют систематизировать данные (именно данные, а не знания!). Такие программы могут собирать адреса компаний в вашей отрасли, ссылки из нужных форумов, парсить целые каталоги, также могут служить отличным средством для составления баз данных.

Читать дальше →
Всего голосов 59: ↑57 и ↓2+55
Комментарии30

Парсим URL

Время на прочтение25 мин
Количество просмотров67K
Хочу поделиться одной полезной утилиткой, написанной на pure JavaScript, — URL. По сути это небольшой парсер URL'ов, работающий почти как window.location, но не перезагружающий страницу браузера при манипуляциях.

А заодно скажу пару слов про getters & setters в JavaScript.

UPD1: по просьбам трудящихся, вынесу сюда примеры:
// Пусть текущий URL = 'http://my.site.com/somepath/'
var u = new URL('relative/path/index.html')
u.href // my.site.com/somepath/relative/path/index.html
u.href = '/absolute/path.php?a=8#some-hash'
u.href // my.site.com/absolute/path.php?a=8#some-hash
u.hash // #some-hash
u.protocol = 'https:'
u.href // my.site.com/absolute/path.php?a=8#some-hash
u.host = 'another.site.com:8080'
u.href // another.site.com:8080/absolute/path.php?a=8#some-hash
u.port // 8080
// и так далее, и тому подобное

* This source code was highlighted with Source Code Highlighter.

Работает в FF3+ (может и в 2+, не пробовал) и в IE6+ ( и это — моё ноу-хау :-) ).
Разобрана в статье также полностью кросс-браузерная реализация, но в использовании — немного более громоздкая:
// Пусть текущий URL = 'http://my.site.com/somepath/'
var u = new URL('relative/path/index.html')
u.href() // my.site.com/somepath/relative/path/index.html
u.href('/absolute/path.php?a=8#some-hash')
u.href() // my.site.com/absolute/path.php?a=8#some-hash
// и т.д.

* This source code was highlighted with Source Code Highlighter.


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

Прошу под кат...
Всего голосов 142: ↑128 и ↓14+114
Комментарии81

Как написать слово в поле для пароля так, что бы его было видно?

Время на прочтение6 мин
Количество просмотров4.5K
Написать эту статью меня натолкнуло общение с администратором сайта одного из футбольных клубов российской Премьер-лиги. Надеюсь, что он ее прочитает и воцарит сие в жизнь.

Сейчас стало очень модно делать формы, в которых заголовок поля для ввода написан в самом поле. Например так:


Но как в таком случае быть с полем для ввода пароля? Ведь он заменяет дефолтное значение на звездочки.
В этом посте я решил рассмотреть несколько вариантов, как сделать поле для пароля со звездочками, но что бы слово «пароль» было видно.
Читать дальше →
Всего голосов 49: ↑25 и ↓24+1
Комментарии29

Реализация паттерна декоратор на JS

Время на прочтение10 мин
Количество просмотров6.5K
Суть паттерна в том, что есть класс с фактической функциональностью (компонент) и опциональными классами-обертками, которые дополняют основной функционал (декораторы). А фишка в том, что декораторов может быть сколько угодно, совмещаться они могут в произвольном порядке и (поскольку требуют от компонента только интерфейса) — могут работать с разными компонентами.

Безусловно, реализовать что-то похожее можно даже за счет только лишь того, что функции в JS являются объектами первого уровня, но мне бы хотелось поделиться реализацией весьма близкой к ГОСТу GoF'у.

UPD: ссылка на рабочий пример, спасибо Barttos.

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

Читать дальше →
Всего голосов 46: ↑39 и ↓7+32
Комментарии97

Информация

В рейтинге
Не участвует
Откуда
Владимир, Владимирская обл., Россия
Дата рождения
Зарегистрирован
Активность