Difference between revisions of "User:Zaroth"

From The Battle for Wesnoth Wiki
(Description)
Line 2: Line 2:
  
 
=Description=
 
=Description=
 
+
<h4>Zaroth - Simple Content Manager</h4>
 
I plan on writing a Qt (preferably PyQt) tool used to simplify and provide a layer of abstraction for common VCSes, as described here: [[SoC Ideas Simple Content Manager]]
 
I plan on writing a Qt (preferably PyQt) tool used to simplify and provide a layer of abstraction for common VCSes, as described here: [[SoC Ideas Simple Content Manager]]
 
Description of my proposal on how to tackle this project can be found here: [[Zaroth Simple Content Manager]]
 
Description of my proposal on how to tackle this project can be found here: [[Zaroth Simple Content Manager]]

Revision as of 08:49, 23 March 2011


This page is related to Summer of Code 2011
See the list of Summer of Code 2011 Ideas



This is a Summer of Code 2011 student page
Project: SoC_Ideas_Simple_Content_Manager



Description

Zaroth - Simple Content Manager

I plan on writing a Qt (preferably PyQt) tool used to simplify and provide a layer of abstraction for common VCSes, as described here: SoC Ideas Simple Content Manager Description of my proposal on how to tackle this project can be found here: Zaroth Simple Content Manager

IRC

zaroth

Questionnaire

1) Basics

1.1) Write a small introduction to yourself.

1.2) State your preferred email address.

lukasz.dobrogowski(at)nospamthanks_gmail.com

1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?

Zaroth

1.4) Why do you want to participate in summer of code?

1.5) What are you studying, subject, level and school?

1.6) What country are you from, at what time are you most likely to be able to join IRC?

1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.


2) Experience

2.1) What programs/software have you worked on before?

2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)

2.3) Have you participated to the Google Summer of Code before? As a mentor or a student? In what project? Were you successful? If not, why?

2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.

2.5) Gaming experience - Are you a gamer?

2.5.1) What type of gamer are you?

2.5.2) What type of games?

2.5.3) What type of opponents do you prefer?

2.5.4) Are you more interested in story or gameplay?

2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.

We do not plan to favor Wesnoth players as such, but some particular projects require a good feeling for the game which is hard to get without having played intensively.

2.6) If you have contributed any patches to Wesnoth, please list them below. You can also list patches that have been submitted but not committed yet and patches that have not been specifically written for GSoC. If you have gained commit access to our SVN (during the evaluation period or earlier) please state so.


3) Communication skills

3.1) Though most of our developers are not native English speakers, English is the project's working language. Describe your fluency level in written English.

3.2) What spoken languages are you fluent in?

3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.

3.4) Do you give constructive advice?

3.5) Do you receive advice well?

3.6) Are you good at sorting useful criticisms from useless ones?

At areas that I'm at least a bit proficient in (e.g. coding), sure. But as art goes, I couldn't tell pillow shading from banding ;-)

3.7) How autonomous are you when developing ? Would you rather discuss intensively changes and not start coding until you know what you want to do or would you rather code a proof of concept to "see how it turn out", taking the risk of having it thrown away if it doesn't match what the project want?

I


4) Project

4.1) Did you select a project from our list? If that is the case, what project did you select? What do you want to especially concentrate on?

I chose SoC Ideas Simple Content Manager. Description of my proposal on how to tackle this project can be found here: Zaroth Simple Content Manager

4.2) If you have invented your own project, please describe the project and the scope.

Not invented, but description can be found here: Zaroth Simple Content Manager

4.3) Why did you choose this project?

It provides me with an opportunity to test my

4.4) Include an estimated timeline for your work on the project. Don't forget to mention special things like "I booked holidays between A and B" and "I got an exam at ABC and won't be doing much then".

I would like to be able to start and finish coding a little earlier, due to the heavy-exam time on my university in August. However, to compensate that, I will be able to easily devote a lot of time (and love) to the project during May, June, and first half of July. By the end of 3rd week of July I'd like to have all the planned functionality coded and (mostly) tested. So during the second half of July the only thing left is detailed testing, bugfixing and preparing for my exams.

4.5) Include as much technical detail about your implementation as you can

Zaroth Simple Content Manager

4.6) What do you expect to gain from this project?

Certainly more experience in using Qt toolbox and designing intuitive UIs will come useful in later programming career, especially since Qt is on LGPL now and is becoming all-popular. Bonus points if I get the pleasure to code it in Python, which is always a nice experience.

Last, but definitely not least is a lot of first-rate contact with experienced developers - I hope to pick up a lot of good programming practices from that!

I also want to use this opportunity and at least try test-driven development approach. I have no prior experience in writing unit tests (I have only read about it so far), so I may fail or not have enough time for that.

4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?

A better question is what would make me not stay! I am already an eager, even if not very successful, [ladder] player and I keep meeting friendly and interesting people in Wesnoth community - on the game server, forum and IRC. I see no reasons not to stay so far...


5) Practical considerations

5.1) Are you familiar with any of the following tools or languages?

   * Subversion (used for all commits) - sure, however after I managed to wrap my head around thinking in Git, SVN looks a bit basic
   * C++ (language used for all the normal source code) - yes, it was my first programming language and so far most heavily used by me
   * STL, Boost, Sdl (C++ libraries used by Wesnoth) - STL - good knowledge, Boost, SDL - little knowledge, enough to find what I need and read more on it to get started quickly
   * Python (optional, mainly used for tools) - after writing my last tool in PyQt I can say my skill's more than basic, it's average, but not yet very pythonic and proficient
   * build environments (eg cmake/scons) - CMake - basic, scons - just enough to build something with scons :-))
   * WML (the wesnoth specific scenario language) - basic
   * Lua (used in combination with WML to create scenarios)  - none at all yet, but willing to learn and thanks to an add-on by Aethaeryn it will probably go fast.

5.2) Which tools do you normally use for development? Why do you use them?

For quick and dirty editing I use vim. For bigger projects I use Eclipse (java), KDevelop (my newly found love as C++ IDE) or Kate (Python, I may switch to KDevelop). Tools I use regardless of project are:

  • ack (irreplaceable for me, I love to use it for orientation in bigger projects)
  • Git (after the steep learning curve of DCVS, it's really nice and powerful)
  • Redmine (I would get lost in my personal projects without this)
  • Google (90 % of answers to my questions are there)
  • IRC (remaining 10 % of my coding problems can be usually quickly solved by friendly people from relevant Freenode channel)

5.3) What programming languages are you fluent in?

C/C++ (fluent), Python, Java, Matlab (averagely fluent)

5.4) Would you mind talking with your mentor on telephone / internet phone? (...)

I have no problem with that, but Skype is probably cheaper, unless my mentor is from Germany :-)