A programmer, computer programmer, developer, coder, or software engineer is a person who writes computer software. The term computer programmer can refer to a specialist in one area of computer programming or to a generalist who writes code for many kinds of software. One who practices or professes a formal approach to programming may also be known as a programmer analyst. A programmer’s primary computer language (C, C++, C#, Java, Lisp, Python, etc.) is often prefixed to these titles, and those who work in a web environment often prefix their titles with Web. The term programmer can be used to refer to a software developer, Web developer, mobile applications developer, embedded firmware developer, software engineer, computer scientist, or software analyst. However, members of these professions possess other software engineering skills, beyond programming; for this reason, the term programmer, or code monkey, is sometimes considered an insulting or derogatory oversimplification of these other professions. This has sparked much debate amongst developers, analysts, computer scientists, programmers, and outsiders who continue to be puzzled at the subtle differences in the definitions of these occupations. British countess and mathematician Ada Lovelace is considered the first computer programmer, as she was the first to write and publish an algorithm intended for implementation on Charles Babbage’s analytical engine, in October 1842, intended for the calculation of Bernoulli numbers. Lovelace was also the first person to comment on the potential for computers to be used for purposes other than computing calculations. Because Babbage’s machine was never completed to a functioning standard in her time, she never saw her algorithm run. The first person to run a program on a functioning modern electronically based computer was computer scientist Konrad Zuse, in 1941. The ENIAC programming team, consisting of Kay McNulty, Betty Jennings, Betty Snyder, Marlyn Wescoff, Fran Bilas and Ruth Lichterman were the first regularly working programmers. International Programmers’ Day is celebrated annually on 7 January. In 2009, the government of Russia decreed a professional annual holiday known as Programmers’ Day to be celebrated on 13 September (12 September in leap years). It had also been an unofficial international holiday before that.