500 Lines or Less: Experienced programmers solve interesting problems cover

500 Lines or Less: Experienced programmers solve interesting problems

by Michael DiBernardo

Presents concise, ground-up implementations of practical software engineering tools and systems in under 500 lines of code to teach core design principles and architectural decisions.

  • Introduction
  • Chapter 1: Blockcode: A visual programming toolkit
  • Chapter 2: A Continuous Integration System
  • Chapter 3: Clustering by Consensus
  • Chapter 4: Contingent: A Fully Dynamic Build System
  • Chapter 5: A Web Crawler With asyncio Coroutines
  • Chapter 6: Dagoba: an in-memory graph database
  • Chapter 7: DBDB: Dog Bed Database
  • Chapter 8: An Event-Driven Web Framework
  • Chapter 9: A Flow Shop Scheduler
  • Chapter 10: An Archaeology-Inspired Database
  • Chapter 11: Making Your Own Image Filters
  • Chapter 12: A Python Interpreter Written in Python
  • Chapter 13: A 3D Modeller
  • Chapter 14: A Simple Object Model
  • Chapter 15: Optical Character Recognition (OCR)
  • Chapter 16: A Pedometer in the Real World
  • Chapter 17: The Same-Origin Policy
  • Chapter 18: A Rejection Sampler
  • Chapter 19: Web Spreadsheet
  • Chapter 20: Static Analysis
  • Chapter 21: A Template Engine
  • Chapter 22: A Simple Web Server