<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.wesnoth.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Csaunders</id>
	<title>The Battle for Wesnoth Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.wesnoth.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Csaunders"/>
	<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/Special:Contributions/Csaunders"/>
	<updated>2026-04-09T02:34:40Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.16</generator>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=30064</id>
		<title>SummerOfCodeProposal csaunders</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=30064"/>
		<updated>2009-04-09T15:56:33Z</updated>

		<summary type="html">&lt;p&gt;Csaunders: /* Programs / Software */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
Hello, I am Christopher Saunders and I would be interested in working on the Statistics server for Wesnoth.  I hope the information I have provided below is sufficient, if it is not please contact me either through email or on the IRC and I can try my best to answer any questions.&lt;br /&gt;
&lt;br /&gt;
=== Preferred Email ===&lt;br /&gt;
c.saunders322 _at_ gmail _dot_ com&lt;br /&gt;
&lt;br /&gt;
=== Nicknames ===&lt;br /&gt;
*IRC - csaunders&lt;br /&gt;
*Wesnoth Forums - csaunders&lt;br /&gt;
&lt;br /&gt;
=== Why I want to participate ===&lt;br /&gt;
I've been trying to get involved in Open Source for quite a while.  This is my second year trying to get involved.  &lt;br /&gt;
Last year I was a full-time student in the summer and it was in my best interest not to get involved.  &lt;br /&gt;
I am also interested in getting involved because I feel that the mentorship helps make getting involved less imposing to students and those new to the community.&lt;br /&gt;
&lt;br /&gt;
=== Studies ===&lt;br /&gt;
I am currently a 4th year Computer Science student at the University of Ottawa in Ottawa, Ontario, Canada&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
'''None to date'''&lt;br /&gt;
&lt;br /&gt;
== Experience ==&lt;br /&gt;
&lt;br /&gt;
=== Programs / Software ===&lt;br /&gt;
The following is a list of programs and software that I have worked with on previous projects either through school or while on work term&lt;br /&gt;
* Java&lt;br /&gt;
** Lucene - Indexing software&lt;br /&gt;
** LIRE - Tool for Indexing Images&lt;br /&gt;
** Apache Tomcat&lt;br /&gt;
** Apache Xerces&lt;br /&gt;
* C/C++&lt;br /&gt;
** OpenGL API&lt;br /&gt;
** ImageMagick / Magick++ for texture texture loading&lt;br /&gt;
** Basic work with pipes and pthreads&lt;br /&gt;
** I've begun dabbling with the Ogre3D API&lt;br /&gt;
* Ruby&lt;br /&gt;
** Ruby on Rails - I'm just beginning with it though&lt;br /&gt;
** Ferret - Indexing Software&lt;br /&gt;
** REXML&lt;br /&gt;
&lt;br /&gt;
=== Team Environment Experience ===&lt;br /&gt;
While on work term I worked in an Agile software development environment in a relatively small company (approx 16 developers).  I was working in a 3 man team for data interpretation from 3rd parties.  The data I was working with was in CSV and XML format and I was required to turn it into a standardized form for our application to use.  Through that term I was required to use tools like '''cut''' quite extensively.&lt;br /&gt;
&lt;br /&gt;
Also in school I have worked in teams from 2 to 4 people for various projects in various roles.  These ranged from documentation and requirement analysis to software development.&lt;br /&gt;
&lt;br /&gt;
=== Previous Summer of Code Experience ===&lt;br /&gt;
As stated earlier I did try to get involved previously.  The project in question was Apache Derby, and due to school I was not chosen as a GSoC participant.&lt;br /&gt;
&lt;br /&gt;
=== Open Source ===&lt;br /&gt;
&lt;br /&gt;
==== Involvement ====&lt;br /&gt;
Although I am not involved in development of any open source projects, I have been quite active in making Open Source a viable option to students on my campus.  This has included informing our first year students (101ers) of the alternatives to such things as Internet Explorer and MS Office.&lt;br /&gt;
&lt;br /&gt;
Along with my student association we have informed students in both Computer Science (and related fields) as well as other students of how Open Source is possible.&lt;br /&gt;
&lt;br /&gt;
=== Gaming Experience ===&lt;br /&gt;
I am a gamer and have been playing video games since I was rather young.  Most of my gaming has been done on consoles, and I only recently got into online gaming (around 2005).&lt;br /&gt;
&lt;br /&gt;
==== What type of Gamer ====&lt;br /&gt;
I wouldn't say that I am a hardcore gamer.  I appreciate games, and can get quite involved in them but I prefer short sittings (1 - 1.5hrs).&lt;br /&gt;
&lt;br /&gt;
==== Game Types ====&lt;br /&gt;
Most of my interest is in turn-based strategy games such as Final Fantasy Tactics, Civilization, Valkyria Chronicles, etc.  I also consider myself a somewhat retro gamer, considering my appreciation for most games on the Super Nintendo.&lt;br /&gt;
&lt;br /&gt;
The fact that Westnoth has that retro-like look is what drew me to it initially.&lt;br /&gt;
&lt;br /&gt;
I also have interests in your typical games types like Shooters and RTSs'&lt;br /&gt;
&lt;br /&gt;
==== Preferred Opponents ====&lt;br /&gt;
Due to how I am rather new to online gaming, I lack an effective strategy for human players.  I prefer to play against AI, though will play multi-player games with friends (usually RTS).  While playing with friends, I use this time to help develop a better strategy for gaming.&lt;br /&gt;
&lt;br /&gt;
FPS is an exception, I just need to work on my twitch skills :(&lt;br /&gt;
&lt;br /&gt;
==== Story or Gameplay? ====&lt;br /&gt;
It would have to be a combination of both.  A game with an awesome story but horrible gameplay typically isn't of interest to me because of the poor mechanics, thus ruining the immersion.&lt;br /&gt;
&lt;br /&gt;
On the other hand, a game with amazing gameplay and no story typically leaves one feeling with no sense of direction or goal.&lt;br /&gt;
&lt;br /&gt;
I feel that there is a balance that needs to be met in a game that makes it both immersive and provides quality game mechanics to keep that immersion existent.&lt;br /&gt;
&lt;br /&gt;
==== Have I played Wesnoth ====&lt;br /&gt;
I have played it from time to time.  I have not spent an extensive amount of time playing the game, but while playing it I found it to be quite enjoyable.&lt;br /&gt;
&lt;br /&gt;
=== Communications ===&lt;br /&gt;
&lt;br /&gt;
==== English ====&lt;br /&gt;
I am completely fluent in English.&lt;br /&gt;
&lt;br /&gt;
==== Player Interaction ====&lt;br /&gt;
I tend to get along with players rather well.  I usually don't waste my time with players who are disrespectful to people in a game.&lt;br /&gt;
&lt;br /&gt;
I have yet to deal with gamer feedback on a game I have been working on.&lt;br /&gt;
&lt;br /&gt;
==== Constructive Advice ====&lt;br /&gt;
I try to do my best to provide the best advice possible to people.&lt;br /&gt;
&lt;br /&gt;
==== Receive Advice? ====&lt;br /&gt;
I try not to take any criticism personally.  I understand that most criticism has to do with what is being done in the code and not at me personally.&lt;br /&gt;
&lt;br /&gt;
==== Sorting out Criticism ====&lt;br /&gt;
I try my best to weed out useless criticism that may lead to dead ends.&lt;br /&gt;
&lt;br /&gt;
=== Project ===&lt;br /&gt;
&lt;br /&gt;
==== Which Project ====&lt;br /&gt;
The project I chose was implementing a [[SoC_Ideas_Stats_Server | Stats Server]].  I would like to implement a much more user friendly version that is both easy to use and easy to add more features to.&lt;br /&gt;
&lt;br /&gt;
==== Why ====&lt;br /&gt;
I am interested in dealing with data, and I have on previous occasions done web app development.  Sirp talked to me on the IRC and recommended this task to me.  After looking at the current implementation and talking to Sirp, I decided that this is indeed a project I would be interested in working on.&lt;br /&gt;
&lt;br /&gt;
==== Timeline ====&lt;br /&gt;
* '''April 15 - May 23'''&lt;br /&gt;
** Become familiar with the data that is stored in the database and what it looks like&lt;br /&gt;
** Analyze the Perl script that Sirp sent me as an example of how things could possibly look like&lt;br /&gt;
** Set up a basic webapp on my dev machine - most likely to be the Rails framework but open to other ideas - this is primarily to become familiar with the web framework I shall be using for the project.&lt;br /&gt;
** Establish a staging server which has either duplicate data from the current implementation or with a large enough subset to be usable for my own purposes&lt;br /&gt;
** Set up a basic framework for extracting the data from the database and displaying it on the page&lt;br /&gt;
** Begin drawing up plans for how the new system will be implemented.  This will probably be done in IRC with Sirp and others to help in determining exact requirements as to what needs to be implemented as well as prioritization.&lt;br /&gt;
** '''Note''': I have exams throughout the month of April, so there is no definite way I can get everything done perfectly, but I will try my best given the circumstances.&lt;br /&gt;
* '''May 23 - June 30'''&lt;br /&gt;
** Continued Definition of Features and their Implementation&lt;br /&gt;
*** I want to spend this time implementing as many features that will be required.&lt;br /&gt;
*** This is in no way intended to be fully feature complete but should much of the required functionality in place.&lt;br /&gt;
*** Bugs will most likely still exist by the end of this iteration.&lt;br /&gt;
* '''July 1 - Canada Day'''&lt;br /&gt;
* '''July 2 - July 30'''&lt;br /&gt;
** Re-evaluation of requirements&lt;br /&gt;
** Addition of more requirements&lt;br /&gt;
** Analysis of current bugs - which need to be fixed now, ones that can wait.&lt;br /&gt;
** Implementing new features &amp;amp; fixing major bugs&lt;br /&gt;
* '''Aug 1 - Aug 10'''&lt;br /&gt;
** Finalization of any remaining features&lt;br /&gt;
** Formalization of Documentation&lt;br /&gt;
** Bug Scrubs &amp;amp; Bug Prioritization&lt;br /&gt;
** Major Bug Fixes&lt;br /&gt;
&lt;br /&gt;
==== Technical Details ====&lt;br /&gt;
* I am going to attempt to implement the new Stats Tracker using Rails with MySQL or Python with MySQL (tbd - I am all for learning either).&lt;br /&gt;
* The main priorities are cleanliness of the UI, ease of use, and hopefully a speed increase.&lt;br /&gt;
* The system will implement an MVC framework and will contain as much room as possible to allow for modifications and additions to allow for future developers to easily add more functionality.&lt;br /&gt;
&lt;br /&gt;
==== What I expect to get from this Project ====&lt;br /&gt;
My main goal of this project is to become more familiar with the framework I work with as well as the language.  Along with improving my technical skills, I would also like to become familiar with the Open Source community and hopefully be an active developer in it.&lt;br /&gt;
&lt;br /&gt;
==== Would I stay with Wesnoth after GSoC? ====&lt;br /&gt;
I would try to maintain at least a presence with the Wesnoth community.  I am currently trying to see if I could possibly use the Wesnoth project as my Computer Science graduation project if it is eligible.  That said, if I have enough time to spare in between school and work I would most definitely continue to work with the Wesnoth community.&lt;br /&gt;
&lt;br /&gt;
=== Practical considerations ===&lt;br /&gt;
&lt;br /&gt;
==== Familiarity with Tools ====&lt;br /&gt;
* Subversion - I have worked with both svn and cvs for school projects or while working on a workterm&lt;br /&gt;
* C++ - I have worked with C++ for a few course projects, one of those being a Graphics project&lt;br /&gt;
* Python - I've dabbled with python, but nothing too intense.&lt;br /&gt;
* Build Environments - I've worked with make quite a bit since I use a Linux computer and often times the repositories do not have the most up to date software.  I have also used scons, but only for compiling the trunk code of Wesnoth.&lt;br /&gt;
&lt;br /&gt;
==== Development Tools ====&lt;br /&gt;
I've typically used an IDE for my software development.  Most of my Java work has been done in Eclipse, but I am also relatively familiar with NetBeans.&lt;br /&gt;
&lt;br /&gt;
Recently I've been using XCode for some software development (in school) as well as working with Visual Studio 2005 for my graphics project.&lt;br /&gt;
&lt;br /&gt;
==== Fluent Programming Languages ====&lt;br /&gt;
Most of my experience has been with Java, and I am starting to get the hang of C/C++ again.&lt;br /&gt;
Other languages I would say that I am competent in are:&lt;br /&gt;
* Ruby&lt;br /&gt;
* Perl&lt;br /&gt;
&lt;br /&gt;
==== Fluent Spoken Languages ====&lt;br /&gt;
I am completely fluent in English.  I have an intermediate understanding of French (mainly vocal).&lt;br /&gt;
&lt;br /&gt;
==== Hours of Availability ====&lt;br /&gt;
I will be working during normal hours (UTC 1400 - 2300) during the week, and should be available from (UTC 0100 - UTC 0500).  On weekends I can make myself available from UTC 1400 - UTC 0500.&lt;br /&gt;
&lt;br /&gt;
==== Phone / Internet Phone Conversations ====&lt;br /&gt;
I have no problem having to talk to a mentor over the phone or using Skype if for some reason the IRC or email were to fail.  My preference would be to use Skype (or an equivalent service).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Summer of Code]]&lt;/div&gt;</summary>
		<author><name>Csaunders</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SummerOfCodeIdeas&amp;diff=29265</id>
		<title>SummerOfCodeIdeas</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SummerOfCodeIdeas&amp;diff=29265"/>
		<updated>2009-03-25T04:36:08Z</updated>

		<summary type="html">&lt;p&gt;Csaunders: /* GSoC Student pages */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a compilation of ideas from ML. Needs to be refined (more detailed description, deliverables, workload estimation?):&lt;br /&gt;
&lt;br /&gt;
== I want to be one of your Google Summer of Code students, what should I do... ==&lt;br /&gt;
&lt;br /&gt;
Here is a quick list of things to do to get you started&lt;br /&gt;
* Create an account on gna.org&lt;br /&gt;
* Create an account on the wesnoth forum, and tell an admin on the IRC channel to mark is as a GSoC Student account (Admins are boucman, Ivanovic, mordante, Shadow_Master, Sirp and Turuk)&lt;br /&gt;
* Join the irc channel (#wesnoth-dev on irc.freenode.net) and introduce yourself. We will not give formal interviews, but we will clearly favor people we have learned to know during the selection process (basically communication via IRC is mandatory for our project! it is the main way of &amp;quot;every day communication&amp;quot; for Wesnoth. For the same reason, it's also a good idea to regularly read the [http://wesnoth.debian.net/?C=M;O=A IRC logs].).&lt;br /&gt;
&lt;br /&gt;
* Start a wiki page about your idea, add a link on the bottom of this page and add this information on it:&lt;br /&gt;
** List your account names (gna, forum, irc nick) so that we can recognize you&lt;br /&gt;
** Fill the questionnaire on this page: [[SoC_Information_for_Google#Does_your_organization_have_an_application_template_you_would_like_to_see_students_use.3F_If_so.2C_please_provide_it_now.| List of questions to answer]]&lt;br /&gt;
** Detail your idea as much as possible, look at other students pages, and please give milestones and studies you've done&lt;br /&gt;
** Add a link to the page at the bottom of this page&lt;br /&gt;
&lt;br /&gt;
* Though not mandatory, it is highly advisable to go to the [[EasyCoding]] and [[NotSoEasyCoding]] pages and implement one of these ideas (or any idea of similar scope) so we have an idea how you work. Be sure to use your gna account when submitting these patches so we know who it is coming from. You can also implement some features from our feature request database at gna. When you implement something, also list it on your own page with a reference to the patch.&lt;br /&gt;
&lt;br /&gt;
* For working on Wesnoth you have to be able to compile trunk. To do so you should have a look at the [[WesnothSVN|page about svn]] and afterwards [[CompilingWesnoth|compile Wesnoth svn]].&lt;br /&gt;
&lt;br /&gt;
* Once you have everything done here and think your idea is okay, go to [http://groups.google.com/group/google-summer-of-code-announce/web/guide-to-the-gsoc-web-app-for-student-applicants page at google] to submit your application. You have to submit it before '''Date to be supplied later''' or you have no chance to get in!&lt;br /&gt;
&lt;br /&gt;
== List of Ideas for the Project (Suggestions from the wesnoth developers) ==&lt;br /&gt;
&lt;br /&gt;
Here is only a short description of possible Ideas we have, each has a page of its own with a more detailed version on it.&lt;br /&gt;
&lt;br /&gt;
=== Optimize implementation of WML for memory usage ===&lt;br /&gt;
&lt;br /&gt;
Based on this idea: [http://dave.wesnoth.org/?p=9] optimize WML to minimize its memory usage. High memory usage has been a problem for Wesnoth, and this project will aim to reduce it.&lt;br /&gt;
&lt;br /&gt;
=== Implement campaign statistics reports on stats.wesnoth.org ===&lt;br /&gt;
&lt;br /&gt;
Wesnoth has an infrastructure which records details of campaigns that players play into a centralized MySQL database. However, we only have rudimentary reports based on this MySQL database available at this time, at [http://stats.wesnoth.org].&lt;br /&gt;
&lt;br /&gt;
This project would involve writing a stats reporting web site which would take the data from the MySQL database and produce reports in chart and table form. Campaign designers would be able to use these reports to gather feedback on their campaigns and get ideas for improvements.&lt;br /&gt;
&lt;br /&gt;
A student could largely make their choice of infrastructure for creating the Website -- whether they prefer Python, Perl, Ruby, PHP, etc. This is a great opportunity for someone who doesn't want to dive into hardcore C++ to make a valuable contribution to Wesnoth.&lt;br /&gt;
&lt;br /&gt;
[[SoC Ideas Stats Server]] - Full Version of the idea, with detailed information&lt;br /&gt;
&lt;br /&gt;
=== Extending the Multiplayer server ===&lt;br /&gt;
&lt;br /&gt;
Our multiplayer community is generally strong and healthy, but we believe its growth is limited by some problems in the interface of the multiplayer lobby.&lt;br /&gt;
&lt;br /&gt;
[[SoC Ideas Multiplayer server]] - Full version of the idea, with detailed information&lt;br /&gt;
&lt;br /&gt;
=== Addon server ===&lt;br /&gt;
Wesnoth has an addon server which offers users to upload user &lt;br /&gt;
made content (UMC). This allows all other users of Wesnoth&lt;br /&gt;
to easily download and install this content. The server was &lt;br /&gt;
originally written for user-made campaigns but contains a lot&lt;br /&gt;
more types of addons nowadays. Both the server side and the &lt;br /&gt;
client side need to be improved.&lt;br /&gt;
&lt;br /&gt;
[[SoC Ideas Addon Server]] - Full version of the idea, with detailed information&lt;br /&gt;
&lt;br /&gt;
=== WML validation schemes ===&lt;br /&gt;
Wesnoth uses WML as basic data structure. Over the years&lt;br /&gt;
this language has evolved and got more complex. At the&lt;br /&gt;
moment the WML is validated at runtime and in case of a&lt;br /&gt;
problem the engine stops. With schemes these problems can&lt;br /&gt;
be validated when loading the WML, making it easier to find&lt;br /&gt;
problems before running into them.&lt;br /&gt;
&lt;br /&gt;
[[SoC Ideas Schemes]] - Full version of the idea, with detailed information&lt;br /&gt;
&lt;br /&gt;
=== Write a primitive library for Formula AI ===&lt;br /&gt;
&lt;br /&gt;
Wesnoth has always had a simple C++ based AI. David (our lead developer) has been working on a simple language to write AI in Wesnoth: [[FormulaAI]]&lt;br /&gt;
&lt;br /&gt;
The Wesnoth AI is used as an opponent in most campaigns, and as such is an important piece of code for the Wesnoth project. Unfortunately, because the skills required to understand and modify it are rather arcane, it is also one of the most neglected parts of the Wesnoth code. This is a place where a lot of research and useful work could be done. But keep in mind that [[WhyWritingAWesnothAIIsHard|writing an AI for Wesnoth is difficult]].&lt;br /&gt;
&lt;br /&gt;
Writing a whole AI is so complicated that we believe it can't be done in a single Summer of code. All proposals should keep that in mind and try to identify an interesting subset that would be workable in the limited time of a summer of code&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[SoC Ideas FormulaAI]] - Full version of the idea, with detailed information&lt;br /&gt;
&lt;br /&gt;
=== Savegame reorganization ===&lt;br /&gt;
The savegame formats of Wesnoth for single player campaigns&lt;br /&gt;
and multiplayer differ from each other. And they are processed&lt;br /&gt;
differently as well. Now there is an additional request coming&lt;br /&gt;
up: Multiplayer campaigns. The task will be to unify the savegames&lt;br /&gt;
for all types of scenarios in order to provide a maintainable code&lt;br /&gt;
again.&lt;br /&gt;
&lt;br /&gt;
[[SoC Ideas Savegame]] - Full version of the idea, with detailed information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Other possible ideas to be fleshed out ===&lt;br /&gt;
A MapGenerator rewrite - better scalable for outdoor maps, plus the possibility to define areas (similar to the caverns in the cave generator) etc.&lt;br /&gt;
&lt;br /&gt;
=== Make your own ideas ===&lt;br /&gt;
If you have your own idea the best thing is to join IRC wesnoth-dev at irc.freenode.net and discuss the idea with the developers there. If the developers think your idea is interesting and like the feature you can start to turn it into a full proposal. Once done discuss it again on IRC so the developers can accept your idea.&lt;br /&gt;
&lt;br /&gt;
== Information about our Project ==&lt;br /&gt;
The information we provided google with about our project can be looked up at the site [[SoC Information for Google]].&lt;br /&gt;
&lt;br /&gt;
Also see the [[DeveloperResources]] link (from the [[Project]] page).&lt;br /&gt;
&lt;br /&gt;
== People to bug on IRC ==&lt;br /&gt;
We have prepared a list of people with their &amp;quot;area of competence&amp;quot;. This is to give you an idea on which areas those people can be of help for you. Of course you should always just ask in the IRC chan, but those are the most likely ones to answer questions in the respective area. And here is the list:&lt;br /&gt;
&lt;br /&gt;
[[SoC People to bug on IRC]]&lt;br /&gt;
&lt;br /&gt;
== GSoC Student pages ==&lt;br /&gt;
&lt;br /&gt;
Please add a link to your wiki page below&lt;br /&gt;
&lt;br /&gt;
==== AI ====&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_Velory| Velory - SoC Proposal]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_AI_Improvement_Crab| Crab - SoC Proposal - AI Improvement]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_Sparksteel | Sparksteel - Improving the AI engine design]]&lt;br /&gt;
&lt;br /&gt;
==== Savegame reorganization ====&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_Euschn | Euschn - Savegame reorganization]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_lmg| lmg - Savegame reorganization]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_grantwu| grantwu - Savegame reorganization]]&lt;br /&gt;
&lt;br /&gt;
==== Extending the Multiplayer server ====&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_rubend | rubend - Extending the Multiplayer server]]&lt;br /&gt;
&lt;br /&gt;
==== Addon server ====&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_Ryochan7| Ryochan7 - Addon server]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_iyonius| iyonius - Addon server]]&lt;br /&gt;
&lt;br /&gt;
==== Optimize implementation of WML for memory usage ====&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_res| res -  Optimize implementation of WML for memory usage ]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_jdmunro| jdmunro -  Optimize implementation of WML for memory usage ]]&lt;br /&gt;
&lt;br /&gt;
==== Implement campaign statistics reports on stats.wesnoth.org ====&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_Elbin| Elbin - New campaign statistics page]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_Munk| Munk - New campaign stats page]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_carlestyle| carlestyle - New campaign stats page]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_nerwa| NeRwa - New campaign stats page]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_mrfinch| mrfinch - New Campaign Statistics Page]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_corn| corn - New Campaign Statistics Page]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_csaunders | csaunders - SoC Proposal - Stats Server]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Summer of Code|*]]&lt;/div&gt;</summary>
		<author><name>Csaunders</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=29263</id>
		<title>SummerOfCodeProposal csaunders</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=29263"/>
		<updated>2009-03-25T04:19:03Z</updated>

		<summary type="html">&lt;p&gt;Csaunders: /* Why I want to participate */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
Hello, I am Christopher Saunders and I would be interested in working on the Statistics server for Wesnoth.  I hope the information I have provided below is sufficient, if it is not please contact me either through email or on the IRC and I can try my best to answer any questions.&lt;br /&gt;
&lt;br /&gt;
=== Preferred Email ===&lt;br /&gt;
c.saunders322 _at_ gmail _dot_ com&lt;br /&gt;
&lt;br /&gt;
=== Nicknames ===&lt;br /&gt;
*IRC - csaunders&lt;br /&gt;
*Wesnoth Forums - csaunders&lt;br /&gt;
&lt;br /&gt;
=== Why I want to participate ===&lt;br /&gt;
I've been trying to get involved in Open Source for quite a while.  This is my second year trying to get involved.  &lt;br /&gt;
Last year I was a full-time student in the summer and it was in my best interest not to get involved.  &lt;br /&gt;
I am also interested in getting involved because I feel that the mentorship helps make getting involved less imposing to students and those new to the community.&lt;br /&gt;
&lt;br /&gt;
=== Studies ===&lt;br /&gt;
I am currently a 4th year Computer Science student at the University of Ottawa in Ottawa, Ontario, Canada&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
'''None to date'''&lt;br /&gt;
&lt;br /&gt;
== Experience ==&lt;br /&gt;
&lt;br /&gt;
=== Programs / Software ===&lt;br /&gt;
The following is a list of programs and software that I have worked with on previous projects either through school or while on work term&lt;br /&gt;
* Java&lt;br /&gt;
** Lucene - Indexing software&lt;br /&gt;
** LIRE - Tool for Indexing Images&lt;br /&gt;
** Apache Tomcat&lt;br /&gt;
** Apache Xerces&lt;br /&gt;
* C/C++&lt;br /&gt;
** OpenGL API&lt;br /&gt;
** Basic work with pipes and pthreads&lt;br /&gt;
* Ruby&lt;br /&gt;
** Ferret - Indexing Software&lt;br /&gt;
** REXML&lt;br /&gt;
&lt;br /&gt;
=== Team Environment Experience ===&lt;br /&gt;
While on work term I worked in an Agile software development environment in a relatively small company (approx 16 developers).  I was working in a 3 man team for data interpretation from 3rd parties.  The data I was working with was in CSV and XML format and I was required to turn it into a standardized form for our application to use.  Through that term I was required to use tools like '''cut''' quite extensively.&lt;br /&gt;
&lt;br /&gt;
Also in school I have worked in teams from 2 to 4 people for various projects in various roles.  These ranged from documentation and requirement analysis to software development.&lt;br /&gt;
&lt;br /&gt;
=== Previous Summer of Code Experience ===&lt;br /&gt;
As stated earlier I did try to get involved previously.  The project in question was Apache Derby, and due to school I was not chosen as a GSoC participant.&lt;br /&gt;
&lt;br /&gt;
=== Open Source ===&lt;br /&gt;
&lt;br /&gt;
==== Involvement ====&lt;br /&gt;
Although I am not involved in development of any open source projects, I have been quite active in making Open Source a viable option to students on my campus.  This has included informing our first year students (101ers) of the alternatives to such things as Internet Explorer and MS Office.&lt;br /&gt;
&lt;br /&gt;
Along with my student association we have informed students in both Computer Science (and related fields) as well as other students of how Open Source is possible.&lt;br /&gt;
&lt;br /&gt;
=== Gaming Experience ===&lt;br /&gt;
I am a gamer and have been playing video games since I was rather young.  Most of my gaming has been done on consoles, and I only recently got into online gaming (around 2005).&lt;br /&gt;
&lt;br /&gt;
==== What type of Gamer ====&lt;br /&gt;
I wouldn't say that I am a hardcore gamer.  I appreciate games, and can get quite involved in them but I prefer short sittings (1 - 1.5hrs).&lt;br /&gt;
&lt;br /&gt;
==== Game Types ====&lt;br /&gt;
Most of my interest is in turn-based strategy games such as Final Fantasy Tactics, Civilization, Valkyria Chronicles, etc.  I also consider myself a somewhat retro gamer, considering my appreciation for most games on the Super Nintendo.&lt;br /&gt;
&lt;br /&gt;
The fact that Westnoth has that retro-like look is what drew me to it initially.&lt;br /&gt;
&lt;br /&gt;
I also have interests in your typical games types like Shooters and RTSs'&lt;br /&gt;
&lt;br /&gt;
==== Preferred Opponents ====&lt;br /&gt;
Due to how I am rather new to online gaming, I lack an effective strategy for human players.  I prefer to play against AI, though will play multi-player games with friends (usually RTS).  While playing with friends, I use this time to help develop a better strategy for gaming.&lt;br /&gt;
&lt;br /&gt;
FPS is an exception, I just need to work on my twitch skills :(&lt;br /&gt;
&lt;br /&gt;
==== Story or Gameplay? ====&lt;br /&gt;
It would have to be a combination of both.  A game with an awesome story but horrible gameplay typically isn't of interest to me because of the poor mechanics, thus ruining the immersion.&lt;br /&gt;
&lt;br /&gt;
On the other hand, a game with amazing gameplay and no story typically leaves one feeling with no sense of direction or goal.&lt;br /&gt;
&lt;br /&gt;
I feel that there is a balance that needs to be met in a game that makes it both immersive and provides quality game mechanics to keep that immersion existent.&lt;br /&gt;
&lt;br /&gt;
==== Have I played Wesnoth ====&lt;br /&gt;
I have played it from time to time.  I have not spent an extensive amount of time playing the game, but while playing it I found it to be quite enjoyable.&lt;br /&gt;
&lt;br /&gt;
=== Communications ===&lt;br /&gt;
&lt;br /&gt;
==== English ====&lt;br /&gt;
I am completely fluent in English.&lt;br /&gt;
&lt;br /&gt;
==== Player Interaction ====&lt;br /&gt;
I tend to get along with players rather well.  I usually don't waste my time with players who are disrespectful to people in a game.&lt;br /&gt;
&lt;br /&gt;
I have yet to deal with gamer feedback on a game I have been working on.&lt;br /&gt;
&lt;br /&gt;
==== Constructive Advice ====&lt;br /&gt;
I try to do my best to provide the best advice possible to people.&lt;br /&gt;
&lt;br /&gt;
==== Receive Advice? ====&lt;br /&gt;
I try not to take any criticism personally.  I understand that most criticism has to do with what is being done in the code and not at me personally.&lt;br /&gt;
&lt;br /&gt;
==== Sorting out Criticism ====&lt;br /&gt;
I try my best to weed out useless criticism that may lead to dead ends.&lt;br /&gt;
&lt;br /&gt;
=== Project ===&lt;br /&gt;
&lt;br /&gt;
==== Which Project ====&lt;br /&gt;
The project I chose was implementing a [[SoC_Ideas_Stats_Server | Stats Server]].  I would like to implement a much more user friendly version that is both easy to use and easy to add more features to.&lt;br /&gt;
&lt;br /&gt;
==== Why ====&lt;br /&gt;
I am interested in dealing with data, and I have on previous occasions done web app development.  Sirp talked to me on the IRC and recommended this task to me.  After looking at the current implementation and talking to Sirp, I decided that this is indeed a project I would be interested in working on.&lt;br /&gt;
&lt;br /&gt;
==== Timeline ====&lt;br /&gt;
* '''April 15 - May 23'''&lt;br /&gt;
** Become familiar with the data that is stored in the database and what it looks like&lt;br /&gt;
** Analyze the Perl script that Sirp sent me as an example of how things could possibly look like&lt;br /&gt;
** Set up a basic webapp on my dev machine - most likely to be the Rails framework but open to other ideas - this is primarily to become familiar with the web framework I shall be using for the project.&lt;br /&gt;
** Establish a staging server which has either duplicate data from the current implementation or with a large enough subset to be usable for my own purposes&lt;br /&gt;
** Set up a basic framework for extracting the data from the database and displaying it on the page&lt;br /&gt;
** Begin drawing up plans for how the new system will be implemented.  This will probably be done in IRC with Sirp and others to help in determining exact requirements as to what needs to be implemented as well as prioritization.&lt;br /&gt;
** '''Note''': I have exams throughout the month of April, so there is no definite way I can get everything done perfectly, but I will try my best given the circumstances.&lt;br /&gt;
* '''May 23 - June 30'''&lt;br /&gt;
** Continued Definition of Features and their Implementation&lt;br /&gt;
*** I want to spend this time implementing as many features that will be required.&lt;br /&gt;
*** This is in no way intended to be fully feature complete but should much of the required functionality in place.&lt;br /&gt;
*** Bugs will most likely still exist by the end of this iteration.&lt;br /&gt;
* '''July 1 - Canada Day'''&lt;br /&gt;
* '''July 2 - July 30'''&lt;br /&gt;
** Re-evaluation of requirements&lt;br /&gt;
** Addition of more requirements&lt;br /&gt;
** Analysis of current bugs - which need to be fixed now, ones that can wait.&lt;br /&gt;
** Implementing new features &amp;amp; fixing major bugs&lt;br /&gt;
* '''Aug 1 - Aug 10'''&lt;br /&gt;
** Finalization of any remaining features&lt;br /&gt;
** Formalization of Documentation&lt;br /&gt;
** Bug Scrubs &amp;amp; Bug Prioritization&lt;br /&gt;
** Major Bug Fixes&lt;br /&gt;
&lt;br /&gt;
==== Technical Details ====&lt;br /&gt;
* I am going to attempt to implement the new Stats Tracker using Rails with MySQL or Python with MySQL (tbd - I am all for learning either).&lt;br /&gt;
* The main priorities are cleanliness of the UI, ease of use, and hopefully a speed increase.&lt;br /&gt;
* The system will implement an MVC framework and will contain as much room as possible to allow for modifications and additions to allow for future developers to easily add more functionality.&lt;br /&gt;
&lt;br /&gt;
==== What I expect to get from this Project ====&lt;br /&gt;
My main goal of this project is to become more familiar with the framework I work with as well as the language.  Along with improving my technical skills, I would also like to become familiar with the Open Source community and hopefully be an active developer in it.&lt;br /&gt;
&lt;br /&gt;
==== Would I stay with Wesnoth after GSoC? ====&lt;br /&gt;
I would try to maintain at least a presence with the Wesnoth community.  I am currently trying to see if I could possibly use the Wesnoth project as my Computer Science graduation project if it is eligible.  That said, if I have enough time to spare in between school and work I would most definitely continue to work with the Wesnoth community.&lt;br /&gt;
&lt;br /&gt;
=== Practical considerations ===&lt;br /&gt;
&lt;br /&gt;
==== Familiarity with Tools ====&lt;br /&gt;
* Subversion - I have worked with both svn and cvs for school projects or while working on a workterm&lt;br /&gt;
* C++ - I have worked with C++ for a few course projects, one of those being a Graphics project&lt;br /&gt;
* Python - I've dabbled with python, but nothing too intense.&lt;br /&gt;
* Build Environments - I've worked with make quite a bit since I use a Linux computer and often times the repositories do not have the most up to date software.  I have also used scons, but only for compiling the trunk code of Wesnoth.&lt;br /&gt;
&lt;br /&gt;
==== Development Tools ====&lt;br /&gt;
I've typically used an IDE for my software development.  Most of my Java work has been done in Eclipse, but I am also relatively familiar with NetBeans.&lt;br /&gt;
&lt;br /&gt;
Recently I've been using XCode for some software development (in school) as well as working with Visual Studio 2005 for my graphics project.&lt;br /&gt;
&lt;br /&gt;
==== Fluent Programming Languages ====&lt;br /&gt;
Most of my experience has been with Java, and I am starting to get the hang of C/C++ again.&lt;br /&gt;
Other languages I would say that I am competent in are:&lt;br /&gt;
* Ruby&lt;br /&gt;
* Perl&lt;br /&gt;
&lt;br /&gt;
==== Fluent Spoken Languages ====&lt;br /&gt;
I am completely fluent in English.  I have an intermediate understanding of French (mainly vocal).&lt;br /&gt;
&lt;br /&gt;
==== Hours of Availability ====&lt;br /&gt;
I will be working during normal hours (UTC 1400 - 2300) during the week, and should be available from (UTC 0100 - UTC 0500).  On weekends I can make myself available from UTC 1400 - UTC 0500.&lt;br /&gt;
&lt;br /&gt;
==== Phone / Internet Phone Conversations ====&lt;br /&gt;
I have no problem having to talk to a mentor over the phone or using Skype if for some reason the IRC or email were to fail.  My preference would be to use Skype (or an equivalent service).&lt;/div&gt;</summary>
		<author><name>Csaunders</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=29262</id>
		<title>SummerOfCodeProposal csaunders</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=29262"/>
		<updated>2009-03-25T04:17:52Z</updated>

		<summary type="html">&lt;p&gt;Csaunders: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
Hello, I am Christopher Saunders and I would be interested in working on the Statistics server for Wesnoth.  I hope the information I have provided below is sufficient, if it is not please contact me either through email or on the IRC and I can try my best to answer any questions.&lt;br /&gt;
&lt;br /&gt;
=== Preferred Email ===&lt;br /&gt;
c.saunders322 _at_ gmail _dot_ com&lt;br /&gt;
&lt;br /&gt;
=== Nicknames ===&lt;br /&gt;
*IRC - csaunders&lt;br /&gt;
*Wesnoth Forums - csaunders&lt;br /&gt;
&lt;br /&gt;
=== Why I want to participate ===&lt;br /&gt;
I've been trying to get involved in Open Source for quite a while.  This is my second year trying to get involved.  &lt;br /&gt;
Last year I was a full-time student in the summer and it was in my best interest not to get involved.  &lt;br /&gt;
I am also interested in getting involved because I feel that the mentorship helps make getting involved less imposing on students and those new to the community.&lt;br /&gt;
&lt;br /&gt;
=== Studies ===&lt;br /&gt;
I am currently a 4th year Computer Science student at the University of Ottawa in Ottawa, Ontario, Canada&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
'''None to date'''&lt;br /&gt;
&lt;br /&gt;
== Experience ==&lt;br /&gt;
&lt;br /&gt;
=== Programs / Software ===&lt;br /&gt;
The following is a list of programs and software that I have worked with on previous projects either through school or while on work term&lt;br /&gt;
* Java&lt;br /&gt;
** Lucene - Indexing software&lt;br /&gt;
** LIRE - Tool for Indexing Images&lt;br /&gt;
** Apache Tomcat&lt;br /&gt;
** Apache Xerces&lt;br /&gt;
* C/C++&lt;br /&gt;
** OpenGL API&lt;br /&gt;
** Basic work with pipes and pthreads&lt;br /&gt;
* Ruby&lt;br /&gt;
** Ferret - Indexing Software&lt;br /&gt;
** REXML&lt;br /&gt;
&lt;br /&gt;
=== Team Environment Experience ===&lt;br /&gt;
While on work term I worked in an Agile software development environment in a relatively small company (approx 16 developers).  I was working in a 3 man team for data interpretation from 3rd parties.  The data I was working with was in CSV and XML format and I was required to turn it into a standardized form for our application to use.  Through that term I was required to use tools like '''cut''' quite extensively.&lt;br /&gt;
&lt;br /&gt;
Also in school I have worked in teams from 2 to 4 people for various projects in various roles.  These ranged from documentation and requirement analysis to software development.&lt;br /&gt;
&lt;br /&gt;
=== Previous Summer of Code Experience ===&lt;br /&gt;
As stated earlier I did try to get involved previously.  The project in question was Apache Derby, and due to school I was not chosen as a GSoC participant.&lt;br /&gt;
&lt;br /&gt;
=== Open Source ===&lt;br /&gt;
&lt;br /&gt;
==== Involvement ====&lt;br /&gt;
Although I am not involved in development of any open source projects, I have been quite active in making Open Source a viable option to students on my campus.  This has included informing our first year students (101ers) of the alternatives to such things as Internet Explorer and MS Office.&lt;br /&gt;
&lt;br /&gt;
Along with my student association we have informed students in both Computer Science (and related fields) as well as other students of how Open Source is possible.&lt;br /&gt;
&lt;br /&gt;
=== Gaming Experience ===&lt;br /&gt;
I am a gamer and have been playing video games since I was rather young.  Most of my gaming has been done on consoles, and I only recently got into online gaming (around 2005).&lt;br /&gt;
&lt;br /&gt;
==== What type of Gamer ====&lt;br /&gt;
I wouldn't say that I am a hardcore gamer.  I appreciate games, and can get quite involved in them but I prefer short sittings (1 - 1.5hrs).&lt;br /&gt;
&lt;br /&gt;
==== Game Types ====&lt;br /&gt;
Most of my interest is in turn-based strategy games such as Final Fantasy Tactics, Civilization, Valkyria Chronicles, etc.  I also consider myself a somewhat retro gamer, considering my appreciation for most games on the Super Nintendo.&lt;br /&gt;
&lt;br /&gt;
The fact that Westnoth has that retro-like look is what drew me to it initially.&lt;br /&gt;
&lt;br /&gt;
I also have interests in your typical games types like Shooters and RTSs'&lt;br /&gt;
&lt;br /&gt;
==== Preferred Opponents ====&lt;br /&gt;
Due to how I am rather new to online gaming, I lack an effective strategy for human players.  I prefer to play against AI, though will play multi-player games with friends (usually RTS).  While playing with friends, I use this time to help develop a better strategy for gaming.&lt;br /&gt;
&lt;br /&gt;
FPS is an exception, I just need to work on my twitch skills :(&lt;br /&gt;
&lt;br /&gt;
==== Story or Gameplay? ====&lt;br /&gt;
It would have to be a combination of both.  A game with an awesome story but horrible gameplay typically isn't of interest to me because of the poor mechanics, thus ruining the immersion.&lt;br /&gt;
&lt;br /&gt;
On the other hand, a game with amazing gameplay and no story typically leaves one feeling with no sense of direction or goal.&lt;br /&gt;
&lt;br /&gt;
I feel that there is a balance that needs to be met in a game that makes it both immersive and provides quality game mechanics to keep that immersion existent.&lt;br /&gt;
&lt;br /&gt;
==== Have I played Wesnoth ====&lt;br /&gt;
I have played it from time to time.  I have not spent an extensive amount of time playing the game, but while playing it I found it to be quite enjoyable.&lt;br /&gt;
&lt;br /&gt;
=== Communications ===&lt;br /&gt;
&lt;br /&gt;
==== English ====&lt;br /&gt;
I am completely fluent in English.&lt;br /&gt;
&lt;br /&gt;
==== Player Interaction ====&lt;br /&gt;
I tend to get along with players rather well.  I usually don't waste my time with players who are disrespectful to people in a game.&lt;br /&gt;
&lt;br /&gt;
I have yet to deal with gamer feedback on a game I have been working on.&lt;br /&gt;
&lt;br /&gt;
==== Constructive Advice ====&lt;br /&gt;
I try to do my best to provide the best advice possible to people.&lt;br /&gt;
&lt;br /&gt;
==== Receive Advice? ====&lt;br /&gt;
I try not to take any criticism personally.  I understand that most criticism has to do with what is being done in the code and not at me personally.&lt;br /&gt;
&lt;br /&gt;
==== Sorting out Criticism ====&lt;br /&gt;
I try my best to weed out useless criticism that may lead to dead ends.&lt;br /&gt;
&lt;br /&gt;
=== Project ===&lt;br /&gt;
&lt;br /&gt;
==== Which Project ====&lt;br /&gt;
The project I chose was implementing a [[SoC_Ideas_Stats_Server | Stats Server]].  I would like to implement a much more user friendly version that is both easy to use and easy to add more features to.&lt;br /&gt;
&lt;br /&gt;
==== Why ====&lt;br /&gt;
I am interested in dealing with data, and I have on previous occasions done web app development.  Sirp talked to me on the IRC and recommended this task to me.  After looking at the current implementation and talking to Sirp, I decided that this is indeed a project I would be interested in working on.&lt;br /&gt;
&lt;br /&gt;
==== Timeline ====&lt;br /&gt;
* '''April 15 - May 23'''&lt;br /&gt;
** Become familiar with the data that is stored in the database and what it looks like&lt;br /&gt;
** Analyze the Perl script that Sirp sent me as an example of how things could possibly look like&lt;br /&gt;
** Set up a basic webapp on my dev machine - most likely to be the Rails framework but open to other ideas - this is primarily to become familiar with the web framework I shall be using for the project.&lt;br /&gt;
** Establish a staging server which has either duplicate data from the current implementation or with a large enough subset to be usable for my own purposes&lt;br /&gt;
** Set up a basic framework for extracting the data from the database and displaying it on the page&lt;br /&gt;
** Begin drawing up plans for how the new system will be implemented.  This will probably be done in IRC with Sirp and others to help in determining exact requirements as to what needs to be implemented as well as prioritization.&lt;br /&gt;
** '''Note''': I have exams throughout the month of April, so there is no definite way I can get everything done perfectly, but I will try my best given the circumstances.&lt;br /&gt;
* '''May 23 - June 30'''&lt;br /&gt;
** Continued Definition of Features and their Implementation&lt;br /&gt;
*** I want to spend this time implementing as many features that will be required.&lt;br /&gt;
*** This is in no way intended to be fully feature complete but should much of the required functionality in place.&lt;br /&gt;
*** Bugs will most likely still exist by the end of this iteration.&lt;br /&gt;
* '''July 1 - Canada Day'''&lt;br /&gt;
* '''July 2 - July 30'''&lt;br /&gt;
** Re-evaluation of requirements&lt;br /&gt;
** Addition of more requirements&lt;br /&gt;
** Analysis of current bugs - which need to be fixed now, ones that can wait.&lt;br /&gt;
** Implementing new features &amp;amp; fixing major bugs&lt;br /&gt;
* '''Aug 1 - Aug 10'''&lt;br /&gt;
** Finalization of any remaining features&lt;br /&gt;
** Formalization of Documentation&lt;br /&gt;
** Bug Scrubs &amp;amp; Bug Prioritization&lt;br /&gt;
** Major Bug Fixes&lt;br /&gt;
&lt;br /&gt;
==== Technical Details ====&lt;br /&gt;
* I am going to attempt to implement the new Stats Tracker using Rails with MySQL or Python with MySQL (tbd - I am all for learning either).&lt;br /&gt;
* The main priorities are cleanliness of the UI, ease of use, and hopefully a speed increase.&lt;br /&gt;
* The system will implement an MVC framework and will contain as much room as possible to allow for modifications and additions to allow for future developers to easily add more functionality.&lt;br /&gt;
&lt;br /&gt;
==== What I expect to get from this Project ====&lt;br /&gt;
My main goal of this project is to become more familiar with the framework I work with as well as the language.  Along with improving my technical skills, I would also like to become familiar with the Open Source community and hopefully be an active developer in it.&lt;br /&gt;
&lt;br /&gt;
==== Would I stay with Wesnoth after GSoC? ====&lt;br /&gt;
I would try to maintain at least a presence with the Wesnoth community.  I am currently trying to see if I could possibly use the Wesnoth project as my Computer Science graduation project if it is eligible.  That said, if I have enough time to spare in between school and work I would most definitely continue to work with the Wesnoth community.&lt;br /&gt;
&lt;br /&gt;
=== Practical considerations ===&lt;br /&gt;
&lt;br /&gt;
==== Familiarity with Tools ====&lt;br /&gt;
* Subversion - I have worked with both svn and cvs for school projects or while working on a workterm&lt;br /&gt;
* C++ - I have worked with C++ for a few course projects, one of those being a Graphics project&lt;br /&gt;
* Python - I've dabbled with python, but nothing too intense.&lt;br /&gt;
* Build Environments - I've worked with make quite a bit since I use a Linux computer and often times the repositories do not have the most up to date software.  I have also used scons, but only for compiling the trunk code of Wesnoth.&lt;br /&gt;
&lt;br /&gt;
==== Development Tools ====&lt;br /&gt;
I've typically used an IDE for my software development.  Most of my Java work has been done in Eclipse, but I am also relatively familiar with NetBeans.&lt;br /&gt;
&lt;br /&gt;
Recently I've been using XCode for some software development (in school) as well as working with Visual Studio 2005 for my graphics project.&lt;br /&gt;
&lt;br /&gt;
==== Fluent Programming Languages ====&lt;br /&gt;
Most of my experience has been with Java, and I am starting to get the hang of C/C++ again.&lt;br /&gt;
Other languages I would say that I am competent in are:&lt;br /&gt;
* Ruby&lt;br /&gt;
* Perl&lt;br /&gt;
&lt;br /&gt;
==== Fluent Spoken Languages ====&lt;br /&gt;
I am completely fluent in English.  I have an intermediate understanding of French (mainly vocal).&lt;br /&gt;
&lt;br /&gt;
==== Hours of Availability ====&lt;br /&gt;
I will be working during normal hours (UTC 1400 - 2300) during the week, and should be available from (UTC 0100 - UTC 0500).  On weekends I can make myself available from UTC 1400 - UTC 0500.&lt;br /&gt;
&lt;br /&gt;
==== Phone / Internet Phone Conversations ====&lt;br /&gt;
I have no problem having to talk to a mentor over the phone or using Skype if for some reason the IRC or email were to fail.  My preference would be to use Skype (or an equivalent service).&lt;/div&gt;</summary>
		<author><name>Csaunders</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=29261</id>
		<title>SummerOfCodeProposal csaunders</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=29261"/>
		<updated>2009-03-25T04:14:21Z</updated>

		<summary type="html">&lt;p&gt;Csaunders: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
'''This is still being worked on'''&lt;br /&gt;
=== Preferred Email ===&lt;br /&gt;
&lt;br /&gt;
=== Nicknames ===&lt;br /&gt;
*IRC - csaunders&lt;br /&gt;
*Wesnoth Forums - csaunders&lt;br /&gt;
&lt;br /&gt;
=== Why I want to participate ===&lt;br /&gt;
I've been trying to get involved in Open Source for quite a while.  This is my second year trying to get involved.  &lt;br /&gt;
Last year I was a full-time student in the summer and it was in my best interest not to get involved.  &lt;br /&gt;
I am also interested in getting involved because I feel that the mentorship helps make getting involved less imposing on students and those new to the community.&lt;br /&gt;
&lt;br /&gt;
=== Studies ===&lt;br /&gt;
I am currently a 4th year Computer Science student at the University of Ottawa in Ottawa, Ontario, Canada&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
'''None to date'''&lt;br /&gt;
&lt;br /&gt;
== Experience ==&lt;br /&gt;
&lt;br /&gt;
=== Programs / Software ===&lt;br /&gt;
The following is a list of programs and software that I have worked with on previous projects either through school or while on work term&lt;br /&gt;
* Java&lt;br /&gt;
** Lucene - Indexing software&lt;br /&gt;
** LIRE - Tool for Indexing Images&lt;br /&gt;
** Apache Tomcat&lt;br /&gt;
** Apache Xerces&lt;br /&gt;
* C/C++&lt;br /&gt;
** OpenGL API&lt;br /&gt;
** Basic work with pipes and pthreads&lt;br /&gt;
* Ruby&lt;br /&gt;
** Ferret - Indexing Software&lt;br /&gt;
** REXML&lt;br /&gt;
&lt;br /&gt;
=== Team Environment Experience ===&lt;br /&gt;
While on work term I worked in an Agile software development environment in a relatively small company (approx 16 developers).  I was working in a 3 man team for data interpretation from 3rd parties.  The data I was working with was in CSV and XML format and I was required to turn it into a standardized form for our application to use.  Through that term I was required to use tools like '''cut''' quite extensively.&lt;br /&gt;
&lt;br /&gt;
Also in school I have worked in teams from 2 to 4 people for various projects in various roles.  These ranged from documentation and requirement analysis to software development.&lt;br /&gt;
&lt;br /&gt;
=== Previous Summer of Code Experience ===&lt;br /&gt;
As stated earlier I did try to get involved previously.  The project in question was Apache Derby, and due to school I was not chosen as a GSoC participant.&lt;br /&gt;
&lt;br /&gt;
=== Open Source ===&lt;br /&gt;
&lt;br /&gt;
==== Involvement ====&lt;br /&gt;
Although I am not involved in development of any open source projects, I have been quite active in making Open Source a viable option to students on my campus.  This has included informing our first year students (101ers) of the alternatives to such things as Internet Explorer and MS Office.&lt;br /&gt;
&lt;br /&gt;
Along with my student association we have informed students in both Computer Science (and related fields) as well as other students of how Open Source is possible.&lt;br /&gt;
&lt;br /&gt;
=== Gaming Experience ===&lt;br /&gt;
I am a gamer and have been playing video games since I was rather young.  Most of my gaming has been done on consoles, and I only recently got into online gaming (around 2005).&lt;br /&gt;
&lt;br /&gt;
==== What type of Gamer ====&lt;br /&gt;
I wouldn't say that I am a hardcore gamer.  I appreciate games, and can get quite involved in them but I prefer short sittings (1 - 1.5hrs).&lt;br /&gt;
&lt;br /&gt;
==== Game Types ====&lt;br /&gt;
Most of my interest is in turn-based strategy games such as Final Fantasy Tactics, Civilization, Valkyria Chronicles, etc.  I also consider myself a somewhat retro gamer, considering my appreciation for most games on the Super Nintendo.&lt;br /&gt;
&lt;br /&gt;
The fact that Westnoth has that retro-like look is what drew me to it initially.&lt;br /&gt;
&lt;br /&gt;
I also have interests in your typical games types like Shooters and RTSs'&lt;br /&gt;
&lt;br /&gt;
==== Preferred Opponents ====&lt;br /&gt;
Due to how I am rather new to online gaming, I lack an effective strategy for human players.  I prefer to play against AI, though will play multi-player games with friends (usually RTS).  While playing with friends, I use this time to help develop a better strategy for gaming.&lt;br /&gt;
&lt;br /&gt;
FPS is an exception, I just need to work on my twitch skills :(&lt;br /&gt;
&lt;br /&gt;
==== Story or Gameplay? ====&lt;br /&gt;
It would have to be a combination of both.  A game with an awesome story but horrible gameplay typically isn't of interest to me because of the poor mechanics, thus ruining the immersion.&lt;br /&gt;
&lt;br /&gt;
On the other hand, a game with amazing gameplay and no story typically leaves one feeling with no sense of direction or goal.&lt;br /&gt;
&lt;br /&gt;
I feel that there is a balance that needs to be met in a game that makes it both immersive and provides quality game mechanics to keep that immersion existent.&lt;br /&gt;
&lt;br /&gt;
==== Have I played Wesnoth ====&lt;br /&gt;
I have played it from time to time.  I have not spent an extensive amount of time playing the game, but while playing it I found it to be quite enjoyable.&lt;br /&gt;
&lt;br /&gt;
=== Communications ===&lt;br /&gt;
&lt;br /&gt;
==== English ====&lt;br /&gt;
I am completely fluent in English.&lt;br /&gt;
&lt;br /&gt;
==== Player Interaction ====&lt;br /&gt;
I tend to get along with players rather well.  I usually don't waste my time with players who are disrespectful to people in a game.&lt;br /&gt;
&lt;br /&gt;
I have yet to deal with gamer feedback on a game I have been working on.&lt;br /&gt;
&lt;br /&gt;
==== Constructive Advice ====&lt;br /&gt;
I try to do my best to provide the best advice possible to people.&lt;br /&gt;
&lt;br /&gt;
==== Receive Advice? ====&lt;br /&gt;
I try not to take any criticism personally.  I understand that most criticism has to do with what is being done in the code and not at me personally.&lt;br /&gt;
&lt;br /&gt;
==== Sorting out Criticism ====&lt;br /&gt;
I try my best to weed out useless criticism that may lead to dead ends.&lt;br /&gt;
&lt;br /&gt;
=== Project ===&lt;br /&gt;
&lt;br /&gt;
==== Which Project ====&lt;br /&gt;
The project I chose was implementing a [[SoC_Ideas_Stats_Server | Stats Server]].  I would like to implement a much more user friendly version that is both easy to use and easy to add more features to.&lt;br /&gt;
&lt;br /&gt;
==== Why ====&lt;br /&gt;
I am interested in dealing with data, and I have on previous occasions done web app development.  Sirp talked to me on the IRC and recommended this task to me.  After looking at the current implementation and talking to Sirp, I decided that this is indeed a project I would be interested in working on.&lt;br /&gt;
&lt;br /&gt;
==== Timeline ====&lt;br /&gt;
* '''April 15 - May 23'''&lt;br /&gt;
** Become familiar with the data that is stored in the database and what it looks like&lt;br /&gt;
** Analyze the Perl script that Sirp sent me as an example of how things could possibly look like&lt;br /&gt;
** Set up a basic webapp on my dev machine - most likely to be the Rails framework but open to other ideas - this is primarily to become familiar with the web framework I shall be using for the project.&lt;br /&gt;
** Establish a staging server which has either duplicate data from the current implementation or with a large enough subset to be usable for my own purposes&lt;br /&gt;
** Set up a basic framework for extracting the data from the database and displaying it on the page&lt;br /&gt;
** Begin drawing up plans for how the new system will be implemented.  This will probably be done in IRC with Sirp and others to help in determining exact requirements as to what needs to be implemented as well as prioritization.&lt;br /&gt;
** '''Note''': I have exams throughout the month of April, so there is no definite way I can get everything done perfectly, but I will try my best given the circumstances.&lt;br /&gt;
* '''May 23 - June 30'''&lt;br /&gt;
** Continued Definition of Features and their Implementation&lt;br /&gt;
*** I want to spend this time implementing as many features that will be required.&lt;br /&gt;
*** This is in no way intended to be fully feature complete but should much of the required functionality in place.&lt;br /&gt;
*** Bugs will most likely still exist by the end of this iteration.&lt;br /&gt;
* '''July 1 - Canada Day'''&lt;br /&gt;
* '''July 2 - July 30'''&lt;br /&gt;
** Re-evaluation of requirements&lt;br /&gt;
** Addition of more requirements&lt;br /&gt;
** Analysis of current bugs - which need to be fixed now, ones that can wait.&lt;br /&gt;
** Implementing new features &amp;amp; fixing major bugs&lt;br /&gt;
* '''Aug 1 - Aug 10'''&lt;br /&gt;
** Finalization of any remaining features&lt;br /&gt;
** Formalization of Documentation&lt;br /&gt;
** Bug Scrubs &amp;amp; Bug Prioritization&lt;br /&gt;
** Major Bug Fixes&lt;br /&gt;
&lt;br /&gt;
==== Technical Details ====&lt;br /&gt;
* I am going to attempt to implement the new Stats Tracker using Rails with MySQL or Python with MySQL (tbd - I am all for learning either).&lt;br /&gt;
* The main priorities are cleanliness of the UI, ease of use, and hopefully a speed increase.&lt;br /&gt;
* The system will implement an MVC framework and will contain as much room as possible to allow for modifications and additions to allow for future developers to easily add more functionality.&lt;br /&gt;
&lt;br /&gt;
==== What I expect to get from this Project ====&lt;br /&gt;
My main goal of this project is to become more familiar with the framework I work with as well as the language.  Along with improving my technical skills, I would also like to become familiar with the Open Source community and hopefully be an active developer in it.&lt;br /&gt;
&lt;br /&gt;
==== Would I stay with Wesnoth after GSoC? ====&lt;br /&gt;
I would try to maintain at least a presence with the Wesnoth community.  I am currently trying to see if I could possibly use the Wesnoth project as my Computer Science graduation project if it is eligible.  That said, if I have enough time to spare in between school and work I would most definitely continue to work with the Wesnoth community.&lt;br /&gt;
&lt;br /&gt;
=== Practical considerations ===&lt;br /&gt;
&lt;br /&gt;
==== Familiarity with Tools ====&lt;br /&gt;
* Subversion - I have worked with both svn and cvs for school projects or while working on a workterm&lt;br /&gt;
* C++ - I have worked with C++ for a few course projects, one of those being a Graphics project&lt;br /&gt;
* Python - I've dabbled with python, but nothing too intense.&lt;br /&gt;
* Build Environments - I've worked with make quite a bit since I use a Linux computer and often times the repositories do not have the most up to date software.  I have also used scons, but only for compiling the trunk code of Wesnoth.&lt;br /&gt;
&lt;br /&gt;
==== Development Tools ====&lt;br /&gt;
I've typically used an IDE for my software development.  Most of my Java work has been done in Eclipse, but I am also relatively familiar with NetBeans.&lt;br /&gt;
&lt;br /&gt;
Recently I've been using XCode for some software development (in school) as well as working with Visual Studio 2005 for my graphics project.&lt;br /&gt;
&lt;br /&gt;
==== Fluent Programming Languages ====&lt;br /&gt;
Most of my experience has been with Java, and I am starting to get the hang of C/C++ again.&lt;br /&gt;
Other languages I would say that I am competent in are:&lt;br /&gt;
* Ruby&lt;br /&gt;
* Perl&lt;br /&gt;
&lt;br /&gt;
==== Fluent Spoken Languages ====&lt;br /&gt;
I am completely fluent in English.  I have an intermediate understanding of French (mainly vocal).&lt;br /&gt;
&lt;br /&gt;
==== Hours of Availability ====&lt;br /&gt;
I will be working during normal hours (UTC 1400 - 2300) during the week, and should be available from (UTC 0100 - UTC 0500).  On weekends I can make myself available from UTC 1400 - UTC 0500.&lt;br /&gt;
&lt;br /&gt;
==== Phone / Internet Phone Conversations ====&lt;br /&gt;
I have no problem having to talk to a mentor over the phone or using Skype if for some reason the IRC or email were to fail.  My preference would be to use Skype (or an equivalent service).&lt;/div&gt;</summary>
		<author><name>Csaunders</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=29238</id>
		<title>SummerOfCodeProposal csaunders</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=29238"/>
		<updated>2009-03-24T23:53:02Z</updated>

		<summary type="html">&lt;p&gt;Csaunders: /* = Game Types */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
'''This is still being worked on'''&lt;br /&gt;
=== Preferred Email ===&lt;br /&gt;
&lt;br /&gt;
=== Nicknames ===&lt;br /&gt;
*IRC - csaunders&lt;br /&gt;
*Wesnoth Forums - csaunders&lt;br /&gt;
&lt;br /&gt;
=== Why I want to participate ===&lt;br /&gt;
I've been trying to get involved in Open Source for quite a while.  This is my second year trying to get involved.  &lt;br /&gt;
Last year I was a full-time student in the summer and it was in my best interest not to get involved.  &lt;br /&gt;
I am also interested in getting involved because I feel that the mentorship helps make getting involved less imposing on students and those new to the community.&lt;br /&gt;
&lt;br /&gt;
=== Studies ===&lt;br /&gt;
I am currently a 4th year Computer Science student at the University of Ottawa in Ottawa, Ontario, Canada&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
'''None to date'''&lt;br /&gt;
&lt;br /&gt;
== Experience ==&lt;br /&gt;
&lt;br /&gt;
=== Programs / Software ===&lt;br /&gt;
The following is a list of programs and software that I have worked with on previous projects either through school or while on work term&lt;br /&gt;
* Java&lt;br /&gt;
** Lucene - Indexing software&lt;br /&gt;
** LIRE - Tool for Indexing Images&lt;br /&gt;
** Apache Tomcat&lt;br /&gt;
** Apache Xerces&lt;br /&gt;
* C/C++&lt;br /&gt;
** OpenGL API&lt;br /&gt;
** Basic work with pipes and pthreads&lt;br /&gt;
* Ruby&lt;br /&gt;
** Ferret - Indexing Software&lt;br /&gt;
** REXML&lt;br /&gt;
&lt;br /&gt;
=== Team Environment Experience ===&lt;br /&gt;
While on work term I worked in an Agile software development environment in a relatively small company (approx 16 developers).  I was working in a 3 man team for data interpretation from 3rd parties.  The data I was working with was in CSV and XML format and I was required to turn it into a standardized form for our application to use.  Through that term I was required to use tools like '''cut''' quite extensively.&lt;br /&gt;
&lt;br /&gt;
Also in school I have worked in teams from 2 to 4 people for various projects in various roles.  These ranged from documentation and requirement analysis to software development.&lt;br /&gt;
&lt;br /&gt;
=== Previous Summer of Code Experience ===&lt;br /&gt;
As stated earlier I did try to get involved previously.  The project in question was Apache Derby, and due to school I was not chosen as a GSoC participant.&lt;br /&gt;
&lt;br /&gt;
=== Open Source ===&lt;br /&gt;
&lt;br /&gt;
==== Involvement ====&lt;br /&gt;
Although I am not involved in development of any open source projects, I have been quite active in making Open Source a viable option to students on my campus.  This has included informing our first year students (101ers) of the alternatives to such things as Internet Explorer and MS Office.&lt;br /&gt;
&lt;br /&gt;
Along with my student association we have informed students in both Computer Science (and related fields) as well as other students of how Open Source is possible.&lt;br /&gt;
&lt;br /&gt;
=== Gaming Experience ===&lt;br /&gt;
I am a gamer and have been playing video games since I was rather young.  Most of my gaming has been done on consoles, and I only recently got into online gaming (around 2005).&lt;br /&gt;
&lt;br /&gt;
==== What type of Gamer ====&lt;br /&gt;
I wouldn't say that I am a hardcore gamer.  I appreciate games, and can get quite involved in them but I prefer short sittings (1 - 1.5hrs).&lt;br /&gt;
&lt;br /&gt;
==== Game Types ====&lt;br /&gt;
Most of my interest is in turn-based strategy games such as Final Fantasy Tactics, Civilization, Valkyria Chronicles, etc.  I also consider myself a somewhat retro gamer, considering my appreciation for most games on the Super Nintendo.&lt;br /&gt;
&lt;br /&gt;
The fact that Westnoth has that retro-like look is what drew me to it initially.&lt;br /&gt;
&lt;br /&gt;
I also have interests in your typical games types like Shooters and RTSs'&lt;br /&gt;
&lt;br /&gt;
==== Preferred Opponents ====&lt;br /&gt;
Due to how I am rather new to online gaming, I lack an effective strategy for human players.  I prefer to play against AI, though will play multi-player games with friends (usually RTS).  While playing with friends, I use this time to help develop a better strategy for gaming.&lt;br /&gt;
&lt;br /&gt;
FPS is an exception, I just need to work on my twitch skills :(&lt;br /&gt;
&lt;br /&gt;
==== Story or Gameplay? ====&lt;br /&gt;
It would have to be a combination of both.  A game with an awesome story but horrible gameplay typically isn't of interest to me because of the poor mechanics, thus ruining the immersion.&lt;br /&gt;
&lt;br /&gt;
On the other hand, a game with amazing gameplay and no story typically leaves one feeling with no sense of direction or goal.&lt;br /&gt;
&lt;br /&gt;
I feel that there is a balance that needs to be met in a game that makes it both immersive and provides quality game mechanics to keep that immersion existent.&lt;br /&gt;
&lt;br /&gt;
==== Have I played Wesnoth ====&lt;br /&gt;
I have played it from time to time.  I have not spent an extensive amount of time playing the game, but while playing it I found it to be quite enjoyable.&lt;br /&gt;
&lt;br /&gt;
=== Communications ===&lt;br /&gt;
&lt;br /&gt;
==== English ====&lt;br /&gt;
I am completely fluent in English.&lt;br /&gt;
&lt;br /&gt;
==== Player Interaction ====&lt;br /&gt;
I tend to get along with players rather well.  I usually don't waste my time with players who are disrespectful to people in a game.&lt;br /&gt;
&lt;br /&gt;
I have yet to deal with gamer feedback on a game I have been working on.&lt;br /&gt;
&lt;br /&gt;
==== Constructive Advice ====&lt;br /&gt;
I try to do my best to provide the best advice possible to people.&lt;br /&gt;
&lt;br /&gt;
==== Receive Advice? ====&lt;br /&gt;
I try not to take any criticism personally.  I understand that most criticism has to do with what is being done in the code and not at me personally.&lt;br /&gt;
&lt;br /&gt;
==== Sorting out Criticism ====&lt;br /&gt;
I try my best to weed out useless criticism that may lead to dead ends.&lt;br /&gt;
&lt;br /&gt;
=== Project ===&lt;br /&gt;
&lt;br /&gt;
==== Which Project ====&lt;br /&gt;
The project I chose was implementing a [[SoC_Ideas_Stats_Server | Stats Server]].  I would like to implement a much more user friendly version that is both easy to use and easy to add more features to.&lt;br /&gt;
&lt;br /&gt;
==== Why ====&lt;br /&gt;
I am interested in dealing with data, and I have on previous occasions done web app development.  Sirp talked to me on the IRC and recommended this task to me.  After looking at the current implementation and talking to Sirp, I decided that this is indeed a project I would be interested in working on.&lt;br /&gt;
&lt;br /&gt;
==== Timeline ====&lt;br /&gt;
* '''April 15 - May 23'''&lt;br /&gt;
** Become familiar with the data that is stored in the database and what it looks like&lt;br /&gt;
** Analyze the Perl script that Sirp sent me as an example of how things could possibly look like&lt;br /&gt;
** Set up a basic webapp on my dev machine - most likely to be the Rails framework but open to other ideas&lt;br /&gt;
** '''Note''': I have exams throughout the month of April, so there is no definite way I can get everything done perfectly, but I will try my best given the circumstances.&lt;br /&gt;
** Establish a staging server which has either duplicate data from the current implementation or with a large enough subset to be usable for my own purposes&lt;br /&gt;
** Set up a basic framework for extracting the data from the database and displaying it on the page&lt;br /&gt;
** Begin drawing up plans for how the new system will be implemented.  This will probably be done in IRC with Sirp and others to help in determining exact requirements as to what needs to be implemented as well as prioritization.&lt;br /&gt;
* '''May 23 - June 30'''&lt;br /&gt;
** Continued Definition of Features and their Implementation&lt;br /&gt;
*** I want to spend this time implementing as many features that will be required.&lt;br /&gt;
*** This is in no way intended to be fully feature complete but should much of the required functionality in place.&lt;br /&gt;
*** Bugs will most likely still exist by the end of this iteration.&lt;br /&gt;
* '''July 1 - Canada Day'''&lt;br /&gt;
* '''July 2 - July 30'''&lt;br /&gt;
&lt;br /&gt;
4.4) Include an estimated timeline for your work on the project. Don't forget to mention special things like &amp;quot;I booked holidays between A and B&amp;quot; and &amp;quot;I got an exam at ABC and won't be doing much then&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
4.5) Include as much technical detail about your implementation as you can&lt;br /&gt;
&lt;br /&gt;
4.6) What do you expect to gain from this project?&lt;br /&gt;
&lt;br /&gt;
4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?&lt;br /&gt;
&lt;br /&gt;
5) Practical considerations&lt;br /&gt;
&lt;br /&gt;
5.1) Are you familiar with any of the following tools or languages?&lt;br /&gt;
&lt;br /&gt;
    * Subversion (used for all commits)&lt;br /&gt;
    * C++ (language used for all the normal source code)&lt;br /&gt;
    * Python (optional, mainly used for tools)&lt;br /&gt;
    * build environments (eg cmake/autotools/scons) &lt;br /&gt;
&lt;br /&gt;
5.2) Which tools do you normally use for development? Why do you use them?&lt;br /&gt;
&lt;br /&gt;
5.3) What programming languages are you fluent in?&lt;br /&gt;
&lt;br /&gt;
5.4) What spoken languages are you fluent in?&lt;br /&gt;
&lt;br /&gt;
5.5) At what hours are you awake and when will you be able to be in IRC (please specify in UTC)&lt;br /&gt;
&lt;br /&gt;
5.6) Would you mind talking with your mentor on telephone / internet phone? We would like to have a backup way for communications for the case that somehow emails and IRC do fail.&lt;/div&gt;</summary>
		<author><name>Csaunders</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=29222</id>
		<title>SummerOfCodeProposal csaunders</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=29222"/>
		<updated>2009-03-24T21:56:34Z</updated>

		<summary type="html">&lt;p&gt;Csaunders: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
'''This is still being worked on'''&lt;br /&gt;
=== Preferred Email ===&lt;br /&gt;
&lt;br /&gt;
=== Nicknames ===&lt;br /&gt;
*IRC - csaunders&lt;br /&gt;
*Wesnoth Forums - csaunders&lt;br /&gt;
&lt;br /&gt;
=== Why I want to participate ===&lt;br /&gt;
I've been trying to get involved in Open Source for quite a while.  This is my second year trying to get involved.  &lt;br /&gt;
Last year I was a full-time student in the summer and it was in my best interest not to get involved.  &lt;br /&gt;
I am also interested in getting involved because I feel that the mentorship helps make getting involved less imposing on students and those new to the community.&lt;br /&gt;
&lt;br /&gt;
=== Studies ===&lt;br /&gt;
I am currently a 4th year Computer Science student at the University of Ottawa in Ottawa, Ontario, Canada&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
'''None to date'''&lt;br /&gt;
&lt;br /&gt;
== Experience ==&lt;br /&gt;
&lt;br /&gt;
=== Programs / Software ===&lt;br /&gt;
The following is a list of programs and software that I have worked with on previous projects either through school or while on work term&lt;br /&gt;
* Java&lt;br /&gt;
** Lucene - Indexing software&lt;br /&gt;
** LIRE - Tool for Indexing Images&lt;br /&gt;
** Apache Tomcat&lt;br /&gt;
** Apache Xerces&lt;br /&gt;
* C/C++&lt;br /&gt;
** OpenGL API&lt;br /&gt;
** Basic work with pipes and pthreads&lt;br /&gt;
* Ruby&lt;br /&gt;
** Ferret - Indexing Software&lt;br /&gt;
** REXML&lt;br /&gt;
&lt;br /&gt;
=== Team Environment Experience ===&lt;br /&gt;
While on work term I worked in an Agile software development environment in a relatively small company (approx 16 developers).  I was working in a 3 man team for data interpretation from 3rd parties.  The data I was working with was in CSV and XML format and I was required to turn it into a standardized form for our application to use.  Through that term I was required to use tools like '''cut''' quite extensively.&lt;br /&gt;
&lt;br /&gt;
Also in school I have worked in teams from 2 to 4 people for various projects in various roles.  These ranged from documentation and requirement analysis to software development.&lt;br /&gt;
&lt;br /&gt;
=== Previous Summer of Code Experience ===&lt;br /&gt;
As stated earlier I did try to get involved previously.  The project in question was Apache Derby, and due to school I was not chosen as a GSoC participant.&lt;br /&gt;
&lt;br /&gt;
=== Open Source ===&lt;br /&gt;
&lt;br /&gt;
==== Involvement ====&lt;br /&gt;
Although I am not involved in development of any open source projects, I have been quite active in making Open Source a viable option to students on my campus.  This has included informing our first year students (101ers) of the alternatives to such things as Internet Explorer and MS Office.&lt;br /&gt;
&lt;br /&gt;
Along with my student association we have informed students in both Computer Science (and related fields) as well as other students of how Open Source is possible.&lt;br /&gt;
&lt;br /&gt;
=== Gaming Experience ===&lt;br /&gt;
I am a gamer and have been playing video games since I was rather young.  Most of my gaming has been done on consoles, and I only recently got into online gaming (around 2005).&lt;br /&gt;
&lt;br /&gt;
==== What type of Gamer ====&lt;br /&gt;
I wouldn't say that I am a hardcore gamer.  I appreciate games, and can get quite involved in them but I prefer short sittings (1 - 1.5hrs).&lt;br /&gt;
&lt;br /&gt;
==== Game Types ===&lt;br /&gt;
Most of my interest is in turn-based strategy games such as Final Fantasy Tactics, Civilization, Valkyria Chronicles, etc.  I also consider myself a somewhat retro gamer, considering my appreciation for most games on the Super Nintendo.&lt;br /&gt;
&lt;br /&gt;
The fact that Westnoth has that retro-like look is what drew me to it initially.&lt;br /&gt;
&lt;br /&gt;
I also have interests in your typical games types like Shooters and RTSs'&lt;br /&gt;
&lt;br /&gt;
==== Preferred Opponents ====&lt;br /&gt;
Due to how I am rather new to online gaming, I lack an effective strategy for human players.  I prefer to play against AI, though will play multi-player games with friends (usually RTS).  While playing with friends, I use this time to help develop a better strategy for gaming.&lt;br /&gt;
&lt;br /&gt;
FPS is an exception, I just need to work on my twitch skills :(&lt;br /&gt;
&lt;br /&gt;
==== Story or Gameplay? ====&lt;br /&gt;
It would have to be a combination of both.  A game with an awesome story but horrible gameplay typically isn't of interest to me because of the poor mechanics, thus ruining the immersion.&lt;br /&gt;
&lt;br /&gt;
On the other hand, a game with amazing gameplay and no story typically leaves one feeling with no sense of direction or goal.&lt;br /&gt;
&lt;br /&gt;
I feel that there is a balance that needs to be met in a game that makes it both immersive and provides quality game mechanics to keep that immersion existent.&lt;br /&gt;
&lt;br /&gt;
==== Have I played Wesnoth ====&lt;br /&gt;
I have played it from time to time.  I have not spent an extensive amount of time playing the game, but while playing it I found it to be quite enjoyable.&lt;br /&gt;
&lt;br /&gt;
=== Communications ===&lt;br /&gt;
&lt;br /&gt;
==== English ====&lt;br /&gt;
I am completely fluent in English.&lt;br /&gt;
&lt;br /&gt;
==== Player Interaction ====&lt;br /&gt;
I tend to get along with players rather well.  I usually don't waste my time with players who are disrespectful to people in a game.&lt;br /&gt;
&lt;br /&gt;
I have yet to deal with gamer feedback on a game I have been working on.&lt;br /&gt;
&lt;br /&gt;
==== Constructive Advice ====&lt;br /&gt;
I try to do my best to provide the best advice possible to people.&lt;br /&gt;
&lt;br /&gt;
==== Receive Advice? ====&lt;br /&gt;
I try not to take any criticism personally.  I understand that most criticism has to do with what is being done in the code and not at me personally.&lt;br /&gt;
&lt;br /&gt;
==== Sorting out Criticism ====&lt;br /&gt;
I try my best to weed out useless criticism that may lead to dead ends.&lt;br /&gt;
&lt;br /&gt;
=== Project ===&lt;br /&gt;
&lt;br /&gt;
==== Which Project ====&lt;br /&gt;
The project I chose was implementing a [[SoC_Ideas_Stats_Server | Stats Server]].  I would like to implement a much more user friendly version that is both easy to use and easy to add more features to.&lt;br /&gt;
&lt;br /&gt;
==== Why ====&lt;br /&gt;
I am interested in dealing with data, and I have on previous occasions done web app development.  Sirp talked to me on the IRC and recommended this task to me.  After looking at the current implementation and talking to Sirp, I decided that this is indeed a project I would be interested in working on.&lt;br /&gt;
&lt;br /&gt;
==== Timeline ====&lt;br /&gt;
* '''April 15 - May 23'''&lt;br /&gt;
** Become familiar with the data that is stored in the database and what it looks like&lt;br /&gt;
** Analyze the Perl script that Sirp sent me as an example of how things could possibly look like&lt;br /&gt;
** Set up a basic webapp on my dev machine - most likely to be the Rails framework but open to other ideas&lt;br /&gt;
** '''Note''': I have exams throughout the month of April, so there is no definite way I can get everything done perfectly, but I will try my best given the circumstances.&lt;br /&gt;
** Establish a staging server which has either duplicate data from the current implementation or with a large enough subset to be usable for my own purposes&lt;br /&gt;
** Set up a basic framework for extracting the data from the database and displaying it on the page&lt;br /&gt;
** Begin drawing up plans for how the new system will be implemented.  This will probably be done in IRC with Sirp and others to help in determining exact requirements as to what needs to be implemented as well as prioritization.&lt;br /&gt;
* '''May 23 - June 30'''&lt;br /&gt;
** Continued Definition of Features and their Implementation&lt;br /&gt;
*** I want to spend this time implementing as many features that will be required.&lt;br /&gt;
*** This is in no way intended to be fully feature complete but should much of the required functionality in place.&lt;br /&gt;
*** Bugs will most likely still exist by the end of this iteration.&lt;br /&gt;
* '''July 1 - Canada Day'''&lt;br /&gt;
* '''July 2 - July 30'''&lt;br /&gt;
&lt;br /&gt;
4.4) Include an estimated timeline for your work on the project. Don't forget to mention special things like &amp;quot;I booked holidays between A and B&amp;quot; and &amp;quot;I got an exam at ABC and won't be doing much then&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
4.5) Include as much technical detail about your implementation as you can&lt;br /&gt;
&lt;br /&gt;
4.6) What do you expect to gain from this project?&lt;br /&gt;
&lt;br /&gt;
4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?&lt;br /&gt;
&lt;br /&gt;
5) Practical considerations&lt;br /&gt;
&lt;br /&gt;
5.1) Are you familiar with any of the following tools or languages?&lt;br /&gt;
&lt;br /&gt;
    * Subversion (used for all commits)&lt;br /&gt;
    * C++ (language used for all the normal source code)&lt;br /&gt;
    * Python (optional, mainly used for tools)&lt;br /&gt;
    * build environments (eg cmake/autotools/scons) &lt;br /&gt;
&lt;br /&gt;
5.2) Which tools do you normally use for development? Why do you use them?&lt;br /&gt;
&lt;br /&gt;
5.3) What programming languages are you fluent in?&lt;br /&gt;
&lt;br /&gt;
5.4) What spoken languages are you fluent in?&lt;br /&gt;
&lt;br /&gt;
5.5) At what hours are you awake and when will you be able to be in IRC (please specify in UTC)&lt;br /&gt;
&lt;br /&gt;
5.6) Would you mind talking with your mentor on telephone / internet phone? We would like to have a backup way for communications for the case that somehow emails and IRC do fail.&lt;/div&gt;</summary>
		<author><name>Csaunders</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=29221</id>
		<title>SummerOfCodeProposal csaunders</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=29221"/>
		<updated>2009-03-24T21:52:26Z</updated>

		<summary type="html">&lt;p&gt;Csaunders: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
'''This is still being worked on'''&lt;br /&gt;
=== Preferred Email ===&lt;br /&gt;
&lt;br /&gt;
=== Nicknames ===&lt;br /&gt;
*IRC - csaunders&lt;br /&gt;
*Wesnoth Forums - csaunders&lt;br /&gt;
&lt;br /&gt;
=== Why I want to participate ===&lt;br /&gt;
I've been trying to get involved in Open Source for quite a while.  This is my second year trying to get involved.  &lt;br /&gt;
Last year I was a full-time student in the summer and it was in my best interest not to get involved.  &lt;br /&gt;
I am also interested in getting involved because I feel that the mentorship helps make getting involved less imposing on students and those new to the community.&lt;br /&gt;
&lt;br /&gt;
=== Studies ===&lt;br /&gt;
I am currently a 4th year Computer Science student at the University of Ottawa in Ottawa, Ontario, Canada&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
'''None to date'''&lt;br /&gt;
&lt;br /&gt;
== Experience ==&lt;br /&gt;
&lt;br /&gt;
=== Programs / Software ===&lt;br /&gt;
The following is a list of programs and software that I have worked with on previous projects either through school or while on work term&lt;br /&gt;
* Java&lt;br /&gt;
** Lucene - Indexing software&lt;br /&gt;
** LIRE - Tool for Indexing Images&lt;br /&gt;
** Apache Tomcat&lt;br /&gt;
** Apache Xerces&lt;br /&gt;
* C/C++&lt;br /&gt;
** OpenGL API&lt;br /&gt;
** Basic work with pipes and pthreads&lt;br /&gt;
* Ruby&lt;br /&gt;
** Ferret - Indexing Software&lt;br /&gt;
** REXML&lt;br /&gt;
&lt;br /&gt;
=== Team Environment Experience ===&lt;br /&gt;
While on work term I worked in an Agile software development environment in a relatively small company (approx 16 developers).  I was working in a 3 man team for data interpretation from 3rd parties.  The data I was working with was in CSV and XML format and I was required to turn it into a standardized form for our application to use.  Through that term I was required to use tools like '''cut''' quite extensively.&lt;br /&gt;
&lt;br /&gt;
Also in school I have worked in teams from 2 to 4 people for various projects in various roles.  These ranged from documentation and requirement analysis to software development.&lt;br /&gt;
&lt;br /&gt;
=== Previous Summer of Code Experience ===&lt;br /&gt;
As stated earlier I did try to get involved previously.  The project in question was Apache Derby, and due to school I was not chosen as a GSoC participant.&lt;br /&gt;
&lt;br /&gt;
=== Open Source ===&lt;br /&gt;
&lt;br /&gt;
==== Involvement ====&lt;br /&gt;
Although I am not involved in development of any open source projects, I have been quite active in making Open Source a viable option to students on my campus.  This has included informing our first year students (101ers) of the alternatives to such things as Internet Explorer and MS Office.&lt;br /&gt;
&lt;br /&gt;
Along with my student association we have informed students in both Computer Science (and related fields) as well as other students of how Open Source is possible.&lt;br /&gt;
&lt;br /&gt;
=== Gaming Experience ===&lt;br /&gt;
I am a gamer and have been playing video games since I was rather young.  Most of my gaming has been done on consoles, and I only recently got into online gaming (around 2005).&lt;br /&gt;
&lt;br /&gt;
==== What type of Gamer ====&lt;br /&gt;
I wouldn't say that I am a hardcore gamer.  I appreciate games, and can get quite involved in them but I prefer short sittings (1 - 1.5hrs).&lt;br /&gt;
&lt;br /&gt;
==== Game Types ===&lt;br /&gt;
Most of my interest is in turn-based strategy games such as Final Fantasy Tactics, Civilization, Valkyria Chronicles, etc.  I also consider myself a somewhat retro gamer, considering my appreciation for most games on the Super Nintendo.&lt;br /&gt;
&lt;br /&gt;
The fact that Westnoth has that retro-like look is what drew me to it initially.&lt;br /&gt;
&lt;br /&gt;
I also have interests in your typical games types like Shooters and RTSs'&lt;br /&gt;
&lt;br /&gt;
==== Preferred Opponents ====&lt;br /&gt;
Due to how I am rather new to online gaming, I lack an effective strategy for human players.  I prefer to play against AI, though will play multi-player games with friends (usually RTS).  While playing with friends, I use this time to help develop a better strategy for gaming.&lt;br /&gt;
&lt;br /&gt;
FPS is an exception, I just need to work on my twitch skills :(&lt;br /&gt;
&lt;br /&gt;
==== Story or Gameplay? ====&lt;br /&gt;
It would have to be a combination of both.  A game with an awesome story but horrible gameplay typically isn't of interest to me because of the poor mechanics, thus ruining the immersion.&lt;br /&gt;
&lt;br /&gt;
On the other hand, a game with amazing gameplay and no story typically leaves one feeling with no sense of direction or goal.&lt;br /&gt;
&lt;br /&gt;
I feel that there is a balance that needs to be met in a game that makes it both immersive and provides quality game mechanics to keep that immersion existent.&lt;br /&gt;
&lt;br /&gt;
==== Have I played Wesnoth ====&lt;br /&gt;
I have played it from time to time.  I have not spent an extensive amount of time playing the game, but while playing it I found it to be quite enjoyable.&lt;br /&gt;
&lt;br /&gt;
=== Communications ===&lt;br /&gt;
&lt;br /&gt;
==== English ====&lt;br /&gt;
I am completely fluent in English.&lt;br /&gt;
&lt;br /&gt;
==== Player Interaction ====&lt;br /&gt;
I tend to get along with players rather well.  I usually don't waste my time with players who are disrespectful to people in a game.&lt;br /&gt;
&lt;br /&gt;
I have yet to deal with gamer feedback on a game I have been working on.&lt;br /&gt;
&lt;br /&gt;
==== Constructive Advice ====&lt;br /&gt;
I try to do my best to provide the best advice possible to people.&lt;br /&gt;
&lt;br /&gt;
==== Receive Advice? ====&lt;br /&gt;
I try not to take any criticism personally.  I understand that most criticism has to do with what is being done in the code and not at me personally.&lt;br /&gt;
&lt;br /&gt;
==== Sorting out Criticism ====&lt;br /&gt;
I try my best to weed out useless criticism that may lead to dead ends.&lt;br /&gt;
&lt;br /&gt;
=== Project ===&lt;br /&gt;
&lt;br /&gt;
==== Which Project ====&lt;br /&gt;
The project I chose was implementing a [[SoC_Ideas_Stats_Server | Stats Server]].  I would like to implement a much more user friendly version that is both easy to use and easy to add more features to.&lt;br /&gt;
&lt;br /&gt;
==== Why ====&lt;br /&gt;
I am interested in dealing with data, and I have on previous occasions done web app development.  Sirp talked to me on the IRC and recommended this task to me.  After looking at the current implementation and talking to Sirp, I decided that this is indeed a project I would be interested in working on.&lt;br /&gt;
&lt;br /&gt;
==== Timeline ====&lt;br /&gt;
* '''April 15 - April 30'''&lt;br /&gt;
** Become familiar with the data that is stored in the database and what it looks like&lt;br /&gt;
** Analyze the Perl script that Sirp sent me as an example of how things could possibly look like&lt;br /&gt;
** Set up a basic webapp on my dev machine - most likely to be the Rails framework but open to other ideas&lt;br /&gt;
** '''Note''': I have exams throughout the month of April, so there is no definite way I can get everything done perfectly, but I will try my best given the circumstances.&lt;br /&gt;
* '''May 1 - May 15'''&lt;br /&gt;
** Establish a staging server which has either duplicate data from the current implementation or with a large enough subset to be usable for my own purposes&lt;br /&gt;
** Set up a basic framework for extracting the data from the database and displaying it on the page&lt;br /&gt;
** Begin drawing up plans for how the new system will be implemented.  This will probably be done in IRC with Sirp and others to help in determining exact requirements as to what needs to be implemented as well as prioritization.&lt;br /&gt;
* '''May 15 - June 30'''&lt;br /&gt;
** Continued Definition of Features and their Implementation&lt;br /&gt;
*** I want to spend this time implementing as many features that will be required.&lt;br /&gt;
*** This is in no way intended to be fully feature complete but should much of the required functionality in place.&lt;br /&gt;
*** Bugs will most likely still exist by the end of this iteration.&lt;br /&gt;
* '''July 1 - Canada Day'''&lt;br /&gt;
* '''July 2 - July 30'''&lt;br /&gt;
&lt;br /&gt;
4.4) Include an estimated timeline for your work on the project. Don't forget to mention special things like &amp;quot;I booked holidays between A and B&amp;quot; and &amp;quot;I got an exam at ABC and won't be doing much then&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
4.5) Include as much technical detail about your implementation as you can&lt;br /&gt;
&lt;br /&gt;
4.6) What do you expect to gain from this project?&lt;br /&gt;
&lt;br /&gt;
4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?&lt;br /&gt;
&lt;br /&gt;
5) Practical considerations&lt;br /&gt;
&lt;br /&gt;
5.1) Are you familiar with any of the following tools or languages?&lt;br /&gt;
&lt;br /&gt;
    * Subversion (used for all commits)&lt;br /&gt;
    * C++ (language used for all the normal source code)&lt;br /&gt;
    * Python (optional, mainly used for tools)&lt;br /&gt;
    * build environments (eg cmake/autotools/scons) &lt;br /&gt;
&lt;br /&gt;
5.2) Which tools do you normally use for development? Why do you use them?&lt;br /&gt;
&lt;br /&gt;
5.3) What programming languages are you fluent in?&lt;br /&gt;
&lt;br /&gt;
5.4) What spoken languages are you fluent in?&lt;br /&gt;
&lt;br /&gt;
5.5) At what hours are you awake and when will you be able to be in IRC (please specify in UTC)&lt;br /&gt;
&lt;br /&gt;
5.6) Would you mind talking with your mentor on telephone / internet phone? We would like to have a backup way for communications for the case that somehow emails and IRC do fail.&lt;/div&gt;</summary>
		<author><name>Csaunders</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=29218</id>
		<title>SummerOfCodeProposal csaunders</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_csaunders&amp;diff=29218"/>
		<updated>2009-03-24T21:39:58Z</updated>

		<summary type="html">&lt;p&gt;Csaunders: New page: == Introduction == '''This is still being worked on''' === Preferred Email ===  === Nicknames === *IRC - csaunders *Wesnoth Forums - csaunders  === Why I want to participate === I've been ...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
'''This is still being worked on'''&lt;br /&gt;
=== Preferred Email ===&lt;br /&gt;
&lt;br /&gt;
=== Nicknames ===&lt;br /&gt;
*IRC - csaunders&lt;br /&gt;
*Wesnoth Forums - csaunders&lt;br /&gt;
&lt;br /&gt;
=== Why I want to participate ===&lt;br /&gt;
I've been trying to get involved in Open Source for quite a while.  This is my second year trying to get involved.  &lt;br /&gt;
Last year I was a full-time student in the summer and it was in my best interest not to get involved.  &lt;br /&gt;
I am also interested in getting involved because I feel that the mentorship helps make getting involved less imposing on students and those new to the community.&lt;br /&gt;
&lt;br /&gt;
=== Studies ===&lt;br /&gt;
I am currently a 4th year Computer Science student at the University of Ottawa in Ottawa, Ontario, Canada&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
'''None to date'''&lt;br /&gt;
&lt;br /&gt;
== Experience ==&lt;br /&gt;
&lt;br /&gt;
=== Programs / Software ===&lt;br /&gt;
The following is a list of programs and software that I have worked with on previous projects either through school or while on work term&lt;br /&gt;
* Java&lt;br /&gt;
** Lucene - Indexing software&lt;br /&gt;
** LIRE - Tool for Indexing Images&lt;br /&gt;
** Apache Tomcat&lt;br /&gt;
** Apache Xerces&lt;br /&gt;
* C/C++&lt;br /&gt;
** OpenGL API&lt;br /&gt;
** Basic work with pipes and pthreads&lt;br /&gt;
* Ruby&lt;br /&gt;
** Ferret - Indexing Software&lt;br /&gt;
** REXML&lt;br /&gt;
&lt;br /&gt;
=== Team Environment Experience ===&lt;br /&gt;
While on work term I worked in an Agile software development environment in a relatively small company (approx 16 developers).  I was working in a 3 man team for data interpretation from 3rd parties.  The data I was working with was in CSV and XML format and I was required to turn it into a standardized form for our application to use.  Through that term I was required to use tools like '''cut''' quite extensively.&lt;br /&gt;
&lt;br /&gt;
Also in school I have worked in teams from 2 to 4 people for various projects in various roles.  These ranged from documentation and requirement analysis to software development.&lt;br /&gt;
&lt;br /&gt;
=== Previous Summer of Code Experience ===&lt;br /&gt;
As stated earlier I did try to get involved previously.  The project in question was Apache Derby, and due to school I was not chosen as a GSoC participant.&lt;br /&gt;
&lt;br /&gt;
=== Open Source ===&lt;br /&gt;
&lt;br /&gt;
==== Involvement ====&lt;br /&gt;
Although I am not involved in development of any open source projects, I have been quite active in making Open Source a viable option to students on my campus.  This has included informing our first year students (101ers) of the alternatives to such things as Internet Explorer and MS Office.&lt;br /&gt;
&lt;br /&gt;
Along with my student association we have informed students in both Computer Science (and related fields) as well as other students of how Open Source is possible.&lt;br /&gt;
&lt;br /&gt;
=== Gaming Experience ===&lt;br /&gt;
I am a gamer and have been playing video games since I was rather young.  Most of my gaming has been done on consoles, and I only recently got into online gaming (around 2005).&lt;br /&gt;
&lt;br /&gt;
==== What type of Gamer ====&lt;br /&gt;
I wouldn't say that I am a hardcore gamer.  I appreciate games, and can get quite involved in them but I prefer short sittings (1 - 1.5hrs).&lt;br /&gt;
&lt;br /&gt;
==== Game Types ===&lt;br /&gt;
Most of my interest is in turn-based strategy games such as Final Fantasy Tactics, Civilization, Valkyria Chronicles, etc.  I also consider myself a somewhat retro gamer, considering my appreciation for most games on the Super Nintendo.&lt;br /&gt;
&lt;br /&gt;
The fact that Westnoth has that retro-like look is what drew me to it initially.&lt;br /&gt;
&lt;br /&gt;
I also have interests in your typical games types like Shooters and RTSs'&lt;br /&gt;
&lt;br /&gt;
==== Preferred Opponents ====&lt;br /&gt;
Due to how I am rather new to online gaming, I lack an effective strategy for human players.  I prefer to play against AI, though will play multi-player games with friends (usually RTS).  While playing with friends, I use this time to help develop a better strategy for gaming.&lt;br /&gt;
&lt;br /&gt;
FPS is an exception, I just need to work on my twitch skills :(&lt;br /&gt;
&lt;br /&gt;
==== Story or Gameplay? ====&lt;br /&gt;
It would have to be a combination of both.  A game with an awesome story but horrible gameplay typically isn't of interest to me because of the poor mechanics, thus ruining the immersion.&lt;br /&gt;
&lt;br /&gt;
On the other hand, a game with amazing gameplay and no story typically leaves one feeling with no sense of direction or goal.&lt;br /&gt;
&lt;br /&gt;
I feel that there is a balance that needs to be met in a game that makes it both immersive and provides quality game mechanics to keep that immersion existent.&lt;br /&gt;
&lt;br /&gt;
==== Have I played Wesnoth ====&lt;br /&gt;
I have played it from time to time.  I have not spent an extensive amount of time playing the game, but while playing it I found it to be quite enjoyable.&lt;br /&gt;
&lt;br /&gt;
=== Communications ===&lt;br /&gt;
&lt;br /&gt;
==== English ====&lt;br /&gt;
I am completely fluent in English.&lt;br /&gt;
&lt;br /&gt;
==== Player Interaction ====&lt;br /&gt;
I tend to get along with players rather well.  I usually don't waste my time with players who are disrespectful to people in a game.&lt;br /&gt;
&lt;br /&gt;
I have yet to deal with gamer feedback on a game I have been working on.&lt;br /&gt;
&lt;br /&gt;
==== Constructive Advice ====&lt;br /&gt;
I try to do my best to provide the best advice possible to people.&lt;br /&gt;
&lt;br /&gt;
==== Receive Advice? ====&lt;br /&gt;
I try not to take any criticism personally.  I understand that most criticism has to do with what is being done in the code and not at me personally.&lt;br /&gt;
&lt;br /&gt;
==== Sorting out Criticism ====&lt;br /&gt;
I try my best to weed out useless criticism that may lead to dead ends.&lt;br /&gt;
&lt;br /&gt;
=== Project ===&lt;br /&gt;
&lt;br /&gt;
==== Which Project ====&lt;br /&gt;
The project I chose was implementing a [[SoC_Ideas_Stats_Server | Stats Server]].  I would like to implement a much more user friendly version that is both easy to use and easy to add more features to.&lt;br /&gt;
&lt;br /&gt;
4.3) Why did you choose this project?&lt;br /&gt;
&lt;br /&gt;
4.4) Include an estimated timeline for your work on the project. Don't forget to mention special things like &amp;quot;I booked holidays between A and B&amp;quot; and &amp;quot;I got an exam at ABC and won't be doing much then&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
4.5) Include as much technical detail about your implementation as you can&lt;br /&gt;
&lt;br /&gt;
4.6) What do you expect to gain from this project?&lt;br /&gt;
&lt;br /&gt;
4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?&lt;br /&gt;
&lt;br /&gt;
5) Practical considerations&lt;br /&gt;
&lt;br /&gt;
5.1) Are you familiar with any of the following tools or languages?&lt;br /&gt;
&lt;br /&gt;
    * Subversion (used for all commits)&lt;br /&gt;
    * C++ (language used for all the normal source code)&lt;br /&gt;
    * Python (optional, mainly used for tools)&lt;br /&gt;
    * build environments (eg cmake/autotools/scons) &lt;br /&gt;
&lt;br /&gt;
5.2) Which tools do you normally use for development? Why do you use them?&lt;br /&gt;
&lt;br /&gt;
5.3) What programming languages are you fluent in?&lt;br /&gt;
&lt;br /&gt;
5.4) What spoken languages are you fluent in?&lt;br /&gt;
&lt;br /&gt;
5.5) At what hours are you awake and when will you be able to be in IRC (please specify in UTC)&lt;br /&gt;
&lt;br /&gt;
5.6) Would you mind talking with your mentor on telephone / internet phone? We would like to have a backup way for communications for the case that somehow emails and IRC do fail.&lt;/div&gt;</summary>
		<author><name>Csaunders</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SummerOfCodeIdeas&amp;diff=29211</id>
		<title>SummerOfCodeIdeas</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SummerOfCodeIdeas&amp;diff=29211"/>
		<updated>2009-03-24T18:56:12Z</updated>

		<summary type="html">&lt;p&gt;Csaunders: /* GSoC Student pages */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a compilation of ideas from ML. Needs to be refined (more detailed description, deliverables, workload estimation?):&lt;br /&gt;
&lt;br /&gt;
== I want to be one of your Google Summer of Code students, what should I do... ==&lt;br /&gt;
&lt;br /&gt;
Here is a quick list of things to do to get you started&lt;br /&gt;
* Create an account on gna.org&lt;br /&gt;
* Create an account on the wesnoth forum, and tell an admin on the IRC channel to mark is as a GSoC Student account (Admins are boucman, Ivanovic, mordante, Shadow_Master, Sirp and Turuk)&lt;br /&gt;
* Join the irc channel (#wesnoth-dev on irc.freenode.net) and introduce yourself. We will not give formal interviews, but we will clearly favor people we have learned to know during the selection process (basically communication via IRC is mandatory for our project! it is the main way of &amp;quot;every day communication&amp;quot; for Wesnoth. For the same reason, it's also a good idea to regularly read the [http://wesnoth.debian.net/?C=M;O=A IRC logs].).&lt;br /&gt;
&lt;br /&gt;
* Start a wiki page about your idea, add a link on the bottom of this page and add this information on it:&lt;br /&gt;
** List your account names (gna, forum, irc nick) so that we can recognize you&lt;br /&gt;
** Fill the questionnaire on this page: [[SoC_Information_for_Google#Does_your_organization_have_an_application_template_you_would_like_to_see_students_use.3F_If_so.2C_please_provide_it_now.| List of questions to answer]]&lt;br /&gt;
** Detail your idea as much as possible, look at other students pages, and please give milestones and studies you've done&lt;br /&gt;
** Add a link to the page at the bottom of this page&lt;br /&gt;
&lt;br /&gt;
* Though not mandatory, it is highly advisable to go to the [[EasyCoding]] and [[NotSoEasyCoding]] pages and implement one of these ideas (or any idea of similar scope) so we have an idea how you work. Be sure to use your gna account when submitting these patches so we know who it is coming from. You can also implement some features from our feature request database at gna. When you implement something, also list it on your own page with a reference to the patch.&lt;br /&gt;
&lt;br /&gt;
* For working on Wesnoth you have to be able to compile trunk. To do so you should have a look at the [[WesnothSVN|page about svn]] and afterwards [[CompilingWesnoth|compile Wesnoth svn]].&lt;br /&gt;
&lt;br /&gt;
* Once you have everything done here and think your idea is okay, go to [http://groups.google.com/group/google-summer-of-code-announce/web/guide-to-the-gsoc-web-app-for-student-applicants page at google] to submit your application. You have to submit it before '''Date to be supplied later''' or you have no chance to get in!&lt;br /&gt;
&lt;br /&gt;
== List of Ideas for the Project (Suggestions from the wesnoth developers) ==&lt;br /&gt;
&lt;br /&gt;
Here is only a short description of possible Ideas we have, each has a page of its own with a more detailed version on it.&lt;br /&gt;
&lt;br /&gt;
=== Optimize implementation of WML for memory usage ===&lt;br /&gt;
&lt;br /&gt;
Based on this idea: [http://dave.wesnoth.org/?p=9] optimize WML to minimize its memory usage. High memory usage has been a problem for Wesnoth, and this project will aim to reduce it.&lt;br /&gt;
&lt;br /&gt;
=== Implement campaign statistics reports on stats.wesnoth.org ===&lt;br /&gt;
&lt;br /&gt;
Wesnoth has an infrastructure which records details of campaigns that players play into a centralized MySQL database. However, we only have rudimentary reports based on this MySQL database available at this time, at [http://stats.wesnoth.org].&lt;br /&gt;
&lt;br /&gt;
This project would involve writing a stats reporting web site which would take the data from the MySQL database and produce reports in chart and table form. Campaign designers would be able to use these reports to gather feedback on their campaigns and get ideas for improvements.&lt;br /&gt;
&lt;br /&gt;
A student could largely make their choice of infrastructure for creating the Website -- whether they prefer Python, Perl, Ruby, PHP, etc. This is a great opportunity for someone who doesn't want to dive into hardcore C++ to make a valuable contribution to Wesnoth.&lt;br /&gt;
&lt;br /&gt;
[[SoC Ideas Stats Server]] - Full Version of the idea, with detailed information&lt;br /&gt;
&lt;br /&gt;
=== Extending the Multiplayer server ===&lt;br /&gt;
&lt;br /&gt;
Our multiplayer community is generally strong and healthy, but we believe its growth is limited by some problems in the interface of the multiplayer lobby.&lt;br /&gt;
&lt;br /&gt;
[[SoC Ideas Multiplayer server]] - Full version of the idea, with detailed information&lt;br /&gt;
&lt;br /&gt;
=== Addon server ===&lt;br /&gt;
Wesnoth has an addon server which offers users to upload user &lt;br /&gt;
made content (UMC). This allows all other users of Wesnoth&lt;br /&gt;
to easily download and install this content. The server was &lt;br /&gt;
originally written for user-made campaigns but contains a lot&lt;br /&gt;
more types of addons nowadays. Both the server side and the &lt;br /&gt;
client side need to be improved.&lt;br /&gt;
&lt;br /&gt;
[[SoC Ideas Addon Server]] - Full version of the idea, with detailed information&lt;br /&gt;
&lt;br /&gt;
=== WML validation schemes ===&lt;br /&gt;
Wesnoth uses WML as basic data structure. Over the years&lt;br /&gt;
this language has evolved and got more complex. At the&lt;br /&gt;
moment the WML is validated at runtime and in case of a&lt;br /&gt;
problem the engine stops. With schemes these problems can&lt;br /&gt;
be validated when loading the WML, making it easier to find&lt;br /&gt;
problems before running into them.&lt;br /&gt;
&lt;br /&gt;
[[SoC Ideas Schemes]] - Full version of the idea, with detailed information&lt;br /&gt;
&lt;br /&gt;
=== Write a primitive library for Formula AI ===&lt;br /&gt;
&lt;br /&gt;
Wesnoth has always had a simple C++ based AI. David (our lead developer) has been working on a simple language to write AI in Wesnoth: [[FormulaAI]]&lt;br /&gt;
&lt;br /&gt;
The Wesnoth AI is used as an opponent in most campaigns, and as such is an important piece of code for the Wesnoth project. Unfortunately, because the skills required to understand and modify it are rather arcane, it is also one of the most neglected parts of the Wesnoth code. This is a place where a lot of research and useful work could be done. But keep in mind that [[WhyWritingAWesnothAIIsHard|writing an AI for Wesnoth is difficult]].&lt;br /&gt;
&lt;br /&gt;
Writing a whole AI is so complicated that we believe it can't be done in a single Summer of code. All proposals should keep that in mind and try to identify an interesting subset that would be workable in the limited time of a summer of code&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[SoC Ideas FormulaAI]] - Full version of the idea, with detailed information&lt;br /&gt;
&lt;br /&gt;
=== Savegame reorganization ===&lt;br /&gt;
The savegame formats of Wesnoth for single player campaigns&lt;br /&gt;
and multiplayer differ from each other. And they are processed&lt;br /&gt;
differently as well. Now there is an additional request coming&lt;br /&gt;
up: Multiplayer campaigns. The task will be to unify the savegames&lt;br /&gt;
for all types of scenarios in order to provide a maintainable code&lt;br /&gt;
again.&lt;br /&gt;
&lt;br /&gt;
[[SoC Ideas Savegame]] - Full version of the idea, with detailed information&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Other possible ideas to be fleshed out ===&lt;br /&gt;
A MapGenerator rewrite - better scalable for outdoor maps, plus the possibility to define areas (similar to the caverns in the cave generator) etc.&lt;br /&gt;
&lt;br /&gt;
=== Make your own ideas ===&lt;br /&gt;
If you have your own idea the best thing is to join IRC wesnoth-dev at irc.freenode.net and discuss the idea with the developers there. If the developers think your idea is interesting and like the feature you can start to turn it into a full proposal. Once done discuss it again on IRC so the developers can accept your idea.&lt;br /&gt;
&lt;br /&gt;
== Information about our Project ==&lt;br /&gt;
The information we provided google with about our project can be looked up at the site [[SoC Information for Google]].&lt;br /&gt;
&lt;br /&gt;
Also see the [[DeveloperResources]] link (from the [[Project]] page).&lt;br /&gt;
&lt;br /&gt;
== People to bug on IRC ==&lt;br /&gt;
We have prepared a list of people with their &amp;quot;area of competence&amp;quot;. This is to give you an idea on which areas those people can be of help for you. Of course you should always just ask in the IRC chan, but those are the most likely ones to answer questions in the respective area. And here is the list:&lt;br /&gt;
&lt;br /&gt;
[[SoC People to bug on IRC]]&lt;br /&gt;
&lt;br /&gt;
== GSoC Student pages ==&lt;br /&gt;
&lt;br /&gt;
Please add a link to your wiki page below&lt;br /&gt;
&lt;br /&gt;
==== Implement Statistics ====&lt;br /&gt;
[[SummerOfCodeProposal_csaunders | csaunders - SoC Proposal - Stats Server]]&lt;br /&gt;
&lt;br /&gt;
==== AI ====&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_Velory| Velory - SoC Proposal]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_AI_Improvement_Crab| Crab - SoC Proposal - AI Improvement]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_Sparksteel | Sparksteel - Improving the AI engine design]]&lt;br /&gt;
&lt;br /&gt;
==== Savegame reorganization ====&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_Euschn | Euschn - Savegame reorganization]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_lmg| lmg - Savegame reorganization]]&lt;br /&gt;
&lt;br /&gt;
==== Extending the Multiplayer server ====&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_rubend | rubend - Extending the Multiplayer server]]&lt;br /&gt;
&lt;br /&gt;
==== Addon server ====&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_Ryochan7| Ryochan7 - Addon server]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_iyonius| iyonius - Addon server]]&lt;br /&gt;
&lt;br /&gt;
==== Optimize implementation of WML for memory usage ====&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_res| res -  Optimize implementation of WML for memory usage ]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_jdmunro| jdmunro -  Optimize implementation of WML for memory usage ]]&lt;br /&gt;
&lt;br /&gt;
==== Implement campaign statistics reports on stats.wesnoth.org ====&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_Elbin| Elbin - New campaign statistics page]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_Munk| Munk - New campaign stats page]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_carlestyle| carlestyle - New campaign stats page]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_nerwa| NeRwa - New campaign stats page]]&lt;br /&gt;
&lt;br /&gt;
[[SummerOfCodeProposal_mrfinch| mrfinch - New Campaign Statistics Page]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Summer of Code|*]]&lt;/div&gt;</summary>
		<author><name>Csaunders</name></author>
		
	</entry>
</feed>