The Βachelor in Computer Science program at Charles University focuses on two areas. The first area of gained expertise is applied computer science, in particular the ability to analyze and program real world problems. This enables graduates to get jobs in the industry directly after finishing their bachelor's degree. The second area is theoretical computer science (including a relatively broad mathematical foundation), which allows graduates to continue their studies at a master's (and later doctoral) level.
The coverage of both the above mentioned areas is in accord with computer science's position on the borderline between technical and natural sciences.
The Bachelor in Computer Science offers three specializations. One of them is more practically-oriented (Databases and Web) and the other two are theoretically-focused (General Computer Science, Artificial intelligence). The first year of study is common for all three specializations. This allows students to pick their specializations as late as in the second year of study, when they have enough information to make a decision.