В конце мая посетил у нас в офисе доклад моего коллеги про JIT в JVM. Тема очень интересная, да и Володя в ней отлично разбирается, но вот доклад у него получился очень неровный:
Послушать рекомендую, но за один раз будет очень тяжело.
среда, 12 июня 2013 г.
вторник, 11 июня 2013 г.
Розы - красные
В процессе изучения кода клана Паука учитель Суку вызвала одного из монахов в свои палаты.Суку сказала: "Во всех наших приложениях мы печатаем предупреждения жирным красным шрифтом. Каким образом это сделано?"
Монах ответил: "В нашей общей таблице стилей для этой конкретной цели я создал CSS-класс с именем boldRedText".
Суку сказала: "Хорошее, запоминающееся имя. К сожалению, губернатор хочет, чтобы его приложения способствовали спокойному настроению. Проследите, чтобы все предупреждения печатались бледно-фиолетовым курсивом".
Монах поклонился и вышел.
Изучив проделанную монахом работу Суку обнаружила, что он переименовал этот стиль в paleItalicVioletText, изменив ссылки на него в сотнях JSP. Она снова вызвала этого монаха.
Суку сказала: "Губернатор - очень особенный мужчина, и он решил, что печать предупреждений простым тёмно-синим шрифтом на сером фоне будет успокаивать гораздо сильнее. Проследите, чтобы были сделаны эти изменения".
Монах поклонился и вышел.
Изучив проделанную монахом работу Суку обнаружила, что он переименовал этот стиль в deepNormalBlueOnGrayText, опять сделав все необходимые изменения вдоль и поперек кода. Она снова вызвала этого монаха.
Суку сказала: "Губернатор - очень непостоянный мужчина, и он решил, что печать предупреждений подчёркнутым розово-красным шрифтом на кремовом фоне будет стимулировать пользователя к внесению исправлений. Проследите, чтобы были сделаны эти изменения".
Монах поклонился и вышел.
Изучив проделанную монахом работу Суку обнаружила, что на этот раз он не стал менять название стиля в многочисленных JSP. Вместо этого одно только определение deepNormalBlueOnGrayText было изменено так, чтобы он сейчас использовался подчёркнутый розово-красным шрифт на кремовом фоне. Суку вздохнула и снова вызвала этого монаха.
Когда монах вошёл в её палаты, Суку запустила несколько сюрикенов так, чтобы они пришпилили одежды удивленного монаха к деревянной двери. Одно лезвие прошло в опасной близости и чуть не изменило его частную жизнь.
Суку повернулась к клавиатуре, сказав: "Считайте, что это Ваш последний boldRedText".
Original: Roses are Red
Переходный период
Нас пытаются потихоньку перевести на электрнонный документооборот, но, видимо, не все проблемы с законодательством пока решены.
Раньше я писал заявление на отпуск и отдавал начальнику, который заверял и относил в отдел кадров. Сегодня я оформил электронную заявку, получил подтверждение от начальника, распечатал заявление, написал там даты из электронной заявки, подписал у начальника и сам отнёс в отдел кадров.
Раньше я писал заявление на отпуск и отдавал начальнику, который заверял и относил в отдел кадров. Сегодня я оформил электронную заявку, получил подтверждение от начальника, распечатал заявление, написал там даты из электронной заявки, подписал у начальника и сам отнёс в отдел кадров.
Тополиный пух
Уже покидая Москву заметил, что начал летать тополиный пух. Я ходил и постоянно чихал на него. В Питере вчера что-то стало появляться, но дождик очень спасает. Хотя дождём это назвать сложно - просто моросит. Обычная 100% влажность, как я это называю. Надеюсь что весь пух постепенно смоет...
понедельник, 10 июня 2013 г.
Соглашения
Некий монах был принят в клан Паука для сопровождения большой системы. При настройке среды разработки монах с ужасом обнаружил, что во всём приложении используются нестандартные соглашения по кодированию. Константы записывались не заглавными буквами, а в разных регистрах, но начинались с буквы 'k'. Имена полей класса заканчивались на '_fld'. И это ещё не всё.

Зная, что долг каждого монаха следовать лучшим практикам, и удивляясь, что его товарищи решили так не делать, монах кодировал каждое из своих небольших изменений в соответствии со стандартами, которые давно использовал. Все могли сразу сказать, где он ввёл новую константу или добавил несколько строк в середину древнего метода.
Через неделю к нему подошел главный монах, который сказал: "Учитель Суку очень впечатлена Вашей работой. Она приглашает Вас пообедать сегодня вечером с ней и другими учителями".
В назначенный час монах прибыл в палаты Суку и уселся за длинным столом среди великих людей, очень нервничая. Перед каждым стояла тарелка риса, на которой лежала целая сырая треска. Никто не говорил и не ел; все сидели склонившись в спокойном созерцании.
Когда последний гость уселся, учитель Суку удостоила собрание лёгким кивком. Не говоря ни слова каждый учитель встал на левую ногу, взял рыбу и положил её себе на голову.
Все глаза теперь смотрели на монаха, который сидел, недоумевая от увиденного. Понимая свое невежество в своде манер храма, он быстро встал на левую ногу, взял рыбу и положил её себе на голову. В этот момент монаха осенило.

Зная, что долг каждого монаха следовать лучшим практикам, и удивляясь, что его товарищи решили так не делать, монах кодировал каждое из своих небольших изменений в соответствии со стандартами, которые давно использовал. Все могли сразу сказать, где он ввёл новую константу или добавил несколько строк в середину древнего метода.
Через неделю к нему подошел главный монах, который сказал: "Учитель Суку очень впечатлена Вашей работой. Она приглашает Вас пообедать сегодня вечером с ней и другими учителями".
В назначенный час монах прибыл в палаты Суку и уселся за длинным столом среди великих людей, очень нервничая. Перед каждым стояла тарелка риса, на которой лежала целая сырая треска. Никто не говорил и не ел; все сидели склонившись в спокойном созерцании.
Когда последний гость уселся, учитель Суку удостоила собрание лёгким кивком. Не говоря ни слова каждый учитель встал на левую ногу, взял рыбу и положил её себе на голову.
Все глаза теперь смотрели на монаха, который сидел, недоумевая от увиденного. Понимая свое невежество в своде манер храма, он быстро встал на левую ногу, взял рыбу и положил её себе на голову. В этот момент монаха осенило.
Original: Conventions
воскресенье, 9 июня 2013 г.
Москва - Питер
Вернулся на вечернем Сапсане. По телевизору показывали Гараж. Весь вагон ржал в голос, но мне было грустно. Рязанова жаль.
СпортДепо
В Питере я так и не нашёл спортивной обуви нужного размера. Нашёл в Москве магазин в котором есть большие размеры. Там огромный выбор разнообразной экипировки и находится он в 10-ти минутах от площади трёх вокзалов. Кроме того, там устраивают распродажу, и мне удалось купить шиповки с заметной скидкой.
Равновесие
Лёшка наловчился самостоятельно кататься на самокате. Причём, равновесие держит и катается на одной ноге. Это ещё одно доказательство того, что младший охотнее учится у старшего, чем у родителей.А погоды в Москве стоят странные. С утра душно, а если солнце есть, то ещё и жарко. Потом небольшой кратковременный ливень с сильными потоками воды по дороге. И жара...
пятница, 7 июня 2013 г.
Питер - Москва
Выехали в 8:50, а ровно через 2 часа покинули Neste в Чудово, где заправились и попили кофе, погуляв минут 20. Дорога отстойная до самой объездной вокруг Новгорода, да и сама объезная - не сахар. В одном месте асфальт поплыл, видимо от жары, а потом застыл волнами сантиметров по 10 высотой. Зато потом дорога хорошая.
В Крестцы приехали в 12:30 и остановились минут на 20, чтобы погулять и традиционно потребить местные пирожки. Там я сменил Юлю за рулём и в 14:30 встал в пробку в Вышнем Волочке. Ходят слухи, что объездная уже строится, но она будет платной. Сквозь город тащился целых полчаса, аж ногу свело.
В 16:30 остановился у 500-го километрового столба, чтобы Юля меня сменила. Судя по тому, что мы едем из Рыбацкого, а показания бортового компьютера совпадают с километровыми столбами, нулевой километр находится у Петропавловки.
Через 20 минут попали в очередную пробку на объездной вокруг Твери. Новый мост построили, а старый закрыли, чтобы начать строить вторую очередь. Через полчаса выползли на ту сторону и не успели обрадоваться, как снова пробка - асфальт кладут.
В Клин приехали в 18:40 и потратили полчаса на McDonalds. Погулять не получилось, так как там нас застал ливень. ЛИВЕНЬ! Там я опять сменил Юлю за рулём и за час доехал до Новорижского. Дворники работали как сумасшедшие.
Дожди там хоть и сильные, но кратковременные. По Новой Риге проехали такое же расстояние за 20 минут, успев по пути и заправиться. Там мы свернули на А107 и потратили лишний час в пробке. Выезжающие со стороны Москвы дачники в нарушении всех правил пытались выехать на главную дорогу и повернуть налево. С одной стороны их можно понять: если бы они уступали дорогу, то с таким плотным движением по Малому Бетонному кольцу им бы пришлось там стоять все выходные. Но с другой стороны - сами виноваты: если бы проехали по Новорижскому ещё одну развязку, то имели бы преимущество.
Итого: за 13 часов проехали 736 км со средней скоростью 62.5 км/ч и сожгли 64.4 литра бензина, т.е. 8.7 литров на сотню. Пару часов потеряли на стояние в пробках, что на час меньше, чем пару лет назад. Расход бензина из-за бокса выше среднего на пол литра.
В Крестцы приехали в 12:30 и остановились минут на 20, чтобы погулять и традиционно потребить местные пирожки. Там я сменил Юлю за рулём и в 14:30 встал в пробку в Вышнем Волочке. Ходят слухи, что объездная уже строится, но она будет платной. Сквозь город тащился целых полчаса, аж ногу свело.
В 16:30 остановился у 500-го километрового столба, чтобы Юля меня сменила. Судя по тому, что мы едем из Рыбацкого, а показания бортового компьютера совпадают с километровыми столбами, нулевой километр находится у Петропавловки.
Через 20 минут попали в очередную пробку на объездной вокруг Твери. Новый мост построили, а старый закрыли, чтобы начать строить вторую очередь. Через полчаса выползли на ту сторону и не успели обрадоваться, как снова пробка - асфальт кладут.
В Клин приехали в 18:40 и потратили полчаса на McDonalds. Погулять не получилось, так как там нас застал ливень. ЛИВЕНЬ! Там я опять сменил Юлю за рулём и за час доехал до Новорижского. Дворники работали как сумасшедшие.
Дожди там хоть и сильные, но кратковременные. По Новой Риге проехали такое же расстояние за 20 минут, успев по пути и заправиться. Там мы свернули на А107 и потратили лишний час в пробке. Выезжающие со стороны Москвы дачники в нарушении всех правил пытались выехать на главную дорогу и повернуть налево. С одной стороны их можно понять: если бы они уступали дорогу, то с таким плотным движением по Малому Бетонному кольцу им бы пришлось там стоять все выходные. Но с другой стороны - сами виноваты: если бы проехали по Новорижскому ещё одну развязку, то имели бы преимущество.
Итого: за 13 часов проехали 736 км со средней скоростью 62.5 км/ч и сожгли 64.4 литра бензина, т.е. 8.7 литров на сотню. Пару часов потеряли на стояние в пробках, что на час меньше, чем пару лет назад. Расход бензина из-за бокса выше среднего на пол литра.
четверг, 6 июня 2013 г.
Следуй по большой дороге
Некая монахиня была склонна донимать учителя Бавана за его мудрость. Однажды она сказала: "Расскажите что-нибудь о высокоуровневых и низкоуровневых языках".
Баван ответил: "Сначала принеси мне бутылку лучшего жёлтого вина, что можно найти в провинции Две Бурные Реки".
Монахиня отправилась в эту провинцию и через неделю вернулась с бутылкой темной жидкости.
Баван сделал глоток и сказал: "Это вино слишком сладкое. Гораздо лучшую бутылку можно найти спрятанной в наших подвалах, хотя путь к ней усеян ловушками. Теперь слушай внимательно, что я скажу"...
Далее учитель подробно проинструктировал монахиню: какое направление выбрать, какую ногу ставить первой и какую - второй; сколько шагов сделать до поворота направо и сколько до поворота налево; как правильно спуститься по колодезной веревке, и как сильно потянуть серьгу на второй каменной статуе в третьей нише перед проходом через комнату Хитроспрятанных Ядовитых Стрел.

Монахиня выполнила все инструкции и вернулась через час, вся в холодном поту, но с нужной бутылкой.
Баван сделал глоток и одобрительно кивнул. Монахиня поклонилась и вышла просветлённой.
Тем же вечером монах того же клана подошёл к учителю Бавану и спросил: "Что Вы можете сказать о высокоуровневых и низкоуровневых языках?"
В ответ учитель пробормотал: "У меня нет мудрости, чтобы ответить на этот вопрос. Но принесите мне лучший рис из провинции Две Бурные Реки, и я скажу, как получить неделю тишины и две бесплатных бутылки вина".
Баван ответил: "Сначала принеси мне бутылку лучшего жёлтого вина, что можно найти в провинции Две Бурные Реки".
Монахиня отправилась в эту провинцию и через неделю вернулась с бутылкой темной жидкости.
Баван сделал глоток и сказал: "Это вино слишком сладкое. Гораздо лучшую бутылку можно найти спрятанной в наших подвалах, хотя путь к ней усеян ловушками. Теперь слушай внимательно, что я скажу"...
Далее учитель подробно проинструктировал монахиню: какое направление выбрать, какую ногу ставить первой и какую - второй; сколько шагов сделать до поворота направо и сколько до поворота налево; как правильно спуститься по колодезной веревке, и как сильно потянуть серьгу на второй каменной статуе в третьей нише перед проходом через комнату Хитроспрятанных Ядовитых Стрел.

Монахиня выполнила все инструкции и вернулась через час, вся в холодном поту, но с нужной бутылкой.
Баван сделал глоток и одобрительно кивнул. Монахиня поклонилась и вышла просветлённой.
Тем же вечером монах того же клана подошёл к учителю Бавану и спросил: "Что Вы можете сказать о высокоуровневых и низкоуровневых языках?"
В ответ учитель пробормотал: "У меня нет мудрости, чтобы ответить на этот вопрос. Но принесите мне лучший рис из провинции Две Бурные Реки, и я скажу, как получить неделю тишины и две бесплатных бутылки вина".
Original: You Take the High Road
Рыба
Несколько лет назад в Рыбацком построили большой пассажирский терминал. Но это было только начало. Сегодня я увидел, что началось строительство второй очереди многофункционального вокзального комплекса. Сдаётся мне, что с Московского вокзала вскоре могут убрать электрички, оставив только поезда.
среда, 5 июня 2013 г.
Случайные числа
У Сергея Лукьяненко подсмотрел сайт для генерации случайных чисел и не только. Там прикольно медитировать, случайным образом перебирая шутки. Ну а для писателей есть генератор имён, очень похожих на настоящие. У меня буквально сразу выпало: Harry Potter. Так вот как авторы имена для героев подбирают!
В тихом омуте
Учитель Банзен до поздней ночи боролся с проблемой дизайна. На его доске были три возможных подхода, каждый со своими плюсами и минусами: Банзен отчаянно пытался решить, какой из них лучше. Наконец, с красными глазами и дрожащими руками, испачканными чернилами, он покинул свой кабинет и начал ходить по коридорам Храма, чтобы очистить разум.
В конце концов он пришёл на кухню, которая была наполнена криками и звоном посуды; рано встав, повара бодрствовали, чтобы подготовить завтрак как положено.
Банзен бродил среди них, наблюдая за суетой их деятельности. Лук очищался, морковь нарезалась, куры ощипывались. Рис готовился, суп кипел, свинина шипела, яйца жарились.
Одна повариха, как он заметил, выполняла довольно простую задачу. Она перемешивала в горшке тёмную жидкость, относила его в тихий уголок и оставляла там без присмотра. Чуть погодя она возвращалась, чтобы извлечь содержимое, которое каким-то образом становилось густым. Она сделала так несколько раз.
"Что это?" - спросил её Банзен.
"Кровь утки", - пришёл ответ. "Я остужаю её для кровяного тофу".
Банзен поклонился и вышел.
Позже, тем же утром, послушник обнаружил, что Банзен снова в своём кабинете. Учитель сидел неподвижно, уставившись на доску: взгляд отсутствующий, руки пустые.
"Что Вы делаете?" - спросил послушник.
"Остужаюсь", - сказал Банзен.
В конце концов он пришёл на кухню, которая была наполнена криками и звоном посуды; рано встав, повара бодрствовали, чтобы подготовить завтрак как положено.
Банзен бродил среди них, наблюдая за суетой их деятельности. Лук очищался, морковь нарезалась, куры ощипывались. Рис готовился, суп кипел, свинина шипела, яйца жарились.
Одна повариха, как он заметил, выполняла довольно простую задачу. Она перемешивала в горшке тёмную жидкость, относила его в тихий уголок и оставляла там без присмотра. Чуть погодя она возвращалась, чтобы извлечь содержимое, которое каким-то образом становилось густым. Она сделала так несколько раз.
"Что это?" - спросил её Банзен."Кровь утки", - пришёл ответ. "Я остужаю её для кровяного тофу".
Банзен поклонился и вышел.
Позже, тем же утром, послушник обнаружил, что Банзен снова в своём кабинете. Учитель сидел неподвижно, уставившись на доску: взгляд отсутствующий, руки пустые.
"Что Вы делаете?" - спросил послушник.
"Остужаюсь", - сказал Банзен.
Original: Still Waters
вторник, 4 июня 2013 г.
Фотоаппарат
Сестра таланта
Гордость монаха Вангохана не позволяла ему так легко признать поражение. Из-за неё монах решил использовать незнакомый веб-фрейворк и далее, вопреки предупреждению учителя Суку.
"Теперь твой позор будет в два раза больше", - издевался монах Ландва. "Сначала за крах, который тебя ждёт, и потом за то, что сама учитель высказалась против твоего курса".

Поэтому Вангохан вернулся в свою каморку в полном унынии. Там он обнаружил небольшую жёлтую записку, прикрепленную к его монитору. Она была не подписана и надпись, сделанная незнакомой рукой, советовала ему отправить код монахине Жинг для изучения до того, как продолжить разработку.
"Это плохой совет", - подумал Вангохан - "ибо мне потребуется мужество, а Жинг не может встать на табурет, преодолев свою боязнь высоты". Тем не менее, было непохоже, что заметка является делом рук Ландвы. И так как Вангохан не знал никого, кто питал бы к нему злобу, он описал по электронной почте свои затруднения удалённой монахине.
"Я ничего не знаю об этом фреймворке" - написала монахиня в ответ. "Но всё-равно пришлите мне Ваш код".
Вангохан сделал, о чём его попросили. И менее чем через минуту зазвонил его телефон.
"Ваш фреймворк не правилен", - сказала Жинг. "Или же, Ваш код не правилен".
Это смутило и разозлило монаха. "Как Вы можете быть так уверены?" - спросил он.
"Я сейчас расскажу", - сказала монахиня.
Жинг начала рассказ с того, как она родилась в далекой провинции пятой из шести послушных дочерей. Её отец, сказала она, был смиренным сборщиком счёт, бедным, но умным и расчетливым; её мать имела киоск на рынке, где продавала случайные числа. В ярких деталях Жинг описала своё первый день в школе, вплоть до ровной текстуры затёртого пола из тикового дерева и едкого, но не неприятного запаха чёрной бродячей собаки, которая последовала за ней домой в один дождливый день.
"Хватит!" - крикнул раздражённый Вангохан, когда прошёл целый час, но не было никаких признаков, что повествование монахини подходит к концу. "Это не ответ на простой вопрос!"
"Как Вы можете быть так уверены?" - спросила Жинг.
"Теперь твой позор будет в два раза больше", - издевался монах Ландва. "Сначала за крах, который тебя ждёт, и потом за то, что сама учитель высказалась против твоего курса".

Поэтому Вангохан вернулся в свою каморку в полном унынии. Там он обнаружил небольшую жёлтую записку, прикрепленную к его монитору. Она была не подписана и надпись, сделанная незнакомой рукой, советовала ему отправить код монахине Жинг для изучения до того, как продолжить разработку.
"Это плохой совет", - подумал Вангохан - "ибо мне потребуется мужество, а Жинг не может встать на табурет, преодолев свою боязнь высоты". Тем не менее, было непохоже, что заметка является делом рук Ландвы. И так как Вангохан не знал никого, кто питал бы к нему злобу, он описал по электронной почте свои затруднения удалённой монахине.
"Я ничего не знаю об этом фреймворке" - написала монахиня в ответ. "Но всё-равно пришлите мне Ваш код".
Вангохан сделал, о чём его попросили. И менее чем через минуту зазвонил его телефон.
"Ваш фреймворк не правилен", - сказала Жинг. "Или же, Ваш код не правилен".
Это смутило и разозлило монаха. "Как Вы можете быть так уверены?" - спросил он.
"Я сейчас расскажу", - сказала монахиня.
Жинг начала рассказ с того, как она родилась в далекой провинции пятой из шести послушных дочерей. Её отец, сказала она, был смиренным сборщиком счёт, бедным, но умным и расчетливым; её мать имела киоск на рынке, где продавала случайные числа. В ярких деталях Жинг описала своё первый день в школе, вплоть до ровной текстуры затёртого пола из тикового дерева и едкого, но не неприятного запаха чёрной бродячей собаки, которая последовала за ней домой в один дождливый день.
"Хватит!" - крикнул раздражённый Вангохан, когда прошёл целый час, но не было никаких признаков, что повествование монахини подходит к концу. "Это не ответ на простой вопрос!"
"Как Вы можете быть так уверены?" - спросила Жинг.
Original: The Soul of Wit
понедельник, 3 июня 2013 г.
Деление на ноль
В процессе перевода очередного коана я наткнулся на замечательную подборку, откуда узнал следующее:
На испытаниях Су-24 регулярно случался отказ аппаратуры бомбометания. Причем происходило это только в том случае, если на цель заходил летчик-испытатель Ильюшин. Причина оказалось тоже не сложной. Только он заходил на цель с точностью, превышавшей машинную точность. Получался «машинный нуль», после чего шел сбой из-за попытки деления на ноль.
Не число
К учителю Кайму подошёл монах клана Паука и сказал: "В JavaScript при делении нуля на ноль, получается NaN: не-число. Однако, typeof(NaN) является числом. Какой смысл можно найти в таком языке, где значение является и тем, и не-тем?"Кайму дал монаху монету, сказав: "На дороге Белой Крапивы живет пекарь, который продает лепешки такие круглые, как самый совершенный нуль. Купите столько, сколько сможете, и принесите их мне".
Монах сделал, как ему было велено. Когда пекарь получил оплату, он вышвырнул монаха из магазина и бросил монету ему вслед.
"Фальшивые деньги", - сказал пекарь.
По возвращении в храм монах нашёл одного из садовников, поменялся с ним одеждой и послал садовника к учителю Кайму одного.
Кайму позабавил столь явный обман. "Монах" - сказал он. "Где мой хлеб?"
Не-монах ответил согласно наставлениям монаха: "Был разделен поровну среди тех, кто помогал мне нести его."
Кайму был удовлетворен.
Комментарий Ци
Бесполезные деньги, подражание монаху, фиктивный хлеб, ложная концовка.Стихотворение Ци
Кайму встретил древнего воина: потерянного и отчаявшегося,Ибо он не мог вспомнить своё имя.
Учитель дал ему монету, сказав: "Это вам от Кайму".
Солдат заплакал от радости: "Тогда я должно быть не Кайму!"
Original: Not A Number
Подписаться на:
Сообщения (Atom)



