title: Python for Software Design: How to Think Like a Computer Scientist
author: Allen B. Downey
description: "I very much like Python for Software Design. I hope that instructors in computational science will learn some pedagogical lessons from it. Repeatedly, the book showed code that was simply readable. The feature, its rationale, its uses, and debugging hints are together for collective reference (like an object?). And ideas are repeated as they naturally reappear. Is that how computer scientists think? I don't know. But if that's how they teach, they're doing a fine job. When trying to teach the more difficult ideas of floating point errors, control of step size, mesh refinement, and parallel programming, computational scientists could learn something from Python for Software Design. <br />Dan Nagle, Scientific Programming<br /><br />"... the book offers plenty of examples, very helpful explanations, and useful illustrations." <br />F.H. Wild III, Choice Magazine<br /><br />"Downey successfully presents the programming language Python. The author provides details of Python in a cogent fashion, enabling a novice in programming to cover the material with relative ease. Downey succeeds in fulfilling his four goals, stated in the preface." <br />N. Chakrapani, reviews.com<br /><br />"It is short and well written, it follows a very smooth progression, and its companion web Site is very good." <br />O. Lecarme, reviews.com<br /><br />"a book that is nearly free from technical bugs; explains concepts in clear, readable prose; contains helpful illustrations; and integrates activities to engage its readers." <br />Max Hailperin, Computing in Science and Engineering
zlib_text: Clean Architectures in Python
  A practical approach to better software design
  Leonardo Giordani
  This book is for sale at http://leanpub.com/clean-architectures-in-python
  This version was published on 2019-01-22
  This is a Leanpub book. Leanpub empowers authors and publishers with the Lean Publishing
  process. Lean Publishing is the act of publishing an in-progress ebook using lightweight tools and
  many iterations to get reader feedback, pivot until you have the right book and build traction once
  you do.
  © 2018 - 2019 Leonardo Giordani
  
  Tweet This Book!
  Please help Leonardo Giordani by spreading the word about this book on Twitter!
  The suggested hashtag for this book is #pycabook.
  Find out what other people are saying about the book by clicking on this link to search for this
  hashtag on Twitter:
  #pycabook
  
  To my father, who taught me to be attentive, curious, and passionate. He succeeded.
  To my mother, who taught me to be smart, cautious, and careful. She didn’t succeed.
  
  Contents
  Introduc