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

[pygame] GSoC Application



Hello pygamers,

as I wrote a few weeks ago I'm also interested in the math project for this years GSoC. I know I'm a bit late for feedback but if you have some it definitely is still welcome!

Am I correctly assuming that I should submit this via the GSoC homepage to
the "Python Software Foundation" by Friday April 3rd 19:00 UTC?


sincerely yours
Lorenz



So here is my application:

Student Application to Google Summer of Code 2009

Name: Lorenz Quack

Contact Information:
    email: don@xxxxxxxxxxxxxxxxx
    ICQ  : 149873705

Time Zone: UTC+1

Preferred Language: English, German

Time Commitment:
    I roughly estimate that I could spend about 20-30 hours a week on
    this project with development mainly happening on weekends.
    This summer I have to work on my thesis (German: Diplomarbeit).
    Furthermore I'm teaching C++ at university which will take some
    time to prepare for.
    Nevertheless I am confident that I can complete this project this
    summer while maintaining high quality.

Programming Experience:
    I took some programming classes at school and really got into C++
    in 2003 when I joined the amberfisharts [1] team. There I first
    worked on the engine especially the pathfinding algorithm.
    I was also lead developer on the savage [2] engine which is a
    flexible 2D game engine written in pure python with a pygame backend.
    Furthermore I was involved in the development of pyphant [3] a
    framework for visual data analysis.
    Besides that I have committed some patches to various open source
    projects including python and pygame.
    My experience in numbers:
       C++ 5 years
       python 4 years
       pygame 3 years

Other skills:
    I'm studying theoretical physics so I guess you could count that as
    having some math knowledge.

About my project:
    I want to implement some math functionality (especially linear algebra)
    as a python C extension for inclusion into the pygame package.
    It should provide vector and matrix types in two, three and four
    dimensions. In addition quaternions should also be included for their
    special usefulness for rotations.
    To ensure a seamless integration into pygame I would pay special
    attention to the new types interoperability with built-in types
    e.g. vectors should smoothly interact with other sequence types.
    Also the existing pygame modules should then be changed to take advantage
    of these new types and accept them as arguments to function calls and
    return them where appropriate.
    A test suite is considered mandatory.

The need for this project:
    While I was working on savage [2] I often found myself in need of
    some vector math. I believe that this need is virtually universal in
    game development so having an standard implementation written as an
    C extension for speed seems natural.
    Using other existing packages like numpy often seems overkill and their
    API is too complex since they are targeting a much broader audiance
    with much richer functionality than what is usually needed for game
    development.

Rough time line:
    20. April  -  8. May   : Assess the needed functionality in cooperation
                             with the community and the mentor.
     9. May    - 22. May   : Develop the API.
    23. May    - 27. July  : Write a feature complete implementation with
                             test suite.
    28. July   - 10. August: Optimize the implementation.
    11. August - 17. August: Clean up code, test suite and documentation.

Origin of this proposal:
    I was actually working on this when I stumbled upon the pygame GSoC
    website [4]. There they suggested exactly this project as an GSoC entry.

Further notes:
    I already started work on this project which might compensate for
    my estimated workload falling a bit short of the expected 40 hours
    pensum.


[1] http://www.amberfisharts.com
[2] http://sourceforge.net/projects/savage
[3] http://sourceforge.net/projects/pyphant/
[4] http://pygame.org/wiki/gsoc2009ideas