Jan 8, 2009 · Comments
ПрограммированиеFarOpen source
Никогда не знаешь к чему приведет отправка патча в какой-нибудь open source проект. Обычно это выглядит так. Программа вас чем-то не устраивает и вы изменяете её под себя. Потом, сообразив, что это будет полезно кому-нибудь еще, вы оформляете красивый патч и отправляешь его разработчикам. Его, как правило, не принимают. По разным причинам. То ли стиль нужно подправить, то ли нужно показать, что патч действительно полезный и что он в канву продукта вписывается. Впрочем, и это тоже не новость, главная задача разработчиков продукта на этом этапе – это выяснить вменяемость автора патча (можно ли с ним работать, вести нормальный диалог и т.д.) и то, насколько предложенные им изменения вписываются в их видение продукта. Короче, если вы новичок в данном проекте, ждите придирок по пустякам. Это нормально и это пройдет, если вы (со временем) впишетесь в стиль работы, принятой разработчиками.
Read On →
Jan 3, 2009 · Comments
Неизвестная Windows
Windows традиционно ругают за недоразвитую консоль. Ругают в первую очередь, конечно, за командный процессор (cmd.exe) - злую шутку случайной эволюции. Потом достаётся застрявшей в 1995 году консольной подсистеме в целом. Ну и на закуску остается отсутствие человеческой поддержки удаленного доступа к консоли (telnet/SSH). Короче ругают совершенно заслужено, но при этом, как мне кажется, делается подсознательный вывод, что консоль в Windows вообще ни для чего не годится. В результате упускается из виду, что в состав Windows входит множество утилит командной строки, которые могут быть весьма полезны. Дабы слегка исправить эту ситуацию, я собираюсь написать серию постов «Неизвестная Windows», посвященную консольным утилитам Windows.
Read On →
Dec 31, 2008 · Comments
Разное
Вот так Аральское море выглядело в октябре этого года:
А в 93-ем оно было вот таким:
Dec 16, 2008 · Comments
Странное
forum.privet.com:
Большая компания, сотни тысяч серверов, десятки датацентров потребляющих мегаваты электроэнергии.
Озаботился тут как-то Очень Большой Босс (ОББ) тем, что вентиляторы у серверов впустую воздух гоняют, вносят свою лепту в дело глобального потепления, так сказать. Указ издал - чтоб все сервера до конца года использовали CPU на 42% как минимум - и баста. У ОББ масса починенных - сами из себя Большие Боссы и Боссихи (ББиБ). Дипломы MBA, и пр. - все при них.
Read On →
Dec 15, 2008 · Comments
Программирование
В Microsoft, по крайней мере, в той его части, что разрабатывает Windows, весьма неплохо поставлен процесс отладки падений, сбоев и прочих багов. Автоматические тесты при падении вываливаются в отладчик. Если какая либо проблема воспроизводится локально, то обычно не нужно просить прислать crash dump или адрес сессии отладчика – так называемый remote. Словечко происходит от утилиты «remote.exe», которая идет в комплекте с «WinDbg.exe» и делает, в общем-то, тоже самое, что и Telnet, но через именованные трубы (named pipes). Не спрашивайте меня, почему нельзя было использовать тот же Telnet. Для меня это тоже загадка. Но я отклоняюсь от темы.
Read On →
Dec 11, 2008 · Comments
Usability
Спам фильтр, сидящий в голове каждого пользователя, неизмеримо превосходит по своей эффективности любой автоматический спам фильтр. Он умеет отфильтровывать красиво оформленный, грамматически правильный текст, даже не читая его - You can’t fix application compatibility problems with dialog boxes.
Dec 4, 2008 · Comments
ПрограммированиеWin32
Любой разработчик, кто хоть раз создавал ключ в реестре с помощью функции RegCreateKeyEx задавался вопросом: «а зачем нужен параметр lpClass и что он означает?»
lpClass [in, optional]
The user-defined class type of this key. This parameter may be ignored. This parameter can be NULL.
Read On →
Nov 28, 2008 · Comments
Юмор
Утро пятницы. 9:30. Большая часть населения Штатов все еще переваривает вчерашнюю индейку с картошкой и прочие излишества праздничного стола. В магазинах бушует Черная пятница. На улицах Сиэтла - парад в честь прибытия Санты Клауса. И в этот момент человек пишет:
А сегодня вообще рабочий день-то?
Nov 24, 2008 · Comments
ПрограммированиеWow64
На днях свалился в inbox вопрос:
The documentation for QueueUserApc states “an APC cannot be queued from a 64-bit process to a 32-bit process or vice versa.”
However on Vista Ultimate x64, we _can _queue a user APC from a 32-bit process to a 64-bit process. In our test application the 64-bit recipient crashes, we haven’t explored why just yet, but the point is that the operation should not succeed and the 64-bit application’s APC queue should never have the APC inserted.
Is it an OS bug?
Документация к функции QueueUserApc утверждает, что асинхронный вызов процедуры (APC) не может быть запрошен из 64-х битного процесса для выполнения в 32-х битном и наоборот.
Однако на Vista Ultimate x64 мы можем выполнить асинхронный вызов пользовательского режима из 32-х битного процесса в 64-х битном процессе. В нашем тестовом приложении 64-х битный получатель падает и мы еще не выяснили почему, но дело в том, что операция (QueueUserApc) не должна завершаться успешно и асинхронный вызов не должен вставляться в очередь вызовов 64-х разрядного процесса.
Это баг ОС?
Вопрос примечателен тем, что это уже третье письмо на эту тему за последние два месяца, хотя функция QueueUserApc далеко не самая широко используемая функция Win32. Не иначе какой настойчивый клиент эту функцию мучает. :-)
Read On →