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 [email protected]. I usually use Gtalk. I also have an MSN account [email protected] 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 :)
