Praise of Python

"Python is a truly wonderful language. When somebody comes up with a good idea it takes about 1 minute and five lines to program something that almost does what you want. Then it takes only an hour to extend the script to 300 lines, after which it still does almost what you want." Jack Jansen (ported Python to Mac, MacPython)
In my daily work, I work on very large, complex, distributed systems built out of
many Python modules and packages. The focus is very similar to what you find, for
example, in Java and, in general, in systems programming languages.
(Guido van Rossum)

Natural Language Processing with Python

The Preface from the Book

This is a book about Natural Language Processing. By "natural language" we mean a language that is used
for everyday communication by humans; languages like English, Hindi or Portuguese. In contrast to
artificial languages such as programming languages and mathematical notations, natural languages
have evolved as they pass from generation to generation, and are hard to pin down with explicit
rules. We will take Natural Language Processing - or NLP for short - in a wide sense to cover any
kind of computer manipulation of natural language. At one extreme, it could be as simple as counting
word frequencies to compare different writing styles. At the other extreme, NLP involves "understanding"
complete human utterances, at least to the extent of being able to give useful responses to them.

Technologies based on NLP are becoming increasingly widespread. For example, phones and handheld
computers support predictive text and handwriting recognition; web search engines give access to
information locked up in unstructured text; machine translation allows us to retrieve texts written
in Chinese and read them in Spanish. By providing more natural human-machine interfaces, and more
sophisticated access to stored information, language processing has come to play a central role in
the multilingual information society.

This book provides a highly accessible introduction to the field of NLP. It can be used for individual
study or as the textbook for a course on natural language processing or computational linguistics, or
as a supplement to courses in artificial intelligence, text mining, or corpus linguistics. The book
is intensely practical, containing hundreds of fully-worked examples and graded exercises.

The book is based on the Python programming language together with an open source library called the
Natural Language Toolkit (NLTK). NLTK includes extensive software, data, and documentation, all
freely downloadable from http://www.nltk.org/. Distributions are provided for Windows, Macintosh
and Unix platforms. We strongly encourage you to download Python and NLTK, and try out the examples
and exercises along the way.

Our Review

This book is suitable for a wide range of people, like software developer, linguists, business information
analysts, who want to get a working knowledge of NLP (Natural Language Processing). The book doesn't require
any Python or even programming knowledge, so it's suitable both for readers with no prior knowledge in Python
and in programming. The first chapters of the books are an introduction into the basic concepts of the language.