This course will examine the basic ideas of computational thinking. In particular it will focus on principled thought processes, approaches and principles that guide computational analyses, from problem formulation all the way to effective and efficient problem solving. It will contain an introduction to algorithm building and their complexity, basic data structures used in computational solutions as well as the use of necessary tools to tackle large-scale problems in a variety of domains. The course will also discuss the application of computational thinking in different areas such as the humanities, social sciences and the arts, potentially looking into the impact it may have on them. Finally, it will serve as a necessary preamble for students who will follow a more technical career, especially in the area of Information Systems and Applied Data Science.