2009년 4월 29일 수요일

The ThoughtWorks Anthology를 읽고








소트웍스 앤솔러지 : 소프트웨어 기술과 혁신에 관한 에세이 - 10점
마틴 파울러 외 지음, 강규영 외 옮김/위키북스


요즘 이런 저런 일로 시간이 별로 없어서 책을 통 읽지 못했습니다. 그러다 우연히 이 책이 눈에 띄여 구입해서 읽었습니다.


사실 ThoughtWorks라는 단어와 Martin Flower라는 저자가 제 눈길을 잡았다고 하는게 이 책을 선택한 이유일 겁니다. Refactoring을 쓴 마틴 파울러가 만든 회사인 ThoughtWorks는 예전부터 관심을 가지고 있던 회사입니다. 애자일 개발방법들을 잘 활용하고 있는 회사로 유명하고 세계적으로 높은 소프트웨어 개발 역량을 가지고 있는 회사로도 유명합니다.


이 책은 바로 그들이 어떤식으로 소프트웨어를 개발하는지 각 부분의 사람들이 글을 써 그 글들을 한권의 책으로 묶은 것입니다.


제가 예전에 언급했던 CI(Continuous Integration 지속적인 통합)를 위한 도구중 하나인 Cruise Control을 어떻게 프로젝트에 활용하는지 알수 있고,  개발상의 다양한 단계를 최대한 자동화하는 것의 이점은 무엇인지 확인할 수 있습니다. 그리고 지구상에서 얼마 안되는 애자일 개발방법들을 잘 활용하여 성장하고 있는 회사라는 점을 감안할 때, 그들의 통찰은 많은 가치가 있다고 생각합니다.


그리고 이 책을 읽으면서 또 한번 느낄 수 있었습니다.


프로젝트 자동화 도입이 시급합니다.

"Top 100 Best Software Engineering Books, Ever를 읽고 책 정리"를 읽고 책정리

B급 프로그래머님의 블로그 포스트 를 보고 추천할 만한 책들이 많이 보이기도 하고 더 읽을 책을을 찾을 수 있어서 좋았습니다.

저도 표를 복사하여 책을 간단히 정리해봤습니다. 제 평가와 B급 프로그래머님의 평가를 같이 볼 수 있겠금 표에 제 평가만 추가하였는데 꼭 문의를 드리겠습니다. (변명은 아니고 시간이 없어서 선허락을.. 허락받았습니다.)

정리를 해보면서 느낀건, 의외로 목록에 있는 책들을 많이 가지고 있구나. 그리고 많이 읽었구나 정도였습니다. 그리고 목록에서 읽어볼 책들을 찾기도 하였습니다.

몇권을 주문했는데 오면 더 읽어보고 표를 업데이트 하겠습니다.

저자제목보유B급 프로그래머님
평가
평가
Steve McConnellCode Complete: A Practical Handbook of Software Construction원서,
한국어판
강추강추
Elisabeth Freeman, etc.Head First Design Patterns한국어판N/A강추
Steve McConnellRapid Development한국어판강추(참고: B급 프로그래머 = 역자 )추천
Erich Gamma, etc.Design Patterns: Elements of Reusable Object-Oriented Software원서,
한국어판
추천추천
Bruce SchneierApplied Cryptography: Protocols, Algorithms, and Source Code (2nd Edition)미보유N/AN/A
Robert C. MartinAgile Software Development: Principles, Patterns and Practices미보유N/A추천
Joel SpolskyJoel on Software한국어판강추(참고: B급 프로그래머 = 역자 )강추
Tom DeMarco, Timothy ListerPeopleware: Productive Projects and Teams (2nd Edition)한국어판강추강추
Frederick P. BrooksThe Mythical Man-Month, Anniversary Edition (2nd Edition)미보유강추강추
Martin FowlerRefactoring: Improving the Design of Existing Code원서,
한국어판
N/A강추
Mike CohnAgile Estimating and Planning한국어판강추읽는중
Alistair CockburnWriting Effective Use Cases미보유N/AN/A
Bertrand MeyerObject-Oriented Software Construction (2nd Edition)미보유N/AN/A
Steve McConnellSoftware Estimation: Demystifying the Black Art미보유추천N/A
Mike CohnUser Stories Applied: For Agile Software Development한국어판N/A추천
Donald E. KnuthThe Art of Computer Programming, The, Volumes 1-3 Boxed Set (2nd Edition)1번 한국어판 보유추천N/A
Martin FowlerPatterns of Enterprise Application Architecture미보유N/AN/A
Jeffrey FriedlMastering Regular Expressions미보유보통추천
Andrew Hunt, David ThomasThe Pragmatic Programmer: From Journeyman to Master한국어판강추강추
Karl E. WiegersSoftware Requirements (2nd Edition)미보유읽는 중N/A
Craig LarmanApplying UML and Patterns (3rd Edition)미보유N/A보통
Alistair CockburnAgile Software Development: The Cooperative Game (2nd Edition)미보유N/A보통
Gary McGrawSoftware Security: Building Security In미보유N/AN/A
Gregor Hohpe, Bobby WoolfEnterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions미보유N/AN/A
Tom DeMarco, Timothy ListerThe Deadline: A Novel About Project Management미보유강추추천
Craig LarmanAgile and Iterative Development: A Manager's Guide미보유N/AN/A
Eric A. Marks, Michael BellService-Oriented Architecture: A Planning and Implementation Guide for Business and Technology미보유N/AN/A
Thomas H. Cormen, etc.Introduction to Algorithms, Second Edition원서,
한국어판
N/A강추
Thomas ErlService-Oriented Architecture: A Field Guide to Integrating XML and Web Services미보유N/AN/A
Martin FowlerUML Distilled: A Brief Guide to the Standard Object Modeling Language (3rd Edition)미보유N/A추천
Kent BeckExtreme Programming Explained: Embrace Change (2nd Edition)원서,
한국어판
N/A강추
Alan Shalloway, James TrottDesign Patterns Explained: A New Perspective on Object-Oriented Design (2nd Edition)미보유N/AN/A
Grady Booch, etc.Object-Oriented Analysis and Design with Applications (3rd Edition)원서추천추천
Jim HighsmithAgile Project Management: Creating Innovative Products미보유N/AN/A
Scott BerkunMaking Things Happen: Mastering Project Management (1판은 The art of project management)미보유강추(참고: B급 프로그래머 = 역자 )N/A
Jon BentleyProgramming Pearls (2nd Edition)원서,
한국어판
읽는 중강추
Paul Duvall, etc.Continuous Integration: Improving Software Quality and Reducing Risk미보유추천N/A
Andrew Stellman, Jennifer GreeneApplied Software Project Management미보유N/AN/A
Clemens SzyperskiComponent Software: Beyond Object-Oriented Programming미보유N/AN/A
Arthur J. RielObject-Oriented Design Heuristics원서N/A추천
Thomas ErlSOA Principles of Service Design미보유N/AN/A
Mary Poppendieck, Tom PoppendieckLean Software Development: An Agile Toolkit한국어판추천읽는중
Ken SchwaberAgile Project Management with Scrum미보유N/AN/A
Ken Schwaber, Mike BeedleAgile Software Development with Scrum미보유N/AN/A
Joshua KerievskyRefactoring to Patterns미보유N/AN/A
Alistair CockburnCrystal Clear: A Human-Powered Methodology for Small Teams미보유N/AN/A
Steve McConnellSoftware Project Survival Guide한국어판강추보통
Tom DeMarco, Timothy ListerWaltzing With Bears: Managing Risk on Software Projects한국어판추천추천
Venkat Subramaniam, Andy HuntPractices of an Agile Developer: Working in the Real World미보유N/AN/A
Kathy SchwalbeInformation Technology Project Management미보유N/AN/A
Randall HydeWrite Great Code: Volume 1: Understanding the Machine한국어판추천추천
Scott RosenbergDreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software미보유추천N/A
Cem Kaner, etc.Lessons Learned in Software Testing미보유N/AN/A
Andy Oram, Greg WilsonBeautiful Code: Leading Programmers Explain How They Think원서,
한국어판
읽는 중강추
Luke HohmannBeyond Software Architecture: Creating and Sustaining Winning Solutions미보유N/AN/A
Grady BoochUnified Modeling Language User Guide, The (2nd Edition)미보유보통N/A
Karl FogelProducing Open Source Software: How to Run a Successful Free Software Project미보유N/AN/A
Michael FeathersWorking Effectively with Legacy Code미보유N/AN/A
Kent BeckTest Driven Development: By Example원서,
한국어판
추천강추
Per Kroll, Philippe KruchtenThe Rational Unified Process Made Easy: A Practitioner's Guide to the RUP미보유N/AN/A
Thomas ErlService-Oriented Architecture: Concepts, Technology, and Design미보유N/AN/A
Cem Kaner, etc.Testing Computer Software (2nd Edition)미보유N/AN/A
Frank Buschmann, etc.Pattern-Oriented Software Architecture Volume 1: A System of Patterns미보유N/AN/A
Harold Abelson, Gerald Jay SussmanStructure and Interpretation of Computer Programs - 2nd Edition원서,
한국어판
N/A강추
Dan PiloneUML 2.0 in a Nutshell미보유N/AN/A
Brett D. McLaughlin, etc.Head First Object-Oriented Analysis and Design미보유N/AN/A
Johanna RothmanManage It!: Your Guide to Modern, Pragmatic Project Management미보유읽는 중N/A
James Shore, Shane WardenThe Art of Agile Development미보유읽는 중N/A
Brian W. Kernighan, Rob PikeThe Practice of Programming한국어판강추추천
Ron Jeffries, etc.Extreme Programming Installed한국어판N/A추천
Scott W. Ambler, Pramodkumar J. SadalageRefactoring Databases: Evolutionary Database Design미보유N/AN/A
Jared Richardson, William GwaltneyShip it! A Practical Guide to Successful Software Projects미보유추천N/A
Greg Hoglund, Gary McGrawExploiting Software: How to Break Code미보유N/AN/A
Michael NygardRelease It!: Design and Deploy Production-Ready Software미보유추천N/A
Edward YourdonDeath March (2nd Edition)미보유강추N/A


Man of Month를 마치며

벌써 2020년 1월 14일이다. 19년의 마지막 달에 Man of Month라는 팀의 제도를 시작한다고 했었는데, 12월이 지나고 그 다음 달도 거의 절반이 흐른 것이다. MoM을 시작하면서 하겠다고 계획했던 것들도 실제 한 것들과 비교해보니...