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

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

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

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

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

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

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

jQuery Tools v1.0.1

Время на прочтение1 мин
Количество просмотров3.9K
jQuery Tools Logo
jQuery Tools v1.0.1 — это инструмент/библиотека представляет собой файл весом в 5,8 кб включающий в себя наиболее важные компоненты для вебдванольных сайтов, а именно: табы, всплывающие подсказки, плавные переходы, прокрутки, всплывающие окна и т.д.

Не буду тянуть резину, лучше, как говориться, один раз увидеть, чем сто раз услышать!
Переходим по ссылке и смотрим более 50 (!) демок:

Несколько понравившихся мне демонстраций. Очень рекомендую!
Маскируем фоновое изображение;
AJAX-табы с поддержкой истории переходов;
Неколько всплывающих окошек на одной странице.
Всего голосов 158: ↑152 и ↓6+146
Комментарии85

Пуш ми, бум-бум, тач ми… Ajax Push Engine

Время на прочтение5 мин
Количество просмотров6.9K
logoСегодня поговорим о Comet и о server push вообще.

Обычные веб-приложения, как и сайты, работают по традиционной модели запрос-ответ-запрос, при этом, в силу особенностей HTTP-протокола и некоторых серверных реализаций обработчиков, приложение не хранит информацию между запросами, так что каждый вызов является независимым, а идентификация или сессионность обеспечиваются более высокоуровневыми средствами (например, всем известная реализация сессий в PHP). Кроме этого, запрос на новую информацию посылает всегда клиент, который заинтересован в получении самой актуальной версии данных. В приложениях, которым критично обновление, это часто становиться узким местом. У нас в одном из предыдущих проектов, было сразу несколько периодических AJAX-запросов на обновление данных. Хотя для такого случая есть варианты и вызова нескольких обработчиков на стороне сервера одним запросом от клиента.
Читать дальше →
Всего голосов 51: ↑43 и ↓8+35
Комментарии34

10 приемов, разрушающих хрупкую красоту кода

Время на прочтение19 мин
Количество просмотров102K
Статья приводится в сокращении из-за ограничения на объем материала.

Для меня программирование — это не только технология, но и, во многом — искусство. И, поэтому, большое значение имеет красота кода.

Последние несколько лет я собирал приемы программирования, разрушающие в программном коде его утонченную красоту:
  1. Объявление всех переменных в начале программы;
  2. Возврат результата функции через ее параметр;
  3. Отсутствие локальных функций;
  4. Отсутствие else if;
  5. Использование параллельных массивов;
  6. Хранение размера массива в отдельной переменной;
  7. Доступ к свойствам объекта через obj.getProperty() и obj.setProperty(value);
  8. Использование рекурсии для вычисления факториалов и Чисел Фибоначчи;
  9. Отсутствие именованных параметров функции;
  10. Невозможность объявления объектов «на лету».
Наверняка, в некоторых местах вы будете со мной несогласны — ведь чувство красоты у всех разное.


Объявление всех переменных в начале программы


В двух словах:

Переменные должны объявляться в начале логического блока, в котором они используются, а НЕ в начале функции или программы.


Читать дальше →
Всего голосов 402: ↑324 и ↓78+246
Комментарии411

Что такое анти-паттерны?

Время на прочтение9 мин
Количество просмотров144K
Анти-паттерны — полная противоположность паттернам. Если паттерны проектирования —
это примеры практик хорошего программирования, то есть шаблоны решения определённых задач. То анти-паттерны — их полная противоположность, это — шаблоны ошибок, которые совершаются при решении различных задач. Частью практик хорошего программирования является именно избежание анти-паттернов. Не надо думать, что это такая непонятная теоретическая фигня — это конкретные проблемы, с которыми сталкивался практически каждый разработчик. Кто осведомлен, тот и вооружён! Рассмотрим же несколько расрпотранённых анти-паттернов в программировании.
Да, рассмотрим!
Всего голосов 157: ↑147 и ↓10+137
Комментарии103

SMTP relay или что делать если ваш сервер попал в email-блеклист

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


Если вдруг невинные письма с вашего сайта начали повально попадать в spam-боксы почтовиков, это может означать, что IP вашего сервера попал в email-блеклист. Вероятность этого возрастает, если у вас не свой собственный сервер. Примерный сценарий попадения в блеклист таков:
  • Юрий Иванович, директор небольшой студии танцев, имеет сайт «по соседству» с вами (читай, на том же сервере). В один прекрасный момент, Юрий Иванович узнает о чудесных перспективах email-маркетинга и рассылает пачку из двадцати тысяч писем с однотипной рекламой своей студии.
  • Или же, Вася Попов, не пользующийся антивирусом, но любящий старые версии Total Comander, апдейтит свою домашнюю страничку по FTP. В один прекрасный момент, спящий ранее троян, похищает пароли к Васиному FTP (которые лежат незащищенные в папке Total Comander). На следующий день, Васина домашня страничка уже отсылает десятитысячное предложение о покупке виагры.
  • Или же, Петя Твердохлебов, который имеет рядом сайт на Друпале версии 5.0 и думает что обновления это «от лукавого», в очередной солнечный день ловит XSS уязвимость и начинает, сам не зная того, отсылать рекламу потенциальным покупателям penis-enlargment pills.


Что делать и как быть?
Всего голосов 50: ↑43 и ↓7+36
Комментарии38

Документы по делу johnjane

Время на прочтение1 мин
Количество просмотров564
Сколько людей вчера заявили, что парень, которому дали 8 месяцев, врет? Вот он выложил документы, как и обещал.

image

Документы еще не читал, но просмотрел, что они похожи на реальные — подтверждаю.
P. S. Мне интересно, сколько теперь из вчерашних крикунов признает свою поспешность?
P. P. S. Я думаю, стоит дать ссылку на пост с документами в своих блогах, если раньше оснований не было — теперь они есть.

3P. S. Комментарий по поводу ФСБ. Интересно то как, люди готовы загрызть всех, кто возникает, только бы не признавать, что они живут в дерьме.
4P. S. Возможно, дело политическое.
Всего голосов 166: ↑130 и ↓36+94
Комментарии241

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

Время на прочтение3 мин
Количество просмотров15K
Жаль, если ваше изучение концепции исключений закончится чтением соответствующего раздела официальной документации по вашему языку.

Изучив синтаксис конструкции try{...}catch(Exception $e){...}, узнав о возможности создавать собственные классы исключений, наследуя их от класса Exception и поверхностно осознав мощь оказавшегося в ваших руках механизма, дальше вы можете пойти по одному из двух путей:
  • Начать тут же использовать исключения. Скажем, прикручивать их к системе, в которой они никогда не использовались. Или приколачивать их к проекту, в котором ООП и не пахнет. Или, что самое ужасное, пытаться использовать их повсеместно, особенно там, где это не нужно.
  • Попытаться понять, где их применять, как делать это правильно, и зачем они нужны.

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

Объединение сетевых интерфейсов в linux

Время на прочтение2 мин
Количество просмотров113K
Так уже получилось что писал статью для howtoforge. И естественно тут же все это оказалось в русском варианте на других сайтах. Только вот незадача: в статье были допущены неточности, и публицисты с других «сайтов» вставили as-is.
Хочу попробовать исправить это оплошность.
Для чего это надо?
Объясню на примере: был у меня фтп с 2мя сетевыми картами, но использовалась одна. Со временем весь 1Гб/с начал забиваться по вечерам — и людям плохо, и у меня iowait растет. Но есть вторая сетевая карта. Так вот такое объединение позволит использовать 2 (3, 4, 5...) как одну с 2Гб/с.
Читать дальше →
Всего голосов 62: ↑60 и ↓2+58
Комментарии42

Особенности Ext4

Время на прочтение9 мин
Количество просмотров162K
Данная статья является переводом той части статьи на KernelNewbies, которая описывает особенности файловой системы Ext4. Последний раздел статьи, об использовании Ext4, уже на Хабре публиковался.

Ext4 — это результат эволюции Ext3, наиболее популярной файловой системы в Linux. Во многих аспектах Ext4 представляет собой больший шаг вперёд по сравнению с Ext3, чем Ext3 была по отношению к Ext2. Наиболее значительным усовершенствованием Ext3 по сравнению с Ext2 было журналирование, в то время как Ext4 предполагает изменения в важных структурах данных, таких как, например, предназначенных для хранения данных файлов.

Это позволило создать файловую систему с более продвинутым дизайном, более производительную и стабильную и с обширным набором функций.
Что ж за функции-то такие?
Всего голосов 108: ↑105 и ↓3+102
Комментарии39

Как конвертировать файловую систему из ext3 в ext4

Время на прочтение2 мин
Количество просмотров10K
Теперь у всех есть новая Убунту с поддержкой ext4, и в моём прошлом посте о его релизе было несколько комментариев с вопросами о том, как переделать файловую систему в этот самый ext4. По этому отличному поводу я решил перевести топик с wiki.kernel.org, где как раз про это написано. Перевод совсем вольный, разбавленный моими собственными мыслями. Кстати, про все новые плюшки ext4 можно почитать по-английски теперь по-русски здесь, а еще в новой статье yktoo вот здесь!
О, там интересно!
Всего голосов 63: ↑54 и ↓9+45
Комментарии55

Философская геометрия. Часть 3. Корень из двух и идеальный ноутбук

Время на прочтение4 мин
Количество просмотров6.1K
Еще не все копья сломались по поводу айфона, вписанного в древнюю сакральную фигуру, как у меня готово продолжение. Под катом я покажу как еще современные предметы используют идеи многовековой давности.

Эта статья — продолжение первых двух.
Сначала был обзор, где я говорил как древние геометры искали неизменное во всем сущем и воплощали это в произведениях искусства.
Потом была статья, где я показал как число √3 использовалось в религиозных символах и современном всем известном предмете дизайна

На этот поговорим о числе √2. Корень из двух является символом природного роста. Визуальное представление геометрической прогрессии показывает как ничтожный объект может вырасти до гигантских размеров за короткое время. Корень из двух — это то неизменное, что находится в основе этой прогрессии. В этом росте — сила данного числа.



Но что такое рост? Что вообще такое процесс творения и как ничтожное может развиваться и становиться большим? Давайте представим себе точку.



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



Что дальше? Нам нужен прорыв. Откроем для себя второе измерение. Построим квадрат ABCD



Теперь, откроем новые формы движения. С центром в точке С радиусом CB давайте проведем дугу.



Найдем новые пути движения. Соединим AC и CE. Длина AC — это √2 — фактор, удваивающий измерение.



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

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

Философская геометрия, Часть 2. Корень из трех и его практическое применение

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

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

Сегодня я расскажу про замечательную пропорцию «корень из трех». Я покажу ее сакральный смысл, а под катом продемонстрирую пример из современного дизайна, который повергнет вас в шок ;)

Начнем с построения пропорции. Возьмем отрезок AB.



Примем его за радиус и построим окружность с центром в A.



Теперь построим вторую окружность с тем же радиусом, но с центром в B.



У нас получилась фигура ACBD, имеющая огромное значение для наших предков. Она называется Vescica Piscis (пузырь рыбы). Самый простой и важный пример — она давно является символом христианства.



Я продолжу под катом. Спорим, никогда не догадаетесь чем там все закончится :)

Читать дальше →
Всего голосов 316: ↑253 и ↓63+190
Комментарии192

Геометрическая философия дизайна

Время на прочтение3 мин
Количество просмотров14K
Разливающийся Нил каждый год затапливает свои берега, а потом обнажает их вновь, оставляя открытой плодороднейшую почву. Каждый год древние египтяне должны были заново измерять свои участки земли и определять их границы. Позже, древние греки описали этот процесс и назвали его геометрией — измерением земли. Геометрия представлялась принципом установления порядка и закона в мире. Бытовая процедура стала наукой.

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




Но знаем ли мы почему возникли именно такие пропорции? Какой смысл в них закрыт? Что видели древние и почему упорно применяли их для создания произведений искусства, особенно, носивших религиозный смысл?



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

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

Под катом я еще немного ее обрисую.

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

Squid для самых маленьких

Время на прочтение1 мин
Количество просмотров40K
Всему приходит время, и каждый начинающий сисадмин изучает новые программные пакеты для работы. Вот и дошло время для Squid, я думаю не стоит обьяснять что это такое, если вы это читаете значит вы уже представляете что такое сквид и для чего он нужен!
Читать дальше →
Всего голосов 22: ↑17 и ↓5+12
Комментарии14

Веб-типографика сегодня. Часть I

Время на прочтение7 мин
Количество просмотров27K
Часть IЧасть IIЧасть IIIЧасть IVЧасть V — Часть VI

Часть I



Как-то ко мне обратился знакомый дизайнер с просьбой разобраться в странной по его мнению ситуации. Клиент просил «сделать так же, как у Apple», но с использованием собственных способов расположения блоков, изображений, цветовой гаммы и текста. В общем, дизайн в итоге получался совершенно непохожий на apple.com, но этого, собственно, и добивался клиент. И вроде бы у дизайнера получилось, но… Клиенту по-прежнему не нравилось, он всё равно требовал переделать макет. По его ощущения «что-то было ну совсем не так». А что именно — тот объяснить был не в силах. Вот и возник вопрос у моего коллеги по поводу того, как угодить капризам клиента и понять его чаяния. Оказалось всё не так просто, но вполне объяснимо. Я и раньше сталкивался с данной проблемой. Поэтому решил попробовать изложить свои мысли по этому поводу.

Итак, какова ситуация в области современной веб-типографики и какими способами следует решать возникающие проблемы?
Читать дальше →
Всего голосов 128: ↑120 и ↓8+112
Комментарии41

Gentoo+drbd+ocfs2

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

Введение


Поставили передо мной как-то задачу… говорят один сервер это хорошо… но учитываю рост посетителей, неплохо бы было повысить производительность отдачи и для этой цели будет приобретен еще 1 сервер…
еще один сервер это хорошо, подумал я… только что с ним делать ??
Поговорив с програмистом и примерно поняв чего он хочет…

А именно одновременную отдачу контента, и что-то типа nfs или шары…
но тогда был бы оверхед ибо данные гонялись по сети и нагружен был бы диск одного сервера, посему надо было чтобы данные одновременно хранились на обоих серверах и реплицировались друг на друга…
поискав в гугле что-то на эту тему нашел информацию по кластерным фс, и для меня подходили gfs2 и позднее обнаруженная ocfs2, но была проблема в том что обычно использовалось выделенное файловое хранилище и его уже монтировали ноды… что было неприемлимо для меня, и тогда позадавав вопросы народу в конференции (gentoo@conference.gentoo.ru благо там были люди работающие с кластерами и прочими веселыми вещами) я вышел на drbd
Читать дальше →
Всего голосов 6: ↑5 и ↓1+4
Комментарии12

ajax загрузка нескольких файлов с php формой

Время на прочтение2 мин
Количество просмотров36K
Как-то для личных целей мне понадобилось сделать ajax загрузку сразу нескольких файлов. Но хотелось сделать это красиво и удобно.
Для этой задачи я выбрал горячо мной любимый jquery и несколько плагинов к нему.
подробнее
Всего голосов 56: ↑49 и ↓7+42
Комментарии55

Тривиальные задачи по вёрстке

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

Начинаю вести серию статей Это статья про вёрстку html css js, начинаю с самого простого, потом планирую описать более сложные вещи и всякие тонкости и этим видимо так и закончил

Читать дальше →
Всего голосов 275: ↑251 и ↓24+227
Комментарии160

Формы для людей

Время на прочтение6 мин
Количество просмотров3.5K
Сейчас мы с вами поговорим о веб-формах. Я с высоты собственного невысокого полета успел накопить кое-какой опыт и жажду непременно им поделится. Все о чем пойдет речь ниже не является черепахой на которой стоят слоны. Речь пойдет о скотче на котором держится черепаха.

Итак…

Первое – Откуда ноги?


Уважаемый друг, для начала, я бы посоветовал отложить средства для рисования и верстки форм. Начнем мы с белого листа. И первым, чем лучше всего руководствоваться, это ряд вопросов самому себе, менеджеру проекта, разработчикам и прочим людям, которые принимают участие в данном эпическом созидательном действии.
  • Для кого делается форма?
  • Какая информация нужна, что бы понять и заполнить форму?
  • Каков результат заполнения формы?
  • Какие у нас есть возможности?

Подробности небольшого расследования
Всего голосов 111: ↑99 и ↓12+87
Комментарии37

Информация

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