Junior Year

AP Computer Science - Java

  • Studied in depth the topics required for the Advanced Placement “A” Test in Computer Science.

  • Learned programming methodology, features of programming languages, data types and structures, searching and sorting algorithms, applications of computing, computer systems, and social implications regarding the use of computers.

  • Learned how to write and understand Java programs in-depth with a deep understanding of many of the complex ideas within Computer Science.


The first project I made in Java was a text based Blackjack game. You have the ability to bet and play blackjack as one normally would.

Brute Force Graphing

The second project I made in Java was a text based graphing tool using brute force methods and loops.


My first time using Git and Github was on this project. It's a card game called 'Set'. Me and my partner created the game using a text based format in the console. This project used recursion, stacks, queues, and Arraylists.

Monty Hall

This was a smaller project that calculated how effective the Monty Hall solution is. I ran 100,000 tests and recorded the results. I then calculated the win rate for either keeping the original choice and switching the choice. The results were very clear, showing that switching your choice is more effective, probability wise.


Using recursion and various other concepts, I created this fractal visualizer. You can zoom in, anywhere on the picture, and see the endless fractals.


This project involved recursion and use of libraries. The image manager could manipulate images however you want, such as inverting, flipping, lens effect, and the 'difference' effect is shown here.


This program used a massive database containing the most popular baby names since 1910. I then used the database to graph the popularity of each name in each year, allowing one to analyze which names were popular at which times in the last century.


This project utilized lots of recursion in order to build a randomized maze. The program could also solve the maze for you, showing the tested paths in blue and the final path in red.


This was the final project of the year, a program that visualizes the various sorting algorithms in Computer Science. It generated an array of the given size, of random numbers from 1-n. You can select which sorting method to use, and running the program will show you how the information is sorted while showing the differences and effectiveness of each algorithm.