В этом посте буду собирать названия полезных для любого программиста книг.
- Том Демарко, Тимоти Листер «Человеческий фактор: успешные проекты и команды» / Tom DeMarco, Timothy Lister “Peopleware: Productive projects and teams”
- Том Демарко «Deadline: роман об управлении проектами» / Tom DeMarco *“Deadline: a novel about project management”
- Джо Мараско «IT-проекты: фронтовые очерки» / Joe Marasco “The Software Development Edge”
- Эдвард Йордон «Путь камикадзе» / Edward Yourdon “Death March”
- Дж. Ханк Рейнвотер «Как пасти котов: Наставление для программистов, руководящих другими программистами» / J. Hank Rainwater “Herding cats: A Primer For Programmers Who Lead Programmers”
- Роберт Гласс «Факты и заблуждения профессионального программирования» / Robert Glass “Facts and Fallacies of Software Engineering”
- Дэвид Платт «Софт — отстой! И что с этим делать?» / David S. Platt “Why Software Sucks... and What You Can Do about It”
- Стив Макконнелл «Профессиональная разработка программного обеспечения» / Steve McConnell “Professional Software Development”
- Стив Макконнелл «Совершенный код» / Steve McConnell “Code Complete”
- Мартин Фаулер «Архитектура корпоративных программных приложений» / Martin Fowler “Patterns of Enterprise Application Architecture”
- Эрик Дж. Брауде «Технология разработки программного обеспечения» / Eric J. Braude “Software Engineering. An Object-Oriented Perspective.”
- Л. Басс, П. Клементс, Р. Кацман «Архитектура программного обеспечения на практике» / Len Bass, Paul Clements, Rick Kazman “Software Architecture in Practice”
- Джек Гринфилд, Кит Шорт, Стив Кук, Стюарт Кент «Фабрики разработки программ. Потоковая сборка типовых приложений, моделирование, структуры и инструменты» / Jack Greenfield, Keith Short, Steve Cook, Stuart Kent “Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools”
- Фредерик П. Брукс «Мифический человеко-месяц или Как создаются программные системы» / Frederick P. Brooks “The Mythical Man-Month (Essays on Software Engeneering). 20th Anniversary Edition.”
Это древний текст, он уже неактуален и вряд ли кому понадобится, но пусть хранится для истории.
В Xorg 1.5 введена новая система конфигурации, через HAL. Для конфигурации тачпада из Eee PC 900 необходимо, во-первых, собрать модуль psmouse.ko, который этот тачпад поддерживает; а во-вторых, написать соответствующий конфиг для Xorg.
Вот мой конфиг:
<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="info.product" string="ETPS/2 Elantech Touchpad">
<merge key="input.x11_driver" type="string">synaptics</merge>
<merge key="input.x11_options.SHMConfig" type="string">True</merge>
<merge key="input.x11_options.SingleTapTimeout" type="string">150</merge>
<merge key="input.x11_options.MaxDoubleTapTime" type="string">10</merge>
<merge key="input.x11_options.UpDownScrolling" type="string">1</merge>
<merge key="input.x11_options.RightEdge" type="string">1050</merge>
<merge key="input.x11_options.ZAxisMapping" type="string">4 5</merge>
<merge key="input.x11_options.ClickTime" type="string">2</merge>
<merge key="input.x11_options.FastTaps" type="string">1</merge>
<merge key="input.x11_options.MinSpeed" type="string">0.246</merge>
<merge key="input.x11_options.MaxSpeed" type="string">0.89</merge>
<merge key="input.x11_options.AccelFactor" type="string">0.178</merge>
<merge key="input.x11_options.LeftRightScrolling" type="string">0</merge>
<merge key="input.x11_options.TapButton1" type="string">1</merge>
<merge key="input.x11_options.TapButton2" type="string">2</merge>
<merge key="input.x11_options.TapButton3" type="string">3</merge>
<merge key="input.x11_options.VertEdgeScroll" type="string">true</merge>
<merge key="input.x11_options.VertTwoFingerScroll" type="string">false</merge>
</match>
</device>
</deviceinfo>
Файл кладётся, например, сюда /etc/hal/fdi/policy/11-x11-elantech.fdi
, затем перезапускается hal и xorg.
Эта часть посвящена библиотеке растеризации шрифтов FreeType, а также базовым принципам растеризации, в том числе субпиксельной.
В этой части рассказывается о рендеринге и отрисовке шрифтов на стороне X-клиента.
В этой части рассказывается о классической системе рендеринга и отрисовки шрифтов в X Window System: Core X Renderer.
Разбирал завалы PDF-файлов со знаменитого процесса «Comes vs. Microsoft» и наткнулся на несколько весьма примечательных документов про агрессивный евангелизм, очень интенсивно применявшийся микрософтом в середине девяностых. Всплыло имя Джеймса Пламондона, как одного из авторов всего этого дерьма, а поиск в гугле принёс довольно много разнообразных статей на чрезвычайно интересную тему «Технологического евангелизма».
Вот один из примеров, «“Power Evangelism” and “Relationship Evangelism” Presented by James Plamondon and Marshall Goldberg». Неформальная и очень познавательная презентация (файл PLEX_2456.pdf из архива материалов), я её немного вычитал и сделал более приемлемую копию. PDF и оригинал в ODT.
Джеймс Пламондон типа раскаялся и ведёт блог на тему этого самого технологического евангелизма.
Перед тем, как приступить собственно к рассказу о шрифтовых подсистемах, необходимо сказать несколько слов об архитектуре графической подсистемы в целом. Как показал опыт, очень много пользователей Linux имеют слабое представление о принципах архитектуры системы, которой они пользуются.
Тема шрифтов поистине неисчерпаема, однако нормальных русскоязычных статей уровня «для начинающих» просто нет, а те, что есть, безнадёжно устарели. Поэтому пару лет назад задался целью написать цикл статей, рассказывающих о принципах функционирования шрифтовой подсистемы в Xorg. Результат можно посмотреть в викиучебниках.
А сейчас планирую постепенно перетащить эти статьи в свой блог, попутно исправляя ошибки и недочёты.
Этим постом открывается вторая эпоха в жизни проекта. Ужасный wordpress выкинут на помойку, вместо него — мой собственный движок, который можно охарактеризовать как «half blog, half wiki, half cms». Все данные, включая комментарии, благополучно смигрированы на новую систему.
Новая политика. На данном сайте планирую опубликовать все свои статьи, которые в настоящее время расползлись по самым разным рунетовским сайтам, и поддерживать эти статьи в актуальном состоянии. В данном блоге по-прежнему будут публиковаться исключительно статьи технического характера, однако значительно более объёмные, чем ранее — не просто заметки на пару страниц, а подробные статьи. Конечно же, будет и обратная связь в виде комментариев.
Движок сайта пока находится на самой ранней стадии развития, поэтому вполне возможны разнообразные мелкие косяки. Старые линки на статьи автоматически редиректятся на новые.
Не секрет, что в Debian Etch OpenOffice выглядит сейчас крайне ужасно. Примерно вот так:
Что-то накосячили или в OO, или в Freetype2, но результат один — в OpenOffice шрифты выглядят крайне паршиво при отключенном антиалиасинге. Сегодняшняя задача — заставить OO корректно отображать шрифты.