Enterprise grade Java.
You'll read about Conferences, Java User Groups, Java, Integration, Reactive, Microservices and other technologies.

Tuesday, April 28, 2015

Welcome Google Summer of Code Students 2015 to JBoss

13:30 Tuesday, April 28, 2015 Posted by Markus Eisele
, ,
Google Summer of Code is a global program that offers student developers stipends to write code for various open source software projects. It works with many open source, free software, and technology-related groups to identify and fund projects over a three month period. Since its inception in 2005, the program has brought together over 8,500 successful student participants from 101 countries and over 8,300 mentors from over 109 countries worldwide to produce over 50 million lines of code. Through Google Summer of Code, accepted student applicants are paired with a mentor or mentors from the participating projects, thus gaining exposure to real-world software development scenarios and the opportunity for employment in areas related to their academic pursuits. In turn, the participating projects are able to more easily identify and bring in new developers. Best of all, more source code is created and released for the use and benefit of all.

This is a big GSoC year for JBoss - 13 students accepted! 
Red Hat JBoss Middleware is contributing since a couple of years already and after beginning with 8 students in 2012 we were hovering around that number. This year we had so much support from various projects in JBoss and so many great proposals by students, that we were able to accept 13 students! Another warm welcome from all of us here at Red Hat! 

If you come across any of the names on the project mailing-lists or IRC channels, please make sure to give them a helping hand and support them with their ambitious plans for the summer.

Find out more about recent developments and stay up to date with GSoC 2015 on the Google Open Source Blog. The students will begin posting status updates to their own blogs which will be aggregated via planet.jboss.org soon.

The List Of Projects
Find all the details for the thirteen accepted projects in the following table. Please welcome all of our students and a very hearty "Thank you!" goes out from me to all the mentors! Good luck and success for the next months!

Implement a Database Migration system as a Forge addon
Student: Wisem Zrellli
Mentor: George Gastaldi
Project: JBoss Forge
Database migration is an essential part of almost every web base application. The project consists in creating a Forge addon to support database migration and ensure that all the schemas are in sync with the code. This goes along with Forge Philosophy which is building Java EE in a fast, productive and joyful way. The addon will wrap several features offered by Liquibase migration tool and supports mainly JPA entities.

Hawkular Android Client
Student: Artur Dryomov
Mentor: Daniel Passos
Project: Hawkular
Mobile phones, especially smartphones, came to our life very quickly. We use them every day and sometimes more often than our computers. At the moment there is no way to use Hawkular comfortably on Android, there is only a web interface. This conclusion assumes that some work should be done to provide a new way of user interaction with Hawkular. My work is to implement this idea in an Android application for Hawkular.

jBPM on Android
Student: Supun Athukorala
Mentor: Kris Verlaenen
Project: jBPM
jBPM is a flexible Business Process Management (BPM) Suite which can be accessed by a web based workbench. But cannot be accessed by mobile users. Therefore the idea of the project is to create a mobile UI of the jBPM-console where mobile users can interact some of the features of the jBPM-console. The jBPM core engine itself is a lightweight workflow engine which can be run on android as well. Therefore apart from the mobile UI, a prototype of jBPM on android will be also created.

Hibernate Search Tools
Student: Bocharov Dmitry
Mentor: Sanne Grinovero
Project: Hibernate
Hibernate Search is a powerful project with a lot of possibilities. However, it is in need of the instruments which allow quick experimentation and provide an easy way of indexes inspections. The aim of this project is to create a number of tools for Hibernate Search.

Docker Addon for JBoss Forge 2
Student: Devanshu Singh
Mentor: George Gastaldi
Project: JBoss Forge
The idea is to create a Docker Addon which will facilitate support for Docker Technologies for Forge users. It aims for provide features like an API to support image and container operations , creation of Docker containers for new projects and a Dockerfile linter all enclosed inside a Forge 2 Addon.

Keycloak Certificate Management System
Student: Giriraj Sharma
Mentor: Stian Thorgersen
Project: Keycloak
Mobile, Internet of Things, Bring Your Own Device in general introduces a bigger demand for Public Key Infrastructure. This idea is to enhance Keycloak with Certificate Authority to issue certificates for users, applications and devices. An interesting extension point to the project will be to add support for automatic certificate management by Automated Certificate Management Environment specification (ACME). If feasible this will also delegate to Let's Encrypt for public domains.

Application for "Make Ceylon scriptable"
Student: Miguel Gordian
Mentor: Stephane Epardaud
Project: Ceylon
Making Ceylon scriptable with a CLI.

Java to Ceylon Code Converter
Student: Rohit Mohan
Mentor: Stephane Epardaud
Project: Ceylon
This project idea aims at converting Java code to Ceylon easily through the Ceylon IDE and also as a standalone utility and as a Ceylon command line plugin. The Java code will be converted to Ceylon by copy pasting in the Ceylon IDE and will also be available as a separate tool that can be used from the command line.

Dynamic visual BPMN2 Diff tool for jBPM Web Designer
Student: Roman Procopenco
Mentor: Tihomir Surdilovic
Project: jBPM 
A visual diff tool created for JBPM Web Designer. The tool will provide Change Tracking Graphs that will give to the users an immediate idea about the changes made on the business process. The tool will have different options to help the users understand the changes made on the process such as a comparison of the whole graph, as well as comparison between two sub parts of the process.

Application Development with jBPM and MGWT
Student: Rodrigo Osmar Garcete
Mentor:Mauricio Salatino
Project: jBPM 
I'll improve the design of the application by doing two things: 1. Migrate existing application to version 2.0 of MGWT. 2. Add new functional features that support the mobile world in a clear and transparent way devices.

Hibernate Search with any JPA implementor
Student: Martin Braun
Mentor: Sanne Grinovero
Project: Hibernate
I've been around the Hibernate-Search project for around 1-1.5 years now, starting with "dumb" questions and now I want to contribute actual source code and pay back for the nice help I got :). Basically, my proposal is to implement support for any JPA provider into Hibernate Search, to remove the neccessity of Hibernate-ORM when using it.

Hawkular - pluggable data processors for metrics
Student: Aakarsh Agarwal
Mentor: Heiko W. Rupp
Project: Hawkular
Hawkular-metrics deals with computation of values and operations on the raw data. This project is aimed to develop interface for plugins that improve the performance of Hawkular-Metrics making it more dependable, dynamic and extending the scope of its usage in operating with data sets.Plugins are needed to apply statistical algorithms to the data and compute those necessary functions. Such plugins may be plugged in at runtime whenever user wants it to.

WebPush support for mobile cloud services
Student: Idel Pivnitskiy
Mentors: Matthias Wessendorf, S├ębastien Blanc
Project: AeroGear
AeroGear WebPush is a proof of concept implementation of the WebPush Protocol specification. It allows to maintain a single HTTP/2 connect which can service as many client applications as needed. It also enables the service worker to receive notifications even if the target application of those notifications is not currently active. It would be perfect to add support for mobile cloud services and try it with IoT devices!