Home
19 см.
 
[Most Recent Entries] [Calendar View] [Friends]

Below are the 20 most recent journal entries recorded in penis_19_cm's LiveJournal:

    [ << Previous 20 ]
    Sunday, November 16th, 2008
    8:34 pm
    Разница между UNIQUE и PRIMARY KEY
    Оказывается, некоторые не знают. Разница между UNIQUE INDEX и PRIMARY KEY невелика:

    1. В таблице может быть только один индекс, объявленный как PRIMARY KEY и до ебени матери UNIQUE индексов, хоть по пять штук на одно поле, если вы совсем дебил

    2. Поля, которые входят в состав индекса PRIMARY KEY автоматически определяются как NOT NULL


    А у кого-нибудь есть сведения о сравнительной производительности этих двух типов индексов в, скажем, mysql?
    Tuesday, October 14th, 2008
    7:07 pm
    Оказывается, если в PHP подключать какие-либо файлы при помощи конструкции @include('child.php'), то все сообщения об ошибках внутри child.php будут подавляться.

    Что, в принципе, и похуй, но лишний раз доказывает вред собаки перед вызовом функции.
    Wednesday, March 26th, 2008
    5:20 am
    alert(error); return false;
    Довольно распространённая в javascript ситуация: на <a href='#'> вешается onclick='return do_something()'. Функция do_something() при этом всегда должна возвращать строго false, иначе после её выполнения страница будет прыгать наверх, так как будет происходить переход на '#'. И также часто в таких функциях встречается конструкция

    if(something == wrong){
    alert('Error!');
    return false;
    }.

    Придумал, как её можно красиво сократить:

    if(something == wrong) return !!alert('Error!');


    (Пояснение для идиотов: undefined !== false. alert() всегда возвращает undefined. !undefined = true; !true = false.)
    Wednesday, March 5th, 2008
    10:54 am
    Заголовок Cookie
    Сегодня воевал с наистрёмнейшим багом.

    Есть софт, который периодически общается с сервером Живого Журнала, отправляя ему разные HTTP-запросы. Авторизация в ЖЖ работает на кукисах, и с каждым запросом нужно передавать ему пачку этих авторизационных кукисов. Раньше всё HTTP-общение обслуживалось неким самописным классом, и тут возникла нужда переехать на Zend_Http_Client. Ну, хуйня, интерфейсы похожие, переписал код, и вдруг отвалилась авторизация.

    Сравниваю заголовки запросов от старого кода и от нового - близнецы братья. Но кукисы от старого класса ЖЖ воспринимает, от нового - нет. Чуть не ебанулся умом, пока раскопал причину.

    HTTP-заголовок Cookie, как известно, выглядит как строка "Cookie: cookie_1_name=cookie_1_value; cookie_2_name=cookie_2_value;". Все нормальные браузеры (и мой старый HTTP-класс в том числе) после точки с запятой, разделяющей разные кукисы, ставят пробел. Zend_Http_Client пробела не ставит, впрочем, RFC-2109 про эти пробелы или необходимость их отсутствия ничего определённого не говорит. Всем нормальным сайтам тоже глубоко насрать, сколько там есть пробелов. А ЖЖ, блядь, оказывается, из-за отстуствия этого сраного пробела кукис перестаёт видеть вообще, и, следовательно, меня и не авторизует.

    В связи с этим, коллектив веб-студии "Пароход" от всей души желает ЖЖ-шному программисту парсера кукисов, чтобы у него хуй во лбу вырос.
    Sunday, March 2nd, 2008
    1:52 pm
    Пусть благословен будет тот день, когда я купил второй монитор. Это, граждане, пиздец как удобно.

    В Фотошопе: на основном мониторе только сам документ, на соседнем - все вспомогательные окошки (слои, история, инфо, цвета, свойства шрифта и абзаца, Layer Comps)

    Во время программирования: на одном экране - putty с mysql-клиентом и справочники, на другом - редактор кода и браузер.

    Во время вёрстки - на одном экране - IE, на другом - Firefox.

    Для музицирования: на большом экране - Adobe Audition, на малом - MIDI-секвенсор, системный микшер, частотный или фазовый анализатор Audition'а.

    На втором мониторе также всегда живёт аська, winamp, а на его рабочем столе - куча текстовых файлов, каждый из которых - какая-то конкретная задача. Когда задача выполнена, она переселяется в корзину.

    И только благодаря тому, что нажимать на Alt-Tab стало нужно в 50 раз реже и всё перед глазами, производительность труда увеличилась на 5%!
    Monday, February 25th, 2008
    11:08 am
    Языки программирования с русским синтаксисом, это, конечно, полный пиздец:

    ПЕРЕМЕННАЯ $радиус = 1979;
    ЕСЛИ($радиус < 0) {
            ПЕЧАТЬ "Ошибка в данных\n";
            ВЫХОД
    }
    ПЕЧАТАТЬ "Площадь круга с радиусом $радиус = " . $пи * $радиус * $радиус . "\n";


    Но я вот тут прикинул и понял, что на сочинение английских имён переменных и функций у меня тратится времени, всё же, больше - нужно в уме перевести русскую мысль на ущербный и не родной английский язык, да и запомнить "ShowComments($post_id, $thread, $is_moderator)" значительно сложнее, чем "ВывестиКомментарии($пост, $ветка, $я_редактор)". Также всем известно, что нормальные программисты живут только в России, а некириллические страны населяет тупая биомасса, пригодная, разве что, для чистки сортиров. Ну, написали они глючный-преглючный Windows и понятный только киберкрысам Linux, подумаешь, достижение, а единственная в мире полезная программа - пасьянс "Паук" - была написана русским сотрудником Microsoft Иваном Фёдоровичем Финкельштейном. О криводырейших монструозных спецификациях HTML, CSS, HTTP я вообще молчу - это же полнейшее отсутствие внутренней логики и абсолютное неумение проектировать расширяемые информационные структуры.

    Поэтому я считаю, что когда мы поработим все черножопые народы, нужно будет дать задание специалистам из нашего ФСБ написать новые спецификации для совершенно новых компьютеров, которые будут работать на кириллице и создать истинно русский процессор, который бы интерпретировал кириллические программы в реальном времени. Протокол HTTP нужно будет заменить новым кириллическим протоколом, в котором для скачивания 100-байтного gif-файла не нужно будет отправлять на сервер килобайт заголовков, а HTML вообще законодательно запретить (за использование - расстрел!) и заменить его стандартом ГОСТ-1842-746, который будет поддерживаться одним-единственным, зато одинаковым у всех, браузером.

    Эффективность труда IT-работников возрастёт раз в пятьдесят. Вы спросите у любого верстальщика, сколько времени он пишет код, а сколько - занимается кроссбраузерностью.
    Monday, October 29th, 2007
    1:38 am
    А прикольная хуйня этот ваш C#. Ебанутая, но прикольная.
    Tuesday, October 9th, 2007
    7:29 pm
    echo -e
    Элементарная, в общем-то, вещь, но вдруг кто не знает.

    Допустим, подключились вы к юниксовому серверу по ssh или telnet и запустили там какой-нибудь очень длительный процесс, скажем, mysqldump большой таблицы, а пока этот процесс выполняется, не грех пойти и, скажем, ЖЖ почитать или ещё чего поделать бесполезного. Но как узнать, что запущенный вами процесс завершился, если он только в терминал и пишет, не смотреть же на окошко PuTTY постоянно. А очень просто:

    $ mysqldump -p big_fucking_table | gzip > data.sql.gz && echo -e \\a

    echo -e \\a выведет в терминал управляющий код BEL, который большинство современных терминальных клиентов поймут и скажут в колонках "Быдынь!"
    Friday, September 14th, 2007
    5:53 am
    Господи, .mht-файлы от Эксплорера-то, оказывается, есть ни что иное, как multipart MIME-message! Вот же ж, придумали и стандартизировали одни прыщавые долбоёбы онанистический формат, а корпорация-гигант подхватила.
    Tuesday, September 11th, 2007
    10:31 pm
    Однако, провинциальный фрилансер, сука, наглый пошёл. Помнится, на заре моей деятельности, я всегда заказывал разный аутсорс в глубинке - выходило значительно дешевле, чем в Москве или Петербурге. Сегодня разослал всем своим фрилансерам - не нарисует ли кто-нибудь дизайн для простенького сайтика. Толстый 30-летний дизайнер из Нижнего Новгорода запросил $300, мать троих детей из Казани - $500, симпатичная москвичка - $100.

    А всё потому, что вся Россия твёрдо знает, что мы тут в своих ёбаных столицах жрём исключительно чёрную икру с хенесси и миллионы лопатами гребём.
    Sunday, August 26th, 2007
    12:16 am
    Экзаменационное задание
    Придумал задачку для собеседования с программистом.

    Есть таблица:
    CREATE TABLE test (
          id int not null unique key,
          ...
    );

    INSERT INTO test (id) VALUES (1), (5), (4), (3), (2), (100), (101), (200);


    Нужно найти минимальный незанятый id (в нашем примере - это 6). Чего думаете, просто/сложно? Ситуация, кстати, не поверите, из жизни, про таблицу, где нельзя использоавть auto_increment.
    Saturday, August 25th, 2007
    11:33 pm
    Сказка про php
    В тридевятом домене, на тридесятом mysql-сервере жила-была вот такая таблица:
    CREATE TABLE test (
          i int not null,
          j int not null
    );

    В один прекрасный день злая волшебница вставила в неё одну единственную строку:
    INSERT INTO test (i, j) VALUES (1, 10);

    Прекрасный принц решил посмотреть, что получится, если выполнить следующий код:
    <?
    $r = mysql_query("SELECT * FROM test");
    $res = mysql_fetch_assoc($r);

    $mask = $res['i'] | $res['j'];

    printf("\$mask = %04b", $mask);
    ?>


    Думаете, он получил 0b0001 | 0b0101 = 0b0111? А вот хуй вам в сраку, мои маленькие слушатели, прекрасный принц увидел на выходе "0101", чему, впрочем, и сам был зело удивлён. А всё оттого, что башкой надо думать )
    Thursday, May 10th, 2007
    3:15 am
    Ёбаная сука нахуй уёбищная хуйня блядь!

    Весь день проебался с простейшим скриптом, расчленил JsHttpRequest и почти уже убедился в собственной гидроцефалии, пока не понял, что этот ёбаный JsHttpRequest не работает с этим ёбаным php 5.2.2, и, кажется, из-за закрытого за давностью лет бага в php.

    Не, ну ёб твою мать, согласитесь?

    Update: Новой версии JsHttpRequest, кстати, этот баг до пизды.
    Friday, March 16th, 2007
    10:36 pm
    Господа пэхапешники, подскажите, пожалуйста.

    Смотрите. Есть класс. При вызове конструктора можно как-нибудь сделать так, чтобы в случае ошибки класс не создался вообще? Ну, кроме exit() в конструкторе, конечно :)
    return из конструктора вообще какой смысл имеет?
    Да, это должно работать и в PHP4 и в PHP5.
    Tuesday, March 13th, 2007
    8:21 pm
    Величайшим уебанством я почитаю allways-on-top splash-screens программ. На кой хер мне любоваться заставкой загружающегося фотошопа, когда в это время я могу почитать френдленту, например? Нахуя многозадачность-то вообще выдумали?
    Wednesday, January 17th, 2007
    11:23 am
    Quick-reference для кучи языков в PDF.
    Monday, January 8th, 2007
    12:53 am
    < div style='background-color:blue'><option ...
    Интересно IE воспринимает вот такой код:

    <form>

    <div style="background-color:blue;"><select><option>лошадка</option><option>чует</option><option>майонез</option></select></div>

    <hr>

    <div style="background-color:blue;"><select><option>лошадка</option><option>чует</option><option>майонез</option></select> </div>

    </form>

    Разница между двумя div'ами только в пробеле после </select> Если пробела нет - IE кладёт на background-color:






    Sunday, October 1st, 2006
    4:51 pm
    А у меня тут на пяти серверах в трёх странах пять роботов-ебоботов кушают длиннющую базу, каждый - свой кусочек, три сервера по возрастанию id, два - по убыванию. Скоро произойдёт великая смычка. Наблюдаю за этим процессом, и так прёт :) Вот всегда получал какое-то особенное удовольствие от разглядывания больших потоков информации.
    Monday, September 18th, 2006
    1:53 pm
    strtr()
    Одним хорошим людям один чувак сделал сайт. Науке неизвестно, какие программные продукты он использовал для создания оного, но в результате на одной странице весь русский текст перевёлся на птичий язык, да так и захардкодился при помощи entities. То есть, выглядеть она стала как "Êàê ïðèÿòíî ïîñëå òÿæ¸ëîé ðàáî÷åé íåäåëè", как не переключай кодировку в браузере.

    Мне эту страницу нужно перевести в читаемый вид. Я знаю лишь то, что текст начинается со слов "Жил был кот". Имея, таким образом, уже 8 букв, расшифровываю дальше. Увлекательное, оказывается, занятие, навроде кроссворда :) Я могу вам показать промежуточный результат, а вы можете доставить великую радость своим близким, если вслух и с выражением попробуете это прочесть:
    Read more... )
    Thursday, September 7th, 2006
    6:21 pm
    Вот так чувствовал себя главный сервер лжплюса вчера:
    2 графика )

    А вот так - 11 августа, когда я праздновал свой день рожденья :)
    ещё 2 графика )
[ << Previous 20 ]
My Website   About LiveJournal.com

Advertisement