Software Design by Example: A Tool-Based Introduction with Python

Greg Wilson

Comprehensive guide to software design using Python, with a focus on practical examples and tools. Covers objects, classes, pattern matching, parsing, and more.

Technical TutorialsPython

Introduction

Software Design by Example: A Tool-Based Introduction with Python is a comprehensive guide to software design using Python, with a focus on practical examples and tools.

screenshot

Highlights

  • Builds small versions of tools that programmers use every day to show how experienced software designers think
  • Introduces fundamental ideas in computer science that many self-taught programmers haven't encountered
  • Covers topics such as objects and classes, finding duplicate files, pattern matching, parsing text, running tests, and building an interpreter

Recommendation

This course is suitable for programmers who want to learn how to design better software, as well as for those teaching software design classes. It provides a practical, tool-based approach to software design using Python.

How GetVM Works

Learn by Doing from Your Browser Sidebar

Access from Browser Sidebar

Access from Browser Sidebar

Simply install the browser extension and click to launch GetVM directly from your sidebar.

Select Your Playground

Select Your Playground

Choose your OS, IDE, or app from our playground library and launch it instantly.

Learn and Practice Side-by-Side

Learn and Practice Side-by-Side

Practice within the VM while following tutorials or videos side-by-side. Save your work with Pro for easy continuity.

Explore Similar Hands-on Tutorials

Automate the boring stuff with Python

17
Technical TutorialsAutomationPython
Learn how to use Python to automate tedious tasks like file renaming, spreadsheet updating, web scraping, and more. No prior programming experience required.

Learn Python Basics | Beginner-Friendly Programming Course

20
Technical TutorialsProgrammingPython
Dive into the world of programming with Python, a beginner-friendly language. Explore its readability, versatility, and robust community support.

Python Tutorial For Beginners | Programming, Coding

1
Video CoursesProgrammingPython
Learn Python fundamentals, installation, and setup for beginners. Explore the interactive prompt, create and run your first Python script. Ideal for new programmers.

A Programmers Guide to Data Mining

14
Technical TutorialsData SciencePython
Comprehensive guide to data mining techniques, including recommendation systems, classification, and clustering. Beginner-friendly introduction for programmers with hands-on exercises and Python code.

Approaching Almost Any Machine Learning Problem

8
Technical TutorialsMachine LearningPython
Comprehensive guide to problem-solving approaches in machine learning, suitable for beginners and experienced practitioners. Covers a wide range of ML topics and techniques.

Free and Open Machine Learning

28
Technical TutorialsMachine LearningPythonPyTorchTensorFlow
Discover the power of open-source machine learning with this comprehensive guide, covering key concepts, architecture, and FOSS tools for practical business applications.

Machine Learning from Scratch

12
Technical TutorialsMachine LearningPython
Dive into the principles and algorithms of machine learning with "Machine Learning From Scratch" - a comprehensive guide for beginners and experienced practitioners alike.

Python Machine Learning Projects

4
Technical TutorialsMachine LearningPython
Explore the application of Python in machine learning projects with this comprehensive guide, covering algorithms, tools, and real-world applications.

Practical Cryptography for Developer

20
Technical TutorialsCryptographyPythonSecurity
Comprehensive guide to cryptography, blockchain, and security for developers. Learn practical techniques, algorithms, and best practices for implementing secure applications.