Charles Couillard edited this page Sep 7, 2017 · 25 revisions

Product Specification & Design

  • Impact Mapping G. Adzic
  • User Story Mapping J. Patton
  • Event Storming A. Brandolini

Project & Team Management

  • The Mythical Man Month F. Brooks
  • Peopleware T. Demarco & T. Lister
  • Scrum & XP From the Trenches H. Kniberg (freely available online)
  • The Art of Agile Development: Pragmatic Guide to Agile Software Development Shane Warden & James Shore
  • Extreme Programming Explained: Embrace Change Kent Beck & Cynthia Andres
  • Lean Software Development: An Agile Toolkit Agile Toolkit Mary Poppendieck, Tom Poppendieck
  • Team Geek: A Software Developer's Guide to Working Well with Others Brian W. Fitzpatrick, Ben Collins-Sussman

Computer Science basics

  • Structure and Interpretation of Computer Programs Hal Abelson's & Jerry Sussman's (freely available online)

Domain Driven Design

  • Domain-Driven Design: Tackling Complexity in the Heart of Software Eric Evans
  • Domain-Driven Design Distilled Vaughn Vernon
  • Implementing Domain-Driven Design Vaughn Vernon
  • Domain Driven Design Quickly InfoQ (freely available online)
  • Patterns, Principles, and Practices of Domain-Driven Design Scott Millett

Code design

  • Clean Code Robert Cecil Martin
  • Code Complete 2 Steve McConnell

TDD

  • Test Driven Development: By Example Kent Beck

Refactoring

  • Working Effectively with Legacy Code Michael C. Feathers
  • Refactoring Martin Fowler & Kent Beck

Career / professionalism

  • The Pragmatic Programmer Andy Hunt & Dave Thomas
  • The Clean Coder: A Code of Conduct for Professional Programmers Robert Cecil Martin
  • The Software Craftsman: Professionalism, Pragmatism, Pride Sandro Mancuso
  • The Zen Programmer Christian Grobmeier

Architecture

REST

  • RESTful Web Services Leonard Richardson & Sam Ruby

CQRS

  • CQRS Documents Greg Young (freely available online)

Languages

Javascript

  • JavaScript Allongé, the "Six" Edition Reg “raganwald” Braithwaite (freely available online)

Ruby

  • The Well-Grounded Rubyist David A. Black

Java

  • Effective Java Joshua Bloch
  • Core Java for the Impatient Cay S. Horstmann

Clojure

  • Clojure for the Brave and True Daniel Higginbotham

SQL

  • SQL Performance Explained: Everything Developers Need to Know about SQL Markus Winand

Cryptocurrencies

Bitcoin

  • Mastering Bitcoin: Unlocking Digital Cryptocurrencies Andreas M. Antonopoulos
  • The Internet of Money Andreas M. Antonopoulos
  • Bitcoin. La monnaie acéphale (FR) Jacques Favier / Adli Takkal Bataille
Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.