500 Lines or Less: Experienced Programmers Solve Interesting Problems
This book provides you with the chance to study how 26 experienced programmers think when they are building something new. The programs you will read about in this book were all written from scratch to solve difficult problems.
Publication date: 28 Jun 2016
ISBN-10: n/a
ISBN-13: 9781329871274
Paperback: 478 pages
Views: 26,951
Type: Book
Publisher: Lulu.com
License: Creative Commons Attribution 3.0 Unported
Post time: 16 Dec 2016 09:30:00
500 Lines or Less: Experienced Programmers Solve Interesting Problems
Michael Dibernardo wrote:500 Lines or Less focuses on the design decisions that programmers make in the small when they are building something new. The programs you will read about in this book were all written from scratch for this purpose (although several of them were inspired by larger projects that the authors had worked on previously).
Before reading each chapter, we encourage you to first think about how you might solve the problem. What design considerations or constraints do you think the author is going to consider important? What abstractions do you expect to see? How do you think the problem is going to be decomposed? Then, when reading the chapter, try to identify what surprised you. It is our hope that you will learn more by doing this than by simply reading through each chapter from beginning to end.
Writing a useful program in fewer than 500 lines of source code---without resorting to cheap tricks---is a challenging exercise in itself; writing one to be read for pedagogical purposes when neatly rendered in a printed book is even tougher. As such, the editors have occasionally taken liberties with some of the source formatting when porting it into the book. The original source for each chapter can be found in the code subdirectory of its project folder.
About The Editor(s)
Michael DiBernardo is Development Manager at Wave. He earned his Master of Computer Science from The University of British Columbia. Michael has years of experience as software engineer/consultant. He was also the Chair of PyCon Canada 2013 where he built a team of organizers and led planning of the second Canadian national Python conference.
Michael DiBernardo is Development Manager at Wave. He earned his Master of Computer Science from The University of British Columbia. Michael has years of experience as software engineer/consultant. He was also the Chair of PyCon Canada 2013 where he built a team of organizers and led planning of the second Canadian national Python conference.