Google Summer of Code Updates from Week #1

As we already announced, Stratosphere is participating in the Google Summer of Code (GSoC) 2023 for the first time! GSoC is an international program led by Google where students around the world get stipends to contribute to free and open-source projects during the summer. The first bonding period phase is already behind us, and last week the official coding period started!

In this blog, we bring updates on what has been happening, with news from our mentors and contributors.

Learn more about Slips

Updates from Veronica, our GSoC admin

The first coding week started smoothly as we worked with the contributors during the bonding period to put their proposal plans into our task management system, planned some milestones and discussed some possible future issues we may see on the road ahead. We also gave space to our mentors and Slips core developers to give an update of the latest updates on Slips since the GSoC proposals were sent.

We kicked off last week with a meeting with our contributors to give the official welcome to the GSoC and quickly catch up with plans, news, and possible issues they may already have. We have contributors in two opposite time zones, but fortunately we found a time that will work all five of us! 

Finally, last week we had a Google Summer of Code official kick-off meeting for mentors! It was very well organized and with a lot of resources and tips on how to run a successful GSoC. We felt good and on track, and the program managers were very instructive and helpful.

Updates from Daniel, our Slips Performance Contributor

For this week, the main priority was trying to get a basic interface working for a CPU profiling class. However, as I was trying to implement CPU profiling, I realized that there were some changes that needed to be made to the execution flow of the application in order for the profiling to work properly. The way the the CPU profiling works is that a begin() method is called at startup and end() is called before termination and after profiling is ended, statistics can be printed. However, the program terminated itself by making an OS call to exit rather than a graceful shutdown which meant that the print_stats() call for the profiling was never called since the terminate_slips() caused the process to be killed. To fix this, I changed some parts of the ProcessManager() class and the InputProcess() class that were the cause of the buggy termination process.

Updates from Shubhangi, our Slips Performance Contributor

After getting added to all the resources, updated my Monday with further broken down tasks and weekly sprints. This week was dedicated to knowing about the platform, the needs of the users and brainstorming about the problems in the current UI. The following were the results of it:

  • Give a visual overview of the profile 

  • Make the sidebar better by giving more apparent names 

  • Dns_Resolution is not showing up in the table 

  • Tags are pretty broken in general

  • Hotkeys should be enabled to navigate 

  • Add columns for hostname on the timeline 

  • Resize the columns and optimize the space 

I started with prioritizing what should be done first and researched about online frameworks and libraries available to achieve them and decided on keeping bootstrap as the primary one. I added debug mode in the web interface for the future developers. I started with a Figma mockup.

Before you go… Slips v1.0.5 has been released!

This version includes enhanced port scan detection, updated whitelist, improved log storage, expanded module support, enhanced CYST module, DNS answer detection, updated known ports, and more! Learn More.

Article Link: Google Summer of Code Updates from Week #1 — Stratosphere IPS