Iteration 1 is the first program that I co-work with other people. It makes me feel very excited when program start working, though still buggy. At the beginning of the part, we are discuss about what part should we division of work, cause I think I have a strong sense in logic, I pick up to finish the rule of token part. But it have a problem, how to let my partner to use my code? And also thinking about the variable names, I need to use some names that easy to understand. I think this is a good chance to practice and habit that using the good variable names. I also use lots of line comment, because I need to make my partner understand what I'm doing. I don't like to write comment in the past, I thought writing comment is waste time and no one will notice, but through this project, I notice that comment is really important, not only let my partner know what I'm doing, but also can use comment to leave some hint or idea for myself, make next time work more easy to start.
As time going, I finished some rule of token, that can match token and return value back to main program, but there's another problem pop out. Though I finish my part of work, and it can successfully compiler, but I don't know my code is good or not. Output part is not my business, so I can only wait my partner writing code then I can test. This problem isn't show up in single-programming, and I think that if we are co-working, we need to design a schedule, to define that when should we finish which part, so we can make sure that we can do a little, then test a little, go more safe way in writing program. Though I have this good idea, we still have no schedule until finished iteration 1. Because we are not used in follow the schedule, so when we start coding, we want to finish all at once. Though I think this is a very high efficient way to program, we finally got a very buggy code, and we have no idea what's wrong in which part of our code. We finally find all bugs and fixed, but I still feel so painful. So I guess next time, in iteration 2, try to follow the schedule, it might let group work become much better.
Though we meet lots of problem in iteration 1, I still feel good in some part, such as I have some problem that I have no idea to solve, I can just leave the problem, using some block comments let my partner know the problem, and partner can help me to fix that part. I used to programming by myself, so if I meet some problem I can only solve by myself. In iteration 1, I was meet some problem that matching some token, I can just leave the problem and commit, and my partner will fixed it, same thing happened on my partner. And we also can check each code have bug or not, it make us code from a buggy code to a good code. I also learn how to program with other people, and I think co-work is a way train myself learn how to plan my time. If I don't finish my part, my partner has no source to use. I think through iteration 2, 3, and 4, and so on, not only my programming skill can be stronger, but also I will good at programming with other people.
Iteration 1 is already gone, and iteration 2 is coming, this time I'll try to schedule and follow it, guess we will have good performance in iteration 2.