В программировании существует много разнородных направлений. Их обилие связано в первую очередь с разнообразием языков программирования. Их обилие поражает, но ещё сильнее поражает и простота их освоения. Например, языки платформы Java являются одними из самых используемых, но наряду с этим и очень лёгкими. В разработке игр, приложений, систем для серьёзных предприятий или простых веб-утилит участвуют не только программисты. Это и тестировщики кода, веб-дизайнеры и верстальщики, а после запуска программного кода в игру вступают аналитики, задача которых состоит в том, чтобы проверить, насколько качественный и достойный результат способна выдать программа.