This document provides an overview of automatic speech recognition (ASR) technologies. It discusses the challenges of ASR processing including speaker and language variability as well as noise. It describes pattern-based and statistical approaches to ASR, including hidden Markov models, Gaussian mixture models, and deep neural networks. The document lists some open source and commercial ASR engines and provides steps to build an online ASR system using open source tools like Kaldi, Kaldi gstreamer server, and Dictate.js. It concludes with a live demo of a personal ASR system built with these tools.