Search
Write a publication
Pull to refresh
13
0

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

Send message

Поделитесь своим сайтом

Reading time1 min
Views5.7K

Многие из вас уже могли заметить блок «Поделиться» на страницах сервисов Яндекса, например, на Музыке или Фотках.

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

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

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

Ознакомившись с документацией, вы можете дополнить стандартный блок. Например, указать, какие данные будут передаваться на выбранный пользователем сервис.

 

Делитесь и размножайте!

.

Постраничная навигация с MySQL при большом количестве записей

Reading time7 min
Views41K
Рано или поздно многие крупные проекты сталкиваются с проблемами производительности при постраничной навигации по записям. Некоторые из них решают эту проблему ограничением количества доступных для просмотра записей (скажем, не больше 1000). Вполне приемлемое решение. Но в этом случаем могут возникнуть проблемы с индексированием сайта сторонними поисковиками, которые и представляют наибольшую угрозу. В этой статье я хотел бы отказаться от привычной для всех панели навигации вида «1..2..3..4..» в пользу простой «вперед… назад» (будет проще объяснить), но это не проблема реализовать подобное и с первым вариантом.
Более точно определить тему, назвав, какое количество записей считать достаточно большим для появления тормозов, не получится, так как эта цифра для всех разная и сильно зависит от того, насколько быстрые у Вас жесткие диски, сколько памяти, и какая часть Ваших данных уже закеширована в ней и тд. Но если Вы и Ваши сервера ощущают, что n-ная страница при выводе даётся тяжелее первой, и при этом не знаете, что с этим делать – статья для Вас. Но для начала, я хотел бы на пальцах объяснить, почему ОНО работает медленно.

Кстати, тест происходит на виртуальной машинке, работаю я с СУБД под рутом, версия MySQL – 5.0.32.
Читать дальше →

Поиск: FULLTEXT или LIKE?

Reading time2 min
Views40K
Наверное каждый разработчик подходил к моменту выбора между двумя решениями одной задачи и естесвенно решающим фактором выбора является наиболее быстрый способ (по времени процесса). Так и я в ходе разработки поиска для своей CMS задался вопросом: что лучше, делать поиск по базе используя полнотекстовой индекс или с помощью оператора сравнения LIKE, имея небольшое количество информации.

Для того, чтобы ответить на свой вопрос я провел небольшой опыт: создал таблицу с четырмя полями (два из которых использовались для поиска и были проиндексированы FULLTEXT'ом) содержащую 5 000 строк. Поля по которым производился поиск содержали по 255 символов, случайно выбранных из одного большого текста. Поиск производился так же по случайным словам не короче 4-х символов.
Читать дальше →

Особенности дизайна сайта для мобильных устройств

Reading time3 min
Views8.7K
Речь пойдет о мобильных устройствах, которые на данное время занимают большой % на рынке WAP’a (телефоны без ОС, Symbian и прочие), об Android и iPhone сегодня говорить не будем



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

Highload на дешевом хостинге: хэш-таблица в MySQL

Reading time3 min
Views21K
Высоконагруженный проект (web-сайт) — не обязательно популярная социальная сеть, видеохостинг или MMORPG. Простейший способ резко повысить требования сайта к железу — перенести хранение сессий в БД. В этой статье мы рассмотрим способ хранить данные в БД, и при этом не жертвовать производительностью. Пожертвовав небольшим объемом ОЗУ можно прилично сэкономить процессорное время. Мы говорим о стиуации, когда недоступны memcached и другие специальные средства кэширования.
Читать дальше →

GAE XMPP (Java API) — Жаббер в своем приложении

Reading time4 min
Views8.3K
Пока у Гугла данный раздел только на английском, я делюсь своим знакомством с данной службой.

image

Служба XMPP позволяют GAE-приложениям отправлять и принимать жаббер-сообщения.
XMPP – открытый протокол обмена мгновенными сообщениями, на основе XML, так же известный как Jabber. Именно он уже используется в Google Talk.

API скрывают весь механизм работы с протоколом. Разработчик получает очень высокоуровневые методы, что упрощают разработку, но в то же время очень ограничивают возможности.
Если просмотреть джавадок по XMPP API, то видно, что реализован только самый необходимый минимум.
Читать дальше →

Определение кодировки текста в PHP — обзор существующих решений плюс еще один велосипед

Reading time7 min
Views105K
Столкнулся с задачей — автоопределение кодировки страницы/текста/чего угодно. Задача не нова, и велосипедов понапридумано уже много. В статье небольшой обзор найденного в сети — плюс предложение своего, как мне кажется, достойного решения.

1. Почему не mb_detect_encoding() ?


Если кратко — он не работает.
Подробнее - под катом

«От хорошего к великому» — книга, которую обязательно стоит прочесть. (в цитатах) — ЧАСТЬ 1

Reading time4 min
Views72K
imageМоя прошлая статья «Обнаженный бизнес» Ричарда Брэнсона (в цитатах), похоже многим была интересна. Что же, не будем останавливаться?

Сегодня несколько слов о книге Джима Коллинза «От хорошего к великому». Это пожалуй, лучшая книга по бизнесу, среди всех, которые я читал. Она по-настоящему заслуживает права быть настольной. В какой то степени она даже не только о бизнесе. Не только о том, как построить успешную стабильную компанию, как набирать персонал или управлять проектами. Прежде всего она открывает глаза. Как на бизнес, так и на жизнь.

Я прочел эту книгу 2 раза. Второй раз (теперь, как всегда) — с маркером, выделяя цитаты. Рад ими поделиться. Уверен, тем кто знаком с книгой, будет интересно и полезно прочесть эти мысли еще раз. А те, кто книгу еще не читал, скорее всего убедятся в том, что это обязательно стоит сделать.

***

Мы тщательно изучили и просеяли компании, которые входили в список Fortune 500 c 1965 по 1999 год. И определили те компании, которым удалось осуществить переход от хороших результатов к выдающимся и сохранять эти высокие результаты в течение, по крайней мере, 15 лет. Затем мы проанализировали те факторы, которые позволили это сделать.

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

Работа с Postgresql: настройка, масштабирование. Дополненное издание

Reading time1 min
Views4K
image
Привет всему хабросообществу.

Время не стоит на месте. После публикации моего справочника по Postgresql очень многое успело поменяться, а точнее добавиться в эту отличную СУБД. После выхода PostgreSQL 9 версии я понял, что потребуется добавить информацию о нововведениях для этой версии. Тем более, что 9 версия знаменуется выходом репликации из коробки.
Читать дальше →

USB-визитка Фрэнка Чжао

Reading time1 min
Views14K
Находчивый студент из Университета Уотерлу (Канада) не зная, чем занять своё свободное время, неожиданно решил, что ему край как нужны электронные визитные карточки.
Составить схему оказалось несложно; на ней разместились 3 резистора, 1 конденсатор, cтабилитрон и микроконтроллер ATtiny85:
image

Получилось очень даже ничего:
image

Микроконтроллер фиксирует несколько нажатий caps lock и вот, как это всё это в итоге работает:
Читать дальше →

Немного о прелестях NetBeans + php

Reading time3 min
Views39K
Я, как человек, связанный университетом с Java, следил за развитием NetBeans практически с момента его становления изначально меня принудил ей пользоваться мне показал эту IDE мой учитель — Вадим Монахов (с гордостью обнаружил, что ссылка на него ведет с wikipedia, раздел литература). Сейчас часто сталкиваюсь с тем, что программисты PHP пишут говнокод ссылаясь на недоразвитость IDE не умеют делать Refactoring и многих из них останавливает отсутствие автоматизированных средств. Собственно, я решил отобрать у них этот аргумент: средства есть и сегодня я рассмотрю NetBeans как среду разработки для PHP и продемонстрирую заложенную в нее мощь.
Читать дальше →

Css-баллун без графики

Reading time3 min
Views13K


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

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

Взгляд на современные системы защиты от спама веб-форм

Reading time7 min
Views12K

О чем пойдет речь


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

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

Неоднократно на разных ресурсах поднимались подобные темы, но все статьи, которые попадались мне на глаза, были написаны людьми, находящимися по другую сторону баррикад.
Читать дальше →

Анаглифная 3D-фотография своими руками

Reading time1 min
Views12K
Дорогие хабражители и хабрагости, хочу поделиться с вами своим новым увлечением — 3D-фотографией.
Нет, я не являюсь владельцем 3D-говномыльницы, у меня обычная зеркалка от Sony и далее в этой статье я расскажу о том, как сделать вот такую анаглифную фотографию без специальной техники и за 5 минут времени:
image
Читать дальше →

Sencha Animator — средство для создания анимации средствами CSS и HTML

Reading time2 min
Views5.4K
image
Пока компания Adobe анонсирует Edge prototype tool, компания Sencha выпускает пробный релиз Sencha Animator — декстопное приложение для создание анимации для всего, что поддерживает HTML5. Как утверждают создатели, создание такого инструмента вызвано заявлением Apple исключить Flash из их iOS, что приводит к тому, что приходится писать кучу строк кода для создания анимации через CSS3. Поэтому они предлагают для начала посмотреть демо, а потом скачать и воспользоваться аниматором самому.
Читать дальше →

Настоящее скругление углов картинок на клиенте

Reading time3 min
Views27K
О скруглении углов в html-верстке сказано уже столько, что я пойму тех кто прочитав заголовок иронично улыбнется и подумает «опять 25, ну сколько можно...». Поэтому я постараюсь кратко изложить суть, и сразу предупрежу, что этот метод вы едва ли могли видеть раньше.
Читать дальше →

Linux на службе у провайдера

Reading time4 min
Views12K


Просмотрев большинство тематических постов на хабре был безмерно удивлён тому факту, что крайне скудно освещена тема использования ОС Unix/Linux на службе интернет провайдеров (Internet service provider). Данной статьёй я частично попытаюсь восполнить данный пробел.
Читать дальше →

Вёрстка c «Ушами»

Reading time2 min
Views9.3K
Очень часто фантазия человека, разрабатывающего макет сайта, не ограничивается шириной 1024px, при этом требуется, чтобы сайт выглядел достойно на всех разрешениях и соответствовал полёту мысли дизайнера.

Проблему можно представить графически так:
image

Задача вёрстки заключается в следующем:
  • — независимо от разрешения (размера она браузера), информативная часть сайта находилась посередине;
  • — справа и слева должны остаться графические блоки (уши), причём эти уши должны быть видны только при увеличенном размере экрана браузера, а при уменьшенном не уместившаяся часть должна прятаться (в идеале, чтобы ещё горизонтальной полосы прокрутки не было);;
  • — страница должна быть резиновой от 680px до 1000px.

Работает для FF3, FF4, IE8 и почти для Opera.
Читать дальше →

Микрозаметка: Итераторы/Генерация диапазонов дат, чисел и тд

Reading time3 min
Views1.7K
Эта заметка навеяна топиком "подсчет количества событий календаря в каждом месяце года". В ней нет ничего нового, это просто микрозаметка о возможных решениях.
Хотя задача того топика очень типична и вполне спокойно решалась обычным проходом с case или if:
SELECT
sum(
 CASE
  when t.`start_date`<'2010-02-01' and t.end_date>'2010-01-01'   then 1
  else 0
 end
)
AS jan,
sum(
 CASE
  when t.`start_date`<'2010-03-01' and t.end_date>'2010-02-01'   then 1
  else 0
 end
)
AS feb,
...
FROM test t


Но я счел нужным написать о некоторых возможностях избежать излишнюю ручную работу. Например, если нам необходимо бы было агрегировать не за год и не за два, а, скажем, за последние 5 лет помесячно. Согласитесь, в таком случае 60 строк c if'ами было бы как минимум тяжело читать.
Читать дальше →

Information

Rating
Does not participate
Location
Нижний Тагил, Свердловская обл., Россия
Date of birth
Registered
Activity