Почему я пишу об этом в ИТ блоге? Это message всем тем, кто считает, что в off-line-e нет жизни. Смотрите на мир шире. Оставайтесь всю жизнь любознательными детьми.
22 февраля 2009 г.
TED: Think broader
Почему я пишу об этом в ИТ блоге? Это message всем тем, кто считает, что в off-line-e нет жизни. Смотрите на мир шире. Оставайтесь всю жизнь любознательными детьми.
16 февраля 2009 г.
Microsoft: Free software for startups
Краткая информаци про программу:
BizSpark ™— новая инновационная программа компании Microsoft, направленная на поддержку начинающих компаний (стартапов) и частных лиц, разрабатывающих программное обеспечение и сервисы. В рамках этой программы Microsoft предоставляет доступ к лицензиям на средства разработки, технической поддержке и другие преимущества. Таким образом, начинающая компания или частное лицо, которые, как правило, не имеют свободных средств на построение качественной IT-инфраструктуры, получают хорошую возможность для старта и успешного развития бизнеса. Регистрация в программе бесплатна.Требования к участинкам программы:Программа действует для участников из России, Украины, Белоруссии, Казахстана, Узбекистана, Азербайджана, Армении и Грузии.
Некоторые особенности программы:В программе BizSpark могут участвовать частные лица, индивидуальные предприниматели без образования юридического лица и юридические лица, являющиеся непубличными компаниями (то есть в форме ООО и ЗАО).
Для участия в программе BizSpark необходимо выполнить все следующие условия:
- вы (физическое лицо или компания) должны разрабатывать программный продукт или услугу, основанную на программном обеспечении, который(-ая) будет являться ключевой компонентой собственного бизнеса соответствующего физического лица или компании;
- если вы – компания, то компания должна быть частной;
- менее 3 лет в бизнесе;
- годовой оборот менее 500 тысяч долларов США.
- Вход рубль - выход сто: участие в программе бесплатное, а вот при выходе с вас захотят 100$ (не представляю как Microsoft и партнеры планирует контролировать этот процесс)
- Сумма годового оборота зависит от страны регистарции компании или проживания частного лица. Для стран СНГ - 500 тысяч долларов США, а вот для Китая, к примеру, - 750 тысяч долларов США, а в Турции всего 250 тысяч долларов США
- Регистрация проводится не только напрямую в Microsoft, но и через сеть партнеров (например, Softline или Softkey).
- В общем-то, BizSpark является логичным продолжением программы Microsoft Action Pack Subscription, ориентированным на более узкий сегмент ИТ индустрии - на startup-ы
- Скорее всего, появлением данной программы это продолжение также и темы т.н. Express версий Visual Studio, SQL Server-a, а до этого - Microsoft Jet-a
- Зачем это все нужно Microsoft? Я бы охарактеризовал это как снижение стоимости входа на рынок разработок для платформы Windows/.Net. Т.е. для того чтобы разрабатывать под Windows нам нужно: как минимум лицензия на Windows для каждого разработчика, некоторым из них нужен Microsoft Office, неплохо было бы иметь систему контроля версий, а для нее нужен Windows Server и т.д. В результате даже для небольшой команды из 2-3 разработчиков начальные инвестиции в программное обеспечение Microsoft могут достигать нескольких тысяч долларов (даже с учетом использования т.н. Express версий продуктов). Альтернатива очевидна - использование бесплатных (читайте open source) продуктов в качестве замены дорогостоящим аналогам от Microsoft: Linux вместо Windows, SVN/Git/Mercurial вместо Team System и т.д. Но на Linux не так удобно разрабатывать под .Net так что следующийм логичым шагом будет отказ от платформы Microsoft в пользу, к примеру, Java, LAMP или другой платформы, стоимость входа на которую будет ниже.
15 февраля 2009 г.
Manager and Career tools
Лучшие из прослушанных podcast-ов Manager tools:
- Как искать потенциальных сотрудников в условиях кризиса;
- Поведение менеджера в условиях финансового кризиса;
13 февраля 2009 г.
Внедрение – проект или процесс?
Давайте посмотрим на процесс внедрения ПП на макро-уровне. Нужно внедрить некий ПП и при этом уложиться в заданный бюджет (срок, стоимость, персонал). Так этот процесс видит руководство компании. На практике зачастую ПП внедряется с превышением бюджета, да и процент провальных проектов крайне высок.
Попробуем проанализировать основные ошибки, которые допускаются при внедрении ПП:
1. Битвы проигрываются за столом
Как показывает практика, внедрить любой ПП в любой компании невозможно. Априорно предполагаем, что ПП «внедряемый», т.е. соответствует ожиданиям бизнеса, продукт развивается, существует команда знакомая с ПП и готовая его внедрять, продукт можно адаптировать под потребности бизнеса и при этом такая адаптация не приведет к созданию нового ПП (т.е. останется возможность перехода на новую версии ПП за срок менее, чем предполагаемый срок внедрения текущего ПП). Если продукт не «внедряемый», но его уже купили и перед Вами стоит задача его внедрить, то лучше оповестить об этом руководство и, по возможности, не участвовать в подобном проекте.
2. Есть ли у вас план, мистер Фикс?
Внедрение начинается с планирования. План внедрению нужен для того, чтобы в любой момент времени знать на каком этапе находится внедрение ПП, сколько еще осталось до момента его запуска, что уже сделано и что еще предстоит сделать. Для составления первоначального плана внедрения лучше использовать специализированные инструменты такие как Microsoft Project или Project Workbench. Их основное преимущество по сравнению с Microsoft Excel, возможность задания связей между задачами (например, обучение не может начаться, до окончания фазы настройки и т.д.), автоматическое отслеживание выходных дней (правда Вам все равно придется помнить о локальных праздниках, сезонах отпусков и т.д.) и возможность сравнения предполагаемого плана внедрения и текущего (например, в Microsoft Project, есть возможность задать т.н. baseline, и по мере внесения изменений с ходом проекта в план, сравнивать его с baseline). Зачастую, на этапе планирования просто не возможно предусмотреть «подводные камни» и задачи, которые «подразумевал»бизнес и которые не были отображены в первоначальном плане внедрения. В любом случае, чем детальней план, тем больше вероятность того, что Ваш проект будет выполнен вовремя. Под термином «детальный план», я подразумеваю «разумную» степень детализации, т.е. с точностью до логически неделимой задачи (например, обучение пользователей, подготовка определенного отчета и т.д.). Обязательно сделайте запас в плане внедрения: помните, что мгновенное переключение сотрудников с одной задачи на другую невозможно. Есть и объективные факторы, которые следует заложить в план внедрения. Например, переезды между офисами, зависимость от внешних поставщиков (например техники или коммуникационного оборудования) и т.д. Наш обычный запас времени в проекте колеблется в диапазоне 10-30%.
3. Внедрение - процесс или проект?
В чем разница между проектом и процессом внедрения? Сколько раз нам доводилось слышать, что компания XYZ внедряет систему ABC уже третий год и уже совсем почти внедрила. Это процесс внедрения: известно что внедряют, известно где внедряют, известно (по крайней мере кому-то) зачем внедряют, но вот конца проекта все нет. Мне доводилось слышать про проекты, которые длятся более пяти лет, которые внедряет уже третья по счету ИТ команда и пр.
Проект, в отличие от процесса - является конечным, как сказали бы математики сходящимся. У него есть четкие временные рамки, бюджет и он нужен заказчику.
Зачем нужны процессы внедрений?
Насколько я знаю, они служат разным целям: например, увеличению стоимости компании. К примеру, Вы объявляете о начале внедрения продукта ABC, подписываете с фирмой поставщиком договор на приобретение лицензий и внедрение продукта на 1 млн.$. Часть этой суммы платится сразу (предположим 25%), оставшаяся часть поэтапно по ходу окончания проекта (например, ежеквартально). Что произошло с точки зрения стоимости компании в которой начат процесс внедрения ABC? Она подорожала. В идеале на 1 млн.$, а то и больше. Вы заплатили за начало внедрение 250тыс$, ваша компания подорожала на 1млн.$ - надо ее скорее продавать :), что мы и видели в банковской системе Украины на протяжении последних нескольких лет: как только банк объявляет о подписании договора о внедрении "Большой системы", можно ожидать новостей о его продаже. Если продать компанию сразу не удается, а платить за внедрение нужно, дорогостоющую команду внедренцев распускают и набирают новую "не хуже, но дешевле". Главное для руководства компании максимизировать разницу между увеличением стоимости комапнии и стоимостью внедрения.
Также я встречал процессы внедрений в представительствах компаний, которые выполняются "для галочки". Предположим в компании уже есть локальное ИТ решение. Оно не дорогое, оно работает и в принципе устраивает всех кроме (подставьте нужное: ИТ менеджмента, аудиторов, HR или еще кого-то) головной компании, так как оно не соответствует (подставьте нужное: IT policy, не сертифицировано согласно стандарту, не такое как у остальных представительств и т.д.). Из головной компании в конце концов "пропихивается" идея сделать ИТ решение "как у всех" и начинается "процесс".
И последний тип - внедрения, которые никому не нужны или которые явным образом саботируются сотрудниками компании, где происходит внедрение. Давным давно, когда я еще занимался 1С, достался мне проект внедрения бухгалтерии на одном из отечественных телеканалов. В бухгалтерии работала стайка бухгалтерш душ до 10, которые что-то бойко и долго считали в Excel-e. У каждой из них был свой участок работ (например, расчет зарплаты, начисление амортизации и т.д.), которым они занимались практически целый месяц. Неделе на второй внедрения стало понятно, что назревают проблемы: амортизация вместо 20 дней считалась минут за 40, зарплата с учетом всех самых зверских начислений-удержаний вписывалась дня в 3-4. После этого проект перешел в процесс. Сотрудницы, которые еще вчера бойко что-то вводили в 1С сегодня потеряли к проекту всякий интерес. Нашлось несколько десятков причин почему "программа плохая" и чем "Excel лучше". Они поняли, что с внедрением 1С в их отделе грядут сокращения. Быть сокращенным никто не хотел и по-этому начался откровенный саботаж проекта. Мой пример не единичный, не раз видел внедряемые решения, которые захотел (подставить нужное: директор, испольнительный, финансовый или еще какой директор), которые не приносили рядовым сотрудникам никаких "added values" (как это сказать по русски :), а наоборот добавляли им хлопот, а то и напрямую грозили потерей рабочего места. К слову на телеканале мы месяцев через много 1С таки внедрили, но работала она только на тех участках, где не грозилу увольнением персоналу.
4. Вместо заключения
Как мы видим, универсального решения удачного и быстрого завершния проекта внедрения нет. Но есть ряд признаков, которые дают нам возможность надеяться, что проект внедрения не превратится в его процесс: «внедряемость» и востребованость продукта, наличие продуманного бюджета и плана внедрения, заинтересованность менеджмента компании в успешном завершении проекта, наличие преимуществ для конечных пользователей (уменьшение рутинного труда, упрощение сложных процессов и т.д.).
9 февраля 2009 г.
Записки автоматизатора или сальдо мортале
- Результатом автоматизации бардака всегда становится автоматизированный бардак.
- Сотрудник, который знает свое непосредственное дело хуже Вас, - плохой сотрудник.
- Если качество или производительность труда программиста можно повысить с помощью материального стимулирования, то этого программиста следует уволить.
- Качество и производительность труда программиста всегда можно понизить с помощью отрицательного материального стимулирования. Например, понижая ему зарплату после каждого внедрения, можно добиться полного отсутствия уже третьего внедрения.
Я могу предложить другие признаки, по которым можно определить успешность хода внедрения.Отрадно видеть, что Андрей написал и опубликовал в 2008 книгу "Записки автоматизатора. Профессиональная исповедь", в основу которой легли наброски "Сальдо мортале" 2001 года.
- Вы снова ночуете дома.
- Вам удалось увидеть своих детей не спящими.
8 февраля 2009 г.
Microsoft Excel как средство генерации кода
Предположим, нам требуется изменить данные так называемых справочников (dictionaries). Приведу простой пример, нужно заполнить справочник стран согласно стандарту ISO 3166. Их всего-ничего: 246 штук. Т.е. нам нужно подготовить SQL скрипт по вставке данных для этих стран. В простом случае у нас получиться около 246 строк SQL кода вида INSERT INTO countries (id, code) values ('UA', 'Ukraine'). Для автоматизации процесса генерации SQL кода я предлагаю использовать Microsoft Excel.
В данном примере нам потребуется три колонки: Код, Текст и SQL. В колонку SQL добавляем код вида =СЦЕПИТЬ("INSERT INTO countries (id, code) values ('";A2;"', '";B2;"')") (да, у меня Русский Microsoft Excel и я так и не научился использовать в нем английские названия функций). В результате получаем нужный нам SQL и копируем данную формулу для всех остальных значений колонки SQL.
Возможен и более сложный случай, например, названия стран у Вас локализируемые и тексты хранятся в отдельной таблице, тогда вставка должна проводиться в две таблицы: таблицу справочника вида id (integer), код (char) и таблицу текстов id(integer), язык (char) и текст (varchar). Итак, приступим к подготовке данных: добавим колонку id до code, переименуем колонку Text в EN и добавим колонку RU, переименуем SQL в SQL Countries и добавим справа от нее колонки SQL EN и SQL RU. Далее проставляем числовые коды в колонке id (1, 2, 3 и т.д.). Для этого используем возможность заполнения смежных ячеек. Меняем значение первой строки колонки SQL Countries на =СЦЕПИТЬ("INSERT INTO countries (id, code) values ('";A2;"', '";B2;"')"), колонки SQL EN на =СЦЕПИТЬ("INSERT INTO countries_test (id, lang, text) values ('";A2;"', '";$C$1;"', '";C2;"')") и колонки SQL RU на =СЦЕПИТЬ("INSERT INTO countries_test (id, lang, text) values ('";A2;"', '";$D$1;"', '";D2;"')"). Копируем формулы колонок SQL Countries, SQL EN и SQL RU для всех строк таблицы. Итак, за пару минут мы подготовили SQL для двух таблиц 246 * 2 = 492 строк кода.Что еще можно делать с помощью этого подхода? Многое. Например, мой коллега генерировал части XML файлов, я - куски кода на Java. Недавно использовал этот подход для более сложной задачи: миграции данных плоских справочников в иерархические (около 10 таблиц, порядка 2000 строк SQL кода).
С моей точки зрения, огромное преимущество данного подхода заключается в возможности быстро перегенерировать полученный ранее код. Например, решили Вы нумеровать строки в справочнике стран не по порядку, а через 10 - изменили значения в колонке id, и вуаля - скрипты готовы. Или другой пример, в процессе тестирования решили мы перенести часть данных иерархических справочников из одних веток в другие, некоторые объединить и кое-что удалить. Делать это вручную в SQL-е долго и вероятность возникновения ошибок достаточно велика, а с помощью Excel-a это изменение заняло несколько минут.
Еще одним плюсом данного подхода является возможность генерации на основании одних и тех же данных кода для разных систем-платформ-версий: например, генерации SQL скриптов для Microsoft SQL Server, Oracle и MySQL, исходного кода на Java и C#, bat и sh файлов и пр.
7 февраля 2009 г.
Getting Things Done Light in Gmail
Давайте начнем по порядку - что такое GTD. Для тех, кто желает ознакомится с предметом подробно отправляем их к автору и его книге. Для остальных это подход повысить свою продуктивность (в первую очередь для людей, которые занимаются одновременно несколькими деcятками дел). Зачем и кому это все нужно? Тем кто получает много писем :). Ради примера проанализировал свою почту на GMail-e за последнюю неделю - всего получил (без учета SPAM-а) и отправил 120 писем . На каждое из писем нужно как-то реагировать: удалить, переслать, ответить, что-то сделать, ожидать ответ, запланировать на будущее и т.д. Для упрощения этого процесса, как частного случая повышения эффективности работы, и может служить подход GTD. Да, я знаю, что GTD не имеет прямого отношения к GMail-у в частности, и к e-mail-у в целом. Здесь есть 2-а но: в нашей компании процесс построен так, что e-mail является одним из основных средств коммуникации и все задачи так или иначе отображаются в почтовом ящике, а если нужно совершить "нечто" не ассоциированное с e-mail-ом (что уже само по себе редкость), то никто не запрещает создать в GMail-е черновик (draft) письма, описать в нем задачу и использовать для него тот же подход.
В принципе, существует как минимум один plugin к Firefox-у, который позволяет автоматизирировать GTD в каноническом виде, как описано в книге. Но наверное, я слишком ленивый и привык по-старинке помечать письма флажками еще в Microsoft Outlook-e.
Итак, ближе к делу. Активируем "Superstars" и выбираем для себя "звездочки" и их legends (что каждая из них означает и для каких целей Вы будете их использовать).
Я использую следующий набор "звездочек":

У каждой "звездочки" есть название по которому можно найти все письма ею помеченные.
Слева напаво названия звездочек и мой legend для них (в скобках): yellow-star (требует внимания в будущем), red-star (требует действия с моей стороны), blue-star (ожидается ответаная реакция), red-bang (требует немедленной реакции).
Все мои письма деляются на два класса - рассылки и лично-рабочие. Рассылки особого интереса не представляют, за исключением, пожалуй, писем из issue tracking system, но это отдельный разговор.
Детальное описание "звездочек":
- red-bang (требует немедленной реакции) - помечаются т.н. show stopper-ы (т.е. письма на которые нужно реагировать немедленно по возможности отложив все остальные дела). Количество таких писем у меня не превышало 3 (обычно 0).
- red-star (требует действия с моей стороны) - помечаются письма требующие действия в штатном режиме на сегодня-завтра. Количество таких писем не превышает 10 (обычно 3-5). Я, зачастую, работаю над несколькими проектами в один день и это собственно мой план работы.
- blue-star (действие выполнено, ожидается ответаная реакция). Выполнив какое-либо действие (red-bang или red-star) или задав уточняющий вопрос, Вы ожидаете ответа другой стороны (заказчика, коллеги, друга). Иногда ответ затягивается и хочется понимать "на чьей стороне в данный момент находится мяч". Также служит неплохим подспорьем для follow up (напоминаний на тему).
- yellow-star (требует внимание) - помечаются все остальные письма, которые требуют Вашего внимания в будущем (т.е. те, которые не подпадают под предыдущие категории).
- Рабочий день начинается с прочтения новой почты. Если письмо требует вашей реакции в будущем - yellow-star, имеет отношение к текущим проектам - red-star, требует мгновенной реакции - red-bang. На этом же этапе, если требуется, пишутся ответы на письма red-bang и red-star (вопросы, пояснения и пр.). Если вы ожидаете ответ на Ваше письмо - помечаете ответ как blue-star. Ни то ни другой ни третье - mark as unread, delete или archive.
- Следующий этап - follow up: проверка ответов на blue-star. Ответ получен - blue-star снимается, при этом оригинальное письмо может изменить свою классификацию. Пример, получили письмо от заказчика - поломался основной сервер на котором работает Ваша система (red-bang - show stopper), уточнили не устанавливали ли что-то новое и не пробовали ли перезапускать его (blue-star), ответ перезапустили - все ОК (сняли blue-star, red-bang, переписку в архив).
- Есть red-bang - за работу.
- Есть red-star - за работу.
- Нет ни тех ни других - проверяем новую почту и переходим на 1., нет новой почты - проверяем yellow-star. Выбираем следующий проект над которым будем работать и помечаем соответствующие письма red-star, переходим к 4. Почему письма, а не письмо? В идеале ваша переписка должна быть одним thread-ом (как это сказать по-русски :)?, цепочкой писем), но иногда, например, при переписке с пользователями Lotus Notes, GMail разрывает thread-ы. Получается у вас в GMail-е переписка выглядит как набор пар письмо-ответ. Для того чтобы с ними было проще работать я использую еще и labels (метки?). Иногда к проекту относится несколько переписок с разными людьми в разные периоды времени и т.д.
Звездочки удобно задавать/убирать с клавиатуры с помощью механизма hot-keys. Последовательное нажатие клавиши "s" - задает письму звездочки в порядке их следования в списке "In use".
Что позволяет сделать "Multiple inboxes"? Он позволяет вывести на первом экране GMail-a письма помеченные звездочками по приоритетам. У меня это выглядит следующим образом: 4 панели со следующими критериями поиска has:red-bang, has:red-star, has:blue-star, has:yellow-star.
Результат будет примерно таким же как на картинке Google-a:

Такой подход приводит к тому, что в любой момент времени заходя в GMail Вы знаете над чем нужно работать дальше и минимизурется время, которое тратится на переключение между задачами.
Почему мне не нравится подход с использование plugin-ов к Firefox-у для автоматизации GTD? Причин две - потенциальные сложности с обновлением Firefox-а и потенциальные проблемы при обновлении GMail-a с одной стороны и лень и нежелание менять то, что и так работает с другой (я не очень верю, что потери времени потраченные на настройку и импорт существующих данных в новый механизм GTD существенно увеличат мою продуктивность).
«Тепла зима»
Скрябин «Тепла зима». Ее можно слушать только ради одной строчки "в цій країні навіть снігу нема".
Проекты и водители
Напомнило старую шутку про то, как если бы при приеме на работу к водителям относились так же, как к программистам...
Вакансия: водитель.
Требования: профессиональные навыки управления легковыми и грузовыми автомобилями, автомобилями с прицепом, автобусами, троллейбусами, трамваями, поездами метрополитена и фуникулера, экскаваторами и бульдозерами, спецмашинами на гусеничном ходу, боевыми машинами пехоты и современными легкими/ средними танками, находящимися на вооружении стран СНГ и НАТО.
Навыки раллийного и экстремального вождения - обязательны, опыт управления болидами F1 - приветствуется.
Знания и опыт ремонта поршневых и роторных двигателей, автоматических и ручных трансмиссий, систем зажигания, бортовых компьютеров, анти блокировочных систем, навигационных систем (GPS) и автомобильных аудиосистем ведущих производителей - обязательны.
Опыт проведения кузовных и окрасочных работ приветствуется.
Претенденты должны иметь сертификат Mercedes, BMW, General Motors, а также справки об участии в крупных международных ралли не более двухлетней давности.
Зарплата 1500 - 2500 грн, определяется по результатам собеседования.
5 февраля 2009 г.
Google at Stackoverflow
Говорят, что в Google работают классные IT специалисты. Очередной раз в этом убедился на Stackoverflow - увидел человека с рейтингом 33 тысячи, 6 золотыми, 101 серебрянной и 280 бронзовыми badges.
4 февраля 2009 г.
Stackoverflow
Цель достаточно амбициозная, но пока она достигается - на сайте тысячи новых вопросов и ответов, которые прилично проиндексированны Google-ом. Самое главное, что удалось Joel-у и Jeff-у - привлечь и удержать тысячи разработчиков, которые с завидной периодичностью посещают ресурc и отвечают на вопросы.
Кстати, в отличие от аналогичных сайтов (Experts exchange, Google answers и т.д.) - ответы на вопросы бесплатные, но интерес отвечать на них заложен в т.н. системе репутации, которая фактически превратила проект в некий аналог компьютерной игры. Ты начинаешь на первом уровне с репутацией = 1, задаешь вопрос, за него кто-то голосует получаешь бонус +10 к репутации, если вопрос не нравится - получаешь -2 к репутации за каждый "vote down". Далее все как в играх - чем больше репутации, тем больше действий становится доступно (можешь сам голосовать за чужие вопросы, редактировать и удалять их), а чтобы было совсем интересно, Stackoverflow еще и присваивает т.н. badges (скорее всего правильный перевод будет "медали"). Они есть серебрянные, бронзовые и ... правильно золотые. Медаль дают в начале почти за все - проголосовали за твой первый вопрос получи "Student", первым ответил на вопрос и за тебя проголосовали - вот твой "Teacher". Но это все бронза, серебро получить сложнее, но реально, например, "Good Question" - вопрос, за который проголосовали 25 и более участников, золотые медали - большая редкость. Да, забыл написать, что при голосовании против, ты теряешь 1 своей пункт репутации. Также отмечу тот факт, что все дискуссии ведутся только на английском языке.
Вторая аналогия которая приходит в голову по поводу системы репутации - это виртуальные деньги. Недавно была добавлена возможность "поделиться" репутацией: когда пользователь задает вопрос, он может сказать, правильно ответивший на вопрос получает N пунктов моей репутации (правильность ответа определяет задававший вопрос).
Одним словом, Welcome to virtual world of Stackoverflow from FoxyBOA.
HP Compaq 8510w (почему он такой быстрый !?)
Сразу замечу, что настолько долго без ремонта как Z61m, у меня не прожил еще ни один laptop: Acer-a хватило почти на год, после чего у него заменили матрицу экрана, у обеих Toshib 14" и 17" примерно через год эксплуатации начались проблемы с креплением монитора (дешевый китайско-малазийский пластик не предназначен для ежедневной эксплуатации).
Характеристики Lenovo Z61m следующие: Intel Core Duo T7200(2.0GHz, 667 MHz FSB), 3Gb 667 MHz DDR2 SDRAM, 120GB 5400rpm SATA. Также достаточно полный обзор Z61M здесь.
Итого получаем: у Compaq процессор быстрее на 0,5 GHz, L2 больше на 2Mb или 50%, шина 667 против 800, оперативки больше на 1Gb или 33%, HDD быстрее примерно на 50% (по тестам HD Tune).
На обоих компьютерах стоит Windows Vista 64bits (на Lenovo - Ultimate, на Compaq - Business).
Тесты Vista показывают оценку (score) 5.1 (Compaq) против 4.0(Lenovo), но мне кажется, что реальная разница на задачах, которые для меня критичны гораздо больше.
По субъективной оценке в процессе работы (компиляция и запуск Java проектов из под Eclipse) Compaq быстрее Lenovo процентов на 40-50.
Почему Compaq настолько быстрее, сказать однозначно сложно. Я связываю это с новым более быстрым процессором и гораздо более скоростным HDD.
Из явных промахов Compaq, которые стали видны в первый день работы:
- легкий пластиковый корпус (легкий это хорошо, но после титаниевого Z61m, пластик выглядит хрупко)
- плохая эргономика клавиатуры (хотя это конечно очень субъективный фактор)
- странное решение с сенсорными кнопками (wifi, звук и т.д.) - они выглядят эффектно, но не очень надежно и не долговечно
- уродский (это технический термин) интерфейс программ обновления драйверов, BIOS-a и т.д. Они не предназначены для того, чтобы их использовали без крайней на то необходимости. После one click button обновления от Lenovo, HP должен "нервно курить в сторонке".
- производительность
- тишину (после громогласного Z61m его почти не слышно)
- аккумулятор (3,5 часа с wifi; полностью не разряжал, может он потом передумает и больше часа не протянет...)
3 февраля 2009 г.
Office 2.0 полтора года спустя (follow up)
А где 2008 год !?
Как-то незаметно и суматошно прошел 2008 год: новые клиенты и проекты, прибавление в семействе.
В общем, как писал нетленный БГ, "не успели все разлить как пол жизни за кормою".
Постараюсь писать кратко но, часто.
12 декабря 2007 г.
Как мы выбирали "большую" систему. Бюджет
Фактически нужно выделить ключевые позиции:
А потом это все расcчитать в двух разрезах - разово и ежегодно (некоторые любят это все суммировать лет на 5 вперед и получать общие затраты на систему в динамике). Далее из ежегодной суммы определить примерный ежемесячный платеж (если планируется внедрение в нескольких организациях, то сколько в среднем ежемесячно должна платить каждая из них). Но это все теория - на практике это сводится к тому, что для расчет бюджета нужно четко себе представлять ИТ инфраструктуру будущего решения (например, будет ли у вас один или несколько data centers, как будет осуществляться связь между ними, резервные каналы связи, будете ли закупаться новая техника или будет вестись работа на оборудовании взятом в аренду и т.д.). Кроме ИТ инфраструктуры - надо "выбить" из отдела планирования бизнес-план на несколько лет вперед. На этой базе уже можно определиться с количеством пользователей, точек где будет установлена система, примерным объемом операций, размером баз данных и т.д. Зная инфраструктуру, и количество пользователей, офисов, data centers и свои бизнес процессы - со всеми этими данными идете к будущим поставщикам (желательно к самым дорогим) и получаете от них примерный прогноз стоимости решения, возможный план внедрения системы и примерные аппаратные и сетевые требования (стоимость лицензий, доработки и ежегодного сопровождения софта, минимальная полоса для филиала и т.д.). Далее работаете с ISP и провайдерами сетевых услуг и получаете от них примерную стоимость их решения. Нужно резервирование каналов связи, доступ к системе через GPRS и т.д. (в общем все от UPS до спутниковых резервных каналов связи, в зависимости от аппетитов). Следующий на очереди - ITшники, получаете от них требования по персоналу, который потребуется для обслуживания новой системы. Следующий этап - на базе предварительного плана внедрения системы формируете собственную постоянную команду внедрения, которая совместно с поставщиками будет заниматься внедрением новой системы (по-минимум: Project Manager, спонсор - кто будет выбивать с руководства деньги на этот проект и рассказывать "наверху", как все хорошо продвигается, Operational Manager - один или несколько людей знающих на практике бизнес процессы, способные и уполномоченные давать корректные ответы на вопросы, "а как это должно работать", Trainer - те, кто будут готовить документацию, учить людей и т.д., иногда полезно иметь Technical Project Manager - этот человек является связующим звеном всей команды, через него проходят вся переписка, он в курсе всех событий, он же ведет внутреннюю проектную документацию, Consultants - консультанты, их обычно несколько: IT, по каким-то специфичным, но важным вопросам и т.д.). Если внедрение будет в нескольких компаниях (или странах) - для каждой из компаний/стран - формируете отдельную дополнительную команду, куда войдут как люди знающие специфику предметной области в каждой из стран, так и люди будущие тестировать, проверять, обучать новой системе. Поскольку мы говорим о внедрении "большой" системы, то оно не будет мгновенным, следовательно нам потребуется еще одна команда для сопровождения системы (она в любом случае понадобится, если речь идет о внедрении в нескольких компаниях или странах). Далее с данными трех команд (поддержки, постоянная команда внедрения и разовая команда внедрения) идете к HR и с их помощью рассчитываете затраты на персонал. Следующий этап - коммуникационные затраты (поездки, перелеты, суточные и пр) для собственных "внедренцев" и "внедренцев" со стороны заказчика. Далее все это суммируете, ужасаетесь цифрам, разделяете на разовые и периодические затраты (умножаете на число Pi - 3,14159...) и с этими цифрами идете к руководству. Если Вас сразу не уволят, у вас появится поле для маневра и урезание бюджета ;). Если, не дай Бог Вы спонсор, сразу считайте ROI новой системы, готовьте умные фразы, про TCO и прочую чушь, которую так любят там, наверху ;) Да, самое главное, правильно составьте план внедрения системы (не забывая про накладки, отпуска, выходные, время на путешествия, доработку, тестирование системы, перенос данных, доработку ПО и пр.) |
Как мы выбирали "большую" систему. Первичный анализ
Первое:
Бюджет выбора системы. Бюджет для меня это деньги, люди и сроки. Т.е. если перед вами руководство поставило задачу выбрать за три недели новую финансовую системы для 5 компаний и при этом подразумевается, что бюджета на это нет (т.е. один человек, три недели и 0€), то о качественном анализе можно просто забыть. Можно попробовать собрать общедоступную информацию и на ее базе угадать, подходит вам эта система или нет.
Второе:
Функционал системы. Если есть описанные бизнес процессы, базируйтесь на них (у нас на подготовку описания бизнес процессов ушло около одного человеко-года).
Третье:
Команда выбора система. Создайте команду по выбору системы. В нее включите представителей из разных компаний и разных подразделений (от ITшников, до руководителей компаний). Пусть эта команда составит список вопросов для всех участников (т.н. RFP, у нас он состоял из примерно 500 вопросов).
Четвертое:
Тендер. Разошлите этот RFP всем участникам в вашем списке вместе с формальным приглашение на участие в тендере и дайте им срок две-четыре недели на подготовку ответа.
Пятое:
Анализ ответов. Проанализируйте ответы (на это потребуется около 2-х недель) и выберите 2-3 продукта, которые вам наиболее подходят.
Вот тогда у вас уже будет вполне нормальный первичный анализ продуктов.
Дальше вам нужны будут презентации, посещения клиентов компании ваших профилей и т.д.
10 декабря 2007 г.
Top N IT business books that I’ve read
- The Mythical Man-Month: Essays on Software Engineering by Frederick P. Brooks
- Hackers and Painters: Big Ideas from the Computer Age by Paul Graham
- Eric Sink on the Business of Software (Expert's Voice) by Eric Sink
- The Best Software Writing I: Selected and Introduced by Joel Spolsky
- Joel on Software: And on Diverse and Occasionally Related Matters That Will Prove of Interest to Software Developers, Designers, and Managers, and to Those Who, Whether by Good Fortune or Ill Luck, Work with Them in Some Capacity by Joel Spolsky
25 октября 2007 г.
Software engineering radio

Всем, кому хочется послушать интересные podcast-ы на тему профессиональной разработки софта могу порекомендовать Software engineering radio от Markus Volter. Они на английском (зачастую на немецком английском), но темы и собеседники позволяют не обращать на это внимания :-)
24 октября 2007 г.
Офисные страдания или почему юридическому лицу в нашей стране нельзя легально арендовать офис
В определенный момент жизни перед компанией встает вопрос аренды нового офисного помещения (старый договор аренды закончился и его не хотят продлевать, помещение продается и т.д.). Казалось бы, чего проще – плати рыночную стоимость и снимай себе на здоровье. Но на практике все оказывается не так безоблачно:
1. Первое, что приходит в голову – обратится в офисные центры и арендовать там свои 20, 40, 60 или 80 квадратов. Такой вариант готовит нам следующие «сюрпризы»: завышенная арендная плата (иногда в два раза и более по сравнению со среднерыночной ценой аренды квадратного метра), отсутствие возможности арендовать офисы малых размеров (зачастую речь идет о площадях от 150-200 кв.м.). Таким образом, это один из наиболее дорогостоящих вариантов аренды офиса. Если сравнить стоимость квадратного метра такого офисного помещения и обычной квартиры, то цена офисного квадрата превысит квартирный квадрат примерно в два раза. Варианты оплаты: официальное оформление договора аренды и оплата по безналичному расчету или «черный нал».
2. Квартира под офис – офис будет выглядеть не так солидно как в варианте 1., но «потерпеть» можно, особенно если бюджет ограничен. Как показывает практика, снять квартиру под офис официально без нарушения законодательства достаточно сложно:
a. Квартиру лучше снимать у частных предпринимателей (далее СПД), иначе нужно оплачивать подоходный налог (15%), причем уплачивать его должен арендатор.
b. Договор аренды лучше заверять нотариально (для СПД это не обязательно при сроке аренды офиса до 3-х лет, для физ.лиц – обязательно). Для нотариального заверения потребуется: далее следует большой список документов, в котором присутствуют, в том числе, документ на право собственности и справка-характеристика из БТИ. Мой опыт показывает, что именно эти два документа являются show stopper-ами большинства сделок:
i. Справка-характеристика из БТИ – долго, дорого и не возможно (например, если в квартире была произведена несанкционированная перепланировка, то это требует многомесячного хождения по инстанциям или стоит денег, превышающих сумму аренды).
ii. Правоустанавливающие документы – зачастую это свидетельство о праве собственности, НО: не у всех арендодателей такой документ есть, не у всех он оформлен на них, некоторые состоят в браке и хоть документ оформлен на них являются хозяевами только половины собственности (в этом варианте появляется новая «кипа» документов: свидетельство о браке, документ о том, что супруг(а) не против сдачи квартиры в аренду и т.д.)
iii. Свидетельство плательщика единого налога с правом сдачи собственной недвижимости в аренду. Часто или нет этого вида деятельности, или адрес в свидетельстве не соответствует адресу квартиры, или не совпадает жилой фонд (например, квартира в жилом фонде, а право сдачи в аренду нежилых помещений или наоборот).
c. Квартира должна быть в нежилом фонде – как говорят большинство юристов, квартира должна находиться в нежилом фонде. Как всегда бывает с юристами, у них на двоих есть три мнения, но в одном они сходятся однозначно: если квартира находится в нежилом фонде, то доказать недействительность договора аренды сложнее, чем если она находится в жилом фонде (сознательно пишу сложнее, так как не сомневаюсь, что юристы смогут доказать многое :-). Юристов поддерживают бухгалтера, в случае если к примеру, через год будет доказано, что договор аренды был не действителен, вам это грозит крупными штрафами. С большой долей вероятности, суммы штрафом будут превышать стоимость аренды.
d. Оплата коммунальных услуг, газ, вода, свет, телефон и Интернет – не хочется повторяться, но оплачивать эту услуги по безналичному расчету, если они были оформлены на арендодателя, не получится. Так что, включайте эти затраты неявно в свою арендную плату.
Теперь рассмотрим варианты, а что будет если:
1. Вы сняли в аренду квартиру в жилом фонде и при проверке доказано, что арендодатель не имел права ее сдавать – крупные штрафы и масса проблем с налоговой.
2. Вы сняли в аренду квартиру и было доказано, что арендатор не имел права ее сдавать – крупные штрафы и масса проблем с налоговой.
3. Вы сняли в аренду квартиру у СПД, но оказалось, что он не имел право ее сдавать как СПД (например, этот вид деятельности не был указан в его свидетельстве СПД) – обвинение в уклонении от уплаты налогов (подоходного, так как договор был заключен с физическим лицом), крупные штрафы и масса проблем с налоговой).
Тенденцию, я думаю, вы уловили, в случае проблем с договором аренды, пострадаете в первую очередь Вы – арендатор.
Как обезопасить себя от будущих проблем при проверке налоговой:
1. Оформлять договор аренды нотариально (это дополнительная проверка юристами, которая увеличит ваши шансы на корректное оформление договора аренды). Кроме того, нотариусы проверяют отсутствие арестов и т.д. на данную квартиру.
2. До момента начала нотариального оформления договора, самостоятельно просматривать документы арендодателя (если документа о праве собственности нет, или он не зарегистрирован в БТИ, или на нем нет печатей, или ФИО в нем и в свидетельстве регистрации СПД разные (исключаем вариант муж-жена), то дальше процесс аренды этой квартиры можно не продолжать).
3. Консультироваться у юристов и бухгалтеров по всем не понятным вопросам (причем лучше, чтобы и юристов и бухгалтеров было несколько).
Подведем неутешительные итоги – официально арендовать небольшой офис в нашей стране сложно, а зачастую и просто не возможно.
Кто виноват?
Не знаю, но точно не мы с вами.
Что делать?
Не сдаваться, вариант со снятием офиса за наличный расчет никто не отменял, хотя это не легальный вариант аренды офиса.
Что делать тому, кто виноват?
Исправляться и исправлять эти №;%:?*( законы, которые не позволяют нормально развиваться малому бизнесу.
Документы и ссылки по теме:
- Постановление Кабинета министров Украины №1029 от 31 августа 1996 года "Об усовершенствовании порядка сдачи в аренду жилых помещений"
- Постановление №659 от 11 мая 1998 года, которым Кабмин отменил свое прежнее решение №1029
- Письмо ГНАУ №9516 от 19.11.2004
- Кое-что в данном документе взято с http://www.teren.kiev.ua/articles/articles_21.html
2 ноября 2006 г.
Firefox 2.0 – рыжая бестия возвращается
После целого ряда мелких update-ов версии 1.5, компания Mozilla выпустила 2-ую версию своего суперпопулярного браузера. Появившись во второй половине 2004г. (речь идет про версию 1.0), он всего за 2-а года смог отвоевать у Microsoft Internet Explorer-a около 12% рынка браузеров (в Европейских странах этот показатель достигает отметки 20%). По-моему мнению, именно популярность Firefox заставил компанию Microsoft добавить поддержку закладок (tab-ов), в новую 7-ую версии Internet Explorer-a (подробное сравнение Firefox 2.0 и IE 7.0).