2009 / 02 / 06

И еще про синтаксис JavaScript

Кто о чем, а вшивый о бане я о синтаксе в javascript.

Дело в том, что часто внутри функции нужно проверить, переданы ли правильные параметры и переданы ли вообще. Ну и вот один из самых коротких способов это сделать. Ничего фантастического тут нет, старый и проверенный способ. Кто может что сказать о достоинствах и недостатках этого метода?

1
2
3
function destroyTheWorld (when, byWhom) {
    if (!when||!byWhom) return 'fuck off';
};

Если кто не знает, оператор логического отрицания ! в JavaScript вернет true если ему передан false, '' (пустая строка), 0, null, undefined. Во всех остальных случаях оператор логического отрицания вернет false. На всякий случай, проиллюстрирую:

!0 === !'' === !null === !undefined === !false === true;

Таким образом, если мы не передали никакого объекта или передали null, то функция завершит свою работу и вернет в качестве результата нехорошее слово.

Внимательные люди могут спросить — а что, если передать true? Функция завершит работу при вполне валидном параметре?
Я могу на это ответить примерно так: если вы передаете в функцию булевую переменную, то почти наверняка эта переменная — рычаг, т.е. в зависимости от нее меняется поведение функции. И обработка аргументов, таким образом, будет вестить несколько другая. Скажем, такая:

1
2
3
4
5
6
7
8
function shouldWeDestroyTheWorld (acceptance) {
    if (acceptance) {
        World.getInstance().destroy();
    } else {
        World.getInstance().armageddon = 'stopped';
        World.getInstance().destructionTimer.stop();
    }
}

И если вы опустите этот аргумент, то по эффекту это будет равнозначно передачи false.

2009 / 01 / 27

Обзор книги: Том Питерс. «Основы. Тренды.»

Выполняя данное самому себе обещание — а именно, читать в день не меньше 50 страниц полезной книги, я вчера я дочитал книгу Тома Питерса «Основы. Тренды».

Если вы читали мою предыдущую рецензию одной из его книг, то вы наверное в курсе, что я являюсь его яростным поклонником, поэтому при чтении этой рецензии стоит иметь это ввиду.

Как известно, немалую долю в арсенале фирменных приемчиков Тома Питерса занимает такая штука, как эпатаж — в данном случае под этим словом я понимаю манеру выкопать какой-нибудь неизвестный факт или неизвестную трактовку факта и сунуть ее под нос читателю. У читателя, который никогда и не слышал про такое, произойдет слом шаблона, и он станет гораздо податливее для убеждения и для усвоения того, что говорит сверх-гуру1.

К сожалению, а может быть и к счастью, я уже достаточно давно прочитал замечательную книгу Алана и Барбары Пиз «Язык взаимоотношений», поэтому информация о том, что мужчины и женщины — разные, для меня не оказалась новостью. Я и так в курсе, что половинки человечества по разному живут, стареют, воспринимают окружающую действительность, по разному думают, говорят и слушают. Ну и, что важно знать всем людям, так или иначе завязанным на бизнес (то есть всем людям :), они по разному покупают. Так как я все это уже знал и, более того, с этим уже смирился и, можно сказать, «грокнул2» это знание, то главы, написанные Мартой Барлетта3, для меня оказались довольно-таки скучным повторением пройденного. Поэтому всех интересующихся почему женщины поступают вот так, а не иначе, как с ними разговаривать и как они покупают, я отсылаю на озон за книгой «Язык взаимоотношений».

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

Ну и по устоявшейся традиции выкладываю те выписки, которые я сделал, читая эту книгу. Как обычно, мысли — автора, формат — мой:

  • Мы (мужчины) подшучиваем над склонностью женщин покупать, при этом мы ведем себя (строим маркетинговую политику, рекламируем, упаковываем, продаем товар) так, будто покупатель — мужчина.
  • Очень часто, даже если женщина не присутствует лично при покупке какой-либо вещи (автомобиля, к примеру), она все равно незримо присутствует — (она подбивала мужа сходить именно в эти выходные, обсуждала с ним цвет, марку, количество мест и прочее). Так что очень и очень глупо пытаться игнорировать женщин даже в очень и очень «мужских» товарах. А уж в остальных товарах прежде всего надо ориентироваться на то, чтобы они понравились женщине. И, кстати, это касается не только товаров, но и услуг, и всего прочего.
  • Население в развитых странах стареет. В развитых странах средний возраст непрерывно увеличивается. При этом, эти «новые старики», в отличии от предыдущих поколений, вовсе не настроены пассивно доживать последние годы своей жизни — напротив, выйдя на пенсию, они только начинают жить и тратить. Следует помнить, что их все больше, что у них активная жизненная позиция, и у них дохрена денег (и их будет все больше). Кстати, женщин среди них тоже больше (мужчины живут меньше), причем богатых женщин (эти женщины как сами заработали состояния, так и унаследовали состояния мужей).

купить на Озоне книгу Тома Питерса & Марты Барлетта «Основы. Тренды»

купить на Озоне книгу Аллана и Барбары Пиз «Язык взаимоотношений мужчина-женщина»

Примечания:

  • сверх-гуру — это Том Питерс. По крайней мере его так называют некоторые издания и критики.
  • грокинг — термин, придуманный Робертом Хайнлайном. Означает что-то вроде «впитать знание». Подробнее можно прочитать здесь: http://alternativereality-alias.blogspot.com/2008/01/blog-post_26.html
  • Марта Барлетта — соавтор книги, о которой я тут распинаюсь. Часть глав написана ею.

2009 / 01 / 26

В программисты бы пошел, пусть меня научат

Думаю, я стал программистом в основном потому, что в Нерюнгринской гимназии, в которой я учился, был компьютерный класс. И учительница по информатике разрешала ребятам оставаться после уроков и играть в Duke Nukem 3D, WarCraft 2 и прочие времяубивалки. Но разрешалось посещать кабинет информатики (и оставаться после уроков) только тем, кто посещал факультет информатики и решал на basic’e разные задачки — например, вывести числа от 1 до 256, раскрашенные в разные цвета спектра, и прочие чудовищно сложные и безумно полезные штуки.

Разумеется, это далеко не единственная причина и даже не причина вовсе — это первый толчок в направлении IT, и кто знает, возможно, не будь его, я бы стал экономистом, юристом, пекарем, токарем, военным или еще кем-нибудь.

А у вас, дорогие читатели, что повлияло на выбор будущей профессии?