The new IT program officially launched last Fall semester with the courses CMPS 160: Databases and CMPS 161: Networking and Security. In this Spring semester we offer CMPS 162: Introduction to Programming and CMPS 163: Business Analytics. Below you can find a short overview of the courses and my experiences with the students. While the courses are challenging, the long term prospect of the students look excellent, which is exemplified by the availability of internships and jobs. In addition, the School of Business is building relationships with employers to implement a co-op program and the interest in this program is significant. I’ll write more about this in a future post. But first, as promised, a short overview of the courses and what they entail.
In CMPS 160 the students learned the fundamentals of databases, which includes creating data models, database design, and obviously also writing SQL queries. During the course every student had to design and implement their own database, which culminated in some wonderful class presentations. The project was executed in a realistic setting, i.e., they had to install and configure their own MySQL server instances (under supervision) and install the MySQL Workbench client software (which was used to create the data models, implement database designs, and run SQL queries). For the more advanced students there was also an opportunity to publish SQL output through PHP web pages (this simply required modifying existing pages, not writing PHP from scratch).
CMPS 161 provided comprehensive coverage on networking topics and there was a specific focus on security (which is obviously very important nowadays). In today’s world everything and everyone is connected to everything and everyone else and we studied the technologies that make this happen. Starting with the different kinds of connectivity, i.e., twisted pair, fiber optic, and wireless, we quickly found our way to essential concepts in networking such as TCP/IP, MAC addresses, and routers and switches. TCP/IP is the main protocol suite used by the internet and routing enables packets to reach their destination (and return packets can find their way back). As expected, subnetting turned out to be a topic that many students struggled with. At the end of the course the students used Wireshark (its logo is displayed at the top left of this paragraph) to analyze network traffic, e.g., an FTP login, like true professionals.
Introduction to Programming is the topic for CMPS 162. After the brief experience with SQL programming in CMPS 160, this course delves in and looks at fundamental concepts. This includes, among other things, variables, values, functions, if statements and other language constructs, etc. The language we use in this course is JavaScript, for multiple reasons. It is very easy to get started (you only need a browser), it is everywhere (browsers, servers, mobile devices), and borrows concepts from multiple programming paradigms. One of the most important parts of the course is the emphasis on turning a problem into a working solution. For example, in one of the classes we will write a simulation that solves the (counter intuitive) Monty Hall problem. During the second part of the class the students will also work on creating an online portfolio.
Finally, in CMPS 163: Business Analytics the students will learn how to get insights from data. This is probably perceived as the most difficult course out of these four because it not only requires advanced Excel programming (which is great because all the steps are very explicit), but it also covers quite a bit of theory including some math and statistics concepts. However, in today’s job market having experience with data mining is such a difference maker that I think it’s a very worthwhile class for the students. Let me give two examples of analysis that we will cover in class. In one case study we look at customers that purchase wine deals. These deals vary in the type of wine that’s offered, the quantity, and some other dimensions. We ran a clustering that divides the customers (automatically) into different customer segments (e.g., we had a low quantity cluster). This information could then be used to tailor deals for specific customer segments. Another case study involved social media and, more specifically, the analysis of tweets. In this particular scenario the students classified tweets into two different groups: tweets about a software company and tweets about other things. The value is that the software company can automatically be notified about company tweets and does not waste time on unrelated tweets. Of course, these are just examples and there are many other ways business analytics can turn data into actionable insights.