courses

Courses at SNHU

right arrow CS 465 Full Stack

Offered: Fall 2025

This is a new hands-on course where we introduce students to leading-edge techniques for fulll-stack web development. The class is an intense adventure requiring participation inside and outside of class. There will be project assignments, in-class activities, and a collaborative final project.

The focus will be on the MERN stack, which is composed of MongoDB, Express.js, React, and Node.js. Students will use JavaScript for both the front-end (user interface) and back-end (server-side logic and database interactions).

Topics include: static pages, Internet protocols, layout, markup, event-driven asynchronous programming, testing, deployment, security & privacy, scalability, and user experience.

Prerequisites: CS 340

Acknowledgements

This new course is heavily influenced by Tim Tregubov’s CS52 FullStack Web Development course at Dartmouth. Other guidance came from … and Norberto Leite of the MongoDB team.

The instructor is deeply indebted to these outstanding educators.



Courses I taught at Dartmouth


COSC 69/269 BRASS: Building Reliable And Secure Systems

Debut offering: Spring 2025

Modern society depends on software. Telecommunications, commerce, medical systems, transportation, energy production and distribution, government, and operation and management of critical infrastructures are a few examples where lives and livelihoods depend on the reliable operation of software. For something so vital to everyday lives around the world, software is often fragile, resulting in unexpected results or complete failures. This also makes software a target of those hoping to capitalize on this fragility for criminal activities, influence or notoriety, or disruption. This course will explore modern techniques for building software systems that are reliable, resilient, and secure. The primary topics will include the Rust programming language along with software build systems and the DevOps/DevSecOps methodologies.

COSC 50 Software Design and Implementation

Previously offered: 2012, 2013, 2015, 2016, 2018, 2021, 2022, Winter 2023, Spring 2023, Fall 2023, Winter 2024, Spring 2024, and Fall 2024.

This is a rather intense course encompassing the C programming language, Unix and its dozens of tools, software development style and techniques, client/server programming, a touch of GUI's, and, best of all, a large way-cool project where you'll bring it all together.

COSC 55 Security and Privacy

Previously offered: 2011, 2013-2015, 2018-2020, Fall 2023, and Winter 2024.

Successful completion of this course will mean you have learned how to think carefully about the security and privacy attributes of the systems and policies that you encounter in your work and personal life, whether they are computerized or not. While you should gain a broad understanding and a healthy skepticism of systems security and privacy, we also hope that you will learn how to build more secure systems rather than just becoming adept at finding security failures.

COSC 61 Database systems

Previously offered: 2013, 2015, 2017, 2019, 2022, and Winter 2025.

This course studies the management of large bodies of information. This includes schemes for the representation, manipulation, and storage of complex information structures as well as algorithms for processing these structures efficiently and for retrieving the information they contain. The course does include some programming. Topics include Relational Databases as well as NOSQL (Not Only SQL) data stores.