Tuesday, May 12, 2009

Always room for Improvements and New Lessons

The journey of the Devcathlon Team, the ICS 414 class, has come to an end. Through out the entire semester, the team has been working on a project called the Devcathlon Developer Game. The Devcathlon Game is a game, for developers, based on the sensors used in Hackystat. We have built this game project from the ground up; from researching on what makes a good game, to implementing a working version for all to play. All our research and hard work has finally paid off.


A New Set of Eyes

After finalizing a beta version of the game our professor, Professor Johnson, uploaded it onto a working server for further testing. Having the game run on the server for a few days; I asked my co-workers, Joy Nishida and Bret Ikehara. Both co-workers work at Star Degree as web designers, so they’re input would be good for the game project. Following they’re viewing of the game and me explaining the purpose of the game, they gave me some really good input. Here is a list of things they thought might help improve the game and what I caught what might not be working properly:


  • On the match panel for creating a match and managing a match, it would help if the name of the matches where bold or in a different color text.

  • The match panel in Creating a Match and Match Managing section displays all matches; using pagination to minimize the size of the list, so the user does not have to scroll up and down the screen.

  • It seems that the most developer points section in the Hall of Fame is not working properly.

  • The most team wins section in the Hall of Fame is not working properly; it is displaying all the teams in a match and showing every match in the game.

  • The events in creating and managing a match have not descriptions for them.

  • The match panel in the Manage section should display only matches that the team the user is owner of, is participating in.

  • The win to lose is recording a match where both teams have negative score as loses, but should record the team with the least negative score as a win.

  • When being invited to participate in a match, it would help when the user logs in to notify that user there is an invite for a match; such as how the team invite works.



After reviewing what my co-workers had to say about the game and from what I noticed in the version running on the server; that there is still much more room for improvement. Some of the problems were solved easily, such as making match names stand out; but the other problems, with such so little time left, seemed to far to be fixed. It’s a good thing that this is an open source project, so that other programmer can maybe improve the game or implement the fixes I mentioned earlier.


Obtaining New Knowledge

Working on this project, first as a team leader then later as the project leader, has been a very good experience. Not only did I get to better understanding on how Java works, but also gained good programming habits. Programming habits such as; starting early, meeting dead lines, committing to the project repository often, and keeping testing of the code high. Also from independent researching, I learned how a web page combined with Cascading Style Sheets (CSS) and Java Script can be used to make a web page display and do really cool things.

Aside from learning good programming habits, and understand or learning new computer languages. I also obtained the knowledge to becoming a good leader and colleague. As a leader, I had to lead by example and also guide to the team to success. Its not as easy as it sounds, not every team gets a long easily. The team had its share of problems, from not communicating well to having a big ego. I as a leader had to resolve such issues and provided long term solutions so that the problem would not occur again.

Being a leader has its set back, for me it was the amount of stress it gave me. Some members would not start working on a task till last minute or would not complete a task at all, which made me nervous at times. I would pick up their slack and try to start on the task for them or finish it. Also with the stress accumulating, I would at times lose my nerve and say things to members that might offend them.


Conclusion
This whole experience, of working on the project, has been very good. I got to work with many different types of personalities, each member unique in their way, that it has prepared me for what to come in the future. It has also enlightened my comprehension of programming languages and programming habits. There are many things that I have experienced; but the main one, that seems to be priceless, is being a good leader.

No comments: