Искусство программирования для Unix - Эрик Реймонд
Шрифт:
Интервал:
Закладка:
Книга, в которой вводится понятие "пробивной технологии". Интересное исследование, демонстрирующее, как и почему солидные технологические компании остаются позади начинающих фирм. Бизнес-книга, которую следует прочесть техническими специалистам.
13. Cooper A. The Inmates Are Running the Asylum. Sams, 1999. — C. 509.
Данная книга представляет собой глубокий анализ ошибок в конструкции программных интерфейсов и методов их исправления.
14. Comer D. Статья "Pervasive Unix: Cause for Celebration" в журнале Unix Review, октябрь 1985. - С. 57.
15. Coram Т., Lee J. Experiences — A Pattern Language for User Interface Design, 1996. — C. 295.
Статья доступна в Web <http://www.maplefish.com/todd/papers/Experiences.html>.
16. DuBois P. Software Portability with Imake. O'Reilly & Associates, 1993. — C. 394.
17. Eckel B. Thinking in Java, (Третье издание). Prentice-Hall, 2003. — C. 372.
Книга доступна в Web <http://www.mindview.net/Books/TIJ/>.
18. Feller J., Fitzgerald B. Understanding Open Source Software. Addison-Wesley, 2002. — C. 471.
19. Flanagan D. Java in a Nutshell. O'Reilly & Associates, 1997. - C. 372.
20. Flanagan D. JavaScript: The Definitive Guide, (Четвертое издание). O'Reilly & Associates, 2002. - C. 235.
21. Fowler M. Refactoring. Addison-Wesley, 1999. - C. 118.
22. Friedl J. Mastering Regular Expressions, (Второе издание). O'Reilly & Associates, — C. 217.
23. Miller В., Koski D., Lee C. P., Maganty V., Murthy R., Natarajan A., Steidl J. Fuzz Revisited: A Re-examination of the Reliability of Unix Utilities and Services, 2000. — С. 31.
Документ доступен в Web: <http://www.opensource.org/advocacy/fuzz-revisited.pdf>.
24. Gamma E., Helm R., Johnson R., Vlissides J. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1997. — С. 23.
25. Gabriel R. Good News, Bad News, and How to Win Big, 1990. - C. 328, 471.
Статья доступна в Web <http://www.dreamsongs.com/WorselsBetter.html>.
26. Gancarz M. The Unix Philosophy. Digital Press, 1995. - C. 19.
27. Garfinkel S., Weise D., Strassman S. The Unix Hater's Handbook. IDG Books, 1994. — C. 28.
Книга доступна в Web <http://research.microsoft.com/~daniel/Unix- haters.html>.
28. Gentner D., Nielsen J. "The Anti-Mac Interface". Статья в журнале Communications of the ACM Ассоциации вычислительной техники (Association for Computing Machinery). - август 1996. - С. 290.
<http://www.acm.org/cacm/AUG96/antimac.htm>
29. Gettys J. The Two-Edged Sword, 1998. - C. 33.
Статья доступна в Web: <http://freshmeat.net/articles/view/122/>.
30. Glickstein B. Writing GNU Emacs Extensions. O'Reilly & Associates, 1997. - C. 374.
31. Graham P. A Plan for Spam. - C. 246.
Статья доступна в Web: <http://www.paulgraham.com/spam.html>.
32. Harold E. R., Means W. S. XML in a Nutshell, (Второе издание). O'Reilly & Associates, 2002. - C. 142, 467.
33. Hatton L. "Re-examining the Defect-Density versus Component Size Distribution". IEEE Software. — март/апрель 1997. — С. 110.
Статья доступна в Web <http://www.cs.ukc.ac.uk/people/staff/lh8/pubs/pubis697/Ubend_IS697.pdf.gz>.
34. Hatton L. "Does OO Sync with the Way We Think?". IEEE Software, 15(3). - C. 357.
Статья доступна в Web <http://www.cs.ukc.ac.uk/people/staff/lh8/pubs/pubis698/00_IS698.pdf.gz>.
35. Hauben R. History of UNIX. - C. 57.
Документ доступен в Web <http://www.dei.isep.ipp.pt/docs/Unix.html>.
36. Heller S. С++: A Dialog: Programming with the С++ Standard Library. Prentice-Hall,
2003. - C. 358.
37. Hunt A., Thomas D. The Pragmatic Programmer: From Journeyman to Master. Addison-Wesley, 2000. - C. 18, 114.
38. Kernighan B. Experience with Tcl/Tk for Scientific and Engineering Visualization. Доклады конференции USENIX Association Tcl/Tk Workshop, 1995. — C. 366.
Документ доступен в Web <http://www.usenix.org/publications/library/proceedings/tcl95/full_papers/kernighan.txt>.
39. Kernighan В., Pike R. The Unix Programming Environment. Prentice-Hall, 1984. — C. 19, 354, 360, 386.
40. Kernighan В., Pike R. The Practice of Programming. Addison-Wesley, 1999. — C. 18, 443. (Б. Керниган, P. Пайк. Практика программирования. ИД "Вильямс", 2004 г.)
Отличный трактат по написанию высококачественных программ, данная книга, несомненно, должна стать классикой в своей области.
41. Kernighan В., Plauger P.J. Software Tools. Addison-Wesley, 1976. - С. 37.
42. Kernighan В., Ritchie D. The С Programming Language, (Второе издание). Prentice-Hall Software Series, - C. 118, 355, 428, 430.
43. Lampson B. "Hints for Computer System Design". Обзор операционных систем (ACM Operating Systems Review) Ассоциации вычислительной техники (Association for Computing Machinery). — октябрь 1983 г. — C. 53.
Документ доступен в Web <http://research.microsoft.com/~lampson/33-Hints/WebPage.html>.
44. Lapin J. E. Portable С and Unix Systems Programming. Prentice-Hall, 1987. — C. 430.
45. Leonard A. BSD Unix: Power to the People, from the Code, 2000. - C. 58.
Документ доступен в Web <http://dir.salon.com/tech/fsp/2000/05/16/chapter_2_part_one/index.html>.
46. Levy S. Hackers: Heroes of the Computer Revolution. Anchor/Doubleday, 1984. — C. 67.
Книга доступна в Web <http://www.Stanford.edu/group/mmdd/Silicon-Valley/Levy/Hackers.1984.book/contents.html>.
47. Lewine D. POSIX Programmer's Guide: Writing Portable Unix Programs. O'Reilly & Associates, 1992. - C. 434.
48. Libes D., Ressler S. Life with Unix. Prentice-Hall, 1989. - C. 58.
В данной книге более подробно описывается ранняя история Unix, особенно период 1979-1986 годов.
49. Lions J. Lions's Commentary on Unix, 6th Edition. Peer-To-Peer Communications, 1996. - C. 57.
PostScript-версии оригинальной книги Лайонза путешествуют по Web, данная ссылка может быть нестабильной <http://www.upl.cs.wisc.edu/~epaulson/lionc.ps>.
50. Loukides М., Oram A. Programming with GNU Software. O'Reilly & Associates, 1996.-С.380, 387.
51. Lutz M. Programming Python. O'Reilly & Associates, 1996. - C. 368.
52. McIlroy M. D., Pinson E. N., Tague B. A. "Unix Time-Sharing System Forward". Статья в техническом журнале корпорации Bell System (The Bell System Technical Journal), Bell Laboratories, 1978. — C. 34.
53. McIlroy M. D. "Unix on My Mind". В материалах конференции Virginia Computer Users Conference. — C. 55.
54. Miller G. "The Magical Number Seven, Plus or Minus Two". The Psychological Review. — C. 112.
Статья доступна в Web <http://www.well.com/user/smalin/miller.html>.
55. Mumon. The Gateless Gate. — C. 179.
Книга доступна в Web <http://www.ibiblio.org/zen/cgi-bin/koan-index.pl>.
56. Ockman S., DiBona C. Open Sources: Voices from the Open Source Revolution. O'Reilly & Associates, 1999. - C. 85.
Книга доступна в Web <http://www.oreilly.com/catalog/opensources/book/toe.html>.
57. Oram A., Talbot S. Managing Projects with Make. O'Reilly & Associates, 1991. - C. 387.
58. Ousterhout J. Tcl and the Tk Toolkit. Addison-Wesley, 1994.
59. Ousterhout J. Why Threads Are a Bad Idea (for most purposes), 1996.
Доклад на конференции USENIX 1996. Соответствующего напечатанного документа нет, но презентация доступна в Web <http://home.pacbell.net/ouster/threads.pdf">.
60. Padlipsky M. The Elements of Networking Style. iUniverse.com, 2000. - C. 128, 496.
61. David P. L. "On the Criteria to Be Used in Decomposing Systems into Modules". Communications of the ACM. — C. 109.
Статья доступна в Web в разделе классики на странице ACM <http://www.acm.org/classics/may96/>
62. Pike R. Notes on Programming in С. — C. 34.
Документ доступен на странице <http://www.lysator.liu.se/c/pikestyle.html>.
63. Prechelt L. An Empirical Comparison of C, С++, Java, Perl, Python, Rexx, and Tcl for a Search/String-Processing Program. — C. 353. <http://www.ubka.uni-karlsruhe.de/cgi-bin/psview?document=ira/2000/5>.
64. Raskin J. The Humane Interface. Addison-Wesley, 2000. — C. 282.
Краткий конспект приведен на странице <http://humane.sourceforge.net/humane_interface/summary_of_thi.html>.
65. The Memory Management Reference. — C. 46.
Доступно в Web <http://www.memorymanagement.org/>.
66. The New Hacker's Dictionary, (Третье издание). MIT Press, 1996. — C. 69, 332.
Книга доступна в Web на странице файла жаргона <http://www.catb.org/~esr/jargon>.
67. Raymond Е. S. The Cathedral and the Bazaar, (Второе издание). O'Reilly & Associates, 1999. — C. 72, 471, 508.
68. Reps P., Senzaki N. Zen Flesh, Zen Bones. Shambhala Publications, 1994. — C. 18. Превосходная антология основных Дзэн-источников как они есть.
69. Ritchie D. М. The Evolution of the Unix Time-Sharing System, 1979. — C. 53.
Книга доступна в Web <http://cm.bell-labs.com/cm/cs/who/dmr/hist.html>.
70. Ritchie D. M. The Development of the С Language, 1993. - C. 429.
Статья доступна в Web <http://cm.bell-labs.com/cm/cs/who/dmr/chist.html>.
71. Ritchie D. M. An Incomplete History of the QED Text Editor, 2003. - C. 335.
Статья доступна в Web <http://cm.bell-labs.com/cm/cs/who/dmr/qed.html>.
72. Ritchie D. M., Thompson K. The Unix Time-Sharing System. — C. 56.
Книга доступна в Web <http://cm.bell-labs.com/cm/cs/who/dmr/cacm.html>.
73. Saltzer J. H., Reed D. P., Clark D. D. "End-to-End Arguments in System Design". Статья ACM Transactions on Computer Systems Ассоциации вычислительной техники (Association for Computing Machinery). — ноябрь 1984 г. — С. 149.
Статья доступна в Web <http://Web.mit.edu/Saltzer/www/publications/endtoend/endtoend.pdf>.
74. Salus P. H. A Quarter-Century of Unix. Addison-Wesley, 1994. - C. 34.
Превосходный обзор истории Unix, объясняющий многие из конструкторских решений словами их создателей.
75. Schaffer Е., Wolf М. The Unix Shell as a Fourth-Generation Language, 1991. — С. 190.
Документ доступен в Web <http://www.rdb.com/lib/4gl.pdf>. Реализация с открытым исходным кодом, NoSQL, доступна и легко находится с помощью поисковых машин.
76. Schwartz R., Phoenix Т. Learning Perl, (Третье издание). O'Reilly & Associates, 2001. - С. 363.
77. Spinellis D. "Notable Design Patterns for Domain-Specific Languages". Journal of Systems and Software. — февраль 2001 г. — С. 236.
Статья доступна в Web <http://www.dmst.aueb.rg/dds/pubs/jrnl/2000-JSS-DSLPatterns/html/dslpat.html>.