What Nigerian Students at GSoC 2019 are Working on

Ndubuisi Onyemenam
Studevs
Published in
6 min readJun 6, 2019

Every year lots of Nigerian Students apply to the Google Summer of Code. Impressively, the number of Students from Nigeria at the prestigious program has been on the increase. This year myself and other GSoC Students in Nigeria are working to curate our Work with different organizations as a means to inspire developer students in Nigeria to try out open source and also Apply to the Google Summer of Code. Yes we can!

Google Summer of code offers University Students an opportunity to work on open source projects under the mentorship of experienced software Engineers, Designers et al. Students are also eligible to receive stipends if they meet project milestones.

In no particular order here is a list of Nigerian Students at GSOC 2019 and what they are working on.

Project Title:Static Serving

Organization: Oppia

Oppia is a platform that provides collaborative tools for creating free, effective and enjoyable online lessons. Oppia’s aim is to provide personalized tutoring to every single person in the world, especially those whose educational needs are not currently being served well. The Oppia platform allows collaborative creation of interactive learning experiences that simulate a friendly, non-judgmental tutor.

The aim of this project is to move oppia from being server side rendered using python to client side rendering to improve the page load time and increase performance.

Technologies: Python, Javascript, AngularJs, Webpack

Student Info: James, James John

Mechanical and Aerospace Engineering, University of Uyo, Uyo

Catch James on Github, Twitter, linkedin

Project Title: Performance in Musicblocks

Organization: Sugarlabs

Sugar Labs is a community-run software project whose mission is to produce, distribute, and support the use of Sugar, an open source desktop environment and learning platform. Sugar Labs is a member of the Software Freedom Conservancy, an umbrella organization for free software (FLOSS) projects.The main objective of my project “performance in Musicblocks” is to analyze results and determine where Musicblocks performance can be improved, Performance improvements by extension improve user experience.

My Goals for this project is to try and reduce user wait time and time for content delivery. This will make Musicblocks more interactive.

Technologies: JavaScript, Html, Css

Student Info: Kelvin Favour .A.

Microbiology Department, Abia State University

Catch Favour on Github, Twitter, Medium

Project Title: Static Code Analysis Integration and PHPUnit code coverage report Improvements for CiviCRM

Organization: CiviCRM

CiviCRM is a web based open source suite, that allows organizations and individuals build, engage, and organize their constituents. This project aims at integrating static analysis into CiviCRM’s Jenkins tool chain and also improve code coverage reports. With Static analysis included in CiviCRM’s CI/CD , subtle code errors will be easily detected thus making pull request review easy. Static Analysis will also point out possible errors within legacy code. The other part of this project involves improving code coverage reports for CiviCRM core codebase. All of this will lead to better quality assurance bench marks for CiviCRM.

Technologies: PHP, Psalm, Jenkins

Student Info: Onyemenam Ndubuisi

Computer Science Department, Imo State University.

Catch Ndubuisi on Github, Twitter and linkedin.

Project Title: Writing Functional and Unit Tests For Defect-Dojo Tools and Modules

Organization: Owasp Foundation

OWASP DefectDojo is an open source vulnerability management tool used as backbone for security programs. It helps you keep proper record and management of your Product Testing Engagements for easy review and recall. It is easy to get started with and to work on.

This project aims to write Unit Tests and Functional Tests for many of the different functionalities, libraries, and scanners available in this Security Assessment Application.

Technologies: Python, Django, Docker

Student Info: Samuel Ameh (propersam)

Computer Science Department, University of Nigeria, Nsukka

Catch propersam on Github, Twitter, Medium and linkedin

Project Title: Add Support for Custom Resource Definitions to the Dashboard

Organization: CNCF

The Cloud Native Computing Foundation(CNCF) builds sustainable ecosystems and fosters a community around a constellation of high-quality projects that orchestrate containers as part of a microservices architecture. Kubernetes is one of such projects.

The Kubernetes dashboard previously supported Third Party Resources (TPR), but these were replaced in Kubernetes by Custom Resource Definitions (CRD). As a result, the original TPR support was removed in Dashboard, but CRD support has not been added yet. This proposal aims at providing a generic support for Custom Resource Definitions to the dashboard, similar to the previous TPR support.

Technologies: TypeScript (Angular2), Go, Kubernetes

Student Info: Elijah Oyekunle

Computer Science Department, The Federal University of Technology, Akure (FUTA)

Catch Elijah on Github, Twitter, Medium and LinkedIn

Project Title: Ushahidi Platform USSD Integration

Organization: Digital Impact Alliance

Sub Org: Ushahidi

Ushahidi platform is often used for crisis response, human rights reporting, and election monitoring. Ushahidi offers products that enable local observers to submit reports using their mobile phones or the internet, while simultaneously creating a temporal and geospatial archive of events. The Ushahidi platform has been deployed over 125,000 times in over 160 countries.

USSD, which stands for Unstructured Supplementary Services Data, is a protocol that allows for the transmission of information via a GSM network. Users enter a USSD string and press call to send the message. Unlike SMS, USSD messages create a real-time connection during a session, that remains open, allowing a two-way exchange of a sequence of data.

This project will involve developing an application that allows for users to send in reports to ushahidi deployments via USSD on Ushahidi v3.

Technologies: PHP, Python, JavaScript

Student Info: Timothy Olaleke

Computer Science Department, Bayero University Kano

Catch Timothy on GitHub, Twitter, Medium and LinkedIn

Project Title: Reusable visualization tools for Jupyter

Organization: The Virtual Brain(TVB) Under the umbrella of the International Neuroinformatics Coordinating Facility(INCF)

The Virtual Brain(TVB) is a framework for the simulation of the dynamics of large-scale brain networks with biologically realistic connectivity. The Virtual Brain uses tractographic data (DTI/DSI) to generate connectivity matrices and build cortical and subcortical brain networks.

This project is to rewrite the widgets in The virtual brain user Interface to become reusable components which can be employed from a Jupyter notebook for use in the Human Brain Project collaboratory.

As a major feature of The Virtual Brain, anatomical visualization already provides a basic 3D and a 2D output. Further employed to a Jupyter notebook for use in the Human Brain Project (HBP) collaboratory, I can use webgl with the help of Jupyter add-on ipyvolume which is a python library to visualize 3d volumes and glyphs in Jupyter notebook to render it, and Vispy which is a python library for scientific visualization that is both fast, scalable and beautiful.

Technologies: Python, WebGL, IPyWidgets, Jupyter

Student Info: Umar Haruna Abdullahi

Computer Science Department, Gombe State University

Catch Umar on Github, Twitter, Medium and linkedin

Do you have questions about GSoC that you would want any of us to answer? Feel free to drop your comments below.

--

--

Ndubuisi Onyemenam
Studevs

Human @earth, PHP and Node.js Developer. Wait for more .... Hire me @onyemenamndu@gmail.com