Building Skills Books

Book cover art: cards, dice

October 2019: What’s new? What’s new is the content has been moved to GitHub.

Building Skills in Object-Oriented Design [4.1910 Edition]

Step-By-Step Construction of a Complete Application

How do you move from OO programming to OO design? Do a series of design exercises focused on building an application program that has real-world sophistication.

Look for the Sponsor button.

Skills accumulate through use and repetition. We take an approach to gradually build skills starting from the basics. We respect the “clue absorption rate” that limits how much new information you can tolerate before feeling overwhelmed.

To make the process easier to understand, we take most of our exercises from the world of casino games. We find that these algorithms are just the right level of complexity to build skills in programming and design. The exercises are fun, easy to understand, and reflect real-world subtleties.


Use the issue pages on GitHub to track questions and comments.

You can also join the Google Group: Building Skills Books. Share questions, comments, suggestions and code snippets.

About the Author

Steven F. Lott is a consultant, teacher, author and software developer with over 30 years of experience building software of every kind, from specialized control systems for military hardware to large data warehouses.


Other Books:

About the License

These works are made available under a Creative Commons Attribution-Noncommercial-No Derivative Works License. You are free to copy, distribute, display, and perform the work under the following conditions:

  • Attribution.

    You must give the original author, Steven F. Lott, credit. Please contact me via s_lott at yahoo dot com for permission.

  • Noncommercial.

    You may not use this work for commercial purposes. Contact the author to make arrangements to use this book for commercial purposes.

  • No Derivative Works.

    You may not alter, transform, or build upon this work.

For any reuse or distribution, you must make clear to others the license terms of the work you are reusing or distributing.