AddonServer

From The Battle for Wesnoth Wiki
Revision as of 17:59, 20 March 2008 by Ivanovic (talk | contribs)

Me

account names:

gna: giebfried

forum: giebfried

irc: giebfried

preferred email: andrewgiebfried@gmail.com

Introduction

Hi, I'd like to participate in Summer of Code primarily to learn first hand how programs are written in a group environment. In addition, working for GSoC will help fulfill some of my academic program's "Work Term" requirements. Currently, I am in first year engineering with the intent of going into computer engineering.

Experience

I have worked on many of my own small to medium-sized programs on various things. I have only worked on individual projects so far. This will be my first time participating in Google Summer of Code. I am not involved with any open-source projects so far.

I am a bit of a gamer, most of the games I find myself playing mostly turn-based strategy games with a few real time strategy games as well. I find game play crucial, but the storyline is still very important. I've played Wesnoth for awhile, probably 2 years. I play single player - mostly with the campaigns but I've also played some multiplayer maps versus the AI as well.

I take advice very well and can discern good advice from useless advice. I am fluent in Java and I know C++ and Python. I mostly use Eclipse to develop code written in Java and C++. I have used Java for over three years and I have used Python and C++ to a lesser extent for over a year. I have two years of AP Com Sci and a year of independent study in computing in high school where I used Java. I currently am taking a required class in basic programming in C++. In my independent study I studied drag and drop, networking, the implementation of the math library, and a simple paint program. I have not used SVN yet, but I will learn it soon. For this project would use a waterfall development model.

Idea

I intend to work on the suggested project on the addon server. I plan to update the existing server code for strong integration with WesCamp and use certain WML tools on content. For the client side, I plan to make the addon server GUI more informative to the user as well as simple and straight-forward to use. I also plan to make updates simple to notice for the client. Translations, Eras, etc would be shown in separate categories from campaigns and easier to download and use for the client.

I plan to spend about half of my time on the server side and half on the client side. I will start working with most of my emphasis on the server side and then work on the client side. For the server side, I will also spend about half of that time on WesCamp work and the WML tools work. On the client side, I plan to work on functionality first and then enhance the GUI. For the GUI I plan to redesign the current screen

I chose this project because it covers many different areas of programming. It incorporates networking, and GUIs, both of which I have some experience already. Also, I feel like this is an important part of Wesnoth that might be overlooked at times since it isn't directly involved with gameplay. After the GsoC ends, I plan to stay with the community; my appreciation for Wesnoth and the friends I will make will keep me in the community.

Practical

After I complete this project I would like to have improved my coding skills and more importantly learn about how coding is done in community projects.

My only spoken language is English and I am fluent in written English. I am awake at 10:30AM to 1:30AM (UTC) an I would not mind talking with a mentor over VOIP.

Short Essay

I wish to join this project for GSoC and beyond because of Wesnoth's strong community I wish to be a member of. The Battle for Wesnoth was one of the first open source games I used. Wesnoth stood out against most of the other games I previously played. It had a professional feel and had a strong sense of how I now view open source.

When I first took Computer Science in High School, I enjoyed the lab time writing programs. However, it took a bit longer for me to realize why. Coding for an assignment was enjoyable, but it was coding with a group of people that was more enjoyable. Talking about our assignments and working as a team was where the most enjoyment came from. I feel The Battle for Wesnoth has the strong community where I won't just be working on my project, but contribute to a project surrounded by a helpful community. To me, Wesnoth is a strong example of an open source project.

Open source is defined by the community that makes it. If the community is strong, the software will also be strong. This community has people all working together to make something worthwhile, for the good of the world. This community is open: it lets anyone come in and contribute ideas, art, code, etc. It also teaches people about everything. The source code given to anyone who wants to read it, however looking at the Wesnoth forums is stronger proof of the teaching power. When someone contributes art, it almost always is improved by the advice of others in the Wesnoth community. The same for translations: this community helps people find the right words for languages that they might not even speak. When I think about open source, I immediately think of the people who make projects like Wesnoth work.

I discovered open source through Linux and Wesnoth. A friend suggested that I should try Linux and I did. However, I decided to choose Debian because it was completely free, although I didn't grasp the true meaning until later. I saw open source as simply source code that could be read. After I finally got KDE to work, I played some of the games that were included on the disks and one of them was The Battle for Wesnoth. When I the main menu appeared, I knew that this game was a work of art; The music, drawings, and the underlying code were all integrated to make a masterpiece. All of this work was done by a group of people not for profit, but for making an excellent game. This was all their work. Wesnoth defined my idea of open source from the naïve notion that it is merely code that can be read to the definition explained above.

I have much to gain working for open source software. I have all the benefits of working for a software company, and much more. I get to meet people across the world. I join an open source community. I will learn many things from this community. I will have an deeper understanding and appreciation for this project. I will improve my developing and coding skills. In addition, I will learn things not directly tied with coding. I may improve my art skills, for example, when I'm working on the GUI for the client with the help of the many artists who contribute to Wesnoth.

I also believe I have much to give to the community. I will be contributing with my project, but I will be contributing much more. This is another reason I wish to participate with Wesnoth for GSoC. This community facilitates communicating with different groups in Wesnoth. I will be contributing to different aspects of this software, it may be art, ideas, maybe even the Latin translation.

I enjoy trying to solve the problems I encounter. Whether in a game, life, developing or programming, I look for problems and try to fix them. It's an engineering thing I think. When I wrote my own programs, I always did something I knew I would have a little difficulty in. I would have to learn how to fix the problem. The satisfaction of solving a problem keeps me wanting to solve more problems. When I am writing part of a program that is not much of a problem, I keep motivated by remembering my goals for the program I'm writing. For the project for GSoC I would also be motivated by my sense of responsibility to the Wesnoth community. My thirst for knowledge also keeps me coding, I find researching what I have to do as enjoyable as designing programs.

I would be honored to work for The Battle for Wesnoth through GSoC.