Online algorithms make decisions about an input as it is received piece by piece, as opposed to offline algorithms which receive the full input upfront. The online bipartite matching problem involves matching boys and girls as their compatibility information arrives. A greedy algorithm matches each new girl to an eligible boy, achieving a 1/2 competitive ratio. The AdWords problem involves selecting ads to display for search queries while maximizing revenue. The Balance algorithm deals with advertisers having limited budgets by selecting ads from bidders with the largest remaining budget at each step, achieving a 1-1/e competitive ratio.