воскресенье, 9 февраля 2014 г.

[prog.flame] Не повезло человеку, что уж поделать...

Ну да ничего, он еще, судя по всему, человек молодой. Либо научится чему-нибудь, либо найдет себя в какой-то другой области.

[life.photo] Прослушал мастер-класс "Профессиональная работа со вспышкой"

Прослушал еще один мастер-класс в виртуальной школе Profile. На этот раз это мастер-класс Александра Света "Профессиональная работа со вспышкой". Для интересующихся немного подробностей ниже.
У меня в жизни было несколько волн увлечения фотографией: одна где-то в 1980-1983-м (Зоркий-С), затем в районе 1988 (Зенит-ЕТ), затем с 2003 по 2006 (Nikon F65), последняя волна, уже полностью цифровая, с 2011-го. Но никогда я не учился пользоваться вспышкой. Вроде бы за это время в голове как-то увязались понятия светочувствительности, выдержки и диафрагмы. Что-то понял про оптику. Что-то про условия съемки. Но вот вспышка и ее использование -- это абсолютная терра инкогнита. Поэтому, когда в очередном рекламном письме от Profile я увидел мастер-класс с обещанием рассказать основные вещи о вспышке, то с радостью и энтузиазмом на данный мастер-класс записался.
Сразу скажу, что ожидания мастер-класс оправдал все и более, чем на 100 процентов. Александр Свет в начале мастер-класса сказал, что он хочет сделать такой рассказ, который бы он сам хотел услышать лет 9 назад. И именно такой рассказ он и сделал. Действительно, для начинающих фотографов рассказано и показано все и, может быть, даже больше. Дальше рассказывать бесполезно, материал все равно не будет усваиваться из-за отсутствия практической базы. Дальше нужно просто обкладываться оборудованием и пробовать, пробовать и еще раз пробовать.
По самому мастер-классу могу сказать лишь две вещи. Во-первых, он длился больше трех часов. Почему-то Profile письмо с напоминанием вовремя не прислал и в живую мастер-класс я не слушал, тупо забыл о его начале. Но это было только к лучшему. Воспользовавшись архивом Profile я посмотрел мастер-класс позже, разбив просмотр на три части, каждая приблизительно по часу. И к концу каждого часа было ощущение, что еще чуть-чуть и информация будет уходить мимо меня, я уже не в состоянии буду ее воспринимать. Как люди смогли пережить прямую трансляцию с одним 10-минутным перерывом -- хз. А вот возможность Profile затем смотреть запись в течении двух недель -- это есть рулез!
Во-вторых, когда Александр Свет рассказывает какие-то общие вещи и когда он сопровождает рассказом демонстрацию конкретных приемов -- это как будто два разных человека. В первом случае проявляется некое косноречие, слова-паразиты, повторы, не очень четко выстроенные фразы и на ходу выдумываемые объяснения/примеры. Во втором случае четкая и лаконичная речь матерого проффи. Контраст для меня был разительным. Думаю, что если Александр чуть потренируется, порепетирует и подготовит для себя куски выступлений общего характера, то ценность курса возрастет вообще до невиданных высот. Но это уже, скорее, придирка старого пердуна, нежели критика учебного курса.
В общем, если кто-то хочет узнать основные вещи об использовании вспышке при фотосъемке -- данный мастер-класс обязателен к просмотру. Это тот самый случай, когда пару часов просмотра мастер-класса дадут больше, чем самостоятельное прочтение нескольких книг.
Если говорить о том, что я сам для себя вынес из курса, то это банальные вещи: чудес не бывает, для получения приличных результатов нужно хорошее оборудование и большой опыт. Посему, если я решу развиваться в этом направлении, нужно будет серьезно обдумать приобретение еще одной (а то и двух) вспышек, пары софтбоксов, стоек, и, возможно, радиосинхронизаторов :)

[prog.flame] Какая страшная штука -- этот ваш ООП!

Настолько страшная, что нужно какие-то правила и ограничения для себя выдумывать:

Классы большей частью используются, как модули.

Наследование большей частью одноуровневое. Варианты разбираются через variable as Class.

Виртуальные функции и другие типы наследования и использования классов используются редко. Виртуальные функции они скрывают логику и плохо расширяются (см. expression problem). Наследование глубиной больше 1 тоже скрывает логику и его трудно сделать правильно.

Объекты классифицируются на неизменяемые и IORef-like. Неизменяемые всегда пересоздаются вместо изменений, IORef-like переписывают свое содержимое заново созданными значениями.

Последнее позволяет создавать коллекции, которые можно итерировать, не опасаясь вносить в них изменения.

Иначе, видимо, такая херня выходит... :)

Я, наверное, уже слишком старый и слишком больной на голову человек. Но, думается, лучше всего ООП вообще и использование ООП для проектирования ПО в частности, было описано всего в двух книгах. У Бьерна Страуструпа в его "Язык программирования C++" (если не ошибаюсь, начиная со второго издания там есть несколько глав, посвященных проектированию ПО, в третьем специальном издании они были точно и это было чуть ли не лучшее, что я читал по проектированию с применением ООП). И у Бертранда Мейера в "Объектно-ориентированное конструирование программных систем" (хотя там чуть ли не сразу идет проецирование материала на Eiffel).

Все остальное -- будь то хоть Гради Буч, хоть Алан Кей, хоть еще кто угодно -- все это фигня и пространное изложение богатства внутреннего мира автора.

[life.music] Обалдеть. Гитарист Estas Tonne

Музыкальная композиция почти на 20 минут. Я не смог оторваться от просмотра ни на секунду.

Как народ у него за спиной смог безучастно сидеть в кафе -- не представляю.

Очень жаль, что по жизни у меня не было возможности оказаться рядом с таким исполнителем с фотоаппаратом. Остается только надеяться, что может быть, когда-нибудь... Но огромной белой завистью завидую тем, у кого такая возможность есть: три-четыре кадра с такого выступления получить легко, даже с моими кривыми руками. И это, вполне возможно, будут те кадры, которыми можно будет гордиться всю оставшуюся жизнь.

PS. Ссылки на видеозаписи Estas Tonne был найдены здесь.

пятница, 7 февраля 2014 г.

[work] Интервэйл 2.0

В последнее время некогда было писать в блог. Поскольку вот уже три недели, как я вернулся в Интервэйл. Из предыдущей шайки-лейки эффективных менеджеров, пришедших в компанию в 2012-2013, не осталось никого. Новой же команде управленцев понадобился мой опыт и знания и теперь я официально называюсь директором департамента разработки и внедрения.

Решение было очень непростым. Ведь нельзя дважды войти в одну и ту же воду. Да и ситуация в компании, после всех потерь и потрясений уже не та, что в начале 2013-го. Но, тем не менее, решился. В Гомельском офисе Интервэйла работают потрясающие люди, упустить шанс поработать с ними я не смог.

Пока тяжко. Чем все закончится не знаю. Загадывать не берусь. Пусть время все расставит по своим местам само.

На блоге такой разворот событий наверняка скажется не лучшим образом. Тем не менее, хочу попросить читателей не переключаться, полностью блог я забрасывать не собираюсь. Наверняка напишу еще и про программирование, и про управление, и про дартс, и про фото, и про прочитанные книги, и вообще... Stay tunned :)

воскресенье, 2 февраля 2014 г.

[life.cinema] Очередной кинообзор (2014/01)

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

Волк с Уолл-Стрит. На мой взгляд, если это и не шедевр, то крайне близко к тому.

Афера по-американски. При просмотре меня несколько раздражал неспешный стиль повествования. Но, в целом, фильм понравился.

Курьер из “Рая” Весьма приятный фильм. Посмотрел с удовольствием.

Без изъяна. Очень добротный, оставляющий хорошее впечатление фильм.

Любовь в большом городе 3. Приятная российская комедия. Чего-то большого ожидать не стоит. Но добрый, местами смешной. Шутки от Киркорова про Тимати отдельно доставляют.

Советник. Странное впечатление, как от лоскутного одеяла, где отдельные лоскутки сделаны мастерски и на грани шедевральности, но целостной картины не складывается.

Телекинез. Фильм средненький, но лучше, чем я предполагал. Особенно понравилась игра Джулианы Мур в роли матери главной героини. Да и сама главная героиня выступила под стать своей матери.

Уцелевший. Если отдать должное хорошему техническому воплощению фильма, то смысл картины и цель ее создания остались для меня загадкой. В начале фильма поставлен вопрос ребром: либо жизни невооруженных противников, либо жизни солдат. Выбор был сделан в пользу жизни противников. Итогом чему стала гибель, как минимум, десятка американских военнослужащих и лишь один из них чудом остался в живых. Попытка сделать из такого выбора что-то героическое, на мой взгляд, изначально обречена на провал. Отсюда и негативное впечатление после просмотра всей картины.

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

Голодные игры: и вспыхнет пламя! Редкая по затянутости и степени маразма муть.

воскресенье, 26 января 2014 г.

[prog] Немного информации о развитии архитектуры/инфраструктуры eBay с эмоциональными комментариями

Участвуя в обсуждении вчерашней заметки про перспективы .NET вспомнил, что когда-то в какой-то презентации об эволюции архитектуры eBay я видел примеры миграции платформы с Windows на Unix. Решил найти эту презентацию и утащить к себе в блог. Вот она:

Попутно нашлось еще несколько презентаций на эту тему. Для меня они оказались интересными не смотря на свой уже довольно почтенный возраст, все-таки 2007 и 2008-2009 годы -- это для ИТ очень давно :)

Upd. Еще одна презентация нашлась:

Так же нашлась PDF-ка из разряда маркетингового булшита success story, рассказывающая о том, как специалисты Sun помогали eBay создавать новую архитектуру на базе J2EE: eBay Creates Technology Architecture for the Future.

Кстати говоря, последняя PDF-ка заслуживает прочтения, т.к. дает больше информации о том, как же именно eBay переходил от старой разработки на C++ к новой архитектуре на Java. Подозреваю, что процесс был непростой и болезненный. В eBay было свое подразделение разработки с более чем 100 сотрудниками, в основном C++ разработчиками. Специалисты из eBay проанализировали технологии Java и .NET и остановили выбор на Java. Но, т.к. своих спецов по Java у них практически не было, то была нанята команда консультантов из Sun. Эти консультанты помогали как в разработке будущей архитектуры, так и в выборе подходящих инструментов (например, IBM WebSphere в качестве сервера приложений), а так же обучали разработчиков eBay (не только связанным с Java вещам, но и технологиям проектирования и разработки ПО вообще). И, как мне представляется, привлечение этой команды консультантов стало одним из факторов успеха при разработки и внедрении нового поколения софта eBay.

Почему я думаю, что этот процесс был болезненным? Потому, что мне доводилось оказываться в роли руководителя сидящей на поддержке старого решения команды, тогда как всеми явно осознается необходимость создания чего-то нового, более мощного и удобного. Да только текущая загрузка команды не позволяет это сделать в нормальном режиме. Полагаю, что на рубеже 1999-го и 2000-го годов в eBay было именно так: все силы уходили на поддержание написанного на C++ монстра (ISAPI DLL-ка, собираемая из 3.3 миллионов строк C++ кода!). Поэтому приглашение сторонней команды экспертов выглядит разумным шагом.

Однако, я не могу поверить в то, что в такой большой команде C++разработчиков eBay не оказалось ни одного инициативного разработчика с собственными идеями о перестройке архитектуры eBay. Наверняка были люди, которые задолго до 1999-го понимали, что ISAPI DLL -- это тупиковый путь, что нужно искать альтернативы. Наверняка эти альтернативы обсуждались между своими и, я просто уверен в этом, наверняка о них докладывалось руководству. Только в итоге руководство решило нанять консультантов-тренеров со стороны. Знакомая картинка... :(

Ну и еще один момент, специально для желающих похоливарить и пообсуждать, какое же говно этот ваш C++. Разработчики eBay столкнулись с внутренним ограничением компилятора на количество методов класса! Подозреваю, что речь может идти о Microsoft Visual C++ 6.0, с коим мне пришлось провести в обнимку очень много времени. Так же я прекрасно представляю возможности Java времен 1998-2001 годов. И можете делать со мной что хотите, но я не могу поверить, что в Java были и/или есть языковые возможности, не позволяющие разработчику дойти до такой степени маразма, а именно: впихнуть в один класс столько методов, чтобы компилятор был не в состоянии скомпилировать этот класс из-за своих собственных ограничений. Таких возможностей в Java не может быть в принципе. Единственный фактор, который может привести к возникновению таких проблем в C++ -- это давление со стороны менеджмента: нефиг тут думать, у нас производственные планы горят, давай-давай, time-to-market matters и пр. менеджерское дерьмо... Чтобы потом за большие деньги нанять сторонних консультантов и переписать все к едрене-фене.