One way or another – either by being a university student, an industry practitioner, an industrial researcher, and now as an instructor – I’ve been doing “Computer Science” since 1978. Over the past 37 years I have worked with a variety of different hardware and software technologies, and at least a score of different programming languages. But the one overriding constant in all this work has been the mathematics. Not (merely) calculus, linear algebra and trigonometry – which remain essential for computer graphics – but other branches of mathematics as well, such as discrete mathematics (for understanding recurrence relations and series), numerical analysis (for solving modeling problems with real numbers), numerical algebra (solving problems modeled using vectors or matrices), differential equations (for modeling feedback control), dependency theory (for database normalization), relational algebra and calculus (database query languages), queuing theory (for understanding the performance of systems, including database systems), logic (for understanding program semantics) and, last but not least, statistics (for understanding trends in a variety of real world problems, from software defect rates to developer productivity).

All of these areas are important, but except for relational database theory, statistics is the branch of mathematics I have more heavily relied upon during my career than the others. Identifying trends, and being able to offer solid evidence of correlation, is a useful skill that has application in many areas of software development and management.

As an example, I was pleased that Conestoga students Mark Parsons, George Michael, and Alex Farquahar developed a sophisticated set of data visualizations for production line management at a local technical firm in Kitchener and displayed their work at the recent August Showcase, held at Conestoga’s Cambridge campus (see left). The Showcase permits the students judged with the best Capstone project in their program to compete against projects from other programs within the College to win the College’s Mastercraft award at their convocation.

The term *data science* has been coined to describe the multi-faceted and multi-disciplinary combination of statistics, algorithms, data mining, analytics, data visualization, and related fields. At the heart of data science, however, are a researcher’s critical thinking skills, necessary to be able to reason about data and distinguish between correlation and causation.

A recent article [1] by Ronald A. Rensink, a faculty member in the departments of Psychology and Computer Science at the University of British Columbia and published in the IEEE magazine *Computer Graphics and Applications*, presents a very interesting approach to the teaching of data visualization and analysis to undergraduate students at UBC that may well be worth a detailed look by other diploma and undergraduate degree programs across the country. In the article, Mr. Rensink describes **COGS 303**, an upper-level course in his department’s interdisciplinary Cognitive Systems Program. What I find really interesting about COGS 303 is that the course is a **precursor** to a much more technical course that involves the application of statistical analysis to real data sets. COGS 303, rather, is a course to develop a student’s analytical, research and critical thinking skills. The topics include analyzing the structure of an argument, understanding assumptions, the role of hypothesis, experiment design, effective communication, and so on. The main text for the course is the volume *Asking the Right Questions* [2] by M. Neil Browne and Stuart Keeley, which is supplemented by a variety of articles from other authors. Here is the complete syllabus of COGS 303 as presented in the paper:

With this background, students then go on to apply these ideas to real-world analytics, using appropriate data mining and visualization tools, such as SPSS, R language, or Tableau. The idea is for COGS 303 to provide the critical thinking skills necessary for the students to be able to reason about the data under analysis, with much greater understanding, so that the inferences that are drawn are important and “real”, rather than simply coincidental, and convey that meaning in the best possible way.

[1] Ronald A. Rensink (March-April, 2015). Preparing Undergraduates for Visual Analytics. IEEE Computer Graphics and Applications 35(2). Reprinted in IEEE Computing Edge (July 2015), pp. 30-34.

[2] M. N. Browne and S. Keeley (2013). Asking the Right Questions: A Guide to Critical Thinking, 11th Edition. Pearson Education.