User:Mbivol
From Unknown Horizons - Wiki
Contents |
A: An introduction
- Please describe yourself in two sentences, one of them regarding your current studies.
My name is Mihai Bivol. I am 19 years old and I am studying Computer Science and Engineering at University Politehnica of Bucharest. I consider myself a fast learner and I don't hold back at improving any skills.
- Which languages do you speak?
I speak English and Romanian (mother tongue)
- Why do you want to participate in summer of code? Please also describe your previous experience with the Google Summer of Code, if any.
I want to participate in the summer of code because I consider it a great way to gain experience and meet interesting people. This is my first time applying for GSoC.
From participating to this project I will improve my international communication and work skills. It will also be a great way to enhance my OOP and python programming skills.
If accepted, I will have the fulfillment that my code improved an open-source game, keeping players more entertained.
C: Contact
- Please state the (unique and identical where possible) nick you use on IRC and any other communication channel related to UH.
IRC nicks mbivol, mihaibivol, mihai_
- Which time zone do you live in? Will that change over SoC duration (DST)?
I live in Bucharest (UTC +3)
- Please state the timeframe you feel most comfortable with working in over SoC duration. Where are your time buffers?
My timeframe is very flexible.
I am usually active from 11:00am to 02:30am in my timezone, 8:00am to 11:30pm in UTC timezone
E: Coding experience
This part is one of the more important ones in your application. You are allowed to be as verbose as you want ;-)
- Please describe your experience with python.
I started learning python ~one year ago. This year I started attending Python Bucharest meetings were we have "coding dojos", implementing fun stuff with python. As PyB projects in which I have been involved I can mention the Google AI Challenge bot and Demolition a work in progress 2D physics game using PyGame and PyMunk.
- Please describe your experience with other programming languages.
I also have experience with C and C++, C being the first programming language I have learned in school.
- Please describe your experience with being member of a development team.
Starting this year, I have been attending The free Open Source Development Course (in Romanian: CDL) at my University. My team's project is called "Anjuta Snippets Manager" and it consists of improving the Snippets-Manager plugin for Anjuta.
- Please describe the biggest project you have written code for and what you learned by doing so. Also describe your role in that project over time.
The projects I have been involved with are listed above. By writing code for them I have improved programming skills and the ability to work in a team.
The open-source project I first wrote code for was Anjuta, an IDE developed by GNOME. I have added a new dialog when exporting snippets, more details can be found on the blogpost linked above. From this experience I have learned how to develop UI's using xml files and how to get faster acquainted with new APIs.
F: Feeling fine
- Please (in short) describe your experience with the following tools:
- IRC and mailing lists
Daily use :)
- git or other source code management systems
git is the SCM I have good experience with.
- trac or other bug/task tracker software
I don't have great experience with trac, but as tracker software I have used bugzilla and Redmine.
- wikimedia or other wiki software
I had a crash course with the basic rules of editing a wiki page, as part of my involvement in CDL
- What would make you actively stay in our community after this SoC is over?
I would really like to be a part of it's development because I really like this type of game. I consider this project one with great potential and the idea of helping it grow would mean a lot to me.
If everything goes well during SoC, I want to mentor an UH related project in the next year's Open Source Development Course.
G: Game genre
- Please describe the kind of computer games you play most regularly.
I enjoy playing RTSs, TBSs and FPSs.
- Did you play any game of the Anno/A.D. series?
No.
- If yes, which one(s) and what did you miss most urgently?
- If not, did you play any real time strategy game?
I liked the AOE/AOM series, Stronghold, Port Royale, Battle for Wesnoth
I: Implementing own solutions, creativity
- Please describe your experience with and interest in game design as opposed to implementing predefined features.
I always liked the idea of game design, I like conceiving challenges and features that would keep one entertained for hours, but up until now I had the drawback of not finding a proper team to work with. I have lots of ideas that I would really like to see implemented.
O: Only out of interest
- Did you ever hear about Unknown Horizons before?
No.
- If so, when and where? How far have you been involved already?
- If not, where would you expect or advise us to do advertising?
- What was the first question concerning UH you could not find an answer to in rather short time?
All the questions I had were answered on the IRC channel almost immediately.
P: Prerequisites
- Please describe the operating system you work with.
I currently work on Ubuntu 10.04. I also have Windows 7 and Fedora with KDE installed.
- If you have access to more than one, please state them and the conditions under which you are granted this access.
They are all installed on my local machine.
- Please estimate an average time per day you will be able to (if separated)
- access an internet connection
- access a computer
- access a computer with your progressing work on
I don't have a tight schedule and computer/internet access is definitely not a problem.
- Please describe the degree up to which you can install new software on computers you have access to.
I am experienced with both Linux and Windows operating systems - installing new software will not be a problem.
S: Self-assessment
- Please describe how useful criticism looks from your point of view as committing student.
Constructive criticism will be most welcomed. I actually hope of receiving as much feedback as possible since it will surely help me improve my work. I have no pride issues, I admit when I am wrong.
- How autonomous are you when developing?
- Would you like to discuss changes intensively and not start coding until you know what you want to do?
I like to have a proper plan before starting the actual work. Experience has proven that fast workarounds don't always do the job. I like to have my code well organised and as generic as possible so further features can be implemented without too much hassle.
- Would you like to code a proof of concept to 'see how it turns out', modifying that and taking the risk of having work thrown away if it doesn't match what the project or original proponent had in mind?
I admit that sometimes coding proofs of concept can be useful in working with other developers. Sometimes writing snippets can help you better understand the given task and even discover new ideas. Even so, to be productive one must not implement the first idea that springs to mind.
Y: Your task
- Did you select a task from our list of proposals and ideas?
- If yes, what task did you choose? Please describe what part of it you especially want to focus on if you can already provide this information.
I have selected the Combat system task. I would really like to make a good system in which new units and attack types can be added easily.
- If you apply for a task you have added yourself instead, please describe this task, its scope and people you already talked to concerning it. What field of tasks did you miss on the list?
- Please provide a rough estimated timeline for your work on the task.
- This should include the SoC midterms, personal commitments like exams or vacation ("non-coding time"). Optionally include two or three milestones you expect.
- Pre-SoC:
- Work on different issues;
- Improve the ship routing system that I started working on;
- Get used with UH code and discuss details on IRC.
- SoC:
- 23May - 10June: Exams (~10h / week)
- 19June (from then ~35h / week)
- Implemented basic diplomacy system
- Implemented Weapon and WeaponHolder classes
- Added defense mechanism for all units with health
- 3July
- Implemented the FightingUnit class with basic movement methods
- Implemented weapon building facility
- SoC Midterm 15July
- Implemented fighting ships with UI
- 31July
- Implemented ground unit facility + ground units
- Implemented defensive buildings
- SoC end
- further enhancement and refinement of the combat system
- testing