Катедралата и базарът
„Катедралата и базарът“ е есе за методите на софтуерно инженерство, написано от Ерик Реймънд въз основа наблюденията му върху процеса на разработка на Линукс и собствения му опит с управление на софтуер с отворен код.
Поуките от книгата
редактиране
- Всеки качествен софтуер възниква, за да начеше крастата на разработчика. (Глава 2)
- Добрите програмисти знаят какво да пишат. Великите знаят какво да пренапишат (и преизползват). (Глава 2)
- Свиквай с мисълта, че един опит ще отиде на вятъра — така или иначе това ще се случи. (Глава 2, оригинална мисъл на Фред Брукс)
- Ако имаш подходящата нагласа, интересните проблеми сами ще те намерят. (Глава 2)
- Когато изгубиш интерес към една програма, последният ти дълг към нея е да я оставиш в ръцете на способен наследник. (Глава 2)
- Да се отнасяте към потребителите си като към съразработчици е най-безпроблемният начин бързо да усъвършенствате кода и да направите отстраняването на грешки по-ефективно. (Глава 3)
- Пускай рано. Пускай често. И слушай клиентите си.
- Ако има достатъчно голяма база от бета-изпитатели и съразработчици, почти всеки проблем ще бъде характеризиран бързо, а поправянето му ще бъде очевидно за някой. [...] Ако има достатъчно очи, всички грешки се виждат. (Глава 4)
- Интелигентните структури от данни и тъпият код работят много по-добре, отколкото в обратния случай. (Глава 5)
- Ако се отнасяш към своите бета изпитатели като към свой най-ценен ресурс, те ще ти отвърнат, превръщайки се в най-ценния ти ресурс. (Глава 5)
- Щом нямаш добри идеи, тогава разпознавай добрите идеи на своите потребители. Понякога второто е за предпочитане. (Глава 6)
- Често най-поразителните и новаторски решения идват след откритието, че представата ти за проблема е погрешна. (Глава 6)
- "Съвършенството (в дизайна) е постигнато не когато няма какво повече да се добави, а когато няма какво повече да се отнеме." (Глава 6, оригинално мисъл на Антоан дьо Сент-Екзюпери)
- Всеки инструмент трябва да бъде полезен по очаквания начин, но един истински велик инструмент се употребява по начини, които никога не си очаквал. (Глава 7)
- Когато пишеш какъвто и да било шлюзов софтуер, направи си труда колкото се може по-малко да смущаваш потока от данни. И *никога* не изхвърляй информация, освен ако получателят не те принуди да го сториш. (Глава 7)
- Когато езикът ти съвсем не е Тюринг-издържан, синтактичният подсладител може да бъде твой приятел. (Глава 8)
- Една система за сигурност е толкова сигурна, колкото сигурна е нейната тайна. Пазете се от псевдо-тайни. (Глава 8)
- Ако искаш да разрешиш интересен проблем, първо започни да търсиш проблем, който е интересен за самия теб. (Глава 10)
- Когато на координатора на разработката е предоставена среда, поне толкова добра колкото Интернет, и той знае как да ръководи без принуда, тогава повече глави са неизбежно по-добри от една. (Глава 10)
Други цитати
редактиране
- Човешките същества общо взето изпитват удоволствие от едно задание, когато то попада в областта на оптималното предизвикателство — не прекалено лесно, за да е отегчаващо, но и не прекалено трудно за постигане. Щастлив програмист е този, който хем не стои без работа, хем не е претоварен от зле формулираните задания и стресиращото търкане на процесите. Удоволствието следва ефикасността. [...] Може да се окаже, че едно от най-важните последствия от успеха на отворения код ще е да ни научи, че играта е икономически най-ефективният начин за творческа работа. (Глава 11)
Външни препратки
редактиране