Understanding Software: Max Kanat-Alexander on simplicity, coding, and how to suck less as a programmer

Category: Programming
Author: Max Kanat-Alexander
This Month Hacker News 1

About This Book

Key Features

  • Read and enjoy the superlative writing and insights of the legendary Max Kanat-Alexander
  • Learn and reflect with Max on how to bring simplicity to your software design principles
  • Discover the secrets of rockstar programmers and how to also just suck less as a programmer

Book Description

In Understanding Software, Max Kanat-Alexander, Technical Lead for Code Health at Google, shows you how to bring simplicity back to computer programming. Max explains to you why programmers suck, and how to suck less as a programmer. There's just too much complex stuff in the world. Complex stuff can't be used, and it breaks too easily. Complexity is stupid. Simplicity is smart.

Understanding Software covers many areas of programming, from how to write simple code to profound insights into programming, and then how to suck less at what you do! You'll discover the problems with software complexity, the root of its causes, and how to use simplicity to create great software. You'll examine debugging like you've never done before, and how to get a handle on being happy while working in teams.

Max brings a selection of carefully crafted essays, thoughts, and advice about working and succeeding in the software industry, from his legendary blog Code Simplicity. Max has crafted forty-three essays which have the power to help you avoid complexity and embrace simplicity, so you can be a happier and more successful developer.

Max's technical knowledge, insight, and kindness, has earned him a status as a code guru, and his ideas will inspire you and help refresh your approach to the challenges of being a developer.

What you will learn

  • See how to bring simplicity and success to your programming world
  • Clues to complexity - and how to build excellent software
  • Simplicity and software design
  • Principles for programmers
  • The secrets of rockstar programmers
  • Max's views and interpretation of the Software industry
  • Why Programmers suck and how to suck less as a programmer
  • Software design in two sentences
  • What is a bug? Go deep into debugging

About the Author

Max Kanat-Alexander is the Technical Lead for Code Health at Google, where he does various work that helps other software engineers be more productive, including writing developer tools, creating educational programs, guiding refactoring efforts, and more.

His roles at Google have included Tech Lead for YouTube on the Xbox, work on the Java JDK, JVM, and other aspects of Java for Google, and Technical Lead for Engineering Practices for YouTube, where he's supported developers across all of YouTube in best practices and engineering productivity. Max is a former Chief Architect of the Bugzilla Project, where he was a primary developer of the well-known Bugzilla Bug Tracking System, used by thousands of organizations worldwide. Max also writes the legendary programming industry blog, Code Simplicity, where he challenges Complexity and embraces Simplicity for the programming industry.

Max has been involved with helping shape Google's engineering culture and authoring key Google engineering documentation, and in this highly readable collection of essays you can share the best of his experience.

Table of Contents

  1. Part One: Principles for Programmers
  2. Part Two: Software Complexity and its Causes
  3. Part Three: Simplicity and Software Design
  4. Part Four: Debugging
  5. Part Five: Engineering in Teams
  6. Part Six: Understanding Software
  7. Part Seven: Suck Less


by atsaloli   2018-03-06
"Understanding Software" by Max Kanat-Alexander, https://www.amazon.com/Understanding-Software-Kanat-Alexande...

I've started re-factoring code before adding new features, our code base is getting a little better every day (more maintainable) which reversed a trend, it was getting harder to add features, now it is easier; plus when I design now, my designs are cleaner and result in maintainable code.

by atsaloli   2017-10-27
"Understanding Software" by Max Kanat-Alexander https://www.amazon.com/Understanding-Software-Kanat-Alexande...