Summer of code‎ > ‎

Summer of Code 2012

NOTE: The selection for this summer of code has ended.

Joseki Bold
invites you to our 2012 Summer of Code!

Pick one or more of the projects below and send your CVs to emilian.bold.public@gmail.com and you could have a paid internship at our company!

The internship may also be used as your University’s mandatory “practica obligatorie de vara”.

Teams of 2 people may be accepted, depending on the project.

The internship will be paid a net of 1200 lei / month on a 6 hour / day schedule. A fixed-term employment contract will be signed.

The work is almost entirely remote! It will require a once-a-week (Skype) meeting with your project mentor to talk about the project and the normal daily online interaction.

Joseki Bold is a modern small software company. The team is split in 3 cities and all work is done remotely. Although small, we have been on the 1st position among software companies in Caras-Severin for the past 2 years and the 8th overall small company in Caras-Severin.1

Feel free to email emilian.bold.public@gmail.com for any questions regarding the program and employment.

Submission deadline: June 15th 2012

Note: This is not a Google-sponsored project. Just another summer of coding happening in Timisoara, Romania.

If you have questions, send an email and read the FAQ.


The projects are:


1. Swing based Git Repository Browser

Implement a standalone Git Repository Browser and Administrator in Java with Swing, using jGit for the low level communication or a local git executable.

Keywords: Java, Swing, git, jGit

Estimated: 2 months

Mentor: Emil

Priority: High

2. UnQL interpreter

Either using an existing prototype or starting from scratch, write an UnQL parser and self-contained interpreter.

UnQL is an SQL superset with a simple syntax that stores JSON data. It’s meant to be the query language for NoSQL databases.

Keywords:

Interpreters: parsers, lexers, ANTLR
Databases: SQL, NoSQL
Data formats: JSON
Languages: Java, UnQL, SQL

Estimated: 1 month

Mentor: Emilian

Priority: High

3. Write test plan and make a first manual test run for a large desktop application

Help us define a new comprehensive test plan for a large desktop application. Make a first test run based on your plan and present a report.

Keywords: testing, manual testing, test plan, SQL, Linux (application install, configuration)

Estimated: 2 months

Mentor: Cristi

Priority: High


4. Export RDF database to a more friendly format: emlx and text/html

We have an existing RDF database that was temporarily used as project manager and issue tracker. Write a conversion script to generate emlx and text/html files for archival purposes.

Keywords:

RDF, emlx, Mail.app, text, html

Estimated: 2 weeks

Mentor: Emilian

Priority: Medium

5. NetBeans Linux notifications

Display NetBeans notifications on Ubuntu using the native API provided. Make this an extension of NBnotify.com . Also make a prototype using the Chrome Desktop Notifications (with a dummy server or a dummy extension).

Keywords:

Languages: Java, Javascript, C/C++
Technologies: JNI

Estimated: 2 weeks

Mentor: Emilian

Priority: Low


6. Global dependency management

Build system and dependency management that includes all the dependencies, including processor architectures and OS versions.

Using something like Puppet or something hand-made and VirtualBox (and/or EC2) we need a build system that will start from bare hardware and using the dependencies for a project build the final artifact.

The idea behind this project is that project don’t have just simple artifact/library dependencies, they also have undocumented dependencies on given compilers, existing interpreters, a particular brand of OS and processor architecture. All this dependency graph should be explicit.

Keywords:

Virtualization: EC2, VirtualBox
DevOps: Puppet, Chef, Vagrant
Dependency management: Maven, apt
Languages: shell scripting, Java

Estimated: 2 months

Mentor: Emilian

Priority: Medium

7. Browse via email

It’s well known that Richard Stallman doesn't use a web browser but instead just emails to a service which crawls that link and emails the result back.

There are also multiple sites providing something like this (http://mailmyweb.com/, http://flexamail.com/, http://www.web2pdfconvert.com/).

Using a crawler we made help us implement a service like this.

Keywords: Java, email, crawler, HTML, CSS, conversion, security, statistics.

Estimated: 1 month

Mentor: Cristi, Emilian

Priority: Medium


8. Dynamically compiled NetBeans

Investigate and implement a prototype NetBeans launcher and module system that compiles everything on the fly. The idea is to have a NetBean distribution that will consist mostly of source-code classes. Only when a module is needed does the system compile it locally to produce a JAR in a cache folder. Ideally not even a whole module, but just the needed classes.

Investigate an update center that will be source-code based and where incremental updates might be patch files.

Keywords:

Build system: ant
Module systems: NetBeans Module System / OSGi.
Languages: Java
App containers: JSP (similar)

Estimated: 2 months

Mentor: Emilian

Priority: Low



1. According to “Topul national al firmelor private” by Consiliul national al intreprinderilor private mici si mijlocii din Romania (CNIPMMR); Lista Firme
Subpages (2): Farewell! Welcome aboard
Comments