Posts

Showing posts from November, 2025

week 13/100 - CST338 week 5 Markov

I worked with Anthony M and Christopher B on the code review. I followed my typical strategy for project development. After reading the full documentation on the assignment, I began by writing out all the class and method stubs to match the specified UML. After that, I worked through the business logic of the assignment method by method, testing as I went. I follow method calls as I go and fill them in to get tests to pass/fail as soon as I can so I can effectively debug as I develop. I did not plan it out on paper. The existing specification and UML was sufficient for me. My classmates used varying strategies. Chris did work things out on paper to better understand how markov chaining works. Anthony did all the stubs first like I did, but Chris went class by class and did all the debugging at the end. We all hit the linter! I think my strategy worked well. It's good to sketch out the higher level abstract logic flow before implementing each method. This is a pattern that scales we...

CST338 Project 1 review

  Project 1 Review: Legally Distinct Pocket Monster I worked with Anthony Martinez and Christopher Buenrostro .  My strategy for solving the assignment: I first read the assignment all the way through, and setup stubs for all methods that are needed. This way code will compile even if it's not passing tests. Then I write the code as I follow the logic of the methods. then I iterate and check the test cases until everything is complete. Their Strategy: They also read everything first but took a class-by-class approach. As a result, they couldn’t test until everything was done. They thought this deferred bugfixing until the end instead of as they went, and this might have made things more difficult than if they had done otherwise. I would not change my approach unless I also have to write tests too. the order of adding tests first or later depends on how well the projct is specified in advance. How well did I follow the style guide? No major issues, except for some missing @Ove...

week 10/100

  This week we learned about IntelliJ setup (after the syllabus of course). Setting up the ignorefile plugin was great. Setting up java classes and tests was really easy in this IDE. I have not used IntelliJ in many years. The autogeneration of getters, setters, and tests is great. Some git commands we used: * git add * git status * git commit * git branch * git checkout * git merge * git blame * git log One of the big challenges was the build environment vs. gitlab runners. I wanted all the automated testing to pass and the build env was different. Learning how to upgrade gradle and its dependencies was a good exercise, even if it was unplanned work. This is truly indicative of real world software development; infrastructure is never quite as documented because things change very fast.

week 9/100

  Discuss the process of solving the Coding Bat challenges.  A major part of software design is thinking about how to approach a problem with the tools we have at our disposal.  What were the steps you took to solve some of these challenges?  Did you plan it out or throw code at it?  What worked? What DID NOT work? How many tries did it take?  Most of the puzzles were straightforward, and a good way to re-familiarize myself with java. For most of them I had a clear plan to solve and it was remembering/re-learning the syntax. I did not like the interface very much because it involved a lot of clicking and there were no vim bindings, but otherwise it went swimmingly. I would have done more if the interface were a bit more friendly.