Saturday, May 29, 2010

GSoC 2010 Data Seeder - First week of coding

So, coding for Google Summer of Code 2010 has officially started. This week I have acquainted a bit more with the codebase and I have successfully managed to set up Eclipse and all the necessary related tools (pylint, code completion, Google App Engine integration etc.), so coding should go smoothly from this point on.

After discovering a small problem with the new GAE version 1.3.4 in the Mercurial repository, I have actually made my first commit related to the data seeder module, yey :D.

Next, I should update my proposed timeline in the wiki to include the second part of the project, and then I'll try to stick to the plan :).

A draft specification of the AJAX communication API between the web-interface and the server-side data seeder module should be ready by the Monday conference call.

Friday, May 28, 2010

GSoC 2010 Melange Testing Project: Week 1 of the Coding Period

The Coding Period of GSoC 2010 has officially started! In this week, I continued to add more test cases for the app.soc.logic.models.base.Logic.getForFields() method, started to commit and push the code to my clone. On this weekend, I will start to add test cases for other methods of the class and hope to complete it before next Monday. Another task on this weekend is to add a tentative project timeline to my project wiki, which becomes clearer after I discussed with Sverre tonight. Next week, I hope to complete the job of adding test cases for app.soc.views.models.base.View and some other pairs of logic and view, e.g. role and user. Anyway, time flies. Therefore I need to fly as well so that I can catch it or at least not fall far behind :-).

In this week, I also came across a nice book titled Programming Google App Engine from Dan Sanderson who has excellently explained the difference between GAE runtime environment and traditional web hosting or self-managed servers, the difference between GAE datastore and traditional relational databases, and pointed out the special consideration and strategies for building a scalable, responsive and optimized app upon GAE due to the difference. In addition, the book also covers basic things about GAE, e.g. how to set it up and how to build an app step by step as well as more advanced tools, e.g. the URL Fetch service, the Mail service and the XMPP service. So, it is highly recommonded for both beginners and intermediate users who want to make best use of GAE.

Week 4: Code-base and Coding

The first official week of GSoC has gone by, and I have officially started coding. I have started off with the User Pages feature. I created a directory structure as my project is to appear as a module in the soc.modules folder. I started coding the data model(soc.modules.social.user_page) and View(soc.modules.social.views.models.user_page) for the User Page. However, I realized I need to get a better grip on the code-base and how things work with regards to code before I can go ahead with the actual coding for my project. Hence, over the weekend and the week after, I am going to acquaint myself with the code-base and get as best an understanding as possible and then proceed on with the actual coding of completing the View and then the templates etc.

This of course, sets me behind time with regards to my timeline :-(
However, I have decided to put in extra time and work extra hard this weekend and next week to strive and catch up with my User Page feature so that by my next post, I will have progressed to having a better, working User Page feature :-).