Learn to Think Like a Computer Scientist - the C++ Way

Download a Free Chapter of The C++ Programmer’s Mindset. 

In this free chapter, “Thinking Computationally,” you’ll explore the four pillars of computational thinking - decomposition, abstraction, pattern recognition, and algorithm design and learn how they come together to shape the mindset of an expert C++ developer. You’ll also see how modern C++ features and good software practices help translate this theory into powerful, real-world solutions. 

About the Author

About Deep Engineering

Deep Engineering is a publication for senior developers and software architects. We publish rigorously edited features, interviews, and original analysis—built for people who care about clarity, systems, and long-term thinking. 

Sam Morley

Sam Morley is a research software engineer and mathematician at the University of Oxford, working on the DataSig programme. He's the lead maintainer of the RoughPy library, a performant C++ and Python library for computation rough paths and data science. Sam is a former mathematics lecturer and brings both academic precision and real-world engineering experience to every challenge especially those involving abstraction, data, and algorithms. He's also the author of Applying Math with Python. Sam greatly enjoys solving puzzles, which is why he finds mathematics and programming so interesting.

BACK TO TOP
Tableau

Packt Publishing Ltd, Grosvenor House, 11 St Paul's Square, Birmingham, B3 1RB

© 2025 Packt Publishing Limited All Rights Reserved

By signing up, you are also subscribing to the Deep Engineering publication as a whole on Substack. You can change your preferences at any time.

Why Read This Book

Modern C++ isn’t just about writing code; it’s about solving problems effectively. Through detailed examples and a practical case study, this book helps you build the mental models and technical tools needed to write elegant, high-performance applications.

Whether you’re optimizing algorithms, designing systems, or tackling complex computational problems, you’ll gain the confidence to make smarter design decisions.

Explore Past Issues

About The Author

Order on PacktOrder on Amazon

Who this is for

  • Intermediate to advanced C++ developers and software engineers
  • Computer science students aiming to strengthen algorithmic thinking
  • Anyone ready to evolve from “writing C++” to thinking in C++

Other C++ Books

C++ Memory Management
BUY NOWBUY NOW
Tableau
BUY NOW
Modern C++ Programming Cookbook