Last year, I needed to do a project for my AP Java class, and I knew that my mother's business, Ellis Wyatt, currently had an inefficient and manual system of generating quotes for clients. After discussion with the relevant salespeople, I developed a specification for a quote generation application which would be very helpful to the business.
The above is a video demonstrating the functionality of the first version of the app. In it, there are three screens: the main screen, which contains two buttons, New Quote and Show Quotes; the Create New Quote screen, which lets the user input quote information including job site details, client details, and pricing; and the Show Existing Quotes screen, which shows all existing quotes organized in descending order by quote number.
(Please excuse my desktop background. I'm a logic nerd.)
I learned Java in two primary ways. My general introduction to the language came from courses taken at CCAC and online through Edhesive. After these courses, I took the AP Java, for which I had to create an application. In order to create the app I eventually did, I had to learn a lot about GUI-related classes, which my coursework hadn't even touched on. As such, I did a lot of independent self-study on those topics. This was my second method of learning Java, and it became my primary one after I finished learning the basics.