Search
Write a publication
Pull to refresh
86
0
Igor Korsakov @Urn

Software Engineer

Send message

Полная визуализация интернет-аналитики

Reading time4 min
Views6.2K
Приступая к этим заметкам, пересмотрел хрестоматийный ролик «1984», которым компания Apple в свое время ярко противопоставила себя миру серости и занудства, под которым тогда подразумевались персональные компьютеры IBM.
Именно такие ассоциации порождает стартап Webvisor (Вебвизор). Он предлагает не просто принципиально новый подход к интернет-аналитике. Среди всех подобных систем он выделяется яркостью и наглядностью, противопоставляющими себя определенному занудству отчетов интернет-счетчиков, хотя бы и не похожих на Большого Брата. Подход WebVisor основан на детальном визуальном анализе поведения каждого посетителя.

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

Как заставить пользователя читать страницу до конца

Reading time3 min
Views2.2K
stop sign illustrationВсем нам знакомо правило первого экрана гласящее «Пользователь не прокручивает страницу, поэтому вся информация должна быть на верху», основано оно на том, что пользователь не использует полосы прокрутки, потому что ему лень.
Ребята в компании cxpartners (Великобритания, Бристоль) решили проверить это утверждение и провели исследование, представляю перевод их отчёта.
Читать дальше →

Какие бывают META теги и зачем они нужны

Reading time7 min
Views267K

META-теги


В продолжении первого поста про DOCTYPE, я, как и обещал, продолжу про META теги. 
META-теги — это необязательные атрибуты, размещенные в заголовке страницы, которые могут содержать ее описание, ключевые слова к ней, информацию об авторе, управляющие команды для броузера и поисковых роботов, и прочую служебную информацию, не предназначенную для посетителей.
 

META-теги имеют два возможных атрибута


— <META HTTP-EQUIV="имя" CONTENT="содержимое">
— <META NAME="имя" CONTENT="содержимое">
META-теги должны находиться в заголовке HTML-документа между <HEAD> и </HEAD> (особенно это важно для документов, использующих фреймы).

Стандартом HTML 4.01 значения и имена мета-тегов НЕ оговариваются, поэтому мы будем рассматривать те значения, которые уже устоялись в интернете и используются чаще других.
подробнее о META тегах

Азбука WEB-разработчика

Reading time4 min
Views13K
Небольшой список, самых, на мой взгляд, полезных сайтов для любого WEB-разработчика, интересующегося сферой веб дизайна, верстки и программирования. Думаю каждый среди этого списка найдет для себя сайты, которые надолго войдут в его ленту RSS.

AA List Apart




A List Apart содержит лучшие советы и мнения от лидирующих умов индустрии.
Читать дальше →

Feature Driven Development для веб-разработчиков

Reading time4 min
Views13K
Лет 10 назад веб-проекты по большей части были статическими, а технологический процесс порой — прост до безобразия. Теперь грань между веб-приложениями и настольными приложениями стирается, функциональная сложность веб-проектов растет. Это диктует новые требования к веб-разработке. Обычная ситуация нынче, в эпоху «удиви меня 2.0», — когда проект долгосрочный, в нем задействовано множество специалистов (и не специалистов также), щедро орошающих многострадальный product backlog новыми идеями и целями, как до начала разработки, так и после. Как вы понимаете, цели и истории мутируют, а вместе с ними и задачи. Предварительная оценка по времени теряет свою целесообразность. И т.д. и т.п. Очевидно, нужна специальная методология разработки. Можно попробовать приобщиться к Rational Unified Process (RUP) или Process Mentor. Однако, не стоит. Среди столь популярных ныне Agile методик имеется то, что нам надо — Feature Driven Development (FDD).
Читать дальше →

Прогрессивные технологии, как способ выжать из сервера максимум

Reading time5 min
Views12K

Вступление


Просто красивый rrdtool =)
Забавно, но когда программист разрабатывает какой-либо продукт, он редко задумывается над вопросом могут ли на одну кнопку в один момент времени нажать одновременно 2000 человек. А зря. Оказывается могут. Как ни странно но большинство движков, написанных такими программистами, очень плохо ведут себя под большими нагрузками. Кто бы подумал, а всего один лишний INSERT, не проставленный index, или кривая рекурсивная функция могут поднять load averages чуть ли не на порядок.

В этой статье я опишу как мы, разработчики проекта, сумели выжать из одного сервера с Pentium 4 HT / 512Mb RAM, максимум, держа одновременно 700+ пользователей на форуме и 120,000 на трекере. Да, проект этот — торрент трекер. Предлагаю сразу оставить в стороне разговоры о копирайтах и правах, мне это не интересно, что действительно интересно — это HighLoad.
читать дальше

Индексы в MySQL: многоколоночные индексы против комбинированных индексов

Reading time9 min
Views121K
Я часто вижу ошибки, связанные с созданием индексов в MySQL. Многие разработчики (и не только новички в MySQL) создают много индексов на тех колонках, которые будут использовать в выборках, и считают это оптимальной стратегией. Например, если мне нужно выполнить запрос типа AGE=18 AND STATE='CA', то многие люди просто создадут 2 отдельных индекса на колонках AGE и STATE.

Намного лучшей (здесь и далее прим. переводчика: а обычно и единственной верной) стратегией является создание комбинированного индекса вида (AGE,STATE). Давайте рассмотрим почему это так.

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

Zend Framework: подключаем OpenID

Reading time8 min
Views2.1K
В своем проекте (Вопросы и ответы для программистов) на Zend Framework мне стало необходимо подключить OpenID и после часа работы я успешно подключил стандартный зендовский сервис. Думаю класс, как легко и удобно(как и все в зенде), но как оказалось этот сервис не работает с OpenId 2.0, да — он просто не дописан.

Немного порывшись в исходниках я это подтвердил — Consumer.php * todo OpenID 2.0 (7.3) XRI and Yadis discovery
Потом посмотрел по багтрекеру и оказалось что это весит уже давно(очень) и никто не спешит доделывать. Тогда я и начал искать альтернативу. Выбор попал на openidenabled.com/php-openid.

Далее приведу пример, который позволит тем кто еще только собирается подключать сделать это минут за 15.
Читать дальше →

Сервер на стероидах: FreeBSD, nginx, MySQL, PostgreSQL, PHP и многое другое

Reading time16 min
Views40K
Нравится мне эта картинка, у меня, вот никогда такие красивые графики в какти не получались =(

Введение


С момента написания мной предыдущей статьи по оптимизации этой связки прошло довольно много времени. Тот многострадальный Pentium 4 c 512Мб памяти, обслуживающий одновременно до тысячи человек на форуме и до 150,000 пиров на трекере уже давно покоится на какой-нить немецкой, свалке, а клуб сменил уже не один сервер. Всё сказанное в ней всё ещё остаётся актуальным, однако есть вещи которые стоит добавить.
Статья большая, так что будет поделена на логические блоки:

0. Зачем вообще что-то оптимизировать?
  
1. Оптимизация ОС (FreeBSD)
  1.1 Переход на 7.х 
  1.2 Переход на 7.2
  1.3 Переход на amd64
  1.4 Разгрузка сетевой подсистемы
  1.5 FreeBSD и большое кол-во файлов
  1.6 Softupdates, gjournal и mount options
  
2. Оптимизация фронтенда (nginx)
  2.1 Accept Filters
  2.2 Кеширование
  2.3 AIO
  
3. Оптимизация бэкенда
  3.1 APC
  3.1.1 APC locking
  3.1.2 APC hints
  3.1.3 APC fragmentation
  3.2 PHP 5.3
  
4. Оптимизация базы данных
  4.1 MySQL 
  4.1.1 Переход на 5.1
  4.1.2 Переход на InnoDB
  4.1.3 Встроеный кеш MySQL - Query Cache
  4.1.4 Индексы
  
4.2 PostgreSQL
  4.2.1 Индексы
  4.2.2 pgBouncer и другие.
  4.2.3 pgFouine
  
4.3 Разгрузка базы данных
  4.3.1 SphinxQL
  4.3.2 Не-RDBMS хранилище
  4.4 Кодировки
  4.5 Асинхронность
  
Приложение. Мелочи.
  1. SSHGuard или альтернатива.
  2. xtrabackup
  3. Перенос почты на другой хост
  4. Интеграция со сторонним ПО
  5. Мониторинг
  
 6. Минусы оптимизации

Кому что-нибудь из этого списка интересно, жмём сюда...

Где растут деньги (как мы зарабатываем на Клумбе)

Reading time6 min
Views59K
Как и большинство людей, я долгое время не представлял, что в интернете можно зарабатывать. Два года назад пришел работать в интернет-компанию, и удивился — можно. К сожалению, про зарабатывание денег на интернет-проектах очень мало пишут. Людей, которые действительно зарабатывают в нашем интернете, мало, а зарабатывающих не на баннерах — единицы, и все молчат, как партизаны.

А время идет, опыт накапливается, хочется им делиться. Расскажу, как мы учимся зарабатывать на нашей Клумбе.


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

Новостная интернет-журналистика

Reading time1 min
Views1.5K
Новостная интернет-журналистика
Краткое руководство по написанию новостей и статей в интернет-издании. Структура новостей, составление заголовков, использование источников, стиль, работа с пиарщиками и многое другое.
PDF-версия — удобно распечатать и читать.
P.S Ну очень полезное издание. Обсудим?

Защищаемся от HTTP DDoS и прочих Хабраэффектов

Reading time5 min
Views11K
Простой способ защиты от HTTP DDoS — включить syn-cookies и заблокировать подонков. Но что делать если атакует 5к-10к хостов да еще и с динамическими IP? Тут нам на помощь придет frontend-backend архитектура c промежуточным кэшированием! Почему с промежуточным кэшированием? А потому что в моем случае от шквала запросов от frontend'а backend умирал унося за собой систему.
Читать дальше →

Реформал: сервис жив? Сервис будет жить!

Reading time3 min
Views9.8K
Весь последний год о Реформале ничего не писал, хотя, можно сказать, есть повод. Мы выросли и уже совершенно по-взрослому делаем дело, не оглядываясь на многочисленные «дачётотутнето». Продвигающие свои сайты и пинающие чужие знают, о чем я говорю.

reformal.ruReformal.ru – это сервис обратной связи, который позволяет понять, почему некто ушел с вашего проекта, отписался от рассылки и, к тому же, увел добрую половину пользователей. Подробно прочитать о проекте можно в моём первом топике.

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

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

Итак.
Читать дальше →

Давай НЕ выдумывать колеса!

Reading time4 min
Views1.3K
Начал писать как комментарий на этот топик, и у самого получился топик, захотелось что бы, увидело, как можно больше народа, а то мало ли в Бразилии — Педро?

Дальше много букв, на тему, а есть ли занятие, кроме, как придумывать что-то новое, и стоит ли это делать? То есть — изобретать велик ?!

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

Кому интересно, добро пожаловать, для тех кто умный — до свидания, удачи, и счастья, ведь умного учить -только портить…
Читать дальше →

Проект на энтузиазме, часть 2: Реалии

Reading time6 min
Views638
Первая часть находится здесь. Там я писал про процесс разработки, главным образом про людей. Эта статья будет посвящена реалиям работы сайта в сети, конкретным цифрам дохода и расхода, упоминаний сайта и посещаемости.

Старт

Итак, проект Холиварс.ру запущен. Запущен удачно, он что называется выстрелил. Это когда вести о проекте сами собой разносятся людьми, которых он впечатлил. После публикации обзоров только на хабре и ещё одном ресурсе, без вложения денег в рекламу — более тысячи упоминаний в блогосфере, десяток упоминаний на новостных сайтах, даже сюжеты по ТВ, отчего у нас волосы выпучились и глаза встали дыбом — по Эксперт-ТВ и в программе Телепорт на МТВ.
Читать дальше →

Здоровье для гиков и не только

Reading time5 min
Views4.8K

Введение.



В последнее время на суд хабрасообщества были представлены несколько статей разных авторов в стиле «Здоровье для гиков, или как оторвать задницу от насиженного и родного с детства места». Упоминались также темы здорового питания, здорового сна, и несколько смежных. Последняя на данный момент публикация повествовала о такой дисциплине, как бодибилдинг. За это спасибо автору публикации sortafreel, к тому же, материал может оказаться полезным многим из нас. Но (и тут меня начнут пинать плюшевыми тапками, как обычно бывает) людям нужен совсем не спорт, им нужно развитие, развитие духовно-физическое. Так почему же не спорт, и что я могу предложить заинтересованному читателю?

Почему не спорт?



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

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

Что же это такое?



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

Под катом много текста и видео

Кто ходит на ваш сайт?

Reading time3 min
Views1.1K
Знакомьтесь, это – www.netchart.ru – новый сервис, который дает возможность бесплатно посмотреть детальный портрет аудитории любого ресурса в рунете, просто введя его URL. Прошу любить и жаловать.
image
Читать дальше →

Верстка на HTML5

Reading time3 min
Views65K
html5

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

Information

Rating
Does not participate
Location
Киев, Киевская обл., Украина
Date of birth
Registered
Activity