by Allen Downey, Jeffrey Elkner, Chris Meyers
How to Think Like a Computer Scientist: Learning with Python - is an introduction to computer science using the Python programming language. It covers the basics of computer programming, including variables and values, functions, conditionals and control flow, program development and debugging. Later chapters cover basic algorithms and data structu...
by Yaning Liu
The book is based on "First semester in Numerical Analysis with Julia". The contents of the original book are retained, while all the algorithms are implemented in Python (Version 3.8.0). Python is an open source (under OSI), interpreted, general-purpose programming language that has a large number of users around the world. Python is ran...
by Lee Stemkoski, Michael Pascale
Developing Graphics Frameworks with Python and OpenGL shows you how to create software for rendering complete three-dimensional scenes. The authors explain the foundational theoretical concepts as well as the practical programming techniques that will enable you to create your own animated and interactive computer-generated worlds. You will learn h...
by Harry Percival, Bob Gregory
As Python continues to grow in popularity, projects are becoming larger and more complex. Many Python developers are taking an interest in high-level software design patterns such as hexagonal/clean architecture, event-driven architecture, and the strategic patterns prescribed by domain-driven design (DDD). But translating those patterns into Pytho...
by Hans Petter Langtangen, Svein Linge
This easy-to-read book introduces the basics of solving partial differential equations by means of finite difference methods. Unlike many of the traditional academic works on the topic, this book was written for practitioners. Accordingly, it especially addresses: the construction of finite difference schemes, formulation and implementation of algo...
by Hans Petter Langtangen
This text provides a very simple, initial introduction to the complete scientific computing pipeline: models, discretization, algorithms, programming, verification, and visualization. The pedagogical strategy is to use one case study – an ordinary differential equation describing exponential decay processes – to illustrate fundamental concepts ...
by Allen Downey
If you know how to program with Python and also know a little about probability, you're ready to tackle Bayesian statistics. With this book, you'll learn how to solve statistical problems with Python code instead of mathematical notation, and use discrete probability distributions instead of continuous mathematics. Once you get the math o...
by Allen Downey
If you understand basic mathematics and know how to program with Python, you're ready to dive into signal processing. While most resources start with theory to teach this complex subject, this practical book introduces techniques by showing you how they're applied in the real world. In the first chapter alone, you'll be able to decom...
by Kota Miura, Nataša Sladoje
This Open Access textbook provides students and researchers in the life sciences with essential practical information on how to quantitatively analyze data images. It refrains from focusing on theory, and instead uses practical examples and step-by step protocols to familiarize readers with the most commonly used image processing and analysis platf...
by Allen Downey
The Little Book of Semaphores is a free textbook that introduces the principles of synchronization for concurrent programming. In most computer science curricula, synchronization is a module in an Operating Systems class. OS textbooks present a standard set of problems with a standard set of solutions, but most students don't get a good und...