Iteration 1

| No Comments

      Iteration 1 was quite painful to do - not because it was impossible but because I was juggling this project with another one. Furthermore, I have never used C++ until this class and I haven't been using Java extensively these days so I had to relearn a few things about object-oriented programming. When I was in the midst of implementing, I was having compilation errors because it was not written in the correct part of the class so it was a bit frustrating before I realized my error. However, the most problematic part of the project for my group was the regular expressions. Some of the earlier regular expressions I've written would sometimes match unexpected strings and the problem was mostly due to failure to escape characters that needed to be escaped and faulty logic. After fixing the regular expressions, the scan method was able to pass all the cases already in scanner_tests.h and the ones that were newly written. So, regular expressions and my need for a refresher in object-oriented programming were the biggest challenges of Iteration 1. On the other hand, what went fairly smoothly with Iteration 1 was the planning. I already had an idea about how to go about the construction of the Scanner class; it was issues in the actual implementation that was the most troublesome.
      One of the things I've learned from Iteration 1 is the importance of starting early. I started only a few days before the deadline which was crazy and a very bad idea. However, it's not that I was procrastinating but that I was focusing too much on another project that I ended up sort of neglecting this class, which I have learned not to repeat. Furthermore, I think it's also important to have a partner who has high levels of initiative. It's quite difficult to have to tell people what to do for the project and when to do it. Only until I started the project (which was already very late) did my partner likewise work on the project. Ironically, I still somehow ended up writing almost everything. The strongest incentive for my partner to do work was the prospect of not having a high enough percentage on SVN blame. It was quite unfortunate to note that the fixation on SVN blame's results outweighed the desire to actually produce code that worked. However, since I wrote most of the code, the bugs are also mostly mine. It was a nightmare debugging but it was a satisfying feeling when I successfully fixed the errors.
      For Iteration 2, as sad as it sounds, I plan on working on it through Spring Break. Iteration 1 has firmly instilled in me the importance of starting early. I have just finished fixing the behavior of the scan method so hopefully code related to Iteration 1 will not be a source of much problems with Iteration 2. I will also try to communicate better with my partner to better divide our work. Iteration 1 has taught me the importance of enforcing collaboration in a group. Projects in my lowers years were manageable even when I worked alone but when multiple classes are doling out relatively large projects with almost simultaneous deadlines, working individually is just not realistic. Not only does disparate collaboration take a toll on one's health due to the inevitable deprivation of sleep but it may leave one unable to acquire invaluable experience that will be useful to furthering one's career.

Recent Entries

Find recent content on the main index or look in the archives to find all content.