Jump to content

GoogleCodeIn/2011/Ideas

From KDE Community Wiki

Guidelines

Information for Students

This page is for collecting ideas for Google Code-in tasks. The tasks will be moved into Melange for you to claim when appropriate.

Adding a Proposal

Please only add proposals you are willing to mentor!

When adding an idea to this section, please try to include the following data:

  • a brief explanation
  • the expected results
  • prerequisites for working on your project if any
  • if applicable, links to more information or discussions
  • your name and email address for contact
  • time to complete the proposal

The proposals should be ordered by area:

    • Code: Tasks related to writing or refactoring code
    • Documentation: Tasks related to creating/editing documents
    • Outreach: Tasks related to community management and outreach/marketing
    • Quality Assurance: Tasks related to testing and ensuring code is of high quality
    • Research: Tasks related to studying a problem and recommending solutions
    • Training: Tasks related to helping others learn more
    • Translation: Tasks related to localization
    • User Interface: Tasks related to user experience research or user interface design and interaction

Inside these areas they should be ordered by difficulty of the proposal (must be one of easy, medium, hard)

If you have a good idea for a proposal but are not going to mentor it, get in contact with relevant team/contributor first.

Ideas

Code

easy

Adding a twitter functionality (probably invalid because too big and missing a mentor)

Description: I wish to have a twitter functionality into the Plasma App "Microblogging".

Expected results: Full implemented twitter

Prerequisites: Knowledge of QML and JS

Time to complete: ?

Mentor:

Help with PlasmaQtComponents

Description: QtComponents are simple ui elements such as pushbuttons, lineedits etc. a version for Plasma Desktop widgets is in progress, a version targeted to apps of tablet devices will be needed as well. good as tasks since are many little independednt code snippets

Expected results: a number of completed components agreed at project start

Prerequisites: Knowledge of QML and JS

Time to complete: ?

Mentor: Marco Martin


Establish Section for KWin Scripts on kde-apps

Description: Users have no way to exchange KWin scripts. A solution is to add a section to kde-apps.org and at the same time request the GHNS integration.

Expected results: Section for KWin scripts available on kde-apps.org

Prerequisites: none

Time to complete: few hours

Mentor: [email protected]

medium

Configuration Module for KWin Scripting

Description: There is currently no way to manage KWin Scripts. A small KCM should be added to just list the available scripts similar to the rules listing. It should be possible to add, import, remove and export scripts.

Expected results: A KCM to list the available KWin scripts

Prerequisites: Qt programming knowledge

Time to complete: 36 hours

Mentor: [email protected]

GHNS integration for KWin Scripting KCM

Description: When the KWin Scripting KCM is available it would be nice to have the possibility to easily download and share scripts. Therefore GHNS integration should be added.

Expected results: GHNS integration in KWin Scripting KCM

Time to complete: 48 hours

Mentor: [email protected]

GHNS integration for Window Switching layouts

Description: The Alt+Tab (Tabbox) Window Switching is about to be ported to QtQuick interfaces. This allows that users could create their own layout. To support this the existing Tabbox configuration module should receive GHNS support.

Expected results: GHNS integration in Window Switching KCM

Time to complete: 48 hours

Mentor: [email protected]

Add QWhatsThis help and Tooltips in KTouch Settings dialog

Description: KTouch Settings dialog is made with QtDesigner pages. You need to edit these .ui files in QtDesigner and add WhatsThis and Tooltips for the visual widgets that are missing them. Tooltips explain shortly what the setting should do and WhatsThis explains it in more details.

References: http://techbase.kde.org/Development/Architecture/KDE4/Providing_Online_Help

Files to work on: ktouchprefgeneralpage.ui, ktouchprefkeyboardpage.ui, ktouchprefcolorspage.ui and ktouchpreftrainingpage.ui in https://projects.kde.org/projects/kde/kdeedu/ktouch/repository/revisions/master/show/src/ui

Expected results: All settings widgets should have tooltips and whatsthis information in KTouch Settings dialog

Prerequisites: QtDesigner basic knowledge, KTouch knowledge, good English writing

Time to complete: 48 hours

Mentor: [email protected]

Improve visualimagecomapre, one of calligras testing tools

Description: Improve visualimagecomapre, one of calligras testing tools. visualimagecomapre is a tool used together with cstester to check the difference between rendering of different versions of calligra output to see if there are regresessions. This tool helps us quite a lot to find regressions and see the improvements and control them. There is one bug and one feature to be implemented. The bug to fix is that the window of visualimagecomapre should not resize if the filename is longer then the screen size. The new feature is to display the number of documents that have changes and the number of the current document.

Expected results: The window does not resize when the document name is longer then the window. The full title should still be visible. The user should be able to see the current/total number of files that have changes.

Additional information: See http://community.kde.org/Calligra/Building on how to build Calligra

Prerequisites: Basic knowledge of C++, knowledge of Qt is a plus

Time to complete: 40h

Mentor: zachmann at kde dot org

Improve visualimagecomapre, one of calligras testing tools

Description: Improve visualimagecomapre, one of calligras testing tools. visualimagecomapre is a tool used together with cstester to check the difference between rendering of different versions of calligra output to see if there are regresessions. This tool helps us quite a lot to find regressions and see the improvements and control them. Add filtering by filetype to visualimagecompare so that it is possible to hide some filetypes when comapring the files. Design a way show the user can select the file types he wants to see.

Expected results: The user needs to be able to limit the number of results by filetype.

Additional information: See http://community.kde.org/Calligra/Building on how to build Calligra

Prerequisites: Basic knowledge of C++, knowledge of Qt is a plus

Time to complete: 40h

Mentor: zachmann at kde dot org

Improve visualimagecomapre, one of calligras testing tools

Description: Improve visualimagecomapre, one of calligras testing tools. visualimagecomapre is a tool used together with cstester to check the difference between rendering of different versions of calligra output to see if there are regresessions. This tool helps us quite a lot to find regressions and see the improvements and control them. Add searching by filename to the userinterface. The search should start automatically if the user types text. The current visible presentation should automatically switch to the next result that matches the searched string.

Expected results: The user needs to be able to search a result by the filename

Additional information: See http://community.kde.org/Calligra/Building on how to build Calligra

Prerequisites: Basic knowledge of C++, knowledge of Qt is a plus

Time to complete: 40h

Mentor: zachmann at kde dot org

hard

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor:

Documentation

easy

Rewrite part of KPresenter documentation

Description: Rewriting of KPresenter's "Step by Step Tutorial" in order to be up to date with the new interface

Expected results: understandeable chapter on KPresenter handbook that explain how to create a basic project and how to use some basic features. Must have screenshoots.

Prerequisites: English language, some basic HTML knoweledge.

Time to complete: 48hrs.

Mentor: [email protected]

Update the Amarok Manual to the latest version (approx. 5x)

Description: The current Amarok Manual refers to version 2.4.0 which is already rather old. The task is to check for each entry if the text and screen shots still apply to the current stable version of Amarok and adapt if necessary.

Expected results: have an up-to-date Manual in Userbase.

Prertequisites: English language,some basic HTML knowledge and basic Mediawiki knowledge.

Time to complete: 48 hours.

Mentors: [email protected], [email protected]

Move KWin Scripting documentation to techbase

Description: The user documentation and tutorial for the KWin Scripting module is currently only in two blog posts written by the author of the module. The documentation should be imported into techbase.kde.org and adapted to the Wiki syntax and integrated into the general structure.

Expected results: have KWin scripting documentation and tutorial in Techbase.

Prerequisites: English language, basic Mediawiki knowledge.

Time to complete: 24 hour

Mentors: [email protected]

Redo KTouch handbook screenshots

Description: Redo all documentation screenshots for KTouch because they are outdated. Get KTouch source from git or ask the mentor to provide you a tarball. Use KSnapshot and read http://l10n.kde.org/docs/screenshots.php in order to redo the screenshots in png format with the default KDE theme and windows decoration.

Expected results: send the new screenshots to the mentor who will commit them in the repository.

Prerequisites: preferably look at KTouch user manual prior to doing the task.

Files location: https://projects.kde.org/projects/kde/kdeedu/ktouch/repository/revisions/master/show/doc

Time to complete: 24 hour

Mentors: [email protected]

Update the Kiten handbook and userbase documentation

Description: Both userbase documentation and handbook are outdated. The task consists on updating the screenshots and features included in the docs to be consistent to the latest version of Kiten.

Expected results: send the updated files to the mentor to commit them.

Prerequisites: In case you don't know Kiten, then install it and use it to see what features it offers you. You will probably need a Japanese font on your system in order to search in the dictionary, or you can copy-paste some words on it. Also look to the KDE documentation screenshots requirements.

Time to complete: 24 to 48 hours

Mentor: Daniel E. Moctezuma ([email protected])

medium

Import KWin Scripting API documentation to techbase

Description: The JavaScript API documentation for KWin Scripting module is currently only available through an application in the KWin source directory which generates an HTML page. The documentation should be made available in techbase.kde.org and follow the structure of JavaScript API documentation for Plasma.

Expected results: KWin Scripting API documentation in Techbase

Prerequisites: Being able to compile source code to generate the API documentation and MediaWiki knowledge

Time to complete: 48 hours

Mentor: [email protected]

Prepare illustrated introduction to integrating Kontact with Google services (to be hosted on UserBase)

Expectation: A set of screen-shots and/or short screen-casts showing how to set up Google integration. They should include setting up forwarded mail from GMail, using GMail IMAP resources, integrating contact information, and integrating Google Calendar with KOrganizer calendar.

Ideally there should be scope for language-independence. This might take the form of animated gifs with a text description suitable for translation, or, preferably, video with the possibility of soundtrack overlays.

Pre-requisites: A working Kontact of the latest stable version, to include a calendar suitable for testing with Google Calendar. A GMail account. Installed software for preparation of animated gifs or full screen-casts. Basic wiki markup skills. An IRC client installed.

Time to complete: 168 hours

Mentor: [email protected] (wiki), [email protected] (Kontact), [email protected](Video)

User documentation for setup and use of Kmail

Description: Kmail is being adopted by more users and should have simple to understand, easy to follow setup and use instructions for people wanting to use it with existing webmail or office accounts.

Expected results: Kmail User documentation in Userbase

Prerequisites: Being able to give clear instructions and proofread.

Time to complete: 24 hours

Mentor: [email protected]


hard

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor:

Outreach

easy

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor:


medium

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor:

Video ad for KDE - Emotions

Description:

Use all your creativity to create an innovating short film promoting KDE. We are looking for an advertise with new ideas that communicate the spirit behind KDE.

Must verse Kde in different platforms. Creativity is very important.

Your video must have a Kde feeling (lettering, imagery, etc.). Must be according to Kde quality standards.

Quality has to be at least 720p, real action, animation or stop-motion. No screen-cast only video and no 3D animation video are allowed.

Every video, sound and image used must be GPL 3.0 or Creative Commons BY-SA. The video license will be GPL 3.0 or Creative commons BY-SA. The work will have a text file with the following information: - License - Authors - Actors - Technical staff - Score

Expected results: An ad (less that 2 minutes) promoting KDE.

Prerequisites: Script.

Time to complete: 1 week

Mentor: Claudio Desideri (happy dot snizzo at gmail dot com)

Video ad for KDE - KDE Everywhere

Description:

Use all your creativity to create an innovating short film promoting KDE. We are looking for an advertise with new ideas that communicate the spirit behind KDE.

Must verse KDE in different platforms. Creativity is very important.

Your video must have a KDE feeling (lettering, imagery, etc.). Must be according to KDE quality standards.

Quality has to be at least 720p, real action, animation or stop-motion. No screen-cast only video and no 3D animation video are allowed.

Every video, sound and image used must be GPL 3.0 or Creative Commons BY-SA. The video license will be GPL 3.0 or Creative commons BY-SA. The work will have a text file with the following information: - License - Authors - Actors - Technical staff - Score

Expected results: An ad (less that 2 minutes) promoting KDE.

Prerequisites: Script.

Time to complete: 1 week

Mentor: Jorge Salgueiro (jorge dot salgueiro at gmail dot com)

hard

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor:

Video ad for KDE - Experience Freedom

Description:

Use all your creativity to create an innovating short film promoting KDE. We are looking for an advertise with new ideas that communicate the spirit behind KDE.

Must verse KDE in different platforms. Creativity is very important.

Your video must have a KDE feeling (lettering, imagery, etc.). Must be according to KDE quality standards.

Quality has to be at least 720p, real action, animation or stop-motion. No screen-cast only video and no 3D animation video are allowed.

Every video, sound and image used must be GPL 3.0 or Creative Commons BY-SA. The video license will be GPL 3.0 or Creative commons BY-SA. The work will have a text file with the following information: - License - Authors - Actors - Technical staff - Score

Expected results: An ad (less that 2 minutes) promoting KDE.

Prerequisites: Script.

Time to complete: 1 week

Mentor: Claudio Desideri (happy dot snizzo at gmail dot com)

Video ad for KDE - Love

Description:

Use all your creativity to create an innovating short film promoting KDE. We are looking for an advertise with new ideas that communicate the spirit behind KDE.

Must verse Kde in different platforms. Creativity is very important.

Your video must have a Kde feeling (lettering, imagery, etc.). Must be according to Kde quality standards.

Quality has to be at least 720p, real action, animation or stop-motion. No screen-cast only video and no 3D animation video are allowed.

Every video, sound and image used must be GPL 3.0 or Creative Commons BY-SA. The video license will be GPL 3.0 or Creative commons BY-SA. The work will have a text file with the following information: - License - Authors - Actors - Technical staff - Score

Expected results: An ad (less that 2 minutes) promoting KDE.

Prerequisites: Script.

Time to complete: 1 week

Mentor: Claudio Desideri (happy dot snizzo at gmail dot com)

Video ad for KDE - Plasma Active (too long!)

Description:

Use all your creativity to create an innovating short film promoting KDE. We are looking for an advertise with new ideas that communicate the spirit behind KDE.

Must verse Plasma Active. Creativity is very important.

Your video must have a Kde feeling (lettering, imagery, etc.). Must be according to Kde quality standards.

Quality has to be at least 720p, real action, animation or stop-motion. No screen-cast only video and no 3D animation video are allowed.

Every video, sound and image used must be GPL 3.0 or Creative Commons BY-SA. The video license will be GPL 3.0 or Creative commons BY-SA. The work will have a text file with the following information: - License - Authors - Actors - Technical staff - Score

Expected results: An ad (less that 2 minutes) promoting KDE Plasma Active.

Prerequisites: Script.

Time to complete: 2 weeks

Mentor: Jorge Salgueiro (jorge dot salgueiro at gmail dot com)

Video ad for KDE - Coming together (too long!)

Description:

Use all your creativity to create an innovating short film promoting KDE. We are looking for an advertise with new ideas that communicate the spirit behind KDE.

Must verse KDE Community. Creativity is very important.

Your video must have a KDE feeling (lettering, imagery, etc.). Must be according to KDE quality standards.

Quality has to be at least 720p, real action, animation or stop-motion. No screen-cast only video and no 3D animation video are allowed.

Every video, sound and image used must be GPL 3.0 or Creative Commons BY-SA. The video license will be GPL 3.0 or Creative commons BY-SA. The work will have a text file with the following information: - License - Authors - Actors - Technical staff - Score

Expected results: An ad (less that 2 minutes) promoting KDE Community.

Prerequisites: Script.

Time to complete: 2 weeks

Mentor: Jorge Salgueiro (jorge dot salgueiro at gmail dot com)

Quality Assurance

easy

Write some backend QA tests

Description: Its easy to test libphonon. Write a dummy backend and throw it all into some unit tests. Its a lot harder to test pgst or pvlc since they aren't exactly suitably designed for unit testing. We would like to have a basic checklist of test situations to run through before a release to make sure all the kinks are found and regressions don't occur. Examples:

  • Open dragon, play a .wav, close dragon.
  • Open dragon, play a .wav, play the same .wav again, close dragon.
  • Open dragon, queue up three .avis, play them, close dragon.
  • Play a DVD and navigate the menus to enable subtitles

Sounds very tedious to try and cover all the bases, but doing so can help teach a *lot* about multimedia software development.

Expected results: Have a nice list of things to test that you can't just stuff in a bunch of unit tests

Prerequisites: Patience, a careful eye, and a willingness to learn the basics of the libphonon API. Maybe some familiarity with basic combinatorics.

Time to complete: 3 days

Mentor: Trever Fischer <[email protected]>, coordination in #kde-multimedia with the other phonon developers, apachelogger and bambee.

Bug triaging: searching for duplicates (approx. 20x)

Description: Many KDE bug reports need to be triaged (checked) before they can be forwarded to the developers. The task consists in selecting individual KDE projects and check the database for duplicate entries.

Expected results: have a better triaged bug database to facilitate the developer's work.

Prerequisites: Having good analytical skills, having read and understood the triaging Guide: http://techbase.kde.org/Contribute/Bugsquad/Guide_To_BugTriaging

Time to complete:48 hours.

Mentor: [email protected], kde-bugsquad, coordination in #kde-bugs

medium

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor:

hard

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor:

Research

easy

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor:

KDE Multimedia Census (too long!)

Description: With the recent(ish) rejuvenation of the KDE-MM community, its probably a good time to step back and have a look at what exactly our community is made of. Some simple statistics would be needed, in order of importance:

  • What projects consider themselves to be part of kde-mm
  • The number of developers on each project, to identify projects in need of help
  • Some background history on some of the developers, so the community can get to know everyone
  • Feedback and suggestions on what "kde multimedia" really means
  • Anything else the minion comes up with ;P

Expected results: Answers to the above questions, silly.

Prerequisites: People skills, basic understanding of simple statistics.

Time to complete: At least 2 weeks, maybe 2.5

Mentor: Trever Fischer <[email protected]>, coordination in #kde-multimedia and the [email protected] list.

medium

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor:

Research Startup Time (invalid, underspecified, too broad and probably too long)

Description:Do logging and analysis for KDE startup components

Expected results: A detailed readout of components and time taken for startup.

Prerequisites: Knowledge of processes and good report writing

Time to complete: 1 week

Mentor: harald[at]gmail.com

hard

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor:

Training

easy

Import KWin Scripting Tutorial into KDE Examples

Description: There is one tutorial for KWin scripting written by the developer. This should be imported into a new kwin scripting module in the KDE Examples git repository.

Expected results: Existing KWin Scripting Tutorial in kde-examples repository.

Prerequisites: basic git knowledge

Time to complete: 24 hours

Mentor: [email protected]

medium

Phonon Demos! (too long!)

Description: More phonon demos! Right now, we have a simpleplayer demo with a very simple UI that plays a file. Simply. Some other things that should be done include demonstrating how to handle DVD menus, audio effects, etc. One significant improvement would be some non-graphical demos. Thinking along the lines of a command line metadata extractor or audio player.

Expected results: More phonon demos!

Prerequisites: C++ and libphonon knowledge.

Time to complete: 2 weeks

Mentor: The Phonominals of #kde-multimedia, maybe tdfischer.


Example KWin Script

Description: An example KWin script should be implemented and added to the kde-examples repository. The script could make a window follow the active desktop, so that it is always on the active desktop but not set on all desktops. This could be useful for e.g. a chat client and is a feature provided by other window managers.

Expected results: Example KWin Script implemented

Prerequisites: JavaScript knowledge

Time to complete: 48 hours

Mentor: [email protected]

hard

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor:

Translation

easy

Screenshots for Ukrainian documentation of Kig

Description: Update and complete Ukrainian screenshots for Kig documentation

Expected results: Complete set of 15 screenshots, synced with English originals.

Prerequisites: moderate knowledge of geometry, basic skills in screenshoting, current stable version of Kig

Time to complete: 24 hrs

Mentor: Yuri Chornoivan [email protected]

Translate strings in a Python Kig script from Italian to English

Description: Download and edit the following script https://projects.kde.org/projects/kde/kdeedu/kig/repository/revisions/master/changes/pykig/pykig.py and translate all Italian strings to very good English ones without altering any markup of the script.

Expected results: All Italian strings are translated to English in this script

Prerequisites: Italian and English excellent speakers and writers, preferred Kig knowledge (install Kig and use it a bit)

Time to complete: 48 hrs

Mentor: Anne-Marie Mahfouf [email protected]

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor:


medium

Russian translation of Calligra Flow stencils

Description: Complete Russian translation of Calligra Flow stencils (desktop_calligra.po, ~1160 short messages)

Expected results: All stencils descriptions should be translated according to KDE Russian Team guidelines without typos, the result should be checked against stencil images from the Flow/Dia repository.

Prerequisites: Good Russian, basic knowledge of physics and computer science.

Time to complete: 168 hrs.

Mentor: Yuri Efremov [email protected]

New Ukrainian sound files for KTuberling

Description: Update and complete Ukrainian sound files for KTuberling

Expected results: New sound files of good quality (should be tested on current stable of KTuberling). Sample list can be found here.

Prerequisites: Microphone, basic skills in audio editor

Time to complete: 72 hrs

Mentor: Yuri Chornoivan [email protected]

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor:

hard

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor:

User Interface

easy

Port Desktop Switching OSD to QtQuick

Description: The Desktop Switching On-Screen-Display is implemented with the GraphicsView framework. For code maintainability this should be rewritten using QtQuick and the existing code should be removed.

Expected results: Desktop Switching OSD with QtQuick

Prerequisites: Basic QtQuick and JavaScript knowledge

Time to complete: 24 hours

Mentor: [email protected]

medium

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor:

hard

example task

Description:

Expected results:

Prerequisites:

Time to complete:

Mentor: