Skip to content

Latest commit

 

History

History
104 lines (90 loc) · 4.66 KB

README.md

File metadata and controls

104 lines (90 loc) · 4.66 KB

Programming Coursework (HW)

Programming I (Fall 2018)

Language: Python 3 | All GUI based work requires John Zelle's graphics.py along with Tkinter

  • Thanksgiving Card
    • Graphical Thanksgiving card
  • Vigenere Chipher
    • GUI for encoding plaintext with the vigenere chipher
  • Tic Tac Toe
    • Graphical two player tic tac toe game
  • Bumper Cars
    • Graphical simulation
  • Hangman
    • Graphical hangman game
  • Guesses
    • Graphical guessing game

Programming II (Spring 2019)

Language: Java

  • Dice Simulation
    • Command line dice simulation and analysis
  • Enigma Machine
    • Command line enigma machine implementation
  • Word Ladder
    • Command line tool for finding "word ladders" between two english words

Intro to Computer Organization and Assembly (Fall 2019)

Languages: C and MIPS32 Assembly | Not Uploaded

  • Compiling and Decompiling
    • Converting C to MIPS and vice versa
  • Assembling and Disassembling
    • Convering MIPS to machine code and vice versa

Data Structures and Algorithms (Fall 2019)

Language: Java

  • List Abstract Data Type (ADT) Implementation
    • Implementation of an ordered singly linked list that uses arrays as a base data structure
  • List ADT Personalization and Algorithmic Analysis
    • Further improvment upon the previous assignment with the additon of a palindrome detector/remover
    • Performed algorithmic analysis to determine the theoretical and actual time complexities of methods
  • Generic and Ordered Doubly Linked List
    • Implementation of a generic and ordered doubly linked list
  • Deque and Binary Search Tree Implementations
    • Implementation of a generic deque structure with push, pop, inject, and eject methods
    • Implementation of a level-order traversal and a method to count nodes that have one child for a binary search tree
  • Ternary MinHeap and Heap Traversals
    • Implementation of an array based ternary minheap and breadth first and depth first traversals
  • Hash Tables and Analysis
    • Implementation of a hash table and three probing functions (Linear, Quadratic, and Pseudo-random) that were analyzed and compared

Operating Systems I (Spring 2020)

Languages: C, Go, and Python 3 | Projects in OperatingSystems repository.

  • Linux Process Tree
    • Command line tool that reads information form the /proc filesystem and displays a process tree
  • Linux Paging Simulator
    • Command line tool that simulates page based memory management on a round robin scheduler
  • MultiServerQueue
    • Single producer/multiple consumer queue implementation

Computer and Network Security (Spring 2020)

Languages: C++ and Python 3 | Projects in seperate repositories.

  • Passwords and Cryptography (PasswordCracker-345)
    • Multiprocessed password cracker that generates guesses using various rules

Database Concepts (Fall 2020)

Language: SQL | Not Uploaded

  • Relational Algebra
  • Tuple Calculus
  • SQL Queries

Advanced Algorithms (Fall 2020)

Language: Java

  • Graph ADT
    • Implementation of a Graph ADT using an adjacency matrix
    • Implementatin of Kosaraju's algorithm for computing strongly connected components

Software Engineering (Fall 2020)

Languages: Python 3, PHP, Bash

Programming Language Concepts (Spring 2021)

Languages: Scheme, SML, Prolog, C Topics included imperitive and declarative programming, language theory, as well as programming language translation.

Digital Logic and Computer Organization (Spring 2021)

Topics included boolean logic, sequential circuits, and CPU architecture.

Software Engineering Practicum (Spring 2021)

Contributions to the Zulip project.

Data Mining (Spring 2022)

Language: Python (Pandas, scikit-learn) Topics included a variety of supervised and unsupervised learning techniques such as artificial neural networks, decision trees, nearest neighbor classifiers, k-means clustering, support vector machines, etc.

Mobile Application Development (Spring 2022)

Language: Java Android development topics included application lifecycles, persistent data solutions, cloud platform integrations, etc.

  • Odin (Private)
    • Android app which implements cross platform search over services including GitHub and GitLab