Недавно, во время общения по jabber'u составил список книжек: 3 книги - которые произвели больше всего впечатления и 3 книги, которые обязательные к прочтению для всех. Сейчас я этот список озвучу и напишу пару слов почему. Собственно не уверен, что он правильный, так как составляется за 2 минуты, но возможно такие списки как раз и есть правильные.
1. В школе на меня произвела впечатление книга Оруэла "1984" за то, что человека не просто принуждали поверить в идею, и он притворялся, а за то что удалось насильно внедрить в человека идею, чтобы он действительно поверил.
2. Приблизительно в тоже время прочитал "Пасынки вселенной" Роберта Хайнлайна. Эта книга на меня произвела впечатление тем, что люди, которые несколько поколений подряд летящие на космическом корабле воспринимали стены корабля как конец мира и отказывались считать что за этими стенами может еще что-то быть. Мне кажется что и сейчас многие людие не хотят задумываться и воспринимать идеи, которые отличаются от того представления мира к которому они привыкли.
3. Третьей будет книжка Бориса Виана "Пена дней". Смешная и очень грустная. Она мне напоминает картины Сальвадора Дали. Там один герой выращивал ружья в земле, прижавшись к ним, передавая свое bv тепло. Но от любви у него у ружей изгибались дула в форме роз.
В этот список просятся Раскольников, "Прощай оружие", "Облако в штанах" Маяковского, Лем, братья Стругацкие и другие, но им уже места нет.
Список обязательных к прочтению попроще.
1. "Вы конечно шутите, мистер Фейнман". Эту книжку я прочитал не давно и очень сильно пожалел, что не прочитал ее раньше.
2. "О дивный новый мир" Олдоса Хаксли. Эта книжка немного похожа на Оруэла, но мне кажется более злободневной.
3. "Вино из одуванчиков" Рея Бредбери за красоту, тепло и сильную любовь к жизни.
если вы дочитали до конца напишите в комментариях 2-6 книжек по тому же принципу
суббота, 17 сентября 2011 г.
вторник, 15 июня 2010 г.
if (true)
Сегодня узнал о способе применения конструкции if(true).
C ее помощью можно закомментировaть код, с тем условием, что тот код, что в комметарии все-таки будет компилируемым.
Пример на java:
Вот так, по-моему достаточно оригинальное примениение
C ее помощью можно закомментировaть код, с тем условием, что тот код, что в комметарии все-таки будет компилируемым.
Пример на java:
void foo () {
if (true) {
return true;
}
// here goes some commented code...
}
void bar () {
if (false) {
// some commented code...
}
// do something
}
Вот так, по-моему достаточно оригинальное примениение
суббота, 5 декабря 2009 г.
Две маленьких истории про JUnit
Никогда не считал себя знатоком библиотеки junit, но несколько дней назад она меня удивила, при этом 2 раза.
А все началось с того, что после небольшого рeфакторинга все тесты из одного класса начали падать с неожиданной ошибкой.
код, тестов был похож на этот:
Около 10 минут не мог понять в чем ошибка: вроде бы всегда для тестов делал абстрактные классы, наследовал от них другие классы и все работало. Но не в этом случае.
Пришлось обратиться за помощью к коллеге.
А проблема оказалась в том, что конструктор класса FileTest перекрывает конструктор класса TestCase, принимающий значение типа String - имя теста. И даже не смотря на то, что при создании объекта AbstactTest вызывается конструктор класса TestCase без параметров нас это не спасает.
По всей видимости при запуске тестов вызывается конструктор у класса FileTest, а параметру name присваивается значение null. И что самое неприятное, что конструктор все-таки отрабатывает и c AssertionFailedError падают уже тесты. Ну да, я давно знал, что reflection - это отличная возможность выстрелить себе в ногу и вот, очередной раз в этом убедился.
В ходе дебаггинга выяснилась еще одна удивительная для меня особенность этих тестов.
После изменения класса FileTest
В консоль вывелось:
Я всегда считал, что конструктор для всех тестов должен вызываться только один раз, а метод setUp для каждого теста перед его запуском. А тут получается, что для каждого теста конструктор вызывается заново, по-моему это может сильно увеличить время выполнения тестов.
А все началось с того, что после небольшого рeфакторинга все тесты из одного класса начали падать с неожиданной ошибкой.
junit.framework.AssertionFailedError
at com.intellij.junit3.JUnit3IdeaTestRunner.doRun(JUnit3IdeaTestRunner.java:108)
код, тестов был похож на этот:
public abstract class AbstactTest extends TestCase {
public AbstactTest(String name) {
super();
// do something else...
}
}
public class FileTest extends AbstactTest {
public FileTest(String name) {
super(name);
}
public void test1(){/*...*/}
public void test2(){/*...*/}
}
Около 10 минут не мог понять в чем ошибка: вроде бы всегда для тестов делал абстрактные классы, наследовал от них другие классы и все работало. Но не в этом случае.
Пришлось обратиться за помощью к коллеге.
А проблема оказалась в том, что конструктор класса FileTest перекрывает конструктор класса TestCase, принимающий значение типа String - имя теста. И даже не смотря на то, что при создании объекта AbstactTest вызывается конструктор класса TestCase без параметров нас это не спасает.
По всей видимости при запуске тестов вызывается конструктор у класса FileTest, а параметру name присваивается значение null. И что самое неприятное, что конструктор все-таки отрабатывает и c AssertionFailedError падают уже тесты. Ну да, я давно знал, что reflection - это отличная возможность выстрелить себе в ногу и вот, очередной раз в этом убедился.
В ходе дебаггинга выяснилась еще одна удивительная для меня особенность этих тестов.
После изменения класса FileTest
public FileTest() {
super(name);
System.out.println("Constructor");
}
public void setUp() {
System.out.println("SetUp");
}
public void test1() {
System.out.println("Test 1");
}
public void test2() {
System.out.println("Test 2");
}
В консоль вывелось:
Constructor
Constructor
SetUp
Test 1
SetUp
Test 2
Я всегда считал, что конструктор для всех тестов должен вызываться только один раз, а метод setUp для каждого теста перед его запуском. А тут получается, что для каждого теста конструктор вызывается заново, по-моему это может сильно увеличить время выполнения тестов.
пятница, 27 ноября 2009 г.
Вино из одуванчиков
Эта книга про лето, она пропитана каким-то особым духом писателя Рея Бредбери. Здесь мальчик осознает, что он живой и потом понимает, что он должен когда-то умереть. Здесь нет рутины повседневности, но есть ритуалы и открытия, а каждый день особенный, каждый день происходит что-то, что стоит запомнить, записать.
Здесь есть старики, которые как машины времени хранят в себе прошлое, есть новые теннисные туфли, легкие как ветер, есть трамвай который звонко катится по улице и высекает снопы искр.
И если лето идет наперекосяк, если все идет не так как хотелось бы, друзья уезжают, умирают близкие люди и все вокруг как-будто стареет и разрушатся, и вот уже болезнь подкралась совсем близко, то надо этой для этой болезни собрать чемоданы и первым же поедом отправить ее домой.
А зимой можно будет насладиться вином из одуванчиков, вином в котором осталось капелька лета тысяча девятьсот двадцать восьмого года.
Здесь есть старики, которые как машины времени хранят в себе прошлое, есть новые теннисные туфли, легкие как ветер, есть трамвай который звонко катится по улице и высекает снопы искр.
И если лето идет наперекосяк, если все идет не так как хотелось бы, друзья уезжают, умирают близкие люди и все вокруг как-будто стареет и разрушатся, и вот уже болезнь подкралась совсем близко, то надо этой для этой болезни собрать чемоданы и первым же поедом отправить ее домой.
А зимой можно будет насладиться вином из одуванчиков, вином в котором осталось капелька лета тысяча девятьсот двадцать восьмого года.
суббота, 11 июля 2009 г.
Музыка
Музыка лилась из-за угла, тонким, но очень приятным ароматом. Она колыхалась на ветру, и слабый розовый запах приятно щекотал ноздри. Нежные ноты аккуратно кружились, создавая маленькие вихри, но не вырывались из общей мелодии. Музыка была плавная и почти осязаема. Это была красновато - розовая дымка, извивающаяся причудливыми узорами и постепенно растворяющаяся в серых и грубых формах города.
За музыкой был танец, невероятно легкий и красивый. Этот танец выплыл из-за угла и в своем кружевном полете пытался выпрыгнуть из себя. Танец кружился и замирал, он то подлетал высоко в небо, то опускался почти на землю, он излучал невероятные па, прокладывая свой путь и не видя препятствий. Танец излучал музыку. Шаловливые нотки как искорки выскользнули из него и разбились об асфальт.
Музыка пыталась окутать все вокруг, легкие разноцветные ленточки, кружились, создавая всеобщую гармонию. Они являли собой великолепное представление, словно бы это ветер кружил их. Музыка была прекрасной шалью, она не хотела проникнуть внутрь, не навязывалась, это была музыка для себя.
Танец был пористым и воздушным, его движения распадались на маленькие сценки, и собиралась воедино. Сквозь розовое музыкальное желе был виден истинный его смысл. Танец был одержим полетом, он лишь изредка касался асфальта, чтобы добавить искорок в этот мир.
Музыка ударила в окна, и они разбились тысячей разноцветных струек. Музыка вытекла на дорогу и растеклась, заняв все место, и не давая ничему помешать продолжить свой поток.
Танец, не замечая препятствий, продолжал свой полет. Он никуда не торопился, он задерживался, чтобы добавить своему узору изящность, чтобы все искорки, ленточки и воздушные шарики были на своих местах, чтобы никакой шорох никакое движение не могло его испортить.
Музыка изливалась фонтаном, яркие цвета заполонили улицу. Нотки, отскакивающие на стены домов, разбиваясь, превращались в разноцветные капельки. Музыка не была громкой, она была почти беззвучной, но в то же время изысканной, яркой и выразительной.
Танец постепенно удалялся. Яркие ленточки блекли и растворялись в пыли, шарики улетали в небо, несколько последних ноток упали на серый асфальт и превратились маленькую розовую лужицу, которая быстро испарилась на солнце.
За музыкой был танец, невероятно легкий и красивый. Этот танец выплыл из-за угла и в своем кружевном полете пытался выпрыгнуть из себя. Танец кружился и замирал, он то подлетал высоко в небо, то опускался почти на землю, он излучал невероятные па, прокладывая свой путь и не видя препятствий. Танец излучал музыку. Шаловливые нотки как искорки выскользнули из него и разбились об асфальт.
Музыка пыталась окутать все вокруг, легкие разноцветные ленточки, кружились, создавая всеобщую гармонию. Они являли собой великолепное представление, словно бы это ветер кружил их. Музыка была прекрасной шалью, она не хотела проникнуть внутрь, не навязывалась, это была музыка для себя.
Танец был пористым и воздушным, его движения распадались на маленькие сценки, и собиралась воедино. Сквозь розовое музыкальное желе был виден истинный его смысл. Танец был одержим полетом, он лишь изредка касался асфальта, чтобы добавить искорок в этот мир.
Музыка ударила в окна, и они разбились тысячей разноцветных струек. Музыка вытекла на дорогу и растеклась, заняв все место, и не давая ничему помешать продолжить свой поток.
Танец, не замечая препятствий, продолжал свой полет. Он никуда не торопился, он задерживался, чтобы добавить своему узору изящность, чтобы все искорки, ленточки и воздушные шарики были на своих местах, чтобы никакой шорох никакое движение не могло его испортить.
Музыка изливалась фонтаном, яркие цвета заполонили улицу. Нотки, отскакивающие на стены домов, разбиваясь, превращались в разноцветные капельки. Музыка не была громкой, она была почти беззвучной, но в то же время изысканной, яркой и выразительной.
Танец постепенно удалялся. Яркие ленточки блекли и растворялись в пыли, шарики улетали в небо, несколько последних ноток упали на серый асфальт и превратились маленькую розовую лужицу, которая быстро испарилась на солнце.
понедельник, 18 мая 2009 г.
небольшая аннотация
Этот рассказ можно понять по-разному, а можно вообще не понять. Сейчас вкратце расскажу, что же я в него хотел вложить.
В моем понимании капуста - это человек, немного потрепанный жизнью, что должно быть видно из того, что капуста грязная, поцарапанная. Но в каждом человеке, в глубине его души есть что-то хорошее, что-то прекрасное, что это такое я не знаю, может быть мечта, может быть что-нибудь еще. Но иногда так случается, что это хорошее запрятано очень глубоко и ни в коем случае не хочет показываться наружу. В данном случае герою рассказу удалось заглянуть внутрь "капусты" и разглядеть всю ее красоту.
Очень понравилось идея Павла, про то что мы не видим истинной красоты вещей.
Спасибо.
В моем понимании капуста - это человек, немного потрепанный жизнью, что должно быть видно из того, что капуста грязная, поцарапанная. Но в каждом человеке, в глубине его души есть что-то хорошее, что-то прекрасное, что это такое я не знаю, может быть мечта, может быть что-нибудь еще. Но иногда так случается, что это хорошее запрятано очень глубоко и ни в коем случае не хочет показываться наружу. В данном случае герою рассказу удалось заглянуть внутрь "капусты" и разглядеть всю ее красоту.
Очень понравилось идея Павла, про то что мы не видим истинной красоты вещей.
Спасибо.
воскресенье, 17 мая 2009 г.
Капуста
Капуста
Джон сидел на мятом, видавшем виды диване. Перед диваном стоял старенький стол, на котором лежали 2 кочана капусты средних размеров, купленные сегодня в магазине. Это были немного грязные кочаны. Верхние листья были поцарапаны и порваны, по ним было заметно, что они некоторое время где-то валялись и обращались с ними не очень-то бережно. Он встал с дивана и подумал, что надо эту капусту как-нибудь приготовить, например, сделать салат. Он взял один кочан в руки и повертел. "Неплохо бы помыть его", - подумал Джон, но идти мыть капусту ему было лень, и поэтому он просто оторвал один листочек снаружи. Грязный помятый лист капусты он небрежно бросил на стол. Оторвал еще один листок и положил рядом. Капуста прибрела приличный вид, появилась какая-то зеленость, свойственная растениям. Он оторвал еще один листок и еще... Капуста стала выглядеть намного свежее.
Он оторвал еще один листок и несколько удивился. Следующий лист уже был не зеленым, а скорее немного голубоватого оттенка. На лице Джона проступило озадаченное выражение. Может быть, процесс очистки капусты его так заколдовал, что ему началась мерещиться всякая ерунда. Да нет же! Все по-настоящему. Он внимательно присмотрелся и заметил, что капуста немного светится, в некоторых местах проступали довольно-таки загадочные голубые огоньки. Он аккуратно попытался оторвать еще один листок, но это оказалось не так просто. Капуста прижимала листок к себе, не давая его отделить. Джон почувствовал, что если он сделает резкое движение, то вся красота пропадет.
Джон со всей силы попытался оторвать листок, потом еще раз и еще. Капуста сопротивлялась. Капуста сопротивлялась настолько отчаянно, что казалось, то, что она скрывает, не должны видеть ни одни глаза. Что этот секрет ни должен открыться никому, даже ей самой. От этого Джону стало еще интереснее. Он зажал капусту между колен и двумя руками попытался отодрать листок. Без толку. Он громко выругался и хотел было кинуть капусту, но сдержался, и аккуратно положил ее на стол.
Прошло много времени и все-таки Джону ценой невероятных усилий удалось отодвинуть листок и заглянуть туда, внутрь, чтобы узнать, что же там такое прячется, что провоцирует эту невиданную силу скрывать чудеса от его, Джона глаз. Он уже мог ожидать увидеть многое, но увиденное его ошеломило. Там за листком был спрятан прекраснейший город. Голубоватое сечение излучали таинственные башни невероятной величины. Великолепные дворцы отливали золотом и светились мастерством их создателей. Чудесные парки в сочетании с современнейшими небоскребами наполняли город. По улицам летали высокотехнологичные машины. Разноцветные огоньки из окон домов приветственно сияли. Светло-серая луна освещала этот дивный город.
Джон смог заглянуть под листок всего на несколько секунд, после чего листок вернулся на свое место. Скрылся город со своими удивительными башнями, и капуста приняла свой обычный светло-зеленый облик. Перед снова ним лежала обыкновенная капуста.
Джон сделал шаг назад, его руки тряслись.
Он посмотрел на стол, увидел вторую капусту, и почему-то подумал, что если он от нее оторвет пару листиков, то там увидит нечто похожее....
Джон сидел на мятом, видавшем виды диване. Перед диваном стоял старенький стол, на котором лежали 2 кочана капусты средних размеров, купленные сегодня в магазине. Это были немного грязные кочаны. Верхние листья были поцарапаны и порваны, по ним было заметно, что они некоторое время где-то валялись и обращались с ними не очень-то бережно. Он встал с дивана и подумал, что надо эту капусту как-нибудь приготовить, например, сделать салат. Он взял один кочан в руки и повертел. "Неплохо бы помыть его", - подумал Джон, но идти мыть капусту ему было лень, и поэтому он просто оторвал один листочек снаружи. Грязный помятый лист капусты он небрежно бросил на стол. Оторвал еще один листок и положил рядом. Капуста прибрела приличный вид, появилась какая-то зеленость, свойственная растениям. Он оторвал еще один листок и еще... Капуста стала выглядеть намного свежее.
Он оторвал еще один листок и несколько удивился. Следующий лист уже был не зеленым, а скорее немного голубоватого оттенка. На лице Джона проступило озадаченное выражение. Может быть, процесс очистки капусты его так заколдовал, что ему началась мерещиться всякая ерунда. Да нет же! Все по-настоящему. Он внимательно присмотрелся и заметил, что капуста немного светится, в некоторых местах проступали довольно-таки загадочные голубые огоньки. Он аккуратно попытался оторвать еще один листок, но это оказалось не так просто. Капуста прижимала листок к себе, не давая его отделить. Джон почувствовал, что если он сделает резкое движение, то вся красота пропадет.
Джон со всей силы попытался оторвать листок, потом еще раз и еще. Капуста сопротивлялась. Капуста сопротивлялась настолько отчаянно, что казалось, то, что она скрывает, не должны видеть ни одни глаза. Что этот секрет ни должен открыться никому, даже ей самой. От этого Джону стало еще интереснее. Он зажал капусту между колен и двумя руками попытался отодрать листок. Без толку. Он громко выругался и хотел было кинуть капусту, но сдержался, и аккуратно положил ее на стол.
Прошло много времени и все-таки Джону ценой невероятных усилий удалось отодвинуть листок и заглянуть туда, внутрь, чтобы узнать, что же там такое прячется, что провоцирует эту невиданную силу скрывать чудеса от его, Джона глаз. Он уже мог ожидать увидеть многое, но увиденное его ошеломило. Там за листком был спрятан прекраснейший город. Голубоватое сечение излучали таинственные башни невероятной величины. Великолепные дворцы отливали золотом и светились мастерством их создателей. Чудесные парки в сочетании с современнейшими небоскребами наполняли город. По улицам летали высокотехнологичные машины. Разноцветные огоньки из окон домов приветственно сияли. Светло-серая луна освещала этот дивный город.
Джон смог заглянуть под листок всего на несколько секунд, после чего листок вернулся на свое место. Скрылся город со своими удивительными башнями, и капуста приняла свой обычный светло-зеленый облик. Перед снова ним лежала обыкновенная капуста.
Джон сделал шаг назад, его руки тряслись.
Он посмотрел на стол, увидел вторую капусту, и почему-то подумал, что если он от нее оторвет пару листиков, то там увидит нечто похожее....
Подписаться на:
Комментарии (Atom)
