Iteration one is the first time I was able to wet my feet in creating a (computer) language translator. This project was made with the aid of SVN and the repository system associated with it, which was another new experience for me as of this semester. Development was a process which was difficult at time (and rightly should have been! It is a class after all), but I think through that process, I was able to better understand all the tools I was using, and now feel much more comfortable going into subsequent assignments.
Allow me to elaborate. To begin, there were many things which were very straightforward for me in this lab, things which worked well. I coded all of the regular expressions and their lexemes, simply because I had experience with regular expressions, even before this class. My partner then created some of the supporting functions, using the regular expressions I created. It was very smooth working with my partner, we divided up the work without any bickering. This in contrast to some other labs in other classes I have done... But we'll just leave that for another blog.
You may be thinking everything went just peachy for our group, however we had difficulties as well. The primary being the issue of procrastination, something I personally cannot seem to overcome, and my partner neither. (yes that is correct grammar) We ended up finishing the lab just in the nick of time, which is fine because we got everything done. However it worries me slightly that this may not always be the case. There's always the concern of underestimating the time needed to finish something. This is fine if you're doing the work days before it's due, however not minutes. If we had taken more time to complete our coding than we had intended, and alloted, we would have suffered in our grades.
This is something that I hope to change in our future iterations, however like most things, this is easier said than done. Our process I think would go much more smoothly if we procrastinate less in the future. That is my goal anyway, but sometimes stuff gets in the way, and I end up pushing my goals aside until the last minute. (See what I did there?)
Another thing I want to touch on is the use of SVN in our project. At first it seemed like a hassle, because we would always work on the code physically together. It always seemed a nuisance for us to commit our code before the other could look at it. I think the moment when we both realized the utility of this system was when we were running out of time to finish the lab. We still had to finish the coding, but also create and write the readme file. In a moment of sheer brilliance, we decided to work on both separately, then commit both to the repository when finished. Because the length of this blog is already quite large, I will spare you the details of this extraordinary adventure, and suffice to say we finished the work on time, with both of our files in the repository safe and sound when we turned it in. (wow!)
As for the next lab, our goals are to procrastinate less, and to see if we can use SVN more to our advantage. We have some crazy ideas on how to do this too. The next iteration should go quite smoothly learning what we did from the first iteration. One thing that still will be rather difficult is modifying our code to work with that which was given to use for the parser. Other than that I see smooth sailing ahead for us. Erm, Coding.