воскресенье, 3 апреля 2011 г.

Последние адреса IPv4

ух ты! оказывается, сегодня ровно 2 месяца с тех пор, как IANA распределило последний блок IP адресовс (в IPv4)

суббота, 26 марта 2011 г.

IE9

Поставил Internet Explorer 9. Вкратце - работает очень быстро, пользоваться удобно. Можно теперь не залпать на Хром

PS - зависания view source исправили, IE9 с RoboForm 7 не тормозит при просмотре исходников

воскресенье, 13 марта 2011 г.

Гипертрофированное стремление к совершенству


"... Леня,  бедняга,  сидит  и  день  за  днем  мучительно,  до
помутнения в  мозгах, взвешивает  на внутренних  весах  своих, как будет
точнее  сказать:  "она  тронула его руку"  или  "она притронулась  к его
руке"...  И в  отчаянии  он  звонит за  советом  Вале, и  жестокий  Валя
Демченко, не теряя ни секунды, отвечает  ему  знаменитым аверченковским:
"Она  схватила  ему  за руку  и  неоднократно  спросила,  где  ты  девал
деньги..."

— Стругацкие, "Хромая судьба" 


Последние пару месяцев веду проект по разработке с тремя очень талантливыми программистами. Иногда на архитектурных брифингах парни начинают яростно спорить о вещах, с моей точки зрения, яйца выеденного не стоящих. Например, можно ли в юнит тестах инициализировать тестовые данные при инициализации базы либо же в каждом из тестов нужно все заново удалять и пересоздавать. Или же - не стоит ли выбросить из стайл-чекера правило, запрещающее ПЕРЕМЕННЫЕ_ТИПА_ТАКИХ, чтобы можно было константы описывать по-старинке.

Стоят значит у доски четыре человека и до хрипоты спорят. Могут час-полтора так простоять, приводя друг другу всякие аргументы. Иногда меня тоже вовлекают и уже я с ужасом обнаруживаю себя, яростно чего-то доказывающего, ломающего копья. Как минимум раз в неделю такое. 16 человеко часов в месяц уходит, а за 16 человеко часов можно, в общем-то, дофига полезного сделать.

Обнаружил, что у меня в голове ползунок, стоящий между "Мега-красивый-идеальный-сверкающий-кодом" и "Кодом, прагматично реализующим требования" стоит процентах на 60
(и то, потому что мы пишем фреймворк, и API в нем - важен. В обычном же проекте, я придерживаюсь баланса где-то на 70-80 процентов, то есть ратую за код скорее прагматичный, чем красивый.

Почему? Потому что 2011 год на носу, все IDE умеют рефакторинг, за юнит-тестами мы
следим а времени на реализацию функционала, как всегда, не хватает. Поэтому тратить
4 часа в неделю на решение проблемы тысячелетия: как написать "притронулалсь" или "тронула", мне элементарно жалко. Потом переделать можно.

Постскриптум:

Есть при этом вещи, в которых я считаю дотошность при кодировании оправданной.
Навскидку,

- API сервисов (потому что язык API будет потом
сильно влиять на производительность прикладных программистов, он должен быть "в тему")

- Разделение кода на артефакты (потому что лишние зависимости порождают плохой код, а переделывать костяк системы дольше, чем нормально сделать сразу)

- Документирование нетривиальных и нечитаемых кусков кода (потому что таких кусков мало,
  и всегда есть множество причин, по которым код сделан нечитаемым, и причины эти
  нужно донести до людей, которым этот код в будущем придется менять)

среда, 2 февраля 2011 г.

youtube - snake

Если в момент, пока youtube подкачивает видео и крутит крутилку, нажать стрелку на клавиатуре, можно поиграть в "Змейку"

среда, 15 декабря 2010 г.

Офис велик, офис ужасен

Вот что интересно - я всегда был доволен Microsoft Office

он всегда меня устраивал. А вот теперь, после перехода на Office 2010 в нем стал периодически зависать Word. Поскольку, в последнее время, я все больше в ворде работаю, это для меня критично

Техподдержка Microsoft уже три месяца меня мурыжит - то они воспроизвести не могут, то просят чтото деинсталлировать, то спрашивают, действительно ли у меня ворд зависает, а не падает (и это учитывая, что я добрался уже до разработчиков, отправил им все дампы и стек-трейсы)

У меня теперь есть три выбора

- Страдать и мучаться, восстанавливая документы по после принудительного рестарта Ворда
- Сделать downgrade оффиса до 2007
- Перейти на что-нибудь еще. (скорее всего, с префиксом "ай")

И вот как не странно, я совершенно не хочу делать downgrade. Остальной офис меня мегарадует, особенно Outlook. Поэтому откатываться на предыдущий - не хочется вообще.

Я уж скорее перейду на что-то радикально новое, с каким нибудь префиксом (хотя и не факт, что оно лучше будет)

Такой вот интересный психологический феномен.

А, мораль. Так вот, мораль. При разработке если обновление у пользователя глючит, пользоваться предыдущей версией пользователь может и не согласиться. Скорее - помучается-помучается, да и пойдет себе дальше, когда терпение лопнет.

воскресенье, 24 октября 2010 г.

Android on HTC HD2

TWIMC

подборка загрузочных образов
http://android.hd2roms.com/

суббота, 9 октября 2010 г.

Глубокое внимание, мелкое внимание, скверное внимание

Подход к делу в различных режимах внимания

"Глубокое внимание"

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

На примере проектного менеджера:

Получив от заказчика письмо с просьбой немедленно доработать систему, менеджер разбирается, зачем потребовалась доработка,
можно ли понизить ее приоритет, предложит для этого workaround, и вместе с доработкой запланирует сессию обучения для заказчика.

Человек работает в режиме глубокого внимания, если:

* Он умен и опытен
* Он болеет за результат всей задачи в целом
* У него достаточно времени
* Нет серъезных стрессов


"Мелкое внимание"
Реактивная модель поведения. Приходит событие - и человек с ним разбирается, особенно не вдаваясь во всю задачу в целом.

Работа в режиме мелкого внимания страшно экономит врмея (по сравнению с "умным вниманием") но дает абсолютно минимальный результат.

На примере проектного менеджера:

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

Человек может работать в режиме мелкого внимания, если:

* Он не заинтересован в результате деятельности
* Он слишком перегружен другими задачами
* Он попросту некомпетентный осел

"Скверное внимание"
Шизоидная модель поведения, похожая на глубокое внимание, но характерная тем, что контекст задачи неверно интерпретируется, в результате
чего фокусировке и детальной проработке подвергаются задачи, минимально важные для проекта. В результате действительно важные задачи не
делаются, а все участники проекта пребывают в "легком недоумении" - вроде лихорадочная активность имеется, а результат - никакой.

На примере проектного менеджера:

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

Человек может работать в режиме скверного внимания, если:

* Он заинтересован в срыве проекта или его части
* У него приоритеты, отличные от других членов команды
* Он деятельный некомпетентный осел

пятница, 8 октября 2010 г.

NuPack - менеджер пакетов для Visual Studio 2010

Наконец-то дождались?

http://nupack.codeplex.com/

добавляет возможности по добавлению Package Reference - непосредственно из репозитория пакетов

Если приживется, наконец-то будет стандартный способ работы с пакетами в .Net

Ссылки
- http://habrahabr.ru/tag/nupack/ - обзор на Хабре
- подробная статья

UPD: В качестве пробы, выложил версию 0.0.3 утилиты autopatch.Net в виде пакета nupack
1. добавляем в список репозиториев http://dialogue.beta.rapidsoft.ru/nupack
2. создаем новый проект
3. открываем Package Manager console, выбираем в Package Source этот репозиторий
4. говорим add-package autopatch.Net

Вуаля! проект добавлен. Можно пользоваться :-)