пятница, 7 сентября 2012 г.

Прерывание

Сообщили, что некий монах не пожелал покинуть свой ​​терминал. Два дня он провёл без еды и сна.

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

    while (true) {
        /* do nothing */
    }

"Я утверждал, что цикл должен выполняться пока сама правда истинна", - сказал монах. "Но если я нажму кнопку 'Прерывание', то цикл прервётся. Смысл в том, что в этот самый момент правда уже не будет истинной. Как любой из нас смеет тревожить программу? Мы можем привести хаос в мир!"

Учитель Java протянул руку и вытащил вилку из розетки. Экран погас.

"Теперь цикл никогда не будет прерван," - сказал учитель.

Разум монаха успокоился.

Original: Interrupt

Качай - нехочу

Сегодня прочитал, что под Android выпустили μTorrent. Может это и удобно, но батарейку жалко. Да и WiFi у меня отрубается при выключении экрана.

На мой взгляд, лучше бы они выпустили управление удалённым клиентом, запущенным на сервере. А то приходится либо из Windows удалённо запускать рабочий стол, либо через RDP-клиент заходить, что не совсем удобно.

Хочу арбуз

Обратили внимание, что сейчас у нас не продают арбузы в клетках. Возвращаясь поздно вечером я спросил у продавцов дынь, винограда и прочих фруктов: "Что за фигня?"

Мне ответили, что их за арбузы сильно гоняют. Максимум, что можно попробовать - это найти арбуз на рынке. Я же брал в Ленте, но они там какие-то безвкусные.

Пришлось взять дыню, чтобы утешить...

Ни да, ни нет

Монахиня клана Следа Слона сидела на столе, скрестив ноги, и спокойно созерцала диаграмму Сущность-Связь на доске.

Учитель Java увидел это и подошёл.

Бог Молчания Между Словами уже был в комнате.



Монахиня показала на диаграмму. "Этот столбец с именем завершено объявлен целочисленным. Анализ данных показывает, что он содержит два уникальных значения: ноль и единица. Я полагаю, что ноль означает ложь, а единица - истину".

Учитель сказал: "Только инициализация может сказать, что считается с помощью этих чисел".

Бог Молчания Между Словами сказал: "Наличие единственного нуля подразумевает наличие единицы для его подсчёта, затем двойки для подсчёта их обоих и так далее, до бесконечности. Разве вселенская весна выглядит так из скорлупы яйца змеи?"



Монахиня подняла два пальца на правой руке. "Я рассмотрела хранение двойки в некоторых случайных строках, чтобы просто понаблюдать за воздействием на приложение".

Учитель сказал: "Вы хотите определить, рассматривается ли истина как наличие единицы или как отсутствие нуля".

Бог Молчания Между Словами сказал: "Отсутствие нуля означает наличие. Наличие нуля означает отсутствие. Когда змея пожирает свой хвост вплоть до кончика своего языка, то что остается?"



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

Учитель сказал: "Это отсутствие значений является либо проницательной паузой, которая предшествует лжи, либо мягким затишьем перед раскрытием истины. Его значение определяется тем, чем станет значение. И только тогда, когда оно перестанет существовать, мы сможем понять, что же это было".

Бог Молчания Между Словами сказал: "Призрак заимствует форму усопших. Но какую форму мы можем присвоить духу ещё нерождённых?"



Монахиня сцепила пальцы. "Перед тем, как приложение запросит базу данных, значение этого столбца неизвестно. После этого, пустые ячейки этой колонки будут умышленно представлены в виде null типа Boolean. Это значение одновременно и известно, и неизвестно".

Учитель сказал: "Мы узнали только, что мы ничего не узнали, но это основа мудрости".

Бог Молчания Между Словами сказал: "И мудрец, и дурак ушли в могилу с одинаковой уверенностью: они оба считают, что мудрец был дураком. Где же тогда может быть найдена мудрость?"



Монахиня сложила руки на коленях. "Целочисленный null, хранимый в SQL, становится логическим null в памяти. Два ничто совершенно разной природы. Как могут быть неравны отсутствия?"

Учитель кивнул.

Бог Молчания Между Словами поднял бровь.

Original: Neither Yes Nor No

Клан Следа Слона

Специалисты уровня хранения данных. Где бы мы были без наших баз данных и их API? Без JDBC, SQL или Hibernate? Представьте этот мир: лишенный дисковой памяти, без таблиц и последовательностей, без триггеров и хранимых процедур и бесконечное, бесконечное улучшение производительности...

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