Especially where I live, there usually needs to be more understanding of Computer Science. It is quite monolithically understood as the Science of Computers, so Computers for short. This often leads to confusion among young students and their parents. Computer Science is very much about Computing Science ("Computer Science is no more about computers than Astronomy is about telescopes"). So, if you like programming and don't care about theoretical foundations, computational models, experimental evaluation, and so on, a degree program may not be the right place for you. On the other hand, if you want to develop a scientific background and mindset, live in a fertile ecosystem like a campus, have the curiosity to expand your mind, etc., a degree program may be the right place for you!
Although relatively young, Computer Science has increased and is now very mature, its achievements are pervasive in our lives, and very often, it is closely coupled with other sciences in a multidisciplinary way.
Tip
A dropout typically occurs between the first and second semester of the first year and between the first and second year. This is partly due to the ambiguity mentioned above and partly to the "paradigm shift" between high school and university. The classrooms are larger, there are no weekly written or oral exams, etc. This can lead new students into a "psychology of procrastination", which can affect their academic progress. While there is the illusion of always having enough time, a practical recommendation is to learn how to organize your time to be successful: attend lessons, organize notes, study time by time, do homework, learn more from books and other sources, etc.
Current teaching
Deep Learning, M.Sc. degree in Data Science, 2nd year, 1st semester
Computational Intelligence, B.Sc. degree in Computer Science, 3rd year, 2nd semester
Computer Science Laboratory, B.Sc. degree in Computer Science and Digital Communication, 1st year, 2nd semester
The answer to the ultimate question of life, the universe, and everything:
Computer Science or Computer Engineering?
Computer Science or Computer Engineering?
This distinction does not occur all over the world but in Italy it does. First-year students ask me this question frequently (this is partly due to the confusion above, I think).
Short answer: in the long-run, they are basically the same, and your professional career depends primarily on you.
Long answer: first, it should be noted that the distinction is mainly due to historical reasons and that the two curricula have roots in different communities with different "pedigrees". Formally, the curricula overlap and the job opportunities are basically the same. However, Computer Science programs are usually more focused on programming, programming languages, etc., so there may be more practice. Instead, Computer Engineering programs tend to be more generic. From my direct and indirect experience, Computer Science students are much more oriented to having programs as an end and not as a means; on the contrary, Computer Engineering students think of programming as a means and not an end. The former tend to develop a scientific mindset, moving from theory to practice; the latter usually develop an engineering mindset, where problem-solving can be considered more important than abstraction. Of course, like any degree program, a Computer Science/Engineering program provides you with the basics. Still, you should possess the ability and curiosity to push beyond your limits, develop soft skills, promote and enhance your work, etc. This is way I have written above that your career depends primarily on you. Finally, sadly, there is usually a misconception outside academia that computer engineers are elite over computer scientists. This is not necessarily true.
Another fundamental question:
Data Science or Artificial Intelligence?
Data Science or Artificial Intelligence?
Universities increasingly offer second-level degrees and specializations in these two disciplines, so this is another frequently asked question towards the end of the first-level degree.
Short answer: they are not exactly the same, but in a research/work team the two figures can synergistically complement each other.
Long answer: Data Science is at the intersection of several disciplines to analyze data and extract knowledge from them. In my direct and indirect experience, I have seen heterogeneous classes with students with a background in Mathematics, Statistics, Economics, and not just Computer Science. In contrast, Artificial Intelligence is a vast discipline: it does not just include machine learning and deep learning (which are very fashionable today) but many other areas, including reasoning, planning, etc. Classes are much more made up of computer scientists only. Similarly to the above distinction between Computer Science and Computer Engineering, data scientists tend to view algorithms and computational techniques as a means and not as an end. Conversely, artificial intelligence specialists tend to have algorithms and techniques as their primary focus. Data scientists are interested in the entire data processing pipeline, including legal and privacy aspects. Artificial intelligence specialists may also be more interested in ethical and philosophical aspects. In short, this is why I believe (not just me) that the two figures, in great demand in the current market, can successfully complement each other. Of course, however, the two figures can also have overlapping skills and work on the same task.