Dijkstra’s Algorithm in Python – Dijkstra’s Algorithm is a path finding algorithm for weighted graphs. Given a start vertex, it finds the shortest weighted path to all other vertices.

Terminal – A guide to the Mac Terminal.

Counting Is Hard – Three combinatorics problems. 1 easy, two really hard.

Entropy – This is an introduction to the idea of entropy, a key topic in the information theory and signal processing. It is deeply related to probability.

AdaBoost – A paper I enjoyed about the AdaBoost algorithm, where a set of weak classifiers function together as one strong classifier.

Principal Component Analysis in 4 steps – PCA is a technique used for dimensionality reduction. This is a guide on technique that I wrote.

Eigenvalues and Eigenvectors – An intro to this topic in linear algebra.

Bayes Theorem and Naive Bayes – Bayes Theorem is the idea that most things are conditional. Perhaps a coin flip doesn’t depend the weather, but the United States’ chances of beating Argentina are drastically reduced if 3 of their players have been benched (cuz it was certainly probable before! Haha)

Markov Chains in R – Markov chains provide a framework for navigating through a state space. What’s the probability it will be sunny tomorrow given it rained today? What’s the probability the Ted will play Laser Tag with Barney given he’s at MacLaren’s?

Linear Algebra in Julia – A quick exploration of basic linear algebra functions in Julia, a very cool language.

Generating Text Using a Markov Model – Markov chains can be applied very quickly and easily, which is awesome, because they’re just basic probabilistic models. In this tutorial I wrote an algorithm that takes in some data, and spits out similar sounding text, just based on probabilities.

Introduction to Monte Carlo Methods – My favorite post of all time. Monte Carlo methods inject some real-world randomness into a model, and allow for some pretty cool simulations. In this tutorial we calculated Pi, and simulated traffic.

k-Nearest Neighbors – A quick post about k-nearest neighbors in scikit-learn.

Intro To Linear Algebra – A very basic overview of linear algebra. There are more recent, more in depth posts! I plan to go much deeper into linalg on this blog.

Curves in Processing (part 1, part2) – Processing is a language for visualization. It’s incredibly versatile, and you can produce some awesome things (just take a look at Generative Design). I use it for a lot of data visualization, if I’m trying to show a simulation, or something more elegantly than a graph. In this intro, I talk about how to draw curves using Processing.

Getting Started with Processing – A more basic intro to Processing.

Random Forest – Quick tutorial on how to use random forest in scikit-learn. Maybe I’ll come back to the theory more in another post.

Youtube-dl, How You Should Be Watching Youtube – This is a pretty cool hack to get music off youtube with a command line python script. It’s pretty simple, but unfortunately, I’m not sure if it still works.

Running Algorithms on Location Data in Python – When I interned at Verizon, we did a hackathon that was a version of the traveling salesman problem. I enjoyed writing a Greedy algorithm, so I outlined how to use some of that location data to do versions of that problem.

Basic Data Exploration in R – This just goes over some of the more basic functions for exploring data in R, such as str() and the data.table package.

Welcome To My Blog – part of me just can’t delete this for sentimental reasons, plus Killer Whales are pretty cool. You know they can defeat great white sharks in a fight?