Skip to content
CS @ Kenyon
Home
CS Lab Server
Development Server
CS @ Kenyon
Main Menu
2020-21 ICPC East Central NA Regional Programming Contest
A Breadth-First Search
Analyzing Software Failures Activity
Apache Setup on Ubuntu 22.04
Apply patches with Quilt
Belize Solar Project
Menu Toggle
Guinea Grass RC School
Chapter 2.3-2.4 Discussion Questions
Chat App
Circular Linked List
Classic WTF Articles
Cloud Wifi Portal Notes
COMP 118.0x Introduction to Programming Fall 2025
Menu Toggle
Lab 2 – Student Grade Program
Midterm Kattis Contest 2025
Practice Contest
COMP 118.0x Introduction to Programming Fall 23
Menu Toggle
Baby Names C++
Classes revisited.
codingames onboarding
COMP 118 – Fun with candy bars
COMP 118 – Lab 2: Turtles
Final Exam Instructions and Hints
Lab 1 – Digital River
Lab 6 – Classes – Sentence Game
Lab 7 – The River C++
Midterm Kattis Contest
SCMP 118 – Lab 7: Payroll in C++
COMP 118.0x Introduction to Programming Fall 24
Menu Toggle
C++ Arrays vs. Vectors: A Short Tutorial
C++ pair Tutorial
C++ String To Lower Case
C++ Tutorial: Declaring and Writing Functions
C++ Vector erasing elements
C++ vector Tutorial
Christmas Toys
College Student Class Example
COMP 118 – Lab 4: President’s Word Game
Dictionaries
Employees Class Activity
Final Exam Instructions and Hints
Final Kattis Contest 2024
Mastering C++ STL Vectors
Overview of C++ STL std::map
Precedence and Associativity of Operator in Python
Python Class Activity: Building a Basic Book Class
SCMP 118 – Lab 5: President’s Inaugural Speeches Word Analysis
std::sort with std::pairs
stl::pair Example
Tutorial: Creating and Using Classes in C++
Tutorial: Creating and Using Functions in C++
Tutorial: Reading and Writing Files in C++
Tutorial: Using C++ STL map to Analyze Sentence Frequency
Tutorial: Using C++ Vectors to Track and Analyze Temperature Samples for a Month
COMP 118.0x Introduction to Programming Spring 2025
Menu Toggle
Comp 118 – Lab 3: Bouncing Balls (Sp 25)
COMP 118 – Lab 4: President’s Word Game
COMP 118 – Lab 5: President’s Inaugural Speeches Word Analysis
Emily Dickinson Activity with Dictionaries
Employees Class Activity-Useful Exercise for Lab 6
Lab 0 – Warm-Up: Candy Bars and Code
Lab 1 – Digital Rivers (Sp 25)
Lab 2 – Student Grade Program (Sp 25)
Lab 6 – Classes – Sentence Game
Lab 7 – Digital Rivers in C++
Lab 8: President’s Word Game C++
Some Info and Examples on Dictionaries
COMP 218.00 Data Structures Fall 2025
Menu Toggle
Getting started with Github Classrooms
GitHub Assignment
Install +g++”, “git”, and “make” on Windows 11
Installing Git on Windows 11
Lab 0 – Using the enviornment
Lab 1
Make & Makefiles
Pointer Class Activity
Practice Contest
COMP 318 Software Development 2026
COMP 318 Software Development S24
Menu Toggle
Blog – add keywords
Devise – for user login
Euclidean algorithm (GDC)
How to add bootstrap 5 to an existing Rails 7 app
HW 1 – Install VS Code on you system
HW JavaScript 2
HW: JavaScript 1
Install Rails, MarieDB and phpmyadmin
Install Ruby
Lab 1 – Ruby Mastermind
Lab 2 – JavaScript/HTML/Bootstrap
Lab 3
Lab 3 Team meeting
Prime List
Rails – Create a blog
Rails “Friends” app with bootstrap
Resume with Bootstrap
Ruby Classes and Inheritance
Ruby Homework 4
Ruby HW 1
Ruby HW 2
Ruby HW 3
VM IP address
Web Page
What Type of Triangle?
COMP 368 – Applied Algorithms
COMP 368.00 Applied Algorithms
COMP 401: Scientific Computing Seminar
Menu Toggle
COMP FACULTY RESEARCH DOMAINS
SQL for Sample Problem
COMP 401: Scientific Computing Seminar
COMP 401: Scientific Computing Seminar, 2025
Menu Toggle
Demo: Using VS Code with GitHub and GitHub Copilot to Write a C++ Program
Github Project Setup
Guide for Appropriateuse of AI in COMP 348
Instructions for Requesting a Virtual Machine (VM) for Your Capstone Project
Setting Up VS Code for Remote Development on an Ubuntu Linux Server with SSH Key Authentication
Setting up VS Code on macOS
Team-Based Classroom Activity: Designing a Washer & Dryer Tracking System Using ChatGPT, GitHub Copilot, and Git
Using Copilot to write code within VS Code
Using GitHub for Student Projects
Using GitHub for Student Projects on a Remote Ubuntu Server
COMP401 Proposal Presentations
Computer Science @ Kenyon College
Menu Toggle
ACM International Collegiate Programming Contest
Architecture Reasoning
Belize Solar Project (old)
Curriculum
Random Number Generation
Teaching Tools
Virtual Server Information
Cygwin Setup on Windows 11 (with Clang, Make, and Git)
Data Structures Midterm Exam Instructions
Doubly Linked List
eGPU notes
Final Presentation Ruberic
Fix for replit tests
Git example code
Graph shortest path (Dijkstra’s Algorithm)
Guide to install VS Code and set it up with GitHub Copilot:
How to Sign Up for GitHub
HW 1 – Learn Ruby Basics
HW 10 – Contact App on server
Install MariaDB and phpmyadmin
Lab 0
Lab 1 Teams
Lab 3 – Chat with SQL Database
Lab 3Grading Rubric
Lab 6 – Virtual Pet
Lab 9
Learn Ruby
Linked lists
Make Shakespeare Lookup Web Interface
MATH 368 Design &Analysis Algorithms
MATH 391 ST:Design & Analysis Algorithms
Midterm Study Guide
More Emily Dickinson
Node.js updated App
Notes on Pi Setup and operation
Open Source Cloud Managed WiFi Project
Menu Toggle
Development Environment and Notes
OpenWRT
Patching OpenWRT
Setting up an OpenWrt build environment
Steps to Install Python in a Virtual Environment
Password Quiz 18
Pretix Order Page example
Privacy Policy
Quiz 11
Random Numbers in C++
Research Project in WiFi Systems
Menu Toggle
Git branch from hostapd
Hostapd Patch process
Project Hardware
Setting up Linux Server
Using Linux
SCMP 118 – Introduction to Programming
SCMP 118 – Introduction to Programming in C++
SCMP 118.01 Introduction to Programming S21
Menu Toggle
Baby Names
Baby Names
Emily Dickinson Lists
Lab 0 – Fun with candy bars
Lab 8: President’s Word Game C++
Pair Programming Guidelines
POGIL Roles
POGIL Roles
SCMP 118 – Lab 3: Turtle Animation
SCMP 118.0X Introduction to Programming F20
Menu Toggle
Blackjack C++ Sample play
C++ Hangman Lose
C++ Hangman Win
Classes and object-oriented-programming
Classes, inheritance and object-oriented-programming
Emily Dickinson Activity 2
Emily Dickinson Experiment (Part 1)
Fun with candy bars
Hands On with Turtles
Loan Payoff
Poems by Emily Dickinson
POGIL Process Skills
POGIL Roles
SCMP 118 – Classes, inheritance and object-oriented-programming
SCMP 118 – Introduction to Programming in C++
SCMP 118 – Lab 1: Payroll
SCMP 118 – Lab 4: Hangman
Losing Game
SCMP 118 – Lab 5: Tic Tac Toe
SCMP 118 – Lab 6: Blackjack
SCMP 118 – Lab 8: Hangman in C++
SCMP 118 – Lab 9: Blackjack in C++
SCMP 118.0x Introduction to Programming Fall 22
SCMP 118.0x Introduction to Programming Fall21
SCMP 118.0x Introduction to Programming S21
Menu Toggle
Quality Indicators for POGIL Roles
Turtle Racing
SCMP 118.0x Introduction to Programming Spring 22
Menu Toggle
2022 Teams
SCMP 118 – Lab 2: Turtles
SCMP 118 – Lab 2: Turtles
SCMP 138.0X Introduction to Computer Science Fall 2019
SCMP 138.0X Introduction to Computer Science S20
SCMP 218.00 Data Structures
Menu Toggle
Types of Hash functions
Adjacency List in C++
Adjacency Matrix in C++
AVL Trees
Binary Search
Binary Search Tree
Binary Tree Representation
Binary Tree Traversal
Binary Trees
Breadth First Search for a Graph
Bubble Sort
Clone a binary tree
Depth First Search for a Graph
Expression Trees
Function Calls and the Call Stack
Greedy Algorithms
Handling Collisions in a Hash Table
Hash Functions – Intro
Hashing – Linear Probing with open addressing
Hashing Data Structure
Heap Sort
Insertion Sort
Introduction to Graphs
Lab 10
Lab 2
Lab 3
Lab 5
Lab 6
Lab 8
Lab 9
Linear Search
Merge Sort
Passing a Function as a Parameter in C++
Priority Queues
Queue Implementation in C++
Quick Sort
Representation of Graphs
Selection Sort
Selection Sort
Shell Sort
STL Containers
Template Activity
UML Exercises
UML Solutions
SCMP 218.00 Data Structures 2024
Menu Toggle
Account Class C++
Binary Search Trees
C++ Pointers
C++ Pointers
Case Study – Ordering tasks
Class Activity
Count web Page Words
Data Structures Kattis Final Exam Instructions
Data Structures Practice Midterm 2024
Deque
Function Growth Explanation
Greedy Algorithm Examples
Hashing Activity
Hashing Quote
Hero Task Manager
Huffman Coding Example
In-Class Activity: Visualizing Sorting Algorithms
Kruskal’s Algorithm
Lab 10
Lab 2 Teams
Lab 3: Furniture Part 2
Lab 4
Lab 7
Lab 9
Linked List Activities
Linux
Linux at Kenyon
Object Pointers With Inheritance
Peirce Simulation Activity
Pointer Examples
Prim’s Algorithm
Problem: Finding Unique Substrings
Queues
Sets
Sort Operation Summary
Sorting
Understanding B-Trees
Using Pointers with Objects in C++
SCMP 318 Software Development F21
Menu Toggle
Homework 12 – Updated Contact program
Lab 4 Gallery Project Teams
SCMP 318 Software Development S23
Menu Toggle
C++ MariaDB connector
Gallery Project
HW 11 – Art Project Ideas
HW 2 – Create GitHub account, create project
HW 4 – Setup a linux server
Lab 4 – Gallery Project Team Proposal
Lab 4 Complete
Lab 4 Final Presentation
Lab 4 Prototype
SCMP 318 – Console Demo Programs
SCMP 318 – Linux Command Line
Software Design Document
SSH Setup, remote editing and file transfer
SCMP 318.0X Software Development F20
Menu Toggle
Add Features to Node.js program
Code Review Instructions
Dictionary Activity
GIT Homework
GIT Homework
Losing Game
Ports for Node.js
Project 3 – Team Project
Project 3 Teams
SCMP 318 – Client-Server Name Program
SCMP 318 – Console Programs
SCMP 318 – HTML, CSS, and Bootstrap
SCMP 318 – Install MySQL
SCMP 318 – Javascript and the DOM Lab
SCMP 318 – Linux for Programming
SCMP 318 – Linux VM Setup
SCMP 318 – MySQL with phpMyAdmin Tutorial
SCMP 318 – Name Web Program on Server
SCMP 318 – Node.js
SCMP 318 – Project 1
SCMP 318 – Project 1 – Object Oriented Design
SCMP 318 – Project 1, Part 2
SCMP 318 – Project 1, Part 3
SCMP 318 – Project 3
SCMP 318 – XML Processing – a text game
SCMP 318 – XML Processing – a text game, Part 2
SCMP 318 – XML Processing – a text game, Part 3
SQL Based Phone Directory
SQL Based Phone Directory
SQL Based Phone Directory
SQL Homework
Winning Game
XML Processing – a text game
SCMP 318.0X Software Development F21
SCMP 348.00 Software and System Design S20
Menu Toggle
Relational Database Theory and Design
Software And System Design Project Teams
SCMP 348.00 Software and System Design S22
Menu Toggle
ACM Case Study Question
ACM Code of Ethics Discussion
Activity: Requirements Definition Using AI
Bookstore Normalization Solution
Building a Ruby on Rails Chat App with GitHub Copilot on Ubuntu 24.04
Ch 10:1-4 Dependability and security
CH 20 – System of Systems
Ch 24 – Quality Management
Ch 5.4-5.5 – Discussion Questions
Ch 6.1-4 Discussion Questions
Chaper 9 – Software Evolution
Chapter 2.1-2.2 Questions
Chapter 2.3-2.4 Discussion Questions
Chapter 3
Chapter 5-1 to 5-3 Discussion Questions
Complete Tutorial: Building a Chat App with Ruby on Rails and GitHub Copilot on Ubuntu 24.04
Complete Tutorial: Setting Up a Remote Development Environment for Python on Ubuntu 24.04
Continuous Integration and Continuous Deployment (CI/CD) Activity
Continuous Integration and Continuous Deployment (CI/CD):
Dabase Exercise Solution
Database Discussion
DB Exercise Solution
Discussion questions Chapter 4
Distributed Software Engineering
Effective People Management Activity
Exercise: Auto Repair DB Design
Final Presentation Outline
GIT Discussion Questions
Git Homework
Gund Gallery Project Statement
Install VS Code on MacOS and Windows
Linux remote SSH access from your laptop
Merged 3NF solution:
Presentation Schedule
Risk-Driven Model
Software Engineering History Video
Software Requirements Document
Spring 2022 Project List
SQL Based Phone Directory
System Design Document
System Proposal Development in-class activity
Tutorial: Building a Basic Ruby on Rails App for Managing Names and Phone Numbers
Tutorial: Building a Basic Ruby on Rails App for Managing Names and Phone Numbers
Understanding Functional Dependencies in Database Design
SCMP 348.00 Software and System Design Spring 2025
Menu Toggle
A Risk-Driven Model for Agile Software Architecture
ACM Case Studies Analysis
ACM Code Activity Overview
Activity: Managing a Software Project with GitHub Projects (Beta)
AI And Database Normalization
Analyzing Deceptive Design (Dark Patterns) in Technology
Analyzing Software Failures
Applying Software Quality Concepts
Applying Testing Concepts
Applying Testing Methodologies to Your Team Project
Architectural Patterns
Assignment: Project Risk Assessment
Belize School Computer Labs
Bubble for Seat Sponsorship
Bubble Seat chart
CICD Homework
Class Activity: Dependability for you Team Project
Code Refactoring and Translation with ChapGPT
Complete System Demo
Complete Tutorial: Setting Up a Remote Development Environment for C++ on Ubuntu 24.04
Computer tracking and repair solutions
Crow’s Foot ER Notation Using Mermaid
Database Dependacy Problem Solutions
Database Normalization
Discussion Questions answers
Efffective Software Team Projects
Exploring Software Reliability in the Real World
Final Persentation: Community-Engaged Project Software System
Freedom Center
Group meeting times
Installing and Setting Up MariaDB on Ubuntu Linux
Installing and Setting Up PostgreSQL on Ubuntu Linux
Instructions for Application Submission
Investigating UX Dark Patterns – Human and AI Perspectives
KISS: Keep it simple, stupid
Linux at Kenyon for COMP348
Lovable.dev deployment
Mastering GitHub Projects with a Toy Project
Mermaid ER Crowfoot relationships
Name a Seat ideas
Node.js example
Node.js with Mongo
Open Source IDE Code
Partner Presentations:
Project Proposal Guidelines
Quality Management in Agile Development
Rapid Development for Kenyon Software Teams
Relational Database Design using draw.io
Resolving git conflicts with VS Code
Risk Management Activity
Sample Quiz Question/Answers:
Seat Maps with Google Forms and Sheets
Team project Prototype Presentation & Demonstration
Testing Questions
The ACM Code of Ethics and Professional Conduct
The Daily WFT Assignment
The Evolution of Wi-Fi and Its Software Engineering Implications
Using Git and GitHub Effectively on a Team Software Project
Using Github Activity
Using Github Projects
Windows 10 Diagnose Chatbot
SCMP 391 – Lab 10
SCMP 391 – Lab 12
SCMP 391 – Lab 13
SCMP 391.00 Special Topic: Software Development
Menu Toggle
Lab 4 – Personal Statement
SCMP 401.01 – Scientific Computing Capstone Course – Syllabus – Spring, ‘19
Menu Toggle
Final 10 Minute Video
Section 1 Final Demos (Aydin)
Section 2 Final Demos (Skon)
SCMP 493.00 Computer Organization and Structure S21
Menu Toggle
SCMP 354 – Lab 3
SCMP 354 – Lab 4
SCMP 354 – Lab 5
SCMP 354 – Lab 6
SCMP 391 – Exam 1 Practice Exam
SCMP 391 – Exam 1 Practice Exam Solutions
SCMP 391 – Exam 1 Study Guide
SCMP 391 – Homework 1
SCMP 391 – Homework 10
SCMP 391 – Homework 11
SCMP 391 – Homework 12
SCMP 391 – Homework 13
SCMP 391 – Homework 14
SCMP 391 – Homework 2
SCMP 391 – Homework 3
SCMP 391 – Homework 4
SCMP 391 – Homework 5
SCMP 391 – Homework 6
SCMP 391 – Homework 7
SCMP 391 – Homework 8
SCMP 391 – Homework 9
SCMP 391 – Lab 1
SCMP 391 – Lab 11
SCMP 391 – Lab 2
SCMP 391 – Lab 7
SCMP 391 – Lab 8
SCMP 391 – Lab 9
SCMP318 Software Development
Menu Toggle
Lab 1 – Belize Solar Data Display
Lab 2 Chat Additional Features
Set up logins for Linux server
Setting Up an SSH Key on Your Laptop for GitHub Access
Setting up hostapd for our patches
Setting Up VS Code to Compile and Run C++ (Mac)
Setting Up VS Code with Cygwin for C++ on Windows 11
Setup for C++ on Windows 11 + VS Code
Setup GitHub
SQL Course
SSH on Mac
Stacks
Summer Science Scholars Project Kickoff (May 12–15)
Summer Science Scholars Research Project: Creating an ITS for POGIL activities.
Virtual Functions C++
VS Code Remote Development on the Linux Server
Wifi Project Course Final Presentation Ruberic
Will AI eliminate jobs in computing?
Word Find Game
Precedence and Associativity of Operator in Python
Scroll to Top