This course gives an overview of different linguistic disciplines focusing on the areas where formal methods are applied. Special attention will be paid to the questions that are important not only in the domain of linguistics, but also outside of it. For example, do all human languages have a common universal core, what do we know about it and how do we try to describe it formally? How do infants acquire their first language, how do adults learn foreign languages, and why do many linguists believe that there is some innate linguistic knowledge? How did language evolve? In what aspects are animal communication systems similar to the human language, what elements of human language can animals learn? Can we say that language determines thought? Or that language itself is determined by our cultural background and social environment? When languages change over time, is this process systematic in any way? If it is, can we "subtract" various changes and calculate what the language of our remote ancestors looked like? How is language represented in the brain? Discussing these and other problems aims to show that linguistics is a very diverse and dynamic field where scientists with various backgrounds - including mathematicians - are solving questions that may be interesting not only to narrow specialists, but to any of us.