Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[ecf-dev] Google Summer Of Code ideas

Hello ECF Team!

I'm a student looking for an interesting project for this year Google
Summer of Code. I've thought about ECF project and have've seen some
cool ideas realized during past GSoCes for ECF:)

Few words about me, what you could expect: I'm BSc/MSc undergraduate
of computer science course at Poznan University of Technology
(Poland), quite experienced Java developer with some basic knowledge
about Eclipse internals, frameworks, APIs - I've finished workshop
(Eclipse Summer School) on developing Eclipse plugins some time ago.
My main fields of interests are distributed systems and software
engineering.

That's how I came here actually... This week was my first direct
contact (on-my-screen) with ECF and Mylyn projects - impressing ones!
What interest me most in these 2 projects, and where I found some
common goals, are ideas how to make distributed development process
easier and more fun.

I've seen 2 ideas proposed related to ECF on
http://wiki.eclipse.org/Google_Summer_of_Code_2008_Ideas site. I
wonder do you have some other ideas that are waiting for some research
and/or implementation, another developer? I've been investigating how
could I extend this project and I've collected some (more or less)
free thoughs/ideas - I'd appreciate your comments on them:) You know
your project best for sure and may see  whether some idea would be
valuable or even possible.

Thoughts, ideas:
// 0) for memory: here should be few ideas that I've found
(un)fortunately already realized in ECF ;)

1) VNC implementation, generally application sharing (also found some
info about it here: http://wiki.eclipse.org/Application_Sharing).
It would be nice to have VNC remote application/desktop as Eclipse
View, and possibly share this session with other developers - invite
them to such session. I can imagine some use cases of
application-sharing: software support, debugging sessions or
presentations. This is the client side of VNC protocol, application
sharing. Another idea is execution of VNC server from Eclipse - for
whole desktop or for selected window (possibly external application or
Eclipse itsefl). Something more than sharing screenshot of selected
area. This could be intersting feature, IMO.
What about realization?
I've read about proposed idea to create some interface for application
sharing with VNC as one of implementation, or some existing interfaces
may be used (e.g. ISharedObject?). This could be used for session
sharing possibly. VNC protocol need to be implemented or some external
library used.
Currently, VNC client plugin for Eclipse exists: VNClipse allowing VNC
session to be handled as Eclipse View, but...  1) it seems to be an
inactive project 2) there may be license issues 3) it's
closed-source(?).
The really problematic matter is running VNC server from Eclipse/SWT.
The best thing would be to have own VNC server implementation in pure
Java. But there is a problem with capturing desktop/application. I've
seen that you can capture screen or part of it from SWT. But can we
register our own GC (graphic context or some another SWT object) for
whole screen, that capture particular area repaint calls, and delegate
these repaints to real GC and VNC server implementation? This would be
ideally, but I'm afraid this maybe impossible from pure SWT as it may
be low-level and system-specific, isn't it? Another solution are
periodical captures of screen/some area, and looking for changes.
However, I imagine that there could be serious performance issues
making latter solution unuseful one. Another problems are mouse and
keyboard capturing of external application window/desktop from SWT. Do
you have some experience related to these issues?
Eventually, VNC server could be called as external system-specific
application (booo) or even there could be no support for executing VNC
server.

2) There are some efforts in area of bulletin-board access API and
implementations. Have you though about Atom/GData/RSS implementation?
This may open some other ways, like Calendar access implementations:
Goggle Calendar by GData API, some other using transport protocol+ICS
format, XML. I believe that such implementations are related to both
protocols and file-formats: is it in scope of this framework? I've
also seen some efforts for Calendar support in Mylyn project.

3) Do current Discovery API implementations allow finding services in
local subnet? This could be useful feature for creating ad-hoc
environments e.g. on some workshop or meeting.

4) Development of File-hosting sites API with possibility of uploading
files, and sharing URLs (using existing APIs?). Example
implementation: rapidshare.com access.

4) SIP implementation, not yet made for ECF(?). I don't have much
experience (except user-side) with that protocol, just wondering how
laborious this task may be...

5) Some of your ideas...?

I also wonder what do you assume in ECF:  could you relay on some
external libraries - protocols implementations? I believe that it may
be not easy to create better API and/or implementation in some cases.
Or is your main goal to create general API, regardless whether
implementations use 3rd parties libraries or not?

Thank you for some comments! I'd be happy to hear  them.

Best Regards,
-- 
Marek Zawirski / zawir
marek.zawirski@xxxxxxxxx


Back to the top