It has been a very good learning experience for me to work with Mercurial team so far.
What I learned:
To be honest, I had no experience in python coding or Mercurial at the beginning of the semester. I was terrified that I had no idea how to start my worm-up project tagmerge extension at the code sprint. Thankfully, Benjamin was really patient with me and guided me where to start off. After couple of weeks working on tagmerge, I become comfortable with python and familiar with some mercurial libraries.
Same as many other members on the team, this is also my first experience working on an open-source project. In my co-op experience, I usually only discuss issues with my supervisor or co-workers. Issues are only discovered during the QA process. When doing development in Mercurial, we have to handle both development and do our best to cover all the test cases. It is very important to discuss issues we encountered through mailing list or IRC instead of just with only supervisor or co-workers, because other developers may identify scenarios I missed or give me ideas on how to implement some features. All these suggestions are very helpful for my work and my own development.
**What I work on:
We each started with a warm-up project to get familiar with Mercurial. I worked on tagmerge extension to merge hg tags. I successfully finished the development and testing and announced it a few weeks ago. However, I still need to work on some improvement before get it published.
The team is currently focused on bfiles extension now. Three of us from UW are working on integration of some bfiles commands. As everyone else mentioned, we are a bit slow due to the midterm period. I had my part of design set, and hopefully, will finish the draft by this week.
Overall, I think I’m doing good so far. I’ve learned a lot from my projects, keeped up with weekly reports, meetings and tried to join discussions on mailing lists. However, I always started real working from Monday, which leaves me less time to get reviews of my code before the Thursday meeting. For the rest of the semester, I will improve my time management and try to contribute more of my work to Mercurial. I’m excited about the challenges ahead.