You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »


General Information

The JBoss Community is planning to participate in Google Summer of Code in 2021.


All students & developers are welcome to participate in the https://summerofcode.withgoogle.com/   program with the JBoss Community (once JBoss Community is accepted by Google)!


You can take look on org page of Summer of Code website for proceeding with the application process.


If you are a student looking forward to participate in the GSoC 2020 with the JBoss Community, feel free to browse the growing idea list below. Please don't hesitate to contact the mentor(s) indicated in the proposal for any related clarification and to discuss proposals. Students can submit the proposals in 2020.

If you want to suggest an additional idea, please use the page GSoC 19 Student Ideas (you'll need a free JBoss Community account to edit the page). Interested mentors can check the student ideas page and sign up to be a mentor by moving the idea onto the main page.

You can also look at GSoC-16 Ideas2017 Ideas2018 Ideas2019 Ideas and 2020 Ideas for suggestions from last years.

A note to mentors

MENTORS: Red Hat employees can change this page directly to add ideas. Please be extra careful to not get other mentor's edits discarded.
Red Hatters should have linked their jboss.org account with Red Hat and can be checked on https://sso.jboss.org/login

Non Red Hatters can add a comment to the page and admins will make sure the idea is added to the page.


Table of Contents

Administrators and Mentors

We will list the potential mentors in this place. For now, if you have any questions, please contact the GSoC administrators:

George Zaronikas (gzaronikas) Ali Ok (@aliok_tr) and Anuj Garg (@KeenWarrior).

This years GSoC is different.

Previously GSoC was 12 weeks with 30 hours/week commitment by students but this year it is 10 weeks with 18 hours/week commitment. So, it is %50 reduced.

Please consider this in your idea proposals.


Communication channels

Gitter    : JBossOutreach/GSoC - Gitter 


Please take note - These channels are about generic doubts. For project specific doubts you will need to contact project mentors and channels specified in the project description.


Notes for students

Points to consider while choosing any project

1. You meet at least 50 percent of prerequirements. Remaining skills can be honed on the go, so don't worry if you lack some.

2. You can relate with the project idea and you have used something related to the project as user.

3. You are willing more toward learning the skills and less toward boasting about the skills you have already.


Suggested steps after choosing favourite project

1. Start to use product/tool/api as user or hello world client application.

2. Setup the development environment for project and start to use your own build.

3. Look for new comer bugs and try to get your head around them.

4. Let us know if you feel stuck at any stage.


Idea template (for mentors)

Project title

Summary of idea:

-Idea

-Feature A

-Feature B

Knowledge prerequisite: Languages/Technologies goes here

Github repo:

Skill level: Beginner/Intermediate/Advanced

Contact(s) / potential mentors(s): Mentor(s) name and contact details

Associated JBoss community project(s):


Idea Proposals


New Drogue IoT protocol endpoint

Summary of idea:

On feature of Drogue IoT Cloud is to normalize the transport protocol from IoT specific protocols to Cloud Events. We currently have endpoints for MQTT and HTTP. However, there are much more protocols out there that could be added, like CoAP for example.

Choosing a protocol you would like to implement must be done as part of the project proposal, and not as part of the project. There is no need to implement whatever protocol you choose from scratch. The focus should be on the integration of the protocol to the cloud deployment, not on implementing the protocol itself.

The current protocol endpoints are written in Rust. However, implementing your protocol endpoint in Rust is not a requirement. Still, it would be a chance for you to learn about an awesome programming language, if you are up for that challenge.

Knowledge prerequisite:

  • Kubernetes
  • Knative
  • Rust (optionally)

Github repo: https://github.com/drogue-iot/drogue-cloud

Skill level: Intermediate

Contact(s) / potential mentors(s): Jens Reimann (jreimann@redhat.com)

Associated JBoss community project(s): Drogue IoT


Implement "Hey Rodney" Drogue IoT demo using Tensorflow (Lite)

Summary of idea:

In Drogue IoT we have an example/demo/PoC, which implements a voice assistant based on our Drogue IoT cloud deployment. There is wake-word/keyword/trigger-word detection, which initiates the audio recording. Once the snippet is recorded it will be processed by a speech-to-text backend and is further processed.

For the wake-word detection we are currently using Pocketsphinx. However, the detection rate is pretty bad. Also it doesn't run on embedded devices.

The outcome of the project should be to use Tensforflow (Lite) to create a model for wake word detection. Additionally a program (script) which continuously listens to audio input (microphone). Once the trigger is detected, it records for up to X seconds, or until it detects silence. A single command is sufficient ("hey rodney"), no full speech-to-text model is required. It is perfectly fine to re-use existing data sets and scripts, as long as they are open source, and we can build this ourselves.

This should be able to run on a Raspberry Pi like device, with the prospect of being able to run on embedded devices (microcontroller) using Tensorflow Lite. Bonus points for actually porting that to a micro-controller, but that is not required.

Knowledge prerequisite:

  • AI/ML - Tensorflow
  • Python (probably)
  • Linux
  • Embedded programming (optionally)

Github repo: https://github.com/drogue-iot/drogue-cloud

Skill level: Advanced

Contact(s) / potential mentors(s): Jens Reimann (jreimann@redhat.com)

Associated JBoss community project(s): Drogue IoT



  • No labels