The person who creates computer programs in a programming language. This term can also refer to a specialist in one area of programming. Most programmers know at least some programming languages (eg. C, C ++, Java), but specializes in only some of them. The root language is often added to the name of the position, eg. A C ++ programmer to emphasize specialization. As programmers is sometimes referred to software designers, software engineers and systems analysts. However, this is an oversimplification, because those professions require many other skills, in addition to the programming. While this division is well outlined abroad, in Poland there is more freedom in choosing the names of the profession.