In this talk we are going to address several aspects of applying supervised methods to natural language processing tasks. We will start by describing several types and tools for text annotation and evaluation of annotation quality. Next we will approach a few supervised tasks, specially, text classification and sequence labelling, describe them formally and discuss both traditional machine learning approaches as well as deep learning approaches to them