Архив за ‘Программирование’ категория

Google 500 Server Error

Август 6th, 2010

Впервые в жизни увидел, как сервис Google (Google Webmaster Tools) выдавал мне несколько раз 500-ую ошибку сервера. Для тех, кто не знает что это — это ошибка, когда на стороне сервера программа выполняет ошибку и документ не может быть сформирован. Другими словами, Google Webmaster Tools сбоит на уровне сервера, то есть где-то там, в глубине «датацентров» Гугля программисты что-то где-то накосячили. Я такого раньше не видел — сырые программы, они видимо, тщательно оттачивают перед размещением их «для всех». А тут вот за день (6 августа 2010) — 5 или 6 раз, и всегда в том месте, когда я «авторизую» свой сайт при добавлении в сервис. Это говорит о том, что даже такой крупный гигант, как Гугль, иногда делает ляпы ;-)
Скриншот прилагается :-)

500 Internal Server Error of Google

Perl — надо ли делать свой дистрибутив проекта?

Июнь 23rd, 2010

Если вы программер на perl, и читаете эту статью, то вы навярняка задавались вопросом — как устанавливать ваши скрипты, надо ли вообще делать дистрибутив, даже если вы не распространяете проект? Я несколько лет использовал свои скрипты, устанавливая их обычным копированием в отдельную папку и прописывая до нее путь, например через строки кода use lib qw(/path1 /path2) и т.п.. Такие скрипты работали, проблем не возникало, и я вообще не думал о дистрибутивах. Затем, понадобилось устанавливать несколько своих скриптов на несколько серваков, вот тогда я и сделал свой первый дистрибутив. Но до недавнего времени, я придерживался взгляда, что дистрибутив нужен только для публичного распространения, или когда вам надо использовать свои разработки на нескольких серваках. Но так ли это на практике?

» Читать дальше: Perl — надо ли делать свой дистрибутив проекта?

Copy Clipboard в Firefox методами JavaScript

Июнь 12th, 2010

Если вы программер под JavaScript, вы навярняка сталкивались с такой проблемой — как реализовать копирование в буфер обмена средствами JavaScript в Firefox. С Internet Explorer все понятно — Microsoft «постаралась», чтобы все, кому не лень, могли читать и писать в буфер обмена средствами JavaScript (по правильному, это конечно же, не должен делать любой сайт — мало ли что у вас в буфере обмена на тот момент, например пароль…). А вот Firefox с его сильной защитой JavaScript, не позволяет любому сайту это делать. Как быть?

» Читать дальше: Copy Clipboard в Firefox методами JavaScript

Отличная документация Subversion на русском

Март 14th, 2010

Заинтересовался я сейчас изучением софта для контроля версий программ. Пока что я знаю, что CVS — старая и устаревшая платформа, SVN (Subversion) — современная, заменяющая CVS, и GIT — другая популярная система контроля версий. И встал вопрос, где и как изучить SVN (решил начать с неё). Английская дока — это, конечно, хорошо и правильно (термины часто не переводимы и меньше ошибок), но когда надо понять такой сложный программный комплекс за быстрое время, русская документация, как нельзя, кстати. И вот тут я нарыл отличную документацию SVN на русском — текст книги, изданной O’Reilly Media:

SVN-документация одним файлом HTML для чтения (рекомендую)
Обобщенный список разных форматов этой книги

P.S. Если хотите знать, чем различаются и что чем лучше — Git или SVN — читайте здесь и здесь (анг)

Javascript — Middle Button Click

Март 14th, 2010

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

» Читать дальше: Javascript — Middle Button Click

Как избавиться от сообщения «Unresponsive script» в Firefox

Февраль 23rd, 2010

Если вы часто работаете с сайтами, где используются интенсивные JavaScript вычисления, то вы навярняка сталкивались с таким сообщением «Unresponsive script». Оно выскакивает в Firefox, когда JavaScript использует под себя долгое время все процессорное время вашего компьютера. Firefox это замечает, скрипт приостанавливает, а вас спрашивает — продолжать выполнение скрипта или нет. Это, с одной стороны, хорошая фича Файрфокса, с другой — весьма надоедливая и неприятная, когда ваша работа требует каждодневного использования скриптов с такими вычислениями (например, массивные обработки крупной статистики).

Но это сообщение можно либо отключить совсем, либо увеличить лимит срабатывания. Для этого, наберите в строке броузера «about:config«, если будет предупреждение об осторожности смены настроек, согласитесь с ним. Там в строке фильтра неберите «dom.max_», Fire Fox отфильтрует вам настройки, в том числе такую — dom.max_script_run_time. Кликнете по ней и установите значение либо в ноль — отключить предупреждение, либо более 10 — это количество секунд, сколько максимум может использовать скрипт под себя процессорного времени — в таком случае, предупреждение будет появляться реже и только в крайних случаях.

Каков % пользователей с JavaScript?

Декабрь 18th, 2009

На своих нескольких проектах уже замечал неоднократно такую статистику — по моим данным, только 70-73% рядовых пользователей интернета имеют включеную поддержку JavaScript. Сразу хочу заметить, что не Java, а JavaScript! Делаю эту поправку потому, что некоторые ошибочно думают, смотря в Google Analytics или в данные некоторых других счетчиков в  колонку Java (там, как правило, цифры за 90%). А ведь счетчики сами работают на JavaScript, и визит посетителя с отключенным JavaScript они просто не зафиксируют!

Как я посчитал эти цифры? Возьмем, к примеру логи Apache сервера. Они показывают сколько реально было загрузок какой либо страницы. Берем данные о загрузке страницы из этих логов -V1, затем смотрим, сколько нам посчитал счетчик, например Google Analytics — V2 (я обсчитывал статистику даже своими JavaScript счетчиками на основе Ajax). V1 — сколько всего смотрело людей, а V2 — у скольки включен скрипт. V2 всегда будет меньше V1, и если посчитать по формуле V2/V1*100%, то получится 70-73%. Проверьте сами! :-)

Конечно, могут возразить — боты и все такое… Но я замерял на разных проектах — на известных и нет, и из разных источников. Цифры всегда были примерно одинаковые. Не верю, что везде процент ботов одинаковый!

Так что помните об этом, когда создаете страницу, работающую только на чистом JavaScript коде!

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

Ноябрь 28th, 2009

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

Я, не зная изначально, как это делается, правил исходные коды темы на PHP. Все бы ничего, но меня это достало, и я решил разобраться, как же это делается цивилизованно. Итак, мои инструкции, скорее всего, помогут русифицировать любую тему, которую вы себе поставили («скорее всего» потому, что не знаю я всю кухню русификации пока)

» Читать дальше: Как русифицировать англоязычные темы под WordPress

Самая мощная DDoS атака и офигенный Firewall…

Ноябрь 26th, 2009
  1. Одна человеческая клетка содержит 75Мб генетической информации
  2. Один сперматозоид содержит 37.5Мб.
  3. В одном миллилитре содержится около 100 млн сперматозоидов.
  4. В среднем, эякуляция длится 5 секунд и составляет 2.25 мл спермы.
  5. Таким образом, пропускная способность мужского члена будет равна:
  6. (37.5Мб x 100M x 2.25)/5 = (37 500 000 байт/сперматозоид x 100 000 000 сперматозоид/мл x 2.25 мл) / 5 секунд = 1 687 500 000 000 000 байт/секунду = 1 687.5 Терабайт/с
    Получается что женская яйцеклетка выдерживает эту DDoS-атаку на полтора терабайта в секунду, пропуская только один выбранный пакет данных и является самым офигенным в мире хардварным фаерволом…

Но тот один пакет, который она пропускает, валит систему на 9 месяцев…

Памятка WordPress программисту

Ноябрь 25th, 2009

Нашел в интернете PDF памятку, на русском, для программирования WordPress. Очень хорошая вещь! Автор: Антон Шевчук. Для скачивания кликните по картинке. Памятка WordPress программисту, PDF формат