From Fedora Project Wiki

No edit summary
No edit summary
Line 20: Line 20:


'''Schedule'''
'''Schedule'''
1st week: Researching Errai source code, bus architecture and JMS specification.
# week: Researching Errai source code, bus architecture and JMS specification.
2nd week: Researching CDI, writing short Injection tests using Arquillian.
# week: Researching CDI, writing short Injection tests using Arquillian.
3rd week: Writing a document with a project architecture. Coding starts.  
# week: Writing a document with a project architecture. Coding starts.  
4th week: First iteration: event observers and producers work.  
# week: First iteration: event observers and producers work.  
5th week: Second iteration: adding conditional observer methods.
# week: Second iteration: adding conditional observer methods.
6th week: Third iteration: adding events qualifiers.
# week: Third iteration: adding events qualifiers.
7th week: Testing and bug fixing.  
# week: Testing and bug fixing.  
8th week: Testing and bug fixing. Implementation and testing is finished, everything works now.
# week: Testing and bug fixing. Implementation and testing is finished, everything works now.
9th week: Writing a sample project with usage of CDI events.  
# week: Writing a sample project with usage of CDI events.  
10th week: Writing project documentation. It will make use of sample project written during 9th week.  
# week: Writing project documentation. It will make use of sample project written during 9th week.  
11th week: Polishing the project.  
# week: Polishing the project.  


'''My experience'''
'''My experience'''

Revision as of 22:54, 19 April 2010

About me

  1. Filip Rogaczewski
  2. frogaczewski@gmail.com
  3. rogaall
  4. rogaall
  5. Polish
  6. North of Poland. I would like to work 9-17 UTC
  7. I have been a project leader of an open source project called Flight Controller which aim was to simulate work of Flight Control office. The link is below: http://code.google.com/p/pgfightcontroller/ The application was written using JEE (with Seam Framework, RichFaces and Hibernate) and .NET (Silverlight and WPF). I was doing architecture and implementation. Additionally I had to teach all the technologies to other student from my university. I am personally a big enthusiast of open source community, I believe that open frameworks, applications and especially knowledge can really move world forward.

About my project

Project name: Errai (GWT) integration with CDI events

Project source: The project is on the list: https://fedoraproject.org/wiki/Summer_Coding_2010_ideas#Seam_Framework

Short description Errai is a Google Web Toolkit based framework for building rich web applications made by JBoss. The framework provides uniform asynchronous messaging across the client and server. Aim of the Errai integration with CDI events is to add part of JSR-299 specification to Errai. This project will not only bring this functionality to the Errai project, but will also provide useful knowledge about Errai integration with CDI. It may be used in further development of Errai (like integration with CDI security for instance). While working on the project I will be using Java language. Technologies I will need to research are: JMS, Contexts and Dependency Injection for JEE platform (CDI). As I will be using Weld, which is implementation of CDI, I will need to research the technologies like Google Guice and Seam. Arquillian, another JBoss Project will be used for testing.

Schedule

  1. week: Researching Errai source code, bus architecture and JMS specification.
  2. week: Researching CDI, writing short Injection tests using Arquillian.
  3. week: Writing a document with a project architecture. Coding starts.
  4. week: First iteration: event observers and producers work.
  5. week: Second iteration: adding conditional observer methods.
  6. week: Third iteration: adding events qualifiers.
  7. week: Testing and bug fixing.
  8. week: Testing and bug fixing. Implementation and testing is finished, everything works now.
  9. week: Writing a sample project with usage of CDI events.
  10. week: Writing project documentation. It will make use of sample project written during 9th week.
  11. week: Polishing the project.

My experience Programming is not only my field of study, it is also my hobby. I study Computer Science at Gdansk University of Technology and throughout my education I always had high academic achievements and I would like to pursue PhD after graduation. In addition to studying I try to broaden my perspectives, working on the international projects in IEASTE student organization, where I am a project manager in IT group. Since July 2008 I am doing internship in Lufthansa Systems where I develop JEE applications for both: banking and airline industry. Before that, I was an intern in Plasmon Data Solutions where I was working on helpdesk and system administration. Last semester I have developed a project (http://code.google.com/p/pgfightcontroller/) aiming to simulate work of Flight Control Office. It collects and presents data about plane positions on the application server. While developing this application I have been responsible for architecture, implementation, testing, and additionally teaching other student Java technologies. My biggest projects at work was implementation of SSO at Polish offices, where I was main developer and building banking system. I am enthusiast of JBoss technologies, which I am using at most of my company and university projects. I spent a lot of time using them and I would love to move from consuming towards contributing.


Me and the community

My answer Integration of CDI and Errai will be an important step in Errai development. Breaking this ground may open the Errai project for the features which were implemented by JBoss Community and are now part of Weld. Going on, bringing the services provided by Weld to Errai will make development of rich web application even easier. It will make Errai leverage two cutting-edge technologies: CDI and Google Web Toolkit.