2008-03-31
Опять хакнули баш.
Какие-то национал-лингвисты загнали в цитаты список правил русского языка.
Update: это была их первоапрельская шутка. Дурак, ты боцман...
2008-03-30
2008-03-29
2008-03-28
Переползание в blogger.
Собираюсь переползти в blogger. Вопрос - будут ли те, кто читает меня здесь, читать в блоггере?
Unicode
http://www.codinghorror.com/blog/archives/001084.html
Я тоже! :-)
В своём домашнем С++ проекте я поменял Unicode (а точнее widechar) на UTF-8. Не нарадуюсь. Весь код стал проще. И никаких TCHAR или wchar_t, обычные char. Никаких макросов _T. Разбор текстового файла, который тоже в UTF-8, ускорился на порядок. Разбор файла в Windows-1251 ускорился существенно, раза в 3, поскольку большая часть разделителей - ASCII. Уменьшилось количество отъедаемой памяти. Уменьшился размер кода, поскольку 16-битовые операции в 32-битовом коде требуют специального префикса, а 8-битовые - не требуют. Единственное неудобство, что все вызовы функций Windows делаются через специальные wrapper-ы. Но это даже хорошо. При необходимости будет легче адаптировать код под Linux. Я все обращения к функциям ОС вынес в отдельный namespace. Более того, я include заключил в namespace, чего его авторы, видимо, не ожидали. А вот так! Добро пожаловать за окошко с решёткой! И я не стал объявлять его using. Только явно, Win::CreateFileW.
2008-03-26
BIOS Hypervisor
Хотел написать про свою идею поместить Hypervisor в BIOS, так, чтобы можно было загружать одновременно пару ОС, а пока они грузятся, лазить в интернете используя маленькую встроенную машинку с браузером, но без доступа к диску.
Но набрал в гугле subj и понял, что опоздал.
http://www.google.com/search?hl=en&q=bios+hypervisor
http://tkjunkmail.blogspot.com/2007/11/phoenix-technologies-to-release.html
http://searchsecurity.techtarget.com/news/article/0,289142,sid14_gci1281741,00.html
2008-03-25
Смена лампочки в Микрософте
Оригинал в http://www.codinghorror.com/blog/
Слегка сокращённо. Я не знаю, как перевести некоторые термины, оставив их на английском.
Этот классический пост Эрика Липперта описывает, со всей мучительной детальностью, какая в точности нужна работа, чтобы добавить одну функцию ChangeLightBulbWindowHandleEx в Микрософтовский код:
# Один девелопер потратил пять минут на написание ChangeLightBulbWindowHandleEx.
# Один программ-менеджер написал спецификацию.
# Один эксперт по локализации проверил спецификацию на возможные проблемы локализации.
# Один эксперт по usability проверил спецификацию на возможные проблемы с usability и accessibility.
# Как минимум один девелопер, один тестер и один ПМ провели "мозговой штурм" по поводу возможных проблем с безопасностью.
# Один ПМ добавил модель безопасности к спецификации.
# Один тестер написал план тестирования.
# Один тест-лид включил его в график-тестирования.
# Один тестер написал тесты и добавил их в ночной автоматический тестовый прогон.
# Три или четыре тестера поучаствовали в "ad hoc bug bash" (поковырялись на предмет багов).
# Один технический писатель написал документацию.
# Один технический корректор вычитал документацию.
# Один технический редактор проверил документацию.
# Один менеджер документации добавил новую документацию в существующую систему, обновив таблицу содержания и поисковые индексы.
# Двадцать пять переводчиков перевели документацию на все поддерживаемые языки. Менеджеры переводчиков живут в Ирландии (для европейских языков) и в Японии (для азиатских языков), сдвинутые по времени относительно Редмонда, потому это не простая логистическая проблема.
# Команда старших менеджеров координирует все эти усилия, оплачивает работу и обосновывает расходы перед вице-президентом.
...
Кто же всё это делает для Open Source? Ответ, согласно комментарию Raymond Chen, это "никто", что говорит о вопиющей непрофессиональности и некачественности ОС софта.
Моё (codinghorror) откровенное мнение: "А вам всё это нужно, чтобы быть успешным?".
А моё мнение, как девелопера, что процесс сильно идеализирован и сокращён. Всё сложнее и дольше даже на первых стадиях. Потому до написания документации дело может дойти только по решению европейского суда.
Зачем всё это нужно мне? Ради одного последнего пункта, "оплачивает работу и обосновывает расходы". Это то главное, чего мне очень не хватает в Open Source.
Слегка сокращённо. Я не знаю, как перевести некоторые термины, оставив их на английском.
Этот классический пост Эрика Липперта описывает, со всей мучительной детальностью, какая в точности нужна работа, чтобы добавить одну функцию ChangeLightBulbWindowHandleEx в Микрософтовский код:
# Один девелопер потратил пять минут на написание ChangeLightBulbWindowHandleEx.
# Один программ-менеджер написал спецификацию.
# Один эксперт по локализации проверил спецификацию на возможные проблемы локализации.
# Один эксперт по usability проверил спецификацию на возможные проблемы с usability и accessibility.
# Как минимум один девелопер, один тестер и один ПМ провели "мозговой штурм" по поводу возможных проблем с безопасностью.
# Один ПМ добавил модель безопасности к спецификации.
# Один тестер написал план тестирования.
# Один тест-лид включил его в график-тестирования.
# Один тестер написал тесты и добавил их в ночной автоматический тестовый прогон.
# Три или четыре тестера поучаствовали в "ad hoc bug bash" (поковырялись на предмет багов).
# Один технический писатель написал документацию.
# Один технический корректор вычитал документацию.
# Один технический редактор проверил документацию.
# Один менеджер документации добавил новую документацию в существующую систему, обновив таблицу содержания и поисковые индексы.
# Двадцать пять переводчиков перевели документацию на все поддерживаемые языки. Менеджеры переводчиков живут в Ирландии (для европейских языков) и в Японии (для азиатских языков), сдвинутые по времени относительно Редмонда, потому это не простая логистическая проблема.
# Команда старших менеджеров координирует все эти усилия, оплачивает работу и обосновывает расходы перед вице-президентом.
...
Кто же всё это делает для Open Source? Ответ, согласно комментарию Raymond Chen, это "никто", что говорит о вопиющей непрофессиональности и некачественности ОС софта.
Моё (codinghorror) откровенное мнение: "А вам всё это нужно, чтобы быть успешным?".
А моё мнение, как девелопера, что процесс сильно идеализирован и сокращён. Всё сложнее и дольше даже на первых стадиях. Потому до написания документации дело может дойти только по решению европейского суда.
Зачем всё это нужно мне? Ради одного последнего пункта, "оплачивает работу и обосновывает расходы". Это то главное, чего мне очень не хватает в Open Source.
2008-03-23
Стерео
Давненько я не снимал стерео. Снято мыльницей вчера на велодорожке около Carnation. Как всегда, первая пара вдаль, вторая и третья - с перекрещиванием.
2008-03-21
Из блога в блог перелетая
Копирует блоги. Из одной системы в другую. Если собрались перебираться из LJ в blogspot или wordpress, то запросто. Комменты не копируются, естественно.
http://linuxlore.blogspot.com/search/label/blog2blog
2008-03-19
Кто-нибудь хочет в Microsoft?
В конце мая ожидается поездка рекрутеров в Москву. Читайте дальше в блоге у Эльдара.
Я тоже когда-то совершил сей героический поступок. Почти по Жванецкому. "Теперь он программистом в Редмонде. Жалеет страшно."
Вперед, в XXI век
Недавно посетил некую выставку неких "передовых разработок". Удивило, обилие заголовков с термином "XXI век". Типа, "Методы генерации булшита XXI века" или "Разработка булшита в корпоративной среде XXI века" и т.д. Главное, чтобы были всякие слова типа "collaboration" или "corporate environment", но не просто, а XXI века. Я уж и забыл, что недавно век начался.
Практически всегда, когда используют такое словосочетание, вам хотят что-то продать. Вам в новом веке нужна новая машина, новый дом, новый компьютер с новой системой, не отставайте от времени! С временем надо шагать в ногу! Корпорациям в новом веке тоже нужно всё новое, особенно новые способы ведения бизнеса! Нельзя же по старинке писать legacy code! Китайские товарищи с вышеупомянутой выставки поняли, как надо продавать разработки.
Нам так однажды, в 2000 году, продали нового президента, которого перед этим те же люди лихо всучили Борис Николаевичу. С теми же самыми словами, несмотря на то, что век начинался в 2001.
Короче, все эти веяния времени - булшит, и так его и надо понимать. Ног у времени нет, отстать от него нельзя. Можно отстать от моды, ну и хрен с ней. Мода придумана в точности для того же самого - продать человеку то, что ему не нужно.
Навеяно дискуссией про C#. Если есть практическая проблема, где C# её решает не внося других проблем, нормально, можно использовать. Если есть мысль, что C# сейчас можно продать - вперед. Но переписывать С++ код на С# только потому, что это "веление времени" - увольте. Это булшит.
2008-03-18
Vista vs XP
From "Australia PC World":
http://www.pcworld.idg.com.au/index.php/id;1155325152;fp;2;fpid;2;pf;1
Я, в принципе, согласен. Я тоже планирую пропустить сей апгрейд и дома, и на работе. А если заставят, пересяду на 2008 сервер.
2008-03-17
Суп из рекламы
Вот о чём сыр-бор: http://brad.livejournal.com/2368071.html?page=7&style=mine#comments
Они думают, что всё побегут деньги платить? Побегут, конечно, но не платить. Я им пишу, я ещё и платить?
Знакомый случай. Если деньги - единственная ценность, то предмет считается бессмысленным, пока не приносит дохода. Если дерево не даёт плодов, его надо срубить и продать на дрова. А если огород без его тени засохнет, ну и хрен с ним. Заасфальтируем и сделаем автостоянку, забот меньше, поливать не надо.
Куда весь народ двигает? В блоггер?
2008-03-14
Power Pain Point
Никогда не любил микрософтовский офис. Как надо что-нибудь сделать, так начинается борьба бобра с ослом. Стараюсь им не пользоваться. Хотя, ради правды надо сказать, что открытый офис ещё хуже, и опыт подготовки презентации в нем в этом году вызвал ещё большие танцы с бубном. Но это другая история.
Детям надо делать уроки, так что пришлось прикупить микрософтовскую коробочку 2007 Student Edition. Оказалось, что лицензия позволяет поставить его на три компьютера. Очень удобно. Поставил на два.
Дочке задали сделать опыт с плавающими по воде булавками и сделать презентацию. Она села и очень быстро набросала презентацию с картинками и одним коротким видео-клипом. Usability, подумал я. Дальше позвали меня, чтобы я записал всё на USB. Тривиально, конечно. Но я учёный. Когда я увидел объём файла, понял, что видео там нет. Исследование показало, что картинки есть, а видео закодировано полным путём на домашний сетевой диск. Ни слова не сказал Point, сделал всё молча и глупо, как накрашенная дура-секретарша. Недолгий поиск не нашёл никаких следов операции включающей клип в презентацию, как и никаких следов упоминания, что его там не будет. Сохранение в разных форматах не помогло. Попытка включить руками путём ковыряния в zip-файле и xml тоже не удалась. Видео из zip не играется. Сделать полный путь на USB, который будет правилен на любом компьютере в Windows тоже нельзя. Короче, записал видео отдельным файлом и сказал дочке, чтобы запускала руками.
Что удивительно, 2008 год на дворе, более чем десять лет развития офиса. Но тривиальная презентация 10-летнего ребёнка вызывает непреодолимые технические трудности.
2008-03-11
Yahоо
Не понимаю я цели сего поглощения. Технологически Yahoo со своими юниксовыми технологиями в микрософтовский пейзаж никак не вписывается, и очевидно его долго будут переписывать на Windows и .NET. Практически все сервисы в том или ином виде у Микрософта сделаны свои и, очевидно, что-то придётся в очередной раз выкинуть, вероятно опять Live. Ну не для того же приобретают компанию за такие деньги, чтобы выкинуть их технологии! Хотя всего можно ждать. Купить для уничтожения конкурента тоже странно. Далеко не очевидно, что клиенты все переедут в Live, с тем же успехом они уйдут в Гугл.
Скорее всего покупается клиентская база и доля в рекламном рынке. Но, сдаётся мне, ниша Yahoo существует именно как третья сторона, это и не Гугл, и не Микрософт, это наше привычное небольшое Yahoo. Как только начнётся переделка Yahoo в Live, так народ и побежит.
2008-03-08
2008-03-06
Неинтересные интересы
В очередной раз прочитал про "правильное общество" или "справедливое общество". Блин, ну сколько же можно жить в сказках и путаться в словах. Слова, они что-то означают. Что такое "правильное общество"? Общество, которое защищает интересы ... Чьи конкретно? Бывают интересы граждан, интересы бизнесов, интересы элиты, интересы разных групп, интересы национальных групп, религиозных, проживающих в данное время или интересы будущих поколений, и т.д. и т.п. Причем эти интересы часто противоречат друг другу. В интересах будущих поколений нам всем надо вымирать от болезней, чтобы совершенствовать генотип имунной системы. Кроме того, Ваши личные интересы могут вполне противоречить интересам групп, в которые Вы входите. Нет? Тогда раздайте им свои деньги.
Вот всем понятно что для того, чтобы поехать на автомобиле надо иметь, во первых, автомобиль, во вторых, бензин, в третьих ключи от автомобиля, а так же уметь им управлять, автомобиль должен быть исправен... Что ещё? А! Дорога нужна. Ещё что? Автомобиль должен на ней стоять в начале! Если начинаем в болоте, или на краю пропасти, далеко не уедем, а если уедем, то удовольствия не получим. И, кстати, дорога должна идти куда надо, а не на свалку.
Это сложно. Много долгой утомительной работы. Надо не просто сделать машину, надо строить дороги. Человечество занимается этим всю историю своего существования. Даже если с машиной не получится, дорога всё равно останется.
Строители, а особенно певцы, нового общества не заморачиваются подобными сложностями, такими как устройство машины или прокладка дорог. Главное сесть за руль, а там видно будет, как-нибудь сами дотолкаем или запряжём кого нибудь. Наша машина не едет, поскольку мешают враги, не дают сесть за руль правильным людям. Они закрылись от нас в кабине, а потому наша задача - эту кабину сломать. Пока одни ломают кабину, другие отвинтят колёса, и опять всё останется на своём месте.
Обнадёживает то, что пока элита дерётся за руль, кто-то безымянный строит дороги.
2008-03-04
2008-03-03
Выборные игры
... всегда основаны на известной табуированной лжи о том, что высшая власть в демократических странах принадлежит свободноизбираемому президенту. Если верить в эту теорию, тогда получается глупая картина, где властелюбивый злодей Путин хочет остаться у власти хоть тушкой, хоть чучелом. Если же считать, что президент, это всего лишь персонализация реальной власти, то ротация представителей, это логичная и нормальная практика. В них уже вложились, они проверены на лояльность, и выбрасывать их и вкладываться в новых есть ненужный риск и расход средств.
Хотя, конечно, понятно, что народу при этом скучно и не хватает зрелищ. Особенно, если хватает хлеба. Вот в штатах, настоящая демократия! Такие выборы, сякие выборы. То кокусы, то праймариз. Кандидаты ездят по штатам, встречаются с элитами, а заодно дискутируют в эфире, поливают друг друга грязью. Есть что по телевизору посмотреть. Да, учиться нам ещё надо демократии, как науке управления толпой.
Инн-овации
Есть два типичных противоположных мнения о пользователях, которые, как соглашаются обе стороны, являются непременно носителями отрицательных качеств. Одни считают, что пользователям нужно "latest and greatest", что они спят и видят, как бы поставить последнюю бета-версию и тащиться от всяких новых фенечек, которых чем больше, тем лучше. Другие считают, что пользователи, наоборот, очень консервативны и всё новое воспринимают в штыки, предпочитая довольствоваться старым и привычным. Вот и Висту не хотят ставить, а раньше эти враги прогресса точно так же не хотели ставить XP.
Но вот странно, висту не хотят, а айфоны не только хотят, но даже тратят кучу денег, разлочивают, подключают к другим провайдерам, теряя при этом кучу функциональности. Подростки, говорите? А стало быть виндой пользуются только бабушки?
Всё просто. Есть качество, а есть количество. Если вы начинаете набирать инновации количеством, думая, чего бы ещё такого засунуть в систему, то получите висту, где куча не особенно полезных инноваций дорого оплачивается пользователем, вынужденным покупать новый компьютер, менять свои привычки и переставшие работать программы. Либо вы придумываете нечто новое, которое невелико, но удобно, красиво и работает как часы (и не только как часы, спасибо за каламбур). Я покрутил ай-яй-фон в яблочном магазине, и меня поразило, как всё сделано просто, удобно и комфортно.
Кстати, одно из самых замечательных свойств iPhohe, моё любимое, то, что его можно не покупать! В отличие от.
Subscribe to:
Posts (Atom)