CS50 Final Project
I've really enjoyed taking HarvardX's CS50's Introduction to Computer Science course via edX. This course has been both fun and challenging, as I've completed every required and optional assignment, including Tideman.
For my final CS50 project, I decided to update my personal website from a static page to a web application, using a Model–View–Controller (MVC) design pattern/architecture. Further, I added a tic-tac-toe game where the user can choose to play against a variety of computer artificial intelligence (AI) models. There is also an option for a user to "train" an AI model by having the computer play a number of simulated games. This has allowed me to tie together most of what I've learned throughout the CS50 course.
My MVC architecture is comprised of the following technologies, with the production version of my website running as an App Service on Microsoft Azure.
Model | View | Controller |
Azure Cosmos DB | HTML | Python |
CSS | Flask | |
Bootstrap | Jinja | |
JavaScript |