Difference between revisions of "User:Rohita"

From The Battle for Wesnoth Wiki
(Removing all content from page)
 
Line 1: Line 1:
1)Basics
 
  
    I am Rohita Hemachandra, a 3rd year undergraduate student from university of Moratuwa,
 
Sri Lanka, studying for a BSc in Information technology. I was interested in participating for
 
Google Summer of Code 2009 because I would be able to contribute to an open source project in my
 
free time and get an experience on how collaborative software projects are been developed. I was a
 
keen follower of Google Summer of Code and this is my third time in applying for the program. 
 
 
  Email: rohita85@gmail.com
 
  Freenode nick: Rohita
 
  Wesnoth forum ID: rohita85
 
 
2)Experience
 
 
    I have had an internship at WSO2 Inc [1], an open source SOA middle ware provider for 6months.
 
I mainly contributed to WSO2 Mashup [2], a javascript web service engine. I worked in a project to
 
implement gadget a server to WSO2 Mashup. Also I worked in WSO2 ESB [3], an open source Enterprise
 
Service Bus (ESB). I implemented an Ajax based monitor to monitor and debug SOAP messages gone
 
through the WSO2 ESB server.
 
 
        I have worked with GTS [4], a software solution provider as a mobile application developer.
 
I contributed mainly to Aba Hatana, a java mobile game developed as the official mobile game of the
 
  popular Sri Lanka film ABA [5]. I also developed a free SMS sending mobile application for
 
  Sri Lanka [6]. 
 
 
      This is the third time I am applying for Google Summer of Code. On the previous two occasions I
 
  could not get selected to the program. The competition in the mentoring organizations I applied was
 
  tough but on the process I had many valuable experiences about the program.
 
 
      I am a big fan of strategy based games since my childhood. The first to get on my attention
 
  was  Age of Empires 2 and I found myself playing it many hours a day until I finished it
 
  successfully. Then on I moved onto more strategy games such as Command and Conquer Red Alert,
 
  Command and Conquer Generals, and Rome.
 
 
      I am new to the game Battle for Wesnoth. What I found interesting in the game is the open 
 
  environment where we can also get involved in the development process rather than only on playing.
 
  I am playing Battle for Wesnoth these days in the single player mode.
 
 
3) My mother tongue is Sinhala and also I am fluent in speaking and writing in English. In my
 
  internship at WSO2 I got experience on how to work in a collaborative environment. I   
 
  communicated  often with the community to get their feedbacks and requirements. I take advices as
 
  an encouragement and consider giving clear advices as necessary when the need arises. I believe
 
  that criticism can be either useful or useless, and try to get encouraged by the positive ones
 
  while ignoring what I consider the negative ones.
 
 
4) I chose, Implement campaign statistics reports on stats.wesnoth.org as the project to
 
  participate in Summer of Code. I chose Battle of Wesnoth as the possible mentoring organization
 
  because I am very interested in strategy based games and idea of an open source strategy game was
 
  very interesting to me. I chose this specific project as I have many experiences on charting and
 
  reporting projects. I have previous experiences on Eclipse Bert [7], Jasper  , Google chart API
 
  and on MySql. I felt like this is the perfect project idea for me to participate in this year’s
 
  Summer of Code program.
 
 
        I will be using Google chart API and Open Flash Chart [8] as the main charting components. 
 
  Both of them are very good charting components that facilitate in creating dynamic and interactive
 
  charts and reports. I will be using php to query the stat database of Wesnoth and access and
 
  call charting components.
 
 
      Once the project is successfully completed rather than just been a statistics viewer the
 
    project should aid campaign designers in decision making. A campaign decider should b able to
 
    decide whether or not a campaign is successful, what are most successful scenarios in a campaign,
 
    what the scenarios that prevent a player from progressing, what are the scenarios that players
 
    tend to play over and over, what are the most effective units and special units in a given
 
    scenario, whether the popularity of campaign is on the rise or declining, etc.
 
 
      After the project is completed successfully I hope to provide the following charts and reports
 
    to campaign designers.
 
 
    1) Users vs Campaigns graphs. For a selected duration, users would be displayed against
 
        selected  campaigns in a line graph.
 
    2) Reports on the number of players who played campaigns and the success rates. A bar graph
 
        would be provided with number defeats, victories and total games for each campaign.
 
    3) The user participation in a given campaign over time. A Line graph depicting the how the
 
        player participation is changing over time for a given campaign.
 
    4) Graph showing the number of victories and defeats in a campaign over time.
 
    5) Number of victories and defeats in scenarios in a given campaign.
 
    6) One particular user’s use of units and special units in a scenario and the result and the
 
        time duration.User would be able decide what is the best combination of units and special
 
        units for given scenario.
 
    7) User successfulness of a given campaign.The campaign designer would able to decide the
 
        success rates of users, whether new users are finding it easily to succeed and whether
 
        experienced users succeed more than new users.
 
    8) Campaign rating system. I would be introducing an algorithm to decide the best campaigns.
 
        Statistics on success rates, adaptability of new users, number of users who play again and
 
        again and the number of participants would be used in the algorithm. More ideas on this would
 
        be collected from the Battle of Wesnoth community. The algorithm would be clearly stated in
 
        the reports.
 
    9) An option would be provided to the user to select the associating difficulty level of
 
      statistics. User would be able to select overall, easy, normal or difficult and view graphs
 
      and reports with statistics of the selected difficulty level.
 
 
    I am hoping to get valuable experience oh how collaborative open source projects work and what 
 
programming techniques are used in strategy games by contributing to this project. I would also like
 
to keep contributing to the reporting and statistics components in Battle for Wesnoth project and be
 
a part of the development team.
 
 
  Project Schedule
 
 
Community bonding period – Get ideas from campaign creators and wesnoth community. Studying wesnoth
 
statistics database. Studying more advanced features of charting and reporting technologies.
 
 
  The GSOC program spans 12 weeks, so I intend to utilize it as follows (milestone reached at the end
 
  of week):
 
 
  Week 1: Designing the application. The charts and reports would be designed. The operations allowed
 
          for users would be decided and the navigation of the application would be designed.
 
 
  Week 2: Designing and creating the UI.
 
 
  Week 6: Implementing real application. The charts, reports and the navigation of the application 
 
          would be implemented.
 
  Week 8: Get feedbacks and modifying the application to be robust and interactive.
 
 
  Week 10: Testing application and fixing bugs.
 
 
  Week 11: Documentation of the project to make sure the continuation of the project.
 
 
5)Practical Considerations
 
    I have previously worked in subversion based projects so I have very good experience on how to
 
  use subversion. I am not familiar with C++ but I have good experiences on Java and Python as
 
  desktop programming languages. I use Eclipse and jidea as development tools and my favorite build
 
  tool is Maven2. I am mostly online during the day. I would be available on IRC more often through
 
  10.00 AM to 6.00 PM UTC. I would be available through phone in case of emergency; my phone number
 
  is +94715188005.   
 
 
References:
 
  [1] www.wso2.com
 
  [2] http://wso2.org/projects/mashup
 
  [3] http://wso2.org/projects/esb/java
 
  [4]http://www.gtslk.com/
 
  [5] http://www.abahatana.com/
 
  [6] http://www.dms.lk/
 
  [7] http://www.eclipse.org/birt/phoenix
 
  [8] http://teethgrinder.co.uk/open-flash-chart/gallery-pie.php
 

Latest revision as of 05:20, 3 April 2009

This page was last edited on 3 April 2009, at 05:20.