Codemash 2019 Reading List
Tags: books, readinglist, codemash, conferences
Published: 2019-01-15 13:39:52

---
title: Codemash 2019 Reading List
published: true
description: A list of books mentioned in talks given at Codemash 2019
tags: books, reading-list, codemash, conferences
---

Last updated: 2019-01-14 4pm EST

Hello! This is a compiled list of all the books mentioned during talks given at Codemash 2019.

This list has been compiled from slide decks linked from [this google sheet](https://docs.google.com/spreadsheets/d/1omYTaGvLAbkJ-AGphM-WO90iE5O5s5-1dG2srKbNFYo/edit#gid=0) and from my own notes on given talks.

I apologize if I missed books from your talk or made an error in copying them down--Please let me know and I'll update the list or make corrections!

The list should be in alphabetical order by talk title. Nearly all the links are for purchasing the books off of Amazon, unless they weren't available or were free through other sources.

I did not link additional resources--papers, news articles, YouTube videos, etc.

Also, fair warning, a couple of the books in talks I went to were mentioned in jest. I tried to note where this was the case, but I didn't attend other talks, so it's possible the same happened elsewhere.

## A Better Faster Pipeline for Software Delivery

### "Lean Thinking" - James P. Womack, Daniel T. Jones [amazon link](https://www.amazon.com/Lean-Thinking-Corporation-Revised-Updated/dp/0743249275)
- Expanded, updated, and more relevant than ever, this bestselling business classic by two internationally renowned management analysts describes a business system for the twenty-first century that supersedes the mass production system of Ford, the financial control system of Sloan, and the strategic system of Welch and GE. It is based on the Toyota (lean) model, which combines operational excellence with value-based strategies to produce steady growth through a wide range of economic conditions.

### "The Phoenix Project: A Novel about IT, DevOps, and Helping your Business Win" - Gene Kim, Kevin Behr, George Spafford [amazon link](https://www.amazon.com/Phoenix-Project-DevOps-Helping-Business/dp/0988262592)
- **Note:** fiction, but a good example of how to turn a team (or company) onto  using lean principles

## Avoiding Landmines: A Tech LEader's guide for the Critical Decisions

### "Thinking Fast and Slow" -- Daniel Kahneman [amazon link](https://www.amazon.com/Thinking-Fast-Slow-Daniel-Kahneman/dp/0374533555/)
- "...a groundbreaking tour of the mind and explains the two systems that drive the way we think. System 1 is fast, intuitive, and emotional; System 2 is slower, more deliberative, and more logical."

### "Drive: The Surprising Truth About What Motivates Us" - Daniel H. Pink [amazon link](https://www.amazon.com/Drive-Surprising-Truth-About-Motivates/dp/1594484805)
- "...the secret to high performance and satisfaction-at work, at school, and at home—is the deeply human need to direct our own lives, to learn and create new things, and to do better by ourselves and our world."

### "Cultues and Organizations: Software of the Mind" - Geert Hofstede, Gert Jan Hofstede, Michael Minkov [amazon link](https://www.amazon.com/Cultures-Organizations-Software-Mind-Third/dp/0071664181)
- "..._Cultures and Organizations_ examines what drives people apart―when cooperation is so clearly in everyone’s interest. "

### "The Advantage: Why Organizational Health Trumps Everything Else in Business" - Patric M. Lencioni [amazon link]()
- "...Patrick Lencioni, argues that the seminal difference between successful companies and mediocre ones has little to do with what they know and how smart they are and more to do with how healthy they are."

## Better Names for Better Code

### "Clean Code: A Handbook of Agile Software Craftsmanship" -- Robert C. Martin [amazon link](https://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882)
- Even bad code can function. But if code isn’t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn’t have to be that way.

### "Structure and Interpretation of Computer Programs" - Harold Abelson, Gerald Jay Sussman, Julie Sussman [amazon link](https://www.amazon.com/Structure-Interpretation-Computer-Programs-Engineering/dp/0262510871)
- This long-awaited revision contains changes throughout the text. There are new implementations of most of the major programming systems in the book, including the interpreters and compilers, and the authors have incorporated many small changes that reflect their experience teaching the course at MIT since the first edition was published. A new theme has been introduced that emphasizes the central role played by different approaches to dealing with time in computational models: objects with state, concurrent programming, functional programming and lazy evaluation, and nondeterministic programming. 

## Code Reviews?! That's a great idea!

### "Code Complete: A practical handbook of Software Construction" -- Steve McConnel [amazon link](https://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670)
- **quoted in a talk:*** "effectiveness of code review for determining faults in software is between 30% and 35% more effective than standard unit testing"
- "Widely considered one of the best practical guides to programming, Steve McConnell’s original CODE COMPLETE has been helping developers write better software for more than a decade. Now this classic book has been fully updated and revised with leading-edge practices—and hundreds of new code samples—illustrating the art and science of software construction."

## Don't Rewrite, React!

### "Learning React" -- Kirupa Chinnathambi [amazon link](https://www.amazon.com/Learning-React-Kirupa-Chinnathambi/dp/0134546318)
- "A hands-on guide to building maintainable, high-performing web application user interfaces using the React JavaScript library"

### "React and React Native" -- Adam Boduch [amazon link](https://www.amazon.com/React-Native-Adam-Boduch/dp/1786465655)
- "Build React and React Native applications using familiar component concepts"
- "Dive deep into each platform, from routing in React to creating native mobile applications that can run offline"
- "Use Facebook's Relay, React and GraphQL technologies, to create a unified architecture that powers both web and native applications"

## Embrace your Legacy... Code!

### "Working Effectively with Legacy Code" -- Michael C. Feathers [amazon link](https://www.amazon.com/Working-Effectively-Legacy-Michael-Feathers/dp/0131177052)
- "In this book, Michael Feathers offers start-to-finish strategies for working more effectively with large, untested legacy code bases. This book draws on material Michael created for his own renowned Object Mentor seminars: techniques Michael has used in mentoring to help hundreds of developers, technical managers, and testers bring their legacy systems under control.
This book also includes a catalog of twenty-four dependency-breaking techniques that help you work with program elements in isolation and make safer changes."

### "Refactoring: Improving the Design of Existing Code" -- Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts, Erich Gamma [amazon link](https://www.amazon.com/Refactoring-Improving-Design-Existing-Code/dp/0201485672)
- For several years, expert-level object programmers have employed a growing collection of techniques to improve the structural integrity and performance of such existing software programs. Referred to as refactoring, these practices have remained in the domain of experts because no attempt has been made to transcribe the lore into a form that all developers could use. . .until now. In Refactoring: Improving the Design of Existing Software, renowned object technology mentor Martin Fowler breaks new ground, demystifying these master practices and demonstrating how software practitioners can realize the significant benefits of this new process.

## Getting Unstuck

### "Creativity: Flow and the Psychology of Discovery and Intervention" - Mihaly Csikszentmihalyi [amazon link](https://www.amazon.com/Creativity-Flow-Psychology-Discovery-Invention/dp/0062283251)
- "Drawing on nearly one hundred interviews with exceptional people, from biologists and physicists, to politicians and business leaders, to poets and artists, as well as his thirty years of research on the subject, Csikszentmihalyi uses his famous flow theory to explore the creative process."
- **Note:** At least three talks have referenced this book

### "The Art of Thought" -- Grahm Wallas [amazon link](https://www.amazon.com/Art-Thought-Graham-Wallas/dp/1910146056)
- **Amazon Note:** Available at a lower price from other sellers that may not offer free Prime shipping. 

## Keeping Up With Technology

### "Thinking in Systems" -- Donella H. Meadows [amazon link](https://www.amazon.com/Thinking-Systems-Donella-H-Meadows/dp/1603580557)
- Thinking in Systems, is a concise and crucial book offering insight for problem solving on scales ranging from the personal to the global. Edited by the Sustainability Institute’s Diana Wright, this essential primer brings systems thinking out of the realm of computers and equations and into the tangible world, showing readers how to develop the systems-thinking skills that thought leaders across the globe consider critical for 21st-century life.

### "Win Friends and Influence People" -- Dale Carnegie [amazon link](https://www.amazon.com/How-Win-Friends-Influence-People/dp/0671027034)
- **Amazon Note:** Available at a lower price from other sellers that may not offer free Prime shipping. 
-  Dale Carnegie’s rock-solid, time-tested advice has carried countless people up the ladder of success in their business and personal lives. One of the most groundbreaking and timeless bestsellers of all time, How to Win Friends & Influence People will teach you:

    - Six ways to make people like you

    - Twelve ways to win people to your way of thinking

    - Nine ways to change people without arousing resentment 

### "How to Have Confidence and Power in Dealing With People" -- Les Giblin [amazon link](https://www.amazon.com/Have-Confidence-Power-Dealing-People-ebook/dp/B01CXHESLE)
- Les Giblin, a recognized expert in the field of human relations, has devised a method for dealing with people that can be used when relating with anyone – parents, teachers, bosses, employees, friends, acquaintances, even strangers. Giblin shows step by step how to get what you want at any time and in ways that leave you feeling good about yourself. Moreover, the people who have given you want you want wind up feeling good about themselves, too. The result? Nobody gets shortchanged. It’s a win-win situation.

### "Crucial Conversations: Tools for talking when the stakes are high" -- Kerry Patterson, Joseph Grenny, Ron McMillan, Al Switzler [amazon link](https://www.amazon.com/Crucial-Conversations-Talking-Stakes-Second-dp-0071771328/dp/0071771328/)
- The first edition of Crucial Conversations exploded onto the scene and revolutionized the way millions of people communicate when stakes are high. This new edition gives you the tools to:

    - Prepare for high-stakes situations
    - Transform anger and hurt feelings into powerful dialogue
    - Make it safe to talk about almost anything
    - Be persuasive, not abrasive

## Leadership Guide for the Reluctant Leader

### "The Ideal Team Player: How to Recognize and Cultivate the Three Essential Virtues" -- Patrick M Lencioni [amazon link](https://www.amazon.com/Ideal-Team-Player-Recognize-Cultivate-ebook/dp/B01B6AEJJ0)
- In his classic book, The Five Dysfunctions of a Team, Patrick Lencioni laid out a groundbreaking approach for tackling the perilous group behaviors that destroy teamwork. Here he turns his focus to the individual, revealing the three indispensable virtues of an ideal team player.

### "StrengthsFinder 2.0" -- Tom Rath [amazon link](https://www.amazon.com/StrengthsFinder-2-0-Tom-Rath/dp/159562015X)
- In its latest national bestseller, StrengthsFinder 2.0, Gallup unveils the new and improved version of its popular assessment, language of 34 themes, and much more (see below for details). While you can read this book in one sitting, you'll use it as a reference for decades. 

## Learning the Three Types of Microservices

### "Release It: Design and Deploy Production Ready Software" - Michael T. Nygard [amazon link](https://www.amazon.com/Release-Production-Ready-Software-Pragmatic-Programmers-ebook/dp/B00A32NXZO)

-  If you're a developer and don't want to be on call for 3AM for the rest of your life, this book will help. In Release It!, Michael T. Nygard shows you how to design and architect your application for the harsh realities it will face. You'll learn how to design your application for maximum uptime, performance, and return on investment.

## Management 101

### "Rules of the Red Rubber Ball" -- Kevin Carroll [amazon link](https://www.amazon.com/Rules-Red-Rubber-Ball-Sustain/dp/1933060026)
- With simple but delightful storytelling, Kevin Carroll channels his childhood passion for sport and play into a universally appealing blueprint for life. Drawing wisdom from the playgrounds of his youth, where he spent hour upon hour sharpening his body and his mind, Carroll shares with readers his Rules of the Red Rubber Ball - how to achieve maximum human potential through the power of passion and creativity. Finding your own -red rubber ball+ and chasing it to your heart+s content, he argues, is the surest route to peace, prosperity, and happiness. Over the years as an athletic trainer and public speaker, Carroll has transformed his philosophy into seven simple rules that any successful leader will endorse: 
  1) Commit to it 
  2) Seek out encouragers 
  3) Work out your creative muscle 
  4)  Prepare to shine 
  5)  Speak up 
  6) Expect the unexpected 
  7) Maximize the day With an award-winning design and color photos throughout
- Rules of the Red Rubber Ball will inspire the child in everyone for generations to come.

## Modern Identity Management

### "JWT Handbook" -- Sebastian Peyrott [free ebook link](https://auth0.com/resources/ebooks/jwt-handbook)
- Ever wondered how JWT came to be and what problems it was designed to tackle?
Are you curious about the plethora of algorithms available for signing and encrypting JWTs? Or are you interested in getting up-to-speed with JWTs as soon as possible? Then this handbook is for you.

## The Agile DBA

### "The Dev Ops Handbook" -- Gene Kim, John Willis, Jez Humble, John Allspaw [amazon link](https://www.amazon.com/DevOps-Handbook-World-Class-Reliability-Organizations/dp/1942788002)
- Following in the footsteps of The Phoenix Project, The DevOps Handbook shows leaders how to replicate these incredible outcomes, by showing how to integrate Product Management, Development, QA, IT Operations, and Information Security to elevate your company and win in the marketplace.

### "The Phoenix Project: A Novel about IT, DevOps, and Helping your Business Win" - Gene Kim, Kevin Behr, George Spafford [amazon link](https://www.amazon.com/Phoenix-Project-DevOps-Helping-Business/dp/0988262592)
- **Note:** fiction, but a good example of how to turn a team (or company) onto  using lean principles
## The Two Question Programming Interview

### "How would you move mount fuji?" -- William Poundstone [amazon link](https://www.amazon.com/How-Would-Move-Mount-Fuji/dp/0316778494)
- **note:** this book was a tongue-in-cheek mention for ways to _not_ ask programming questions. Direct quote: "[the problems from this book] are great for dinner parties, but not really for programming interviews. Instead of teaching to think outside-the-box, they teach you to think inside of a slightly-larger-but-very-specific box."
- "William Poundstone reveals the toughest questions used at Microsoft and other Fortune 500 companies -- and supplies the answers."

### "Never Split the Difference: Negotiating As If Your Life Depended On It" - Chris Voss [amazon link](https://www.amazon.com/Never-Split-Difference-Negotiating-Depended-ebook/dp/B014DUR7L2)
- " Reaching the pinnacle of his profession, he became the FBI’s lead international kidnapping negotiator. Never Split the Difference takes you inside the world of high-stakes negotiations and into Voss’s head, revealing the skills that helped him and his colleagues succeed where it mattered most: saving lives. In this practical guide, he shares the nine effective principles—counterintuitive tactics and strategies—you too can use to become more persuasive in both your professional and personal life."

### "Smart and Gets Things Done: Joel Spolsky's concise Guide to Finding The Best Technical Talent" -- Avram Joel Spolsky [amazon link](https://www.amazon.com/Smart-Gets-Things-Done-Technical/dp/1590598385)
- "The secret to success for any software company then is to hire the good programmers. But how to do that? In Joel on Hiring, Joel Spolsky draws from his experience both at Microsoft and running his own successful software company based in New York City. He writes humorously, but seriously about his methods for sorting resumes, for finding great candidates, and for interviewing, in person and by phone."

## User-story driven thread modeling

### "Threat Modeling: Designing for Security" -- Adam Shostack [amazon link](https://www.amazon.com/Threat-Modeling-Designing-Adam-Shostack/dp/1118809998)
- Adam Shostack is responsible for security development lifecycle threat modeling at Microsoft and is one of a handful of threat modeling experts in the world. Now, he is sharing his considerable expertise into this unique book. With pages of specific actionable advice, he details how to build better security into the design of systems, software, or services from the outset. You'll explore various threat modeling approaches, find out how to test your designs against threats, and learn effective ways to address threats that have been validated at Microsoft and other top companies.

### "Securing Systems: Applied Architecture and Threat Models" -- Brook S.E. Schoenfield [amazon link](https://www.amazon.com/Securing-Systems-Applied-Security-Architecture/dp/1482233975)
- Internet attack on computer systems is pervasive. It can take from less than a minute to as much as eight hours for an unprotected machine connected to the Internet to be completely compromised. It is the information security architect’s job to prevent attacks by securing computer systems. This book describes both the process and the practice of assessing a computer system’s existing information security posture. Detailing the time-tested practices of experienced security architects, it explains how to deliver the right security at the right time in the implementation lifecycle.

### "Risk Centric Threat Modeling: Process for Attack Simulation and Threat Analysis" -- Marco Morana and Tony UcadeVelez [amazon link](https://www.amazon.com/Risk-Centric-Threat-Modeling-Simulation/dp/0470500964)
- This book introduces the Process for Attack Simulation & Threat Analysis (PASTA) threat modeling methodology. It provides an introduction to various types of application threat modeling and introduces a risk-centric methodology aimed at applying security countermeasures that are commensurate to the possible impact that could be sustained from defined threat models, vulnerabilities, weaknesses, and attack patterns.  

### "Measuring and managing Information Risk: A FAIR Approach" -- Jack Jones and Jack Freund [amazon link](https://www.amazon.com/Measuring-Managing-Information-Risk-Approach/dp/0124202314)

- Using the factor analysis of information risk (FAIR) methodology developed over ten years and adopted by corporations worldwide, Measuring and Managing Information Risk provides a proven and credible framework for understanding, measuring, and analyzing information risk of any size or complexity. Intended for organizations that need to either build a risk management program from the ground up or strengthen an existing one, this book provides a unique and fresh perspective on how to do a basic quantitative risk analysis. Covering such key areas as risk theory, risk calculation, scenario modeling, and communicating risk within the organization, Measuring and Managing Information Risk helps managers make better business decisions by understanding their organizational risk.

## What are Observables and why should I care?

### "Build Reactive Websites with RxJS" -- Randall Koutnik [the pragmatic bookshelf link](https://pragprog.com/book/rkrxjs/build-reactive-websites-with-rxjs)
- Upgrade your skill set, succeed at work, and above all, avoid the many headaches that come with modern front-end development. Simplify your codebase with hands-on examples pulled from real-life applications. Master the mysteries of asynchronous state management, detangle puzzling race conditions, and send spaceships soaring through the cosmos. When you finish this book, you’ll be able to tame the wild codebeasts before they ever get a chance to wreck your day.

## What Every Beginning Developer Should Know

### "Code Complete: A practical handbook of Software Construction" -- Steve McConnel [amazon link](https://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670)
- **quoted in a talk:*** "effectiveness of code review for determining faults in software is between 30% and 35% more effective than standard unit testing"
- "Widely considered one of the best practical guides to programming, Steve McConnell’s original CODE COMPLETE has been helping developers write better software for more than a decade. Now this classic book has been fully updated and revised with leading-edge practices—and hundreds of new code samples—illustrating the art and science of software construction."

### "The Pragmatic Programmer" -- Andrew Hunt, David Thomas [amazon link](https://www.amazon.com/Pragmatic-Programmer-Journeyman-Master/dp/020161622X)
- The Pragmatic Programmer cuts through the increasing specialization and technicalities of modern software development to examine the core process--taking a requirement and producing working, maintainable code that delights its users. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse.