Peter L.

Peter L.


Cambridge, MA 02138

Will travel 20 miles

$85 per hour.

4.96 683 ratings

Math Stats Physics Data-science Code-dev. Distance-learner friendly!

Perhaps I can help! I am a math/statistics/physics/data science/software development tutor based in Portland ME and Cambridge MA. If you are in greater Portland or greater Boston, please consider me for help with math from the basics to calculus to beginning and advanced statistics, ODE/PDEs, linear algebra, time series analysis or any other topic of applied math. I can help with high school or college level physics (I have a PhD in physics), general data science (I've made a career develo... [more]


I have a Ph.D. in physics and speak calculus daily in my professional life. As a tutor, I liken calculus to parallel parking, or driving a car with a stick shift, or parallel parking in a car with a stick shift -- on a hill. That is, it can seem impossible at first, but any 15-year-old can learn how to do it, and after a fashion it becomes second nature. My teaching strategy for calculus is to focus on pattern recognition in problem solving. Triage is the essential first step in assessing a problem in either differential or integral calculus and they key to picking a successful solution approach. The second step is to develop good habits and rhythms in problem solving. What to write, and where, during the solution of a problem may seem trivial, but a dedication to simple repetitive gestures keeps the solution on track and minimizes errors. Finally, I emphasize that calculus solutions can nearly always be checked, so time permitting, a 100 on the calculus exam is not an unreasonable expectation for students from any discipline.



I have a Ph.D. in physics and work professionally in biophysics and bioanalytical chemistry. (My thesis research involved the construction and characterization of computational lattice models of protein folding kinetics.) We all know more physics than we think we do. Our physical intuitions were developed in playgrounds, riding in cars, skating, riding a bike, watching water flow. As a tutor, I try to connect this already well-developed intuition with mathematical expression. It starts hard, but it gets easy quickly for most people when they pick up the rhythm of the solve. In the last six months, I have tutored a dozen students at the high school AP and college levels, both with and without calculus.




I am tutoring students in both intro level statistics (basic probability, combinatorics, binomial distributions, central limit theory, normal distributions, T-tests, P-tests, hypothesis testing) and intermediate statistics (regression, correlation, F-tests, ANOVA, hierarchical clustering, principal component analysis, multivariate analysis). I use statistics everyday in my regular scientific software consulting practice, and I very much like finding the few key conceptual threads that will unravel the field for new students.

Physical Science


I have always managed to keep probability as simple as possible for my own work in statistical physics. I focus on the pathways rather than the rules and have scores of hours of experience tutoring probability so that it doesn't lose touch with its foundation: basic counting and fractions. Discrete binomial, multinomial and Poisson distributions; continuous normal, exponential, T, F or Chi-squared distributions; conditional, marginal, and joint distributions; Bayes theorem and inference.

Discrete Math

As a physicist and computational scientist, my knowledge of applied mathematics incorporates many topics in discrete systems: logical grammar (if p then q); techniques of proofs; recursion relations, difference equations & their solutions; matrices operations; counting, combinatorics & probability; set theory and graph theory. My Ph.D. thesis had an exact, constrained enumeration as its springboard into statistical calculations. In order to simplify the resulting complex statistics, I reduced the problem to a graph for which I developed a kinetic model. I simulated kinetics on the graph and solved the eigenvalue problem associated with a matrix chosen to approximate the graph. To this day, I reduce high dimensional problems to low dimensional ones to provide solutions for real-world problems. I'm competent to teach both theory and practice of discrete mathematics.

Differential Equations

I have a Ph.D. in physics. To get the degree, I've taken advanced mathematics courses in college and graduate school. In college I've had the basic 4 semester calculus sequence plus a semester of ordinary differential equations and a semester of partial differential equations. Most of electricity and magnetism is merely applied boundary value problems from ODEs. I've also taken mathematical methods courses which went deeply into complex analysis, Greens Functions formulations, Sturm-Liouville theory, hypergeometic functions, and complex analysis. I feel comfortable facing any problem in ODEs or PDEs with little or no preparation. (The same for linear algebra.) For advanced courses in Greens functions, etc., I would need to do a bit of preparation to make most efficacious use of my tutoring contact time.


I have been writing C++ programs since 2001. I use the Qt libraries and the Gnu C++ compiler for my own work but am able to adjust to the development environment of students. My software has saved $75m in operational costs for a major corporation over 5 years. As a private consultant, I've been involved in every aspect of software development, from pre-sales support such as needs analysis, functional specification writing and usability and testing requirements, to the post-order development cycle such as technical and test specification writing, algorithmic architecture, to the actual coding to code reuse and library archiving to testing and validation to release management to deployment strategies to user training and post sales support. I could send thousands of lines of GUI control code or a snippet of highly recursive algorithmics, or both, if you would like.


Since 1997, I have been principally employed developing statistical methods for defining and distinguishing groups of biological test samples based on biochemical analysis. The problem has always been to answer the question "how are these samples different from those?" In my specific sub-field, the answers come in the form of biomarkers. To elucidate a biomarker, I've developed custom implementations of unsupervised hierarchical cluster analysis, principle component analysis, ANOVA, ANCOVA, linear discriminant analysis, SIMCA, and other techniques of used widely in biostatistics, chemometrics, and general data science. I use both frequentist and Bayesian methods.


I've never taken a class in C. I've never taught a class in C. But my computational physics PhD thesis written in my late 20s rode on the back of two years of pure C programming. I didn't learn C++ until I was in my late 30s. I read Kernighan & Ritchie's classic text in the late 80s as a graduate student at UCSD. My first copy was a freshly published 2nd edition. My thesis code, which among other things enumerated the number of self-avoiding walks in a 3x3x3 cubic lattice, was written entirely in C and made aggressive use of code recursion with changing local variables while keeping track of the enumeration using global variables. I am adept at malloc() and free(), passing by value int x,f(int x); int y=f(x) and passing by reference int x, g(int *x); int z=g(&x), and using function pointers when necessary.

Computer Programming

I am a computational scientist by training and practice. Perforce, I am a programmer with 20 years of experience in compiled/byte-compiled languages C, C++, Java, and several interpreted/scripting languages, e.g., Perl, bash, R and Javascript. I've worked in every aspect of programming from requirement collection to functional-and-test specifications to technical specification, to architecture, to coding, testing, end-user and API documentation, release management and support. I use object oriented design principles to maximize code clarity, longevity and reusablility. The best evidence of my training and experience in computer programming is MSRedux, a reusable code base that permits me to develop and release (soup-to-nuts!) custom software in my partcular area of research on a week-long time scale.

Computer Science

My experience in Computer Science is practical. In various professional capacities, I've implemented all of the major functional algorithms: sort, linked lists, binary trees, Huffman encoding & compression, depth- and breadth-first search, recursion, symplex-type optimization, and mathematical algorithms, e.g., numerical integration & differentiation, Monte Carlo optimization & annealing, and FFTs for convolution and correlation. I have also worked on all of the major machine learning algorithms, including linear methods like principal cluster analysis and nonlinear methods like neural networks and unsupervised cluster analysis. I have managed data on the bit and byte levels, converting custom data structures to IEEE. Computer science includes a certain amount of code design, I'll add that I am comfortable teaching all of the major object oriented design patterns. I can teach in C/C++ or Java. I can also teach functional programming viz., R or javascript.


For nearly a year, I have helped a Ph.D. student in economics master probability, statistics, modeling, and advanced methods such as kernel density estimation, multivariate analysis, principal component analysis, hierarchical clustering, and other machine learning methods. I have also helped countless MBA and BBA students with modeling, linear programming, and other topics in analytics. While my background is in physics rather than economics, I have managed to be useful for many students who seek help understanding and using analytics tools.

Linear Algebra

I have a Ph.D in physics, and along the way I've had to learn quantum mechanics forwards and backwards. Quantum mechanics single most powerful tool is linear algebra. I've taken the college upper division course in LA, and have studied LA's theorem-proof aspects (Hermetian operators have strictly real eigenvalues, etc.) in my various math methods courses in undergraduate and graduate physics. I've also helped friends and classmates understand null spaces, orthogonal basis sets, singular value decomposition and other tricks of the LA trade. I'm confident I can handle any question in LA with minimal prep time.


I was an early adopter of Perl in the late 80s as a graduate student at UCSD. I learned Perl from the first edition of Larry Wall's camel book "Programming Perl." Thirty years later, I continue to write Perl scripts to manage software builds and releases. As a postdoctoral fellow at Harvard in the early 90s, I wrote a lot of the glue-code for our protein folding research group, and all of the glue was in Perl. I've also written a Perl-based java-to-c++ translator. I have used Perl to write an automated C++-code generator for C-style structs, which helps with my binary file parsing work. I was the official reviewer of a 1999 book on programming with Perl. Perl has been described as the Swiss Army Chainsaw of the Internet. I can show you how to get the chainsaw going, keep it sharp, and avoid hurting yourself (and your work) as you cover a lot of ground on your coding to-do list with a few lines of Perl.

Finite Math

Finite math is discrete math for social sciences and business. As a physicist and computational scientist, my knowledge of applied mathematics incorporates many topics in discrete, finite systems: logical grammar (if p then q); recursion relations, difference equations & their solutions; simultaneous equations; counting, combinatorics & probability; set theory and graph theory. My Ph.D. thesis had an exact, constrained enumeration as its springboard into statistical calculations. I'm competent to summarize the theory and enable the practice of finite mathematics.


I use R/RStudio as my daily methods development environment. I exploit R's statistical and mathematical libraries for solving linear systems, performing convex optimization, evaluating frequentist hypotheses, inferring parameters through Bayesian statistics, and performing samplings and simulations. I also use R for reporting and technical document generation with R-markdown/KnitR. I'd be delighted to help you learn the R environment, including the powerful notion of R closures, and will show you some R best practices along the way.