For me and my partner, at first we got off to a pretty rough start. Our first step was to just sit down together, make sure we both understand exactly what the goal of this iteration is, and design an overall idea on how our scanner will work. However, we thought instead of heavily referencing WordCount.cpp, we were supposed to come up with our own independent idea. After a decent amount of brainstorming we had a plan for the different steps the program would go through, and called it a day.
The next day we met up to start the actual coding, and pretty soon we both realized we had nearly no idea how to write in C++. Between not knowing a lot of the exact syntax, how classes interact between each other, or pointer syntax, we got absolutely nowhere. In our time together we quickly abandoned any hope of progressing on our scanner and more hoped to just get an understanding of C++. Neither of us having done any coding in eight months, thanks to 2021 involving none, hurt our ability here too. Eventually we parted with little more understood about the language, and much less actually written. The only test we could get to pass was one which creates a new scanner object.
So, we decided to independently study C++ and tinker with it for the rest of the day, and the next day I'd go into office hours (he was busy then). After working with it myself a few things started to sink in, but not much. Finally at office hours, everything clicked. Some things I thought I understood but wasn't completely positive about were confirmed to be right, and other things I was oblivious to were picked up. The most critical things though were realizing that WordCount.cpp needs to be heavily borrowed from, and understanding pointer syntax.
With all that under me, I immediately scrapped our terribly over complicated plan and knew how it had to be done. I explained it all to my partner, and it made sense to him too. From there on everything went incredibly smoothly, and I think we had a great final product.
Looking back, the largest problem was just the simple misunderstanding of what was expected out of us. Inventing a scanner algorithm completely on our own immediately seemed like a huge challenge, and soon after that seemed impossible in the time constraints. Now that we have an understanding on the acceptability or heavily referencing provided examples, we hope the rest of the iterations go as smoothly as the second part of this one did.
One thing that did work well was being in a pair. With only two people, it was immensely easy to stay organized and up to date. We were always aware of what each other was thinking, and kept in constant contact. Working side by side when possible provided a great chance to bounce ideas off each other. When working alone it was because the other person was busy, and in those cases we'd always discuss what had to be done before any solo work was started, and talk again to have a mutual understanding on what was changed. Lastly, on our final night, we each worked at home but kept open Skype for voice chat the whole time. This way we easily divided up what needed to be done, and thanks to subversion it was no trouble constantly seeing each other's work. The one thing we will absolutely be sure to maintain for future iterations is how closely together we worked.