Overview: What is this blog about?
As the end of the first trimester of CSA gets closer and closer, it’s a good practice to sit down and reflect on all that has happened in the past three months or so. While I was already going into CSA with some experience in Java, I learned a lot of valuable skills when it came to coding and other applications, which is why I feel that this blog will be a great way of reflecting on what I have learned and done well in and what I need to improve on for the future. I hope that anyone who happens to stop by this blog will find it very insightful and be inspired to also think more about the work they have done.
Reflection/Takeaways from Trimester 1
As stated previously, AP CSA is a computer science class in Java, which is different from the Python-dominant computer science class AP Computer Science Principles. Even though I knew to some extent how to code in Java before I began taking AP CSA, I learned a lot about Java platforms such as Spring and other applications of Java that has further expanded my knowledge on such fascinating topics. I feel like this class, especially from the lessons and the hacks that Mr. Mortensen provided, allowed me to get creative with my code and really show what I am here to do in CSA. For example, in one of the weeks of the trimester (I believe week 3 or 4), Mr. Mortensen’s hacks motivated me to create something that was not included in the requirements, and I ended up choosing a calculator. Nowadays, calculators are used very frequently in applications beyond math classes, and people are beginning to transition from an actual calculator to many of the online ones that are becoming more and more prevalent. This was why I decided to write the code for a calculator (specifically four function), as with the right UI and other components implemented into its creation, it could definitely be a useful application for engineers or even businessmen. Another thing that I enjoyed about AP CSA was the opportunity to teach one of the topics that we needed to know for the exam (for us it was Unit 3: Boolean and If Statements), as that allowed us to take a topic that our group knew well and turn it into a lesson that was engaging and somewhat challenging (but in a really fun way). It also allowed us to talk about some of the other applications of booleans (i.e. electrical stuff) beyond the scope of College Board, although it is possible that we could have stayed more within the boundaries of what College Board wanted as suggested by Mr. Mortensen. Nevertheless, teaching a unit was still a good experience and will definitely help me to improve myself and anyone in my group for the future trimesters so that we can create better lessons for students in our class to learn and take away from. As I said earlier, I had some experience in Java going into the class, but there were definitely a couple of things that I could have done better on and hope to carry over those improvements for the next trimester. For example, with the Spring Backend, one issue I had was that I would end up cloning a version of the repository that was a bit behind, with the most recent version having commits that were to help the Spring Portfolio function properly. As a result, I got very confused whenever the Spring would not work and give me several syntax errors all at once, causing me to become very frustrated before finally realizing what I missed. The next time we have to do a project that has Spring, I will make sure that I am careful in what version of the repository I am using, as that will ensure that I am using the most up to date version of the repository that is properly functioning. Overall, AP CSA was a really fun balance between enjoying coding up some hacks and having friends in your scrum team and running into several challenges along the way, and with trimesters 2 and 3 ahead of us now, I hope that my experiences from trimester 1 will inspire me to continue to expand my knowledge of computer science and help me decide what I will ultimately want to do for the future.
Extra Credit
System.out.println("Code, Code, Code!);
Code, Code, Code!