Skip to main content

GSoC'17 | Drupal




This year I had the utmost opportunity of getting selected for the prestigious Google Summer of Code 2017, as a part of Drupal, the open source organisation to which I contribute. Drupal, is a free and open source content-management framework written in PHP and distributed under the GNU General Public License, provides a back-end framework for at least 2.2% of all Web sites worldwide – ranging from personal blogs to corporate, political, and government sites. Systems also use Drupal for knowledge management and for business collaboration.

The Google Summer of Code, often abbreviated to GSoC, is an international annual program, first held from May to August 2005, in which Google awards stipends, which depends on place of university of the student, to all students who successfully complete a requested free and open-source software coding project during the summer. The program is open to university students aged 18 or over. Students contact the mentor organizations they want to work with and write up a project proposal for the summer. Every participating organization must provide mentors for each of the project ideas received, if the organization is of the opinion that the project would benefit from them. The mentors then rank the applications and decide among themselves which proposals to accept. Google then decides how many projects each organization gets taking into account the number of applications the organization has received, and asks the organizations to mark at most that many projects accordingly.

If accepted, students spend a month integrating with their organizations prior to the start of coding. Students then have three months to code, meeting the deadlines agreed upon with their mentors. In the event of a single student being marked in more than one organization, Google mediates between all the involved organizations and decides who "gets" that student. The other mentoring organization then unmarks the student and marks a new proposal for acceptance, or gives their slot back to the pool, after which it is redistributed.

My project, in which I would be indulging this summer concerns ‘Porting the Ubercart module from Drupal 7 to Drupal 8’. Ubercart is the most popular Drupal E-Commerce platform for your website. It implements everything you need to start selling products online. The UC wish list module​, likewise, adds wishlist/gift registry support to the Ubercart store, an open source ecommerce solution fully integrated with the leading open source content management system, Drupal. This module, for instance, would specifically allow customers to create and administer  personalized wish lists of products in their Ubercart store. Other potential customers could then   refer to those wish lists to get a better understanding about what items they should be purchasing and thereby purchase items on behalf of the wish list creators.

Altogether, the work definitely seems compelling, and with Drupal 8 introducing it’s new concepts making work a lot more easier and interactive, I hope to make the best use of this summer and complete the assigned task within the allotted time frame.
Cheers!

Comments

Popular posts from this blog

GSoC’17 Coding period | Week #8 | UC Wishlist

The eighth week of Google Summer of Code 2017 has come to a close, bringing forth the onset of the Second Evaluation Period. Presently, I've been working on porting the 'Uc Wishlist' module to Drupal 8, under the guidance of my mentor, Naveen Valecha . The conceptualization and understanding developed during the first phase of coding have been of immense help and has provided notable assistance for the completion of the assigned ports. This month, concerning this week in particular saw the completion of a significant amount of work concerning the ports assigned for the Second phase of the coding regime. The work done this week can be briefly described as follows: Fixed the 'Add to wishlist/Remove from wishlist' submit handler for the second port. Previously, on clicking on the add to wishlist button, the screen showed an error page, and the product couldn't get registered. However, the error has been fixed and products can now be adde...

GSoC’17 Coding period | Week #6 | UC-Wishlist

With the conclusion of the sixth week of Google Summer of Code 2017, the Coding regime is nearly halfway through the second phase. The previous week involved some basic albeit important conceptualizations, which have been of immense help and have provided noteworthy assistance for understanding the port functionality. As mentioned earlier, the previous week I had summarised the implementation for the third port concerning the second phase, i.e, porting ‘View/Update wishlist’ functionality. Concerning the above port the following tasks had to be considered: Creating the WishlistViewForm class by implementing the​ Form &​ Module API ​ s, where the forms are created using ​  $form=\Drupal::formBuilder()->getForm( )​ . Providing an interface defining a wish list entity by creating the class UcWishlistInterface by extending ContentEntityInterface and EntityOwnerInterface . The callback: uc_wishlist_display($wid, $mode) is utilised under th...

GSoC’17 Coding period | Week #4 | Drupal

The fourth week of Google Summer of Code 2017 has come to a close, bringing forth the onset of the First Evaluation Period. The conceptualization developed during the first phase of coding have been of immense help and has provided notable assistance for the completion of the assigned ports. As I had stated in the previous blog posts, this month I had the objective of completing the following ports concerning the first phase of the coding regime: Admin wish list settings Add to wishlist  With the conclusion of week 4, I have completed the port of the administrator wish list settings as well as the ‘ Add to wishlist ’ feature as part of the second port. Also for the ‘ Add to Wishlist ’ functionality to work successfully, my next objective would be to add the functionality to view/access the user wish list, on using the button. This functionality would further be succeeded by the option to update the specific wish list, by displaying the required button ...