Course Description The purpose of this course is to provide computer engineering students with the ability of critically analyzing the concepts that constitute the core of their study program. The philosophy of science, in particular, offers the conceptual tools to understand scientific-technological processes both in general and in specific disciplines, like computer science. The course is divided into three parts. The first one is a historical-conceptual introduction to scientific and technological problems analyzed from a philosophical perspective. The second one regards the critical analysis of some central topics in the computer science. The third part supports the writing of a paper conceived as a form of scientific communication.