Video description
In Video Editions the narrator reads the book while the content, figures, code listings, diagrams, and text appear on the screen. Like an audiobook that you can also watch as a video.
A gentle introduction to some of the most useful mathematical concepts that should be in your developer toolbox.
Christopher Haupt, New Relic
To score a job in data science, machine learning, computer graphics, and cryptography, you need to bring strong math skills to the party. Math for Programmers teaches the math you need for these hot careers, concentrating on what you need to know as a developer. Filled with lots of helpful graphics and more than 200 exercises and mini-projects, this book unlocks the door to interesting–and lucrative!–careers in some of today’s hottest programming fields.
about the technology
Skip the mathematical jargon: This one-of-a-kind book uses Python to teach the math you need to build games, simulations, 3D graphics, and machine learning algorithms. Discover how algebra and calculus come alive when you see them in code!
about the book
In Math for Programmers you’ll explore important mathematical concepts through hands-on coding. Filled with graphics and more than 200 exercises and mini-projects, this book unlocks the door to interesting–and lucrative!–careers in some of today’s hottest fields. As you tackle the basics of linear algebra, calculus, and machine learning, you’ll master the key Python libraries used to turn them into real-world software applications.
what's inside
- Vector geometry for computer graphics
- Matrices and linear transformations
- Core concepts from calculus
- Simulation and optimization
- Image and audio processing
- Machine learning algorithms for regression and classification
about the audience
For programmers with basic skills in algebra.
about the author
Paul Orland is a programmer, software entrepreneur, and math enthusiast. He is co-founder of Tachyus, a start-up building predictive analytics software for the energy industry. You can find him online at www.paulor.land
A rigorous yet approachable overview of the mathematics that underpin a number of modern programming domains.Dan Sheikh, BCG Digital Ventures
Engaging, practical, recommend for all levels.
Vincent Zhu, rethinkxsocial.com
It provides a bridge for programmers who need to brush up on their math skills, and does a nice job of making the math less mysterious and more approachable.
Robert Walsh, Excalibur Solutions
NARRATED BY DEREK LETTMAN
Table of contents
- Chapter 1. Learning math with code
- Chapter 1. Finding a good deal
- Chapter 1. Modeling the physical world
- Chapter 1. How not to learn math
- Chapter 1. Using your well-trained left brain
- Part 1. Vectors and graphics
- Chapter 2. Drawing with 2D vectors
- Chapter 2. 2D drawing in Python
- Chapter 2. Plane vector arithmetic
- Chapter 2. Subtraction, displacement, and distance
- Chapter 2. Angles and trigonometry in the plane
- Chapter 2. From components back to angles
- Chapter 2. Transforming collections of vectors
- Chapter 3. Ascending to the 3D world
- Chapter 3. Vector arithmetic in 3D
- Chapter 3. Computing angles and directions
- Chapter 3. The dot product: Measuring vector alignment
- Chapter 3. Measuring angles with the dot product
- Chapter 3. The cross product: Measuring oriented area
- Chapter 3. Finding the length of the cross product
- Chapter 3. Rendering a 3D object in 2D
- Chapter 4. Transforming vectors and graphics
- Chapter 4. Composing vector transformations
- Chapter 4. Rotating an object about an axis
- Chapter 4. Linear transformations
- Chapter 4. Why linear transformations?
- Chapter 4. Exercises
- Chapter 5. Computing transformations with matrices
- Chapter 5. Multiplying a matrix with a vector
- Chapter 5. Implementing matrix multiplication
- Chapter 5. Interpreting matrices of different shapes
- Chapter 5. Viewing square and non-square matrices as vector functions
- Chapter 5. Composing linear maps
- Chapter 5. Translating vectors with matrices
- Chapter 5. Translating 3D objects in a 4D world
- Chapter 6. Generalizing to higher dimensions
- Chapter 6. Improving the Vec2 class
- Chapter 6. Building a vector base class
- Chapter 6. Unit testing vector space classes
- Chapter 6. Exploring different vector spaces
- Chapter 6. Treating functions as vectors
- Chapter 6. Manipulating images with vector operations
- Chapter 6. Looking for smaller vector spaces
- Chapter 6. Spanning a bigger space
- Chapter 6. Finding subspaces of the vector space of functions
- Chapter 6. Exercises
- Chapter 7. Solving systems of linear equations
- Chapter 7. Finding intersection points of lines
- Chapter 7. Linear equations in matrix notation
- Chapter 7. Identifying unsolvable systems
- Chapter 7. Generalizing linear equations to higher dimensions
- Chapter 7. Studying hyperplanes algebraically
- Chapter 7. Exercises
- Chapter 7. Changing basis by solving linear equations
- Part 2. Calculus and physical simulation
- Chapter 8. Understanding rates of change
- Chapter 8. Plotting the average flow rate over time
- Chapter 8. Approximating instantaneous flow rates
- Chapter 8. Approximating the change in volume
- Chapter 8. Plotting the volume over time
- Chapter 8. Improving the approximation
- Chapter 9. Simulating moving objects
- Chapter 9. Simulating acceleration
- Chapter 9. Digging deeper into Euler’s method
- Chapter 9. Running Euler’s method with smaller time steps
- Chapter 10. Working with symbolic expressions
- Chapter 10. Modeling algebraic expressions
- Chapter 10. Putting a symbolic expression to work
- Chapter 10. Expanding an expression
- Chapter 10. Finding the derivative of a function
- Chapter 10. Derivatives of some special functions
- Chapter 10. Taking derivatives automatically
- Chapter 10. Integrating functions symbolically
- Chapter 11. Simulating force fields
- Chapter 11. Modeling gravitational fields
- Chapter 11. Adding gravity to the asteroid game
- Chapter 11. Introducing potential energy
- Chapter 11. Connecting energy and forces with the gradient
- Chapter 11. Finding the steepness of a graph with the gradient
- Chapter 12. Optimizing a physical system
- Chapter 12. Testing a projectile simulation
- Chapter 12. Calculating the optimal range
- Chapter 12. Solving for the maximum range
- Chapter 12. Enhancing our simulation
- Chapter 12. Solving for the range of the projectile in 3D
- Chapter 12. Optimizing range using gradient ascent
- Chapter 12. Implementing gradient ascent
- Chapter 13. Analyzing sound waves with a Fourier series
- Chapter 13. Playing sound waves in Python
- Chapter 13. Turning a sinusoidal wave into a sound
- Chapter 13. Combining sound waves to make new ones
- Chapter 13. Building a linear combination of sinusoids
- Chapter 13. Decomposing a sound wave into its Fourier series
- Chapter 13. Defining an inner product for periodic functions
- Chapter 13. Fourier coefficients for other waveforms
- Part 3. Machine learning applications
- Chapter 14. Fitting functions to data
- Chapter 14. Measuring the quality of fit for a function
- Chapter 14. Calculating cost for car price functions
- Chapter 14. Exploring spaces of functions
- Chapter 14. Finding the line of best fit using gradient descent
- Chapter 14. Fitting a nonlinear function
- Chapter 15. Classifying data with logistic regression
- Chapter 15. Testing a classification function on real data
- Chapter 15. Picturing a decision boundary
- Chapter 15. Framing classification as a regression problem
- Chapter 15. Introducing the sigmoid function
- Chapter 15. Exploring possible logistic functions
- Chapter 15. Measuring the quality of fit for a logistic function
- Chapter 15. Finding the best logistic function
- Chapter 15. Testing and understanding the best logistic classifier
- Chapter 16. Training neural networks
- Chapter 16. Classifying images of handwritten digits
- Chapter 16. Designing a neural network
- Chapter 16. Calculating activations
- Chapter 16. Building a neural network in Python
- Chapter 16. Training a neural network using gradient descent
- Chapter 16. Automatic training with scikit-learn
- Chapter 16. Calculating gradients with backpropagation
- Appendix B. Python tips and tricks
- Appendix B. Collections of data in Python
- Appendix B. Generators
- Appendix B. Working with functions
- Appendix B. Plotting data with Matplotlib
- Appendix B. Object-oriented programming in Python
- Appendix B. Operator overloading
Product information
- Title: Math for Programmers video edition
- Author(s):
- Release date: November 2020
- Publisher(s): Manning Publications
- ISBN: None
You might also like
book
Math for Programmers
To score a job in data science, machine learning, computer graphics, and cryptography, you need to …
audiobook
Math for Programmers
A gentle introduction to some of the most useful mathematical concepts that should be in your …
video
Just Enough Math
With the commercial successes of machine learning and cloud computing, many business people need just enough …
book
Good Math
Mathematics is beautiful--and it can be fun and exciting as well as practical. Good Math is …