Thursday, July 31, 2008

В поисках смысла

Все обращается вокруг любви, жизни и смерти.

Tuesday, July 29, 2008

Ни-че-го. Ни-че-го-не-де-ла-ни-е.

Этот день посвящается частушкам в стиле System Of A Down.

Wednesday, July 23, 2008

О нереальных сроках

Знакомая ситуация: задание получено позавчера, вчера поменялась спецификация, день работы пошел насмарку, а сегодня к вечеру требуют, чтобы все работало? Что же делать? Сроки «железные», не может быть и речи о том, чтобы перенести дату сдачи! Нет, никому не интересно, какие там у вас проблемы. Нужен результат, не важно, каким путем. Всё должно быть готово к вечеру. Точка. Сейчас мое мнение такое: не бывает «железных» сроков. Никто ещё не умирал от того, что сдача проекта задерживается на пару дней или недель. Это неприятно, это не всегда профессионально, но это так. Это всего лишь ошибка в планировании времени. В чем она кроется — другой вопрос, достойный отдельного разбора. В этой же ситуации выбор идет между здоровьем, личной жизнью и работой. Гораздо спокойнее будет один раз понять, что сроки — это не гора, их можно сдвинуть. И в худшем случае их действительно перенесут. Возможно, виновный (а крайним всегда будет тот, кому работу поручили) понесет денежное наказание, но это случается довольно редко. Вот и всё. Разве стоит из-за этого надрываться, собственноручно выжимая из себя все соки, недосыпать, портить отношения с родными и близкими, раздражаться на коллег, губить здоровье? Уверенность, что все делалось по-честному, в меру сил и способностей, что в худшем случае сроки перенесут подарят душевное спокойствие и удовольствие от работы, какими бы сложными условия не были. Трудитесь над интересными проектами, получайте опыт и достойное вознаграждение и помните, что нет ничего невозможного. В том числе сроков, которые невозможно было бы перенести. Подобные мысли вряд ли понравятся руководителям, ведь это как будто бы распускает программистов. Но я так не считаю. Даже если программист часто «заваливает» все сроки, нужно вначале разобраться, почему так происходит, а не подозревать в каждом потенциального бездельника. Вряд ли виной тому будет надежда на то, что сроки перенесут. Нужно понять, что перенос сроков не нравится никому, а не только менеджерам. Понять, что мера эта вынужденная, но необходимая. Необходима она прежде всего для того, чтобы сберечь людей в команде. Многие могут надрываться и по полгода чтобы вытянуть проект, но по завершении разбежаться и забыть о нем, как о страшном сне. А вот от этого точно никто не выиграет, ведь собрать новую команду заново будет стоить гораздо дороже. UPD: пока вы тут о сроках думаете, жизнь проходит мимо

Friday, July 18, 2008

Der Userpic

Какого рода слово «аватарка»? Кто-нибудь вообще знает, откуда оно появилось?

Thursday, July 17, 2008

О пользе организации

Пару дней назад я поделился мыслями о том, как можно обойти баны на определенные сайты. Но на самом деле, для меня эта тема интересна только с технической точки зрения. В целом, я считаю, что все социальные сети и развлекательные сайты просто-напросто воруют время. Поэтому сегодня я хочу рассказать о том, . Часто бывает так, что пока программист работает над свим кусочком задания (таском), его попеременно отвлекают коллеги и начальство. Коллеги интересуются, когда будет готова та или иная часть работы, просят сделать еще каки-нибудь дополнительные «фишки», а начальство раздает таски и меняет приоритеты. Как правило, смена приоритета — это «бросай всё, потом доделаешь, делай вот то и то». Когда тасков два-три, то можно еще как-то это удерживать в голове. Когда же появляются отложенные задания а-ля «сделай, как освободишься» или «как M. доделает, так вместе и беритесь», или же «послезавтра, не забудь, нужно то и то сделать», то скорость работы программиста снижается, потому что мозг включает тормоза и пытается проконтролировать, не забыто ли чего. Вместе с этим растет тревожность, мысли путаются и тут кто-нибудь подкидывает еще одну задачку. Настпает переломный момент, когда программист выпадает из цикла работы и идет пить кофе, чтобы хоть как-то справится со стрессом. А ведь на самом деле управлять всей этой ситуацией нужно еще до того, как она превратилась в головную боль. Любое, даже самое крохотное заданий на одну минуту нужно записывать. Записывать можно два-три слова, главное, чтобы программисту было понятно, что эти слова значат в контексте проекта. Обязательно — приоритет. Ничего страшного, если в очереди будут три задания «очень срочно» и 10 «срочно». Это говорит лишь о том, что значимость некоторых задач была оценена программистом неверно. Удобно также записать рассчетное время, за которое, по ощущениям прогарммиста, он сможет сделать работу целиком. Это важный момент. Я считаю это время как время на работу + время на синхронизацию кода с репозиторием (на больших проектах это может занимать от 5 до 30 минут), но можно считать и по-другому. Может показаться, что в условиях ограниченности времени на задачу («как можно скорее, нам уже через 5 минут отдавать надо») вести очередь заданий, а уж тем более рассчитывть приблизительное время на каждое задание — излишний труд. Это не так. Во-первых, рассчеты дают самому программисту реальные данные о том, сколько займет подобная его работа в будущем. А во-вторых, засекая время на выполнения задачи и сравнивая его с рассчетным можно добиться очень большой точности предсказания объема работы (по времени) в будущем, что будет только плюсом любом профессионалу. Подобные списки текущих заданий по проекту разгружают память и помогают выдерживать любые стрессовые ситуации без дозаправки кофеином. Ведь теперь все под контролем, всегда можно с большой точностью ответить коллегам и начальству сколько вам осталось времени работать над текущей задачей и сколько еще задач в очереди. По моему личному наблюдению, списки дают преимущество программистам, которые их используют, в виде повышения скорости работы. Взаимосвязанные задачи всегда видны, поэтому легко планируется последовательность действий буквально за один взгляд. Большие задачи лучше всего описать несколькими маленькими, которые представляю собой определенные фиксированные наборы действий. Например, «обновить базу данных», «описать изменения в readme» и т.д. Эта уловка чисто психологическая, потому как висящие в списке задачи с неясной формулировкой или же включающие в себя множество шагов отбивают всякую охоту за них браться. Если не лениться и описывать любые задания, пришедшие извне, или же шаги, которые программист планируют совершить, то элемент стресса в работе устраняется полностью. Помимо этого, списки помогают стать более дисциплинированным и снижают реакцию на раздражители типа «аська» и «телефон», пропадает желание заняться чем-то другим, вместо работы. Ведь задания маленькие, сделать их ничего не стоит. И такими вот маленькими порциями можно скушать любого слона. Абсолютно любого. Я в своей практике пользуюсь плагином Mylyn для среды Eclipse, в котором завел разделы «выполненное», «выполненное сегодня» и несколько разделов по проектам, в которых участвую. Дополнительно я завел разделы с именами тех коллег, от чьих задач будет зависеть или зависит моя работа. В эти разделы я пишу задания, о состоянии которых переодически нужно узнавать, что помогает не потерять из виду людей, отвечающие за разные части программы. Текущие задания и шаги складываются в папки для проектов. Выполненные попадают в раздел «выполненное сегодня», откуда каждый вечер переносятся в раздел «выполненное». Папка «выполненное сегодня» нужна, чтобы оценить, как много заданий получается сделать за один день и сколько чистого рабочего времени уходит на каждую задачу. После активации задачи Mylyn автоматически начинает отсчитывать время, которое ушло на её выполнение. Если вы не пользуетесь Mylyn, то обычный листок бумаги и часы легко заменят его. Изменения в работе, да и в самочувствии, будут заметны в первый же день. Главное правило — задачи должны быть простыми и выполнятся не больше, чем за 2-3 часа. Если по вашим примеркам задание занимает больше, значит его нужно разбить на несколько частей помельче. Надеюсь, этот несложный трюк с организацией поможет и вам.

Tuesday, July 15, 2008

Indifferent

Apple: Think different. National Geographic: Think again. Summary: Think.

Monday, July 14, 2008

Пользователи vs Админы

Однажды в IT-компании N. руководство решило ограничить сотрудников в доступе к некоторым развлекательным ресурсам. В немилость попали различные социальные сети и сервисы обмена музыкой-видео, включая популярный Youtube. Со временем руководству стало понятно, что подобная мера экономии безлимитного трафика подходит в какой-нибудь менее прогрессивной отрасли, нежели IT. Программисты, тестировщики, а затем уже и все остальные сотрудники научились легко обходить запреты на посещения любимых сайтов. Самым первым и самым простым способом было использование бесплатных прокси-серверов для HTTP-трафика. Навскидку парочка рабочих прокси-листов: http://www.proxy4free.com/page1.html и http://www.proxy-list.org Способ до сих пор действенный и таковым будет оставаться до тех пор, пока администраторы не научаться отрезать любые запросы, содержащие в себе названия запрещенных сайтов. Следующим ударом по самолюбию администраторов стала программа TOR. С её помощью за 2-3 клика на рабочем компьютере можно организовать защищенный туннель-цепочку к любому сайту. Перехватить такой трафик уже гораздо сложнее. Но у самой программы есть весомый недостаток: за обновлениями она без разрешения лазит к себе на сайт, чем и ловится IDS в локальной сети. Если администраторы вашей сети суровы, а компания может себе позволить покупку IDS, то TOR – не ваш выбор. На форумах часто поднимается тема анонимности в сети. Чаще всего инициаторы флейма подростки, обчитавшиеся таких вот форумов и считающие себя крутыми кулхацкерами, а администраторов – пивными самоучками. Там же часто встречаются советы такого рода: «найди себе анонимный прокси, а через него уже ломай сайт/банк/Пентагон». Не стоит поддаваться чувству ложной защищенности, скрывающемуся за словосочетанием «анонимный прокси». Нет никакой гарантии, что прокси-сервер не принадлежит правительственным структурам, тем более, что у них для этого есть все возможности. Это раз. А во-вторых, нет ничего проще, чем завести анонимный прокси на безлимитном канале, а затем просматривать пролетающий мимо трафик и отфильтровывать себе пароли и сookies доверчивых кулхацкеров и недоверчивых параноиков. Так что берегите cookies, и да пребудет с вами гигабитный канал в обе стороны. p.s. чего только люди не предумают, лишь бы не работать :-)

Sunday, July 13, 2008

Гроза

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

Saturday, July 12, 2008

Муза – девушка капризная.

Несколько дней назад, когда коллайдер запускали, узнал, что мой ЖЖ посетило человек 250, не меньше. Ну ладно, подумал я, может быть нашествие ботов? Решил подождать еще пару дней и проверить. Оказывается, меня читают. Посетителей не много, не больше ста, но они есть. Это, в свою очередь, налагает на меня дополнительную ответственность, но и не ограничивает в выборе тем. Поэтому я решил попробовать вести дневник каждый день, а заодно последовать совету rikki_t_tavi. Буду рад, если это окажется полезным для меня и интересным для вас. Ремарка на счет слова «попробую»: регулярные занятия чем угодно требуют большой дисциплины и организации (например, не всегда может быть доступ в сеть, значит нужно сделать два, три, десять отложенных постов). Опять же, муза – девушка капризная. Сегодня со мной, а завтра чемоданы в руки и билет на поезд в карман. В общем, попробую, а там дальше видно будет. Чтобы лента друзей не страдала от моего графоманства большая часть записей будет под катом. Кому интересно – прочтет полностью. Предложения, замечания, объективная и необъективная критика приветствуются. На сегодня всё, всем спасибо за внимание :-)

Thursday, July 10, 2008

Суровая проза жизни.

В последнее время хожу на работу с Немиги, а вечером опять же на Немигу возвращаюсь пешком. Целый день просидев в офисе хочется немного прогуляться. Так и сегодня, как обычно возращался через арку, мимо Приорбанка. На стоянке перед банком припарковался красивый кабриолет с двумя симпатичными девушками в нем. Когда проходил мимо, девушки предложили с ними покататься (ничё се, да?). В общем, им обломилось, я мимо протопал. Это была лирика. А суровая проза, вот она:

IT-фан

Кое-что из мира IT.

Wednesday, July 9, 2008

Очередной праздник.

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

Monday, July 7, 2008

Не взлетел.

Снова отложили... :-(

Ура, товарищи!

Поооооееееееехали!!! Ураааааа!!! Коллайдер только что включили.

Зажигание

Объявляю десятиминутную готовность.

Saturday, July 5, 2008

Варенье

Сегодня у моей сестрёнки, известной в ЖЖ под ником , День Р.! Сестрёнка, поздравляю! Будь всегда лучшей :)