Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ecf-dev] GSOC 2012 project ideas

Hi Tishan, Jasintha, and others.

Here are some thoughts/ideas about Google Summer of Code projects for ECF.  Many of them are building upon projects that gsoc students have worked on in the past...and then become ECF committers (going from being a gsoc student to an ECF committer is not automatic, but if that's what you want to do and your project is sufficiently valuable, it is a possible path going forward).

Before I describe some individual projects, I should say that recently (over past 1.5 years or so), loosely speaking there have generally been 4 major technical 'themes' for ECF:

1) Remote services - ECF is one of the impls of the OSGi remote services (RS) standard, and the remote service admin (RSA) standard [1].  There's been a lot of work done in this area, and there are, IMHO, potentially several good gsoc project for people interested in this area.  ECF has a 'provider architecture', meaning that it's possible replace the underlying remoting transport (even at runtime), and still remain completely compliant with the RS/RSA standard. 

Some ideas in this area:

a) New distribution and discovery providers:  I've been working on a Restlet-based remote services provider [1a], and other providers are certainly possible...e.g. ones based upon other rest frameworks (e.g. jax-rs), etc.  Also there is desire to have more/other discovery providers (our discovery API is similarly provider-based)...we already have zookeeper, dnssd, zeroconf, slp...and others are certainly possible.  Further, several of the existing providers could probably use some upgrading of versions, etc.

b) A test framework for testing remote services.  Since remote services by definition involve inter-process communication, there is very little in the support for unit testing of network discovery and/or remote services.

c) Assisting in moving the ECF remote services implementation up to the latest version of the OSGi specification.   I don't know what's involved here yet (as I haven't examined the most recent version of the spec closely), but I expect that there will be some enhancements to RS/RSA that ECF would like to support.

d) Example applications, tutorials, and documentation.  ECF has a documentation sub-project [1b]...and it would be very nice to have some more extended/complete tutorials and example around remote services.  In fact, it would be very nice to have some example remote services running all the time...for example to allow Eclipse (and ECF) users to access some service....for communication/collaboration, for remote testing (perhaps coordinated with 'b'), for remote compiling/building, etc.  Plenty of other services are possible (e.g. integration with google, amazon, or other services, etc).

e) ECF has several unique aspects relative to other OSGi remote services implementations:  i) We have support for asynchronous remote services built in already [10]....ii) we have a provider architecture...allowing consumers to 'mix and match' discovery and distribution providers as needed.

2) Example...and/or Full Applications -  ECF's Salvo newsreader is a one such application [2], and there has also been a lot of work with Real-Time shared editing, including using the google wave implementation as a provider [3a]. 

3) Real-Time Collaboration Systems.  ECF has already been used to implement Coffee [4], shared code [5], and other real-time developer collaboration systems.  There is certainly a lot more room for work here, however...and with the emphasis on remote services over the past few years, and the changes in Eclipse (e.g. toward Orion and e4) I think there are a lot more new opportunities here.

4) There was a lot of work in voice-over-ip around 2 years ago...but it seems to have slowed down some.  I'm not really sure why...as I think it would be great to jump-start the work in VOIP again...particularly with the smart phones, etc.

5) Anything having to do with OSGi on servers...for mobile, iPod, Android, iPhone, etc as clients...for real-time collaboration, communication, games (e.g. see [11],[12]) and simulation [13]).

Here are some other useful links...See section s:  'Other Cool Stuff' and 'Presentations' on [6] and [7], [8], [9].

Hopefully this helps. 

Thanks,

Scott



[1] http://wiki.eclipse.org/ECF#OSGi_Remote_Services
[1a] https://github.com/ECF/RestletProvider
[1b] http://wiki.eclipse.org/ECF#ECF_Documentation_Project
[2] http://wiki.eclipse.org/Newsreader
[3] http://wiki.eclipse.org/DocShare_Plugin
[3a] http://wiki.eclipse.org/Google_Wave_ECF_provider
[4] http://wiki.eclipse.org/ECF/Adopters
[5] http://wiki.eclipse.org/ECF/Shared_Code_Plugin
[6] http://wiki.eclipse.org/ECF
[7] http://wiki.eclipse.org/Google_Summer_of_Code_2011_Ideas#ECF:_Salvo.2C_the_Eclipse_NNTP.2FNewsreader_Project
[8] http://wiki.eclipse.org/Google_Summer_of_Code_2010
[9] http://wiki.eclipse.org/Google_Summer_of_Code_2009
[10] http://eclipseecf.blogspot.com/2010/04/asynchronous-remote-services-future-or.html
[11] http://live.eclipse.org/node/543
[12] http://www.eclipsecon.org/2011/sessions/?page=sessions&id=2175
[13] http://eclipseecf.blogspot.com/2011/10/simulation-using-osgi-ecf-remote.html



On 3/29/2012 1:08 PM, tishan pubudu kanishka dahanayakage wrote:
Hi devs,
I am a third year undergraduate at University of Moratuwa, Sri Lanka. I have good knowledge in java and have studied ECF platform a little during the past few days. I went through your project site and wiki. And I found the project is interesting. So I would like to contribute to your project. I already went through your API and also bug list. But still could not find any lead to a good idea to implement. So can anybody enlighten me on this.

Thanks in advance,
Tishan Dahanayakage
Department of Computer Science and Engineering
University of Moratuwa
Sri Lanka


_______________________________________________
ecf-dev mailing list
ecf-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ecf-dev


Back to the top