Tuesday, July 19, 2011

GSoC 2011 Integration with External APIs: Proposal Sync - W8

Sorry for late blog post. First evaluation results of GSoC 2011 was announced. I passed first evaluation and I'm very happy for it :) My first deliverable "proposal sync" is still in review process. But my guess is it's mainly complete and just needs code design fixes. I'm busy with fixing my patches for a few days. My patches are mostly contains JS code and I wasn't writing quality JavaScript code before but just ones that saved my days. Not suprisingly Mario pointed out lots of bad design choices in my code. I want to mention a few of i learned :

* Always use === and !== instead of == and !=, These operators also checks if operands are same type besides their values are equal.

* Do not rely on content of DOM elements. Do not use them as variables. Create global variables instead.

* Using if and else without braces if they have only one statement is tricky. This later may cause someone not to notice there are no braces, and put a statment outside of else scope, while thinking it's in the scope.

* Melange JavaScript Guide also has good tips, for readibilty and quality of source code.

From now on, i will also start to work on Melange lists. We basicly want all Melange lists to have upload option to Google Docs. Melange lists are built-on jqgrid library which allows easily create and manage interactive HTML tables. We need a generic button that will work for every list without extra configuration, so someone creating a new list will not take care about how it forms it's data and uploads itself to GDocs.

That's all about me. See you next week and cheers :)

Sunday, July 17, 2011

GSoC 2011 Melange Testing Project: CP W8 Mid-term

Hi,
I have completed the logic tests and the task for post mid-term period is to write the tests for all the gsoc.views modules. Leo and I had a discussion after the last conference call and we decided to prioritise which modules should be tested first. A survey of the modules which have tests and which needs to be tested can be found at [0]. Accordingly, I have to first test gsoc.views and gsoc.tasks and then go on to write the functional tests. I am presently working on gsoc.views.student_forms and stopped working on soc.views.helper.access_checker.
I have no experience with Django and I spent some time studying the basics and  then asked Madhu some doubts that I had got while studying the view's code. I will develop pace as I get experience with the views.
    This week was also assigned for mid-term evaluations and Leo has passed me :). My classes are starting from 20th July and I need to manage both gsoc and classes. The last two days went in travelling to the university and the next two days will go in registration and shifting to the new hostel room.

[0] https://spreadsheets.google.com/spreadsheet/ccc?key=0AuENNrqFbxWEdDJMclZySzFUalpsUTd6bzNJTjJGVlE&hl=en_US#gid=0

GSoC 2011 GUI Overhaul: Things that I've been working on last week

Hi everyone,

As we already knew, mid term evaluation already passed. I contacted my mentor, Daniel, about the result of my mid term evaluation. Daniel told me to focus on the remaining works that need to be done. If you're following my discussion on the mailing list, there are obviously requested features in accordance with my project scope. Here's the list of thins I've been working on from the last week :
  • Account management. Sverre posted on mailing list about the problem he encountered by manually modify accounts using stats.py. Sverre gave some possible use cases:
    1. People have their profile migrated, their email address stays the
      same but their user_id changes, the User.user_id property needs to be
      set to None.
    2. People have a @gmail.com or @googlemail.com address attached to
      their @some.domain.com address, and their User.account needs to be set
      to the new address.
    3. Lennie added his suggestion for ban user feature.
  • Regular dashboard using iconic information. Daniel said to me give a shot for iconic dashboard for regular users (students and mentors). This means there will be two options to vote later, toggleable list and iconic dashboard. Toggleable list has been reviewed by Mario and I've made some adjustments (not posted yet).
  • Leo gave some review on my test for withdraw projects view. I need to fix the test.
  • Lennie asked me to make the evaluation links 3 level deep. I've sent the patch, no response yet.
  • Participant locations statistic.
I will post the patch for the above features on Monday, or lately Tuesday. After that there will be one week to review all the patches before going to be pushed.