[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[pygame] My GSoC student project proposal. Please have a look :)



Your Name
Contact Information. This should include your email address and IRC
nick; Gtalk, AIM, MSN, or other modes of communication are optional.
Time Zone and Preferred Language (spoken, not programming)
Time Commitment. Briefly explain how much time you would have over the
summer to complete your project, and any significant other time
commitments.
Programming Experience. This can include personal, open source,
school, or professional projects you have undertaken or helped with.
URLs would be very helpful.
Pygame Experience. Describe any experience you have using or developing Pygame.
Other skills and experience that are of interest for your aplication
(e.g. in-depth math knowledge, excellent writing and documentation
skills, etc.)
1. Hi, my name is Piyawut Pattamanon. I have graduated from
Chulalongkorn University (Thailand) in Computer Science. I'm now a
master degree student in Business Adimistration at Chulalongkorn
University. I would like to participate GSoC in pygame development.
Writing games is one of my hobbies and I like scripting languages like
Ruby/Python because of the productivity they provide. That's why I
think it would be good if I choose to contribute to pygame in GSoC.
Nice to meet you.

The project I would like to take is the "Improved graphics format
support" stated in http://www.pygame.org/wiki/gsoc2010ideas . I think
I could add some more graphics format support to pygame.

2. My e-mail address is samnarak@xxxxxxxxxx I usually use Gtalk.
I also have an MSN account iamloongsam@xxxxxxxxxxx but I'm not usually
online. (I can be online on MSN if needed though)

3. My Time Zone is GMT +7. Anyway I think time zone difference is not
that really much a problem if we use e-mail / forum. (I usually
contact my team using these methods)

My preferred languages : English and Thai.

4. I usually have my free time 7-8 hours a day and I usually use it
for programming in my projects (plenty of them). I think I don't have
a problem about time commitment for GSoC though. I just have to stop
creating other new projects and reserve the time for GSoC (if I'm
accepted)

5. I have 10+ years of experience as a programmer. I started studying
programming (in the free time) when I was 14 years old. Now I'm 26 and
I have never stop programming. I have participated (and won) many
local programming contests and software development competitions.

I can write in many languages, starting from Pascal and C for
programming contests in my early time. Later I learn to program in
Java, C++, Visual Basic, PHP, ASP, C#, Perl, Ruby, JavaScript, HTML,
XML, PL/SQL (Oracle), SQL, ActionScript3.

I also have an experience developing scalable server applications
using many techniques such as caching, load balancing, algorithm
complexity optimization, etc.
I have even ever done a ROM Hacking as a hobby (a long time ago).
These skills might not be directly related to the project I'm to take
in GSoC 2010 though but it's just to show how much experience I have
approximately.


6. To be franky, I have never used Pygame that much but I have many
experience in many other library/engine, namely, SDL, Gosu, OGRE3D. I
think that the task I'm to take is not that far from what I have ever
done. From what I skim from the documentation, I think the API of
Pygame is quite similar to Gosu and SDL. I think I can read and create
a dummy game just in 2 days (if needed / I need to save time now)

Long time ago, I have ever evaluated Pygame for one of my projects but
discard it eventually because I can't afford to invest time to study
Python as a new language at that time and I chose Gosu in Ruby which
is the language I'm already experienced at that time instead. By the
way, I have 2 years experience as a Python programmer now. One of my
recent projects is a Google App Engine application using Django as
framework, which, we know, use Python as language.

7. I have a level of communication skills. I can write well-organised
and readable documents.
 I have an experience being a negotiator, a project manager and a
forum moderator. I usually have to communicate, coordinate and deal
with a lot of people from different backgrounds.

I have an extensive problem solving skill. You can know it from the
fact that I've trained my self to compete in programming contests and
have done many development projects in my spare time. I can tackle
technical issues, think of solution for problems, by my self . . .
mostly.

-----------

Here is a draft of the timeline. I post it here in case some one can
help me revise it.

April 26
(if I'm accepted)
I think I can start some things on my own now. It's already summer in
my country.

install pygame and write a "hello world" game

May 24
see the current image format support capability of pygame, what it
already can and can't.

May 7
see how to build the source code . . . without knowing anything about
the structure of the source code
I think my potential mentor will be able to help me save a lot of time
of trials & errors.

May 14
see the structure of the code. see where can I insert my code to.
I think suggestions from mentors is very cruicial in this step.

May 21
research (& develop experimental stand-alone application prototypes)
about using image libraries
I have an experience using FreeImage in C and RMagick in Ruby and GD
in C/PHP/Ruby. I think, a least, I don't have to start from 0. I can
still do binary things in case the result of the research is that
those library couldn't help though. In the worst case, I think I can
still add at least 1 new image format support to pygame.
As mentioned earlier, a experimental "hello world" prototype
stand-alone application that isn't blended into pygame yet will be
done (hopefully).
I will write a document recording what I try and what are the results.
Report to my mentor in a daily basis.

July 12
Mid-term evaluation

July 12
Inject the code from a working prototype into pygame code.
Test & fix cycle.
I have to report progresses to my mentor in a daily basis so that he
can help me if I have problems.

August 7
Submit it back to the repository of pygame and write the final documentation.

August 16
Final evaluation

-------------------

Thank you for having a look at my proposal :)