This document provides a tutorial on support vector machines (SVM) for binary classification. It outlines the key concepts of SVM including linear separable and non-separable cases, soft margin classification, solving the SVM optimization problem, kernel methods for non-linear classification, commonly used kernel functions, and relationships between SVM and other methods like logistic regression. Example code for using SVM from the scikit-learn Python package is also provided.