At the moment, there are many directions in programming. Everyone can find something to their liking, but for this you need to know what exactly you will do in your field.
Web application development
This direction is focused on the development of web applications (in other words, sites, but at present sites have such rich functionality that they can be called full-fledged applications).
Web programming can be divided into backend (writing server scripts – PHP, Python, Ruby) and frontend (development of user interface – Javascript, HTML, CSS).
Development of desktop applications
Software development for various operating systems. All the variety of software that we use in everyday life. If you want to write your own photo processor, audio player or text editor, then you are here.
Server Application Development
These are various game servers (your favorite Dotka, CS: GO), IM services (the server part of Skype, ICQ, MSN), banking databases.
Mobile Application Development
Lots of Java applications. Viber, translators, electronic readers.
Embedded Systems Programming
An interesting branch of programming for various household appliances: vacuum cleaners, refrigerators, washing machines, players, navigators, electronic scales. It involves scientific development using specialized languages, such as MATLAB.
System Programming
Writing various drivers for equipment, programming the “kernel” of operating systems. By the way, the creation of compilers and interpreters for programming languages are also included here.Game development
Giant industry. This includes game development for PC, consoles and mobile devices.
Olympiad programming and problem solving
Programming in various “impractical” and not common languages (Pascal, Delphi) to solve some original problems that require a non-standard approach, ingenuity and IQ above 160.
Programming for accounting and financial products
“1C: Enterprise”. All bookkeeping is tied to this product. But it is not enough to know only the language itself, it is important to understand the basics of accounting. The advantage is that there is a lot of work, and you will not be left without bread.
Database programming
Serious direction. If you want to develop databases that can store billions of lines of information about all Facebook users and still not slow down, you are here.
Science
Science says it all. Neural networks, DNA structure simulation, satellite launch, Big Bang simulation.