Orientation toward Computer Science, Computer Engineering, and online courses

Samuele Guarnaccia
4 min readDec 24, 2022

--

I graduated in computer science in Turin two years ago, I am finishing my master’s degree in artificial intelligence while I am working for a multinational as a consultant.

I’m writing this article based on my experience and what I have elaborated during orientation days events.

You might consider Computer Science and Computer Engineering as really similar paths. If you have the will to study in such universities and explore/focus mainly on the software aspects or the engineering ones, developing projects and learning solid concepts.

Differently, if you are just interested in programming you won’t need to go to the university, spend three years studying and preparing for math exams, and deepen the operative system’s processes or the underlying networks.

In both scenarios, you would learn most of the things by yourself.

Having computer science knowledge will allow you to gain a broad understanding of the infrastructure that surrounds us and that exchanges data continuously.

There are many reasons to choose a specific university field. I studied computer science because I knew it would certainly lead me into the field I am going towards. I preferred having more points of view about this world and understanding in more steps which path to take.

Computer Science Areas

After my scientific high school, I was not much interested in having further training in chemistry, physics, and mathematics at a high level, and for this reason, I discarded computer engineer.

I evaluated the exams and computer science seemed more suitable to my interests and more likely to offer better opportunities to start a university path in my city.
I believe many of you could find more interest in a computer engineering degree and enjoy it.

Compare the exams of the university courses, and choose what you think you are going to learn with more motivation.

The main exams in computer science are the following:

  • An introduction to procedural Programming and their methodologies (Java, C, C++, Python)
  • High-level programming (Java, C++)
  • Algorithms and Data Structures
  • Database
  • Operative Systems
  • Computer Networks
  • Software development
  • Web application and Android/iOS applications
  • Math Analysis
  • Statistics and probability
  • Computer Architecture
  • Discrete Math, Logic, and Matrix calculus

Sometimes the following subjects are included in Computer science courses:

  • Functional Programming (Haskell, LISP)
  • Economy and business
  • Privacy and Data Laws
  • Data science, Data Mining, and Machine learning introduction

Surely computer science will allow you to have a good balance between theory and projects in which you can apply development methods and develop strategies to work in groups.
It’s important to make more projects because it means you would collide with more problems, a really good thing to develop problem-solving, one of the most required skills in computer science and programming.

If your goal is learning how to do Web Applications, how to program browser extensions, how to make Android or iOS apps (or both at the same time), and so on, and you are confident that whatever work you would get into in the beginning would be a good experience because you are motivated enough, then you could just find the right courses to develop the interest you want to pursuit.

Depending on your income and your time management skills there are various online courses and tutorials.
One of the best things about computer science is the great amount of documentation and people who are willing to share development methodologies and give off their best tips to learn a discipline.

You could choose free courses, courses with certifications, and university courses. Here below some examples taken from edx and Coursera.

Reading articles on the medium is useful too, you could find interesting these:

Youtube tutorials and code channels can give you good examples and explain a lot of languages, technologies, and practices, here are some videos:

Spring Boot Full Stack + Angular Tutorial
Selenium Tutorial
Firebase Tutorial

I suggest you also discuss your learning topics on Reddit, Discord, or your social platforms.

--

--

Samuele Guarnaccia

Artificial Intelligence student and IT consultant, here to learn and summarize what I have learned about computer science, good behaviors and life experiences