Hubert Matthews has been programming in C++ for over 15 years and he has been teaching it for over 10 years. He also works as a systems architect and software consultant. Hubert has been a member of the UK BSI standards committee for C++. Hubert Matthews is a freelance consultant specialising in system architecture and design as well as training programmers in C++, UML and Java. His clients range from large companies such as DHL and Orange to small companies and startups. He also is technical director or advisor to a number of startup companies. Hubert lives in Oxford and in his abundant spare time he likes to pretend that he coaches rowing, dances salsa, dabbles with martial arts and drives too fast.