For my Middle Years Program Personal Project, I decided to create a chess program using Java. It is a fairly simple program that just allows player vs. player interaction using Java Swing.
I started coding this project in April 2015, and finished it in October of that same year. It was a grueling process because I only had a month or so of coding experience under my belt when I started the project. The most complex thing that I had built previously was a textual Yahtzee simulator (where all of ~1000 lines of code were written the main method, yikes…).
The final product that showcased ended up consisting of roughly 34,000 lines of code. There was a lot of copy-and-pasting that I did, which make it so large. Looking back, I feel that I definitely could have done a much better job in perhaps 8,000 lines or less.
It is also worth mentioning that due to the nature of how I coded the program, I was never able to make it bug-less. Thus, while most of the gameplay works, it is seemingly impossible to checkmate another player (pretty much the most important part). I haven’t had to the stomach to delve back into the labyrinth and fix the bugs so it is still not completely functional.
At the time that this project was done, I was not even aware of the concept of source control, so I do not have a repository for the code. However, it is not much of a loss as the code is pretty terrible. The main reason I have included this project on my website to just show one of my early works.
Here is a screenshot of the UI: