This page is for collecting ideas for UCOSP 2010 students. More information at http://ucosp.ca/about
possible mentor: Boud
possible mentor: Martin (not sure he can go to Toronto yet)
Mobile port to OpenGL ES
KDE's window and compositing manger KWin currently uses OpenGL 1.x for compositing effects. In order to get KWin to mobile devices the rendering has to be ported to OpenGL ES 1.1 and/or ES 2.0. OpenGL ES is a subset of OpenGL, so the code has to be streamlined to use a set of method calls which are both supported on regular hardware as well as on embedded devices. Furthermore the window compositing needs to be reimplemented using EGL instead of GLX. In a second step some of the effects need to be ported to ES. Most of the effects like for example Present Windows will work out of the box, if the rendering system is ported.
This is a very intersting project as it requires to interact with low level painting on both the desktop and mobile system. While in general it is possible to work with emulators, it might be useful to have access to mobile hardware capable of running KDE software.
KDE's window manager KWin is currently missing a set of unique and coherent effects for standard window interaction like open, close, minimize, maximize. KDE's design team Oxygen has proposed some ideas to address this issue. As part of the project it would be required to work together with the designers to elaborate the effects and implement them in the way the designers want them to be. The effects will require the use of OpenGL shaders, so knowledge of OpenGL Shading Language is a plus, but the language is easy to learn, C-like and very nice to work with.
Gluon is a framework for making games. The project is to add multiplayer infrastructure to Gluon using the Telepathy Framework - a framework for real-time communication and collaboration.
Mentors: George and Leinir
together with Novell/openSuse possible mentors: Will and Jeremy
Application for creating tests
We need an application to create tests, the application would have two parts, a server that provides the questions to the students it has attached and every terminal that will receive the questions, show them and send the results to the server. It should use some specific standard protocols also. If that's not enough workload it would be good to have an editor for that too.
We have a file format to store information to be consumed by applications that help to learn languages. It would be good to have an editor to be able to easily create such files instead of editing them inside the testing applications.
Create any education application any student can think about, like all these applications that you would have liked to have in class but never had the occasion :).
Working on a language support
It can go from creating the language support from scratch to providing debugging facilities or documentation providers.
Create visualizations to better understand the code based on the representations provided by KDevelop infrastructure (Project Manager, Language Support and Version Control System).
Use KDevelop infrastructure to create something like what we can find in http://websvn.kde.org/ but adding additional information like the ones we can find in KDevelop itself.