Books

Python Crash Course, 2nd Edition: A Hands-On, Project-Based Introduction to Programming

- May 3, 2019

The second edition of the best-selling Python book in the world (over 1 million copies sold!). A fast-paced, no-nonsense guide to programming in Python. Updated and thoroughly revised to reflect the latest in Python code and practices. Python Crash Course is the world's best-selling guide to the ... Read More

JavaScript: The Definitive Guide: Master the World's Most-Used Programming Language

- June 9, 2020

JavaScript is the programming language of the web and is used by more software developers today than any other programming language. For nearly 25 years this best seller has been the go-to guide for JavaScript programmers. The seventh edition is fully updated to cover the 2020 version of JavaScri... Read More

Design Patterns: Elements of Reusable Object-Oriented Software

- November 10, 1994

A catalog of solutions to commonly occurring design problems, presenting 23 patterns that allow designers to create flexible and reusable designs for object-oriented software. Describes the circumstances in which each pattern is applicable, and discusses the consequences and trade-offs of using t... Read More

Reviewed by

Refactoring: Improving the Design of Existing Code (2nd Edition) (Addison-Wesley Signature Series (Fowler))

- November 30, 2018

"Whenever you read [Refactoring], it's time to read it again. And if you haven't read it yet, please do before writing another line of code." -David Heinemeier Hansson, Creator of Ruby on Rails, Founder & CTO at Basecamp Fully Revised and Updated--Includes New Refactorings and Code Examples "Any ... Read More

Programming Rust: Fast, Safe Systems Development

- July 6, 2021

The Rust programming language offers the rare and valuable combination of statically verified memory safety and low-level control. Imagine C++ but without dangling pointers, null pointer dereferences, or buffer overruns, and with a deep library of freely reusable libraries. This practical guide g... Read More

Reviewed by

Head First Design Patterns: Building Extensible and Maintainable Object-Oriented Software 2nd Edition

- December 29, 2020

You know you don't want to reinvent the wheel, so you look to design patterns--the lessons learned by those who've faced the same software design problems. With design patterns, you get to take advantage of the best practices and experience of others so that you can spend your time on something m... Read More

Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14

- December 5, 2014

Presents a collection of tips for programmers on how to use the features of C++11 and C++14 effectively, covering such topics as functions, rvalue references, and lambda expressions. Presents a collection of tips for programmers on how to use the features of C++11 and C++14 effectively, covering... Read More

Introducing Python: Modern Computing in Simple Packages

- December 3, 2019

Easy to understand and fun to read, this updated edition of Introducing Python is ideal for beginning programmers as well as those new to the language. Author Bill Lubanovic takes you from the basics to more involved and varied topics, mixing tutorials with cookbook-style code recipes to explain ... Read More

Domain-Driven Design: Tackling Complexity in the Heart of Software

- August 20, 2003

Describes ways to incorporate domain modeling into software development. Describes ways to incorporate domain modeling into software development. Read More

C# 10 and .NET 6 – Modern Cross-Platform Development: Build apps, websites, and services with ASP.NET Core 6, Blazor, and EF Core 6 using Visual Studio 2022 and Visual Studio Code, 6th Edition

- November 9, 2021

A comprehensive guide for beginners to learn the key concepts, real-world applications, and latest features of C# 10 and .NET 6 with hands-on exercises using Visual Studio 2022 and Visual Studio Code Key Features: Explore the newest additions to C# 10, the .NET 6 class library, and Entity Framewo... Read More

Reviewed by

SysML Distilled: A Brief Guide to the Systems Modeling Language

- November 18, 2013

The Systems Modeling Language (SysML) extends UML with powerful systems engineering capabilities for modeling a wider spectrum of systems and capturing all aspects of a system's design. SysML Distilled is the first clear, concise guide for everyone who wants to start creating effective SysML mode... Read More

Reviewed by

Learn JavaScript Quickly: A Complete Beginner’s Guide to Learning JavaScript, Even If You’re New to Programming (Crash Course With Hands-On Project)

- November 10, 2020

Do you want to develop a skill that will ensure you never go jobless again? Have you always wanted to learn how to program but could never afford those ridiculously expensive courses? Developers and programmers are amongst the highest paid professions in the world, and according to the US Bureau ... Read More

Reviewed by

The Big Book of Small Python Projects: 81 Easy Practice Programs

- June 25, 2021

Best-selling author Al Sweigart shows you how to easily build over 80 fun programs with minimal code and maximum creativity. If you’ve mastered basic Python syntax and you’re ready to start writing programs, you’ll find The Big Book of Small Python Projects both enlightening and fun. This collect... Read More

Think Python: How to Think Like a Computer Scientist

- January 12, 2016

If you want to learn how to program, working with Python is an excellent way to start. This hands-on guide takes you through the language a step at a time, beginning with basic programming concepts before moving on to functions, recursion, data structures, and object-oriented design. This second ... Read More

Reviewed by

Object-Oriented Python: Master OOP by Building Games and GUIs

- January 25, 2022

Power up your Python with object-oriented programming and learn how to write powerful, efficient, and re-usable code. Object-Oriented Python is an intuitive and thorough guide to mastering object-oriented programming from the ground up. You’ll cover the basics of building classes and creating obj... Read More