Doorgaan naar hoofdcontent

A Software Developer's Reading Plan

This list describes the reading program a software developer needs to work through to achieve full professional standing. The plan described is a generic baseline plan for a software professional who wants to focus on development.

Introductory Level
To move beyond "introductory" level, a developer must read the following books:

  • Adams, James L. Conceptual Blockbusting: A Guide to Better Ideas, 4th ed. Cambridge, MA: Perseus Publishing, 2001.
  • Bentley, Jon. Programming Pearls, 2d ed. Reading, MA: Addison-Wesley, 2000.
  • Glass, Robert L. Facts and Fallacies of software Engineering. Boston, MA: Addison-Wesley, 2003.
  • McConnell, Steve. Software Project Survival Guide. Redmond, WA: Microsoft Press, 1998.
  • McConnell, Steve. Code Complete, 2d ed. Redmond, WA: Microsoft Press, 2004.

Practitioner Level
To achieve "intermediate" status, a programmer needs to read the following additional materials:

  • Berczuk, Stephen P. and Brad Appleton. Software Configuration Management Patterns: Effective Teamwork, Practical Integration. Bosten, MA: Addison-Wesley, 2003.
  • Fowler, Martin. UML Distilled: A Brief Guide to the Standard Object Modelling Language, 3d ed. Boston, MA: Addison-Wesley, 2003.
  • Glass, Robert L. Software Creativity. Reading, MA: Addison-Wesley, 1995.
  • Kaner, Cem, Jack Falk, Hung Q. Nguyen. Testing Computer Software, 2d ed. New York, NY: John Wiley & Sons, 1999.
  • Larman, Craig. Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process, 2d ed. Englewood Cliffs, NJ: Prentice Hall, 2001.
  • McConnell, Steve. Rapid Development. Redmond, WA: Microsoft Press, 1996.
  • Wiegers, Karl. Software Requirements, 2d ed. Redmond, WA: Microsoft Press, 2003.
  • "Manager's Handbook for Software Development," NASA Goddard Space Flight Center.

Professional Level
A software developer must read the following materials to achieve full professional standing. Additional requirements must be tailored to each individual developer; this section describes the generic requirements.

  • Bass, Len, Paul Clements, and Rick Kazman. Software Architecture in Practice, 2d ed. Boston, MA: Addison-Wesley, 2003.
  • Fowler, Martin. Refactoring: Improving the Design of Existing Code. Reading, MA: Addison-Wesley, 1999.
  • Gamma, Erich, et al. Design Patterns. Reading, MA: Addison-Wesley, 1995.
  • Gilb, Tom. Principles of Software Engineering Management. Workingham, England: Addison-Wesley, 1988.
  • Maguire, Steve. Writing Solid Code. Redmond, WA: Microsoft Press, 1993.
  • Meyer, Bertrand. Object-Oriented Software Construction, 2d ed. New York, NY: Prentice Hall PTR, 1997.
  • "Software Measurement Guidebook," NASA Goddard Space Flight Center.

Reacties

Unknown zei…
Always good to have a list of books as a guide. What I am missing here is: why? Why these books and what will I learn from it?
Unknown zei…
I actually enjoyed reading through this posting.Many thanks.








Function Point Estimation Training

Populaire posts van deze blog

A reading list on Microservices Architecture

When I wanted to dive into and understand Microservices Architecture the following reading list was suggested to me: Life beyond Distributed Transactions:an Apostate’s Opinion by Pat Helland This paper explores and names some of the practical approaches used in the implementations of large-scale mission-critical applications in a world which rejects distributed transactions. It discusses the management of fine-grained pieces of application data which may be repartitioned over time as the application grows. It also discusses the design patterns used in sending messages between these repartitionable pieces of data. Migrating to Microservices by Adrian Cockcroft In this presentation Adrian Cockcroft discusses strategies, patterns and pathways to perform a gradual migration from monolithic applications towards cloud-based REST microservices. Idempotence Is Not a Medical Condition by Pat Helland An essential property for reliable systems. Distributed systems theory for the dis...

Exploring the Domain-Specific Language Tools

I'm currently familiarize myself with the Microsoft's concept of Domain-Specific Languages. And I must say I'm having a hard time collecting usefull information on the concept. It seems that beside the content in the MSDN Library and a rare presentation on Channel 9 there is not much information out there on the web. Well let's see where the subject takes me. Anyway, this subject should keep be busy this week, before I plunge down in the world of Cordys for 4 weeks.