[lsb-discuss] Google Summer of Code 2009: Student application

Till Kamppeter till.kamppeter at gmail.com
Fri Apr 3 04:13:03 PDT 2009


another student applied to do the OpenJDK project in this Google Summer 
of Code. See the application below. If someone of you wants to mentor 
him or participate in evaluating his application, please sign up as a 
GSoC mentor for the Linux Foundation (organization link ID: LF) on 
http://socghop.appspot.com/. This does not oblige you to actually mentor 
this student.



Title:  	 Make OpenJDK LSB Compliant
Student: 	pavel shved
Mentor: 	No mentor assigned
Possible Mentors: 	None
Including Java as a mandatory component in the LSB (similar to the 
support of Perl and Python) has been difficult due to some non-technical 
issues. I recognize the importance of Java and would like to provide a 
pathway for Java application to become LSB certified. Therefore, the 
creation of an LSB certifiable JRE is very important to community and a 
number of Java application providers. My aim in this project is to patch 
source code and building scripts of OpenJDK for it to become LSB compliant.

My name is Pavel Shved, I'm a male human of 20 years old.  If you meet 
me in IRC or across the web, I'll most likely use nickname `shvedsky'.
I study in Moscow (Russia), the city is GMT 3+.
Email: pavel.shved at gmail.com.

PROJECT - ,,Make OpenJDK LSB Compliant''
My aim in this project's framework is to make OpenJDK a compatible 
application (since other ways to standartize it are hampered).  This 
would specifically benefit application developers that use Java and 
would like to rely on LSB platform.

I think that LSB lacks support from developers.  Certanly, presence of 
many of LSB compatible environments will fill this gap.  That's why I 
picked this particular idea.

I'm going to spend 40h per week during the summer (only 32 in the end of 
May though).  I'm sure I will carry the project good enough, as I had 
prior experience with LSB and automatic analysis of source code of C++ 
libraries.  I investigated C++ shared libraries binary compatibility 
problems (and even filed a couple of bugfixes to LSB bugzilla), through 
which I had acqaintance with LSB internals.
I have few experience with Java but the basics would be enough for this 

23 May:  study source code of OpenJDK, analyze it with LSB App Checker, 
and determine the key problems preventing it from being LSB compatible. 
  Study OpenJDK build system and portability support infrasturucture.

05 June: determine particular subroutines that comprise incompatibility. 
  Study what can be eliminated by following LSB guidelines (by studying 
interfaces in LSB Navigator, mailing list archives and live IRC contact 
with LSB maintainers). Study low-level parts of JDK (such as I/O, memory 
allocation systems) more thoroughly to find the ways to solve 
incompatibility in non-obivous cases. Query OpenJDK developers with 
elaborated questions whether the intervention in the most obscure parts 
of code won't arise any known issues.

25 June: fix the most obvious and `lightweight' problems.  Prepare 
`application battery' to superficially test the correctness of the code. 
  Prepare automatic speed measurement  with SPECjvm benchmark.  Get 
replies from developers and discuss the questions and contradiction 
arisen (with them and LSB workgroup).

10 July: Fix issues that required collaboration with developers.  Fix 
the build system of OpenJDK to allow automatic LSB build or prepare the 
script that runs it, whatever seems suitable.

25 July: Prepare several patchsets for JDK: to satisfy JDK developers 
and to make JDK lsb compatible by any means.  Summarize previously 
unknown issues aboud carrying application to LSB compatible state.

10 August: pencils-down date; prepare final documentation and reports.

I study in Moscow Insititute of Physics and Technologie (State 
University), where I'm taking a Masters program on applied mathematics. 
  However, my main goal has always been CS, so I took various courses in 
this area: Relational Database Systems, Computability Theory, Theory and 
Implementation of Programming Languages, Computational Complexity 
Theory, Compiler Optimization,  Effective C++ Programming  etc.  I truly 
enjoy studying of new algorithms and programming languages.

As of my programming skills, I have considerable experience of them.  I 
know Pascal/Delphi, that I used in programming contests in school.
Nowadays I use C/C++ and modern interpreted languages like Ruby and 
Perl, along with scripting ones like GNU Make's language and bash.
I code on Intel x86-64 platform under different GNU/Linux systems, I'm 
familiar with the way Linux programs are developed and distributed.

More information about the lsb-discuss mailing list