Introduces programming concepts though the creation of multimedia applications involving images, sounds, and animations.
Focuses on music using the Python programming language, including the creation and manipulation of both existing and original music as well as experimentation with graphical environments for creating music and programming simple instruments.
Email jteresco@siena.edu; Students must also register for CSIS-400 C Programming
Once available only in supercomputers, parallel hardware is now pervasive, right down to our personal computers and mobile devices. To harness the full power of these computers, programmers must understand parallel processing, which introduces challenges at many levels. This course examines methods and techniques to support parallel programming in a variety of parallel computing environments, performance analysis, efficiency and complexity of parallel algorithms, and applications of parallel computation.
Email jteresco@siena.edu; Students must have programming proficency with data structures
C has been one of the world's top programming languages for decades. It has been used to implement operating systems and other programming languages. In this course, we will take a look at C from a Java programmer's perspective, focusing on things that make it different, efficient, and very powerful. Even if you don't plan to be a C programmer, learning and understanding C will make you a better programmer in any language.
Email dditursi@siena.edu
We live in a world that grows ever more connected - our cities become denser, our jobs more interrelated, and our social networks broader. This simple fact makes the study of network science a crucial one: Understanding how processes traverse these networks - and how the networks themselves change over time - is now vital to understanding the world as a whole. The meteoric rise of Gamestonks, coaching trees in the NFL, and the spread of COVID-19: The lens of network theory has something to reveal about all of these and more.
Email igoldstein@siena.edu
This topics course is designed to provide students with an intimate understanding of Unix and Unix-like operating systems, such as Linux. Using Raspberry Pis running a derivative of Debian as the environment, students will gain hands-on experience with installing, configuring, and administering Linux systems and Open Source applications.
Tentative topics:
Every CS Major does databases eventually, so why not be prepared? Have some fun, enhance your resume, learn SQL and Oracle, and get some hands-on experience with more modern NoSQL database systems. This is a very practical course, and many employers seek people with database experience. The catalog description is pretty accurate, so here it is:
A hands-on study of database management systems, based on the entity-relationship and relational data models, including study of both database administration and DBMS implementation techniques. Topics will include logical and physical database design (including E/R modeling, normalization, memory management, and indexing), transactions/concurrency, access methods, query processing/optimization algorithms, and query languages (primarily relational algebra and SQL). Additional topics include security and integrity of data, triggers and embedded SQL, and a brief introduction to NoSQL document databases and JSON. Feel free to contact Dr. Vandenberg with any questions you have about the course.
According to IBM Security, the average cost of a data breach in the US was 8.2 million dollars. The average number of records breached is over 25,000 records. Imagine if you could help stop this trend?
Take CSIS306 – Advanced Cyber Security and be on your way to becoming a cyber super hero. You will learn the hacking techniques that hackers use, ethical hacking and penetration techniques. This course will include hacking case studies, hands on, great speakers, demos, and an experienced cyber professional as an instructor.
You will be on a team that will design a secure computing environment. The same team will try to hack into their classmates’ environment that they designed.
Are you up for the challenge? Do you want to learn about one of the fastest and challenging growth careers? Here is your chance.
Email rirving@siena.edu. There are no pre-requisites, but special topics courses require instructor permission
The last 40 years has seen the evolvement of multiple, independent technologies that have converged to form ubiquitous computing also known as “The Internet of Things (IoT)”. In this course you will: