August'24: Kamaelia is in maintenance mode and will recieve periodic updates, about twice a year, primarily targeted around Python 3 and ecosystem compatibility. PRs are always welcome. Latest Release: 1.14.32 (2024/3/24)
To be filled in now. (The template form for this was created
after GSOC finished. Why? This template form was invented some months
later!)
Status: Completed
Current Developers: Michael Sparks
Current "inflight" dev location:
/Sketches/{RJL|THF|AM|DL}
Start Date: May 2006
Expected End Date: Aug 2006
End Date: Aug 2006
Date this page last updated: 31 December 2006
Estimated effort so far: 9 man months
Kamaelia & Dirac were involved with Google's summer of code this
year - the core aims of this task were to introduce students to open
source in the context of useful Kamaelia & Dirac based
projects.
NB, this page largely discusses Kamaelia's involvement in
SoC.
The end result of involvement is twofold. For the students, there is a
general aim in becoming a better software engineer rather than "just" a
coder). For Kamaelia & Dirac there is an aim to generate a
collection of useful code, & documentation increasing the usefulness
of Kamaelia & Dirac overall, increasing the project's utility and
toolset. Ideally, a good outcome would be for the students to become
fully fledged developers taking part in directing development of the
project and taking ownership of their code. (This is an ideal however,
not an expectation!)
Google have now run summer of code now for 2 years. This year, google
invited organisations running open source projects to apply to be mentor
organisations. BBC Research applied and was accepted. We were granted 6
student slots for Summer of Code. 4 of which were allocated to Kamaelia
and 2 to Dirac. This split represented the fact that the bulk of
applications were for Kamaelia rather than Dirac.
Historically, BBC research has mentored summer/pre-university students
in the past. Furthermore, Kamaelia has an aim of being usable and useful
to the average novice developer - as a result having relatively
inexperienced developers is useful (in practice there was a range of
experience).
Benefits:
Students gain experience of participation in an open source project and seeing how an open source project can be run.
Students learn the difference/discipline of software engineering,
rather than just coding.
Increased understanding of aims & ways of working between Google & BBC Research. (I seriously think this is something that has happened - so far perhaps only between the two teams on either side, but that's a good start!)
An increased set of components for Kamaelia, increasing it's attractiveness to all users
An opportunity to test the ease of use (vs learn) for Kamaelia by relative novices.
An expansion of the problem space which Kamaelia can be used for.
Further development of lightweight project management
processes/crossed with open source best practice. (these project task
pages are in a way a direct descendant of our way of working, combined
with the way we asked students to detail their work)
Task Sponsor: Michael Sparks
Task Owner: Michael Sparks
Developers involved in the task at some point
Users:
Interested third parties
Requirements
The following is the student's own synopsis of their work prior to
starting.
Creation of an integrated BitTorrent component for
Kamaelia
Ryan Lothian
Kamaelia currently lacks a P2P toolset for content delivery. Adding
BitTorrent client functionality to Kamaelia would allow BitTorrent to
act as an end-point for a component chain.
Eventually this could lead to the BBC being able to distribute many
terabytes of its TV and radio archive without incurring massive
bandwidth requisites.
3D widget framework
Thomas Flanitzer
The project will provide a framework for a 3D user interface for
Kamaelia. Several 3D widgets as well as a space manager will be
implemented as components. Using these, a basic 3D user interface will
be easy to create. If there is sufficient time, I will also experiment
with more advanced components, to see in what direction the whole idea
could develop.
An example application that uses all developed components will also be
written. This will most likely be an image browser or video viewer,
dependent on which components will be realized. It will help to collect
experience with 3D interfaces and their use for Kamaelia.
Trusted Communications for Kamaelia Components
Devendra Laulkar
The aim of the project is to provide a Security Framework for
Kamaelia components. Specifically to build a security component to
provide services like Authentication and Integrity to Kamaelia
components. This can help ensure the privacy of the users of the system.
Ensuring privacy would result in an increased trust in the system.
Key Predistribution Infrastructure (KPI) base trusted
communication framework for Kamaelia
Anagha Mudigonda
Kamaelia is set of components that can be assembled to create
media/network apps. However there are no components that address trusted
communication. By developing KPI based trusted communication framework,
BBC Research team can easily enable secure communication for online or
offline media transfers.
Trusted communications project requires a set of components that address
authentication, integrity and privacy. These components will be built
using Kamaelia component architecture principles. These components would
expose high level security abstractions to applications like video
multicast, video mail, whiteboard messaging etc.
This section is largely about WHAT has been produced, normally by WHO
(in order to provide a point of contact)
In the student's own words...
Creation of an integrated BitTorrent component for
Kamaelia
Creation of an Kamaelia component or components able to
Documentation for the new components /ongoing until end of
project/
Given sufficient time the following extra features will also be
implemented
Tracker interaction
...
User interface that abstracts the process from users, presenting a
simple stream/programme selection, reconstructed the stream as the
earlier parts are played
3D widget framework
Will deliver
given sufficient time
Trusted Communications for Kamaelia Components
Core Deliverables:
Key Predistribution Infrastructure (KPI) base trusted
communication framework for Kamaelia
To be filled in.
To be filled in.
To be filled in. Probably cadge the data from the weekly
"done" reports.
This page is a work in progress to capture work on Kamaelia over
the past 12 months. It's difficult to ignore GSOC, but this page was
missing, hence why its been added.
-- Michael Sparks, December 31st 2006