GoogleCodeIn/2012/Ideas: Difference between revisions

From KDE Community Wiki
(add Mentoring category)
 
(109 intermediate revisions by 17 users not shown)
Line 1: Line 1:
[[Category:Mentoring]]
= Guidelines  =
= Guidelines  =


Line 34: Line 36:
== Code ==
== Code ==


=== KDE Telepathy: Allow the user to configure the theme for group chats===
=== KDE Telepathy: Allow the user to configure the theme for group chats ===


;Description: Currently a user can configure the theme used for normal 1-1 chats, but group chats are hardcoded to use a different theme. We should have a way to configure which theme is used for group chats as well
;Description: Currently a user can configure the theme used for normal 1-1 chats, but group chats are hardcoded to use a different theme. We should have a way to configure which theme is used for group chats as well
Line 45: Line 47:
(#kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))
(#kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))


=== KDE Telepathy: Provide an option on whether to go offline when the contact list closes===
=== KDE Telepathy: Provide an option on whether to go offline when the contact list closes ===


;Description: Currently when a user goes offline they remain online if the presence applet is visible, otherwise it shows a prompt "Do you wish to go disconnect your accounts y/n".  If a user selects the option "Do not show again" this never appears again and the user can never change this. Student should add an option in KDE Telepathy to say what should happen when the contact list closes.
;Description: Currently when a user goes offline they remain online if the presence applet is visible, otherwise it shows a prompt "Do you wish to go disconnect your accounts y/n".  If a user selects the option "Do not show again" this never appears again and the user can never change this. Student should add an option in KDE Telepathy to say what should happen when the contact list closes.
Line 57: Line 59:
(#kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))
(#kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))


=== KDE Telepathy: Make presence applet use Plasma theme icons ===
;Description: Our current presence plasmoid uses standard oxygen icons and does not really fit the rest of icons in systray, which are all monochrome. These monochrome icons are defined by Plasma theme. The task is to update our code to load the monochrome icons if they are available, or use the current oxygen ones if not. All needed steps are written down in the bugreport (look at comment #14).
https://bugs.kde.org/show_bug.cgi?id=302993
;Prerequisites: C++, Qt
;Mentor:
Martin Klapetek; The KDE Telepathy Team
(mklapetek [at] kde.org; #kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))


=== Amarok: Check Copyright Headers and Collect Contributor Email Addresses ===
=== Amarok: Check Copyright Headers and Collect Contributor Email Addresses ===
;Description: Amarok should be GPLv2+ licensed throughout, but not all license headers seem to contain the correct statement. Some files even miss a license header. If there is a incorrect license stated in a header the copyright holders should be contacted before making the fix. It could have been intentional (unlikely). It's useful to know who contributed to various parts of Amarok and during which period for statistical reasons. If we get a complete list and manage to maintain it, any future license changes (ex. to GPLv3) will be easier.
;Description: Amarok should be GPLv2+ licensed throughout, but not all license headers seem to contain the correct statement. Some files even miss a license header. If there is a incorrect license stated in a header the copyright holders should be contacted before making the fix. It could have been intentional (unlikely). It's useful to know who contributed to various parts of Amarok and during which period for statistical reasons. If we get a complete list and manage to maintain it, any future license changes (ex. to GPLv3) will be easier.


;Mentors:
;Mentors: [mailto:[email protected] Kevin Funk]


=== Kexi: add d-pointers to classes ===
=== Kexi: add d-pointers to classes ===
Line 75: Line 88:
;Mentors: [mailto:[email protected] Marco Calignano] and [mailto:[email protected] Aleix Pol]
;Mentors: [mailto:[email protected] Marco Calignano] and [mailto:[email protected] Aleix Pol]


=== KGet: Code Stlye Check and Cleanup ===
=== KGet: Code Style Check and Cleanup ===
;Description: KGet currently consists of several lines of code which do not confirm to the KDE coding conventions. The task is to have KGet's codebase follow the coding conventions.
;Description: KGet currently consists of several lines of code which do not confirm to the KDE coding conventions. The task is to have KGet's codebase follow the coding conventions.


;Mentors: Aish Raj Dahal [http://www.google.com/recaptcha/mailhide/d?k=01yxUihv4rNalJX5Ut5RHxBQ==&c=0GUHTl8ugkU_MF62Cd2GPw0NPvtw3zQhxwv4v6sYxrk=], Lukas Appelhans [http://www.google.com/recaptcha/mailhide/d?k=01yxUihv4rNalJX5Ut5RHxBQ==&c=4NIC29OGMF0dot8jUMrqb_ZXCyVyg9rf2yTkgFeHgtw=]
;Mentors: Aish Raj Dahal [http://www.google.com/recaptcha/mailhide/d?k=01yxUihv4rNalJX5Ut5RHxBQ==&c=0GUHTl8ugkU_MF62Cd2GPw0NPvtw3zQhxwv4v6sYxrk=], Lukas Appelhans [http://www.google.com/recaptcha/mailhide/d?k=01yxUihv4rNalJX5Ut5RHxBQ==&c=4NIC29OGMF0dot8jUMrqb_ZXCyVyg9rf2yTkgFeHgtw=]
=== Marble: Test KML files and create a test cases ===
;Description: Marble has support for KML. We are looking for small tests that make use of "normal" KML functionality (except for NetworkLink, Overlays and 3D Models) which fail. The tests should be put onto a special wikipage for reference.
;Mentors: Torsten Rahn (rahn [at] kde.org)
=== Marble: Improve KML support ===
;Description: Fix the KML bugs that you have found and that you have created test cases for.
;Mentors: Torsten Rahn (rahn [at] kde.org)
=== Marble: Implement the KML random color mode ===
; Description: It's possible to define random colors in .kml files. Make Marble calculate [https://developers.google.com/kml/documentation/kmlreference#colorstyle suitable values] and display them.
; Prerequisites:
* Checkout of Marble, see [http://marble.kde.org/sources.php instructions]
* An account on [http://git.reviewboard.kde.org Review Board]
; Mentors: Dennis Nienhüser (earthwings [at] gentoo.org)
=== Marble: KML ScreenOverlay reader ===
; Description: Create a kml tag reader for ScreenOverlay (including a GeoDataScreenOverlay) Hint: The existing tag handlers and geodata classes are good examples. See also our [http://marble.kde.org/kml-guide.php notes on KML support in Marble].
; Prerequisites:
* Checkout of Marble, see [http://marble.kde.org/sources.php instructions]
* An account on [http://git.reviewboard.kde.org Review Board]
; Mentors: Dennis Nienhüser (earthwings [at] gentoo.org)
=== Marble: KML BalloonStyle and ListStyle readers ===
; Description: Create kml tag readers for BalloonStyle and ListStyle (including GeoDataBalloonStyle and GeoDataListStyle backend classes) Hint: The existing tag handlers and geodata classes are good examples. See also our [http://marble.kde.org/kml-guide.php notes on KML support in Marble].
; Prerequisites:
* Checkout of Marble, see [http://marble.kde.org/sources.php instructions]
* An account on [http://git.reviewboard.kde.org Review Board]
; Mentors: Dennis Nienhüser (earthwings [at] gentoo.org)
=== Marble: KML tag writers ===
; Description: Create kml tag writers for Polygon, PhotoOverlay, GroundOverlay and TimeSpan. Hint: The existing tag handlers and tag writers are great examples, e.g. the [https://projects.kde.org/projects/kde/kdeedu/marble/repository/revisions/master/entry/src/lib/geodata/writers/kml/KmlLinearRingTagWriter.cpp LinearRing] tag writer. See also our [http://marble.kde.org/kml-guide.php notes on KML support in Marble].
; Prerequisites:
* Checkout of Marble, see [http://marble.kde.org/sources.php instructions]
* An account on [http://git.reviewboard.kde.org Review Board]
; Mentors: Dennis Nienhüser (earthwings [at] gentoo.org)


=== KStars: Review formatting styles used in KStars ===
=== KStars: Review formatting styles used in KStars ===
Line 84: Line 143:


;Mentors: Rafal Kulaga (rl.kulaga [at] gmail.com)
;Mentors: Rafal Kulaga (rl.kulaga [at] gmail.com)
=== ownCloud: Podcast support in the News app ===
;Description: At the moment, the News app shows items with empty body when you add a podcast feed. The student will have to fix this, by making the app show a small music player when the item of a feed is recognized to be coming from a podcast (same behaviour of Google Reader).
;Prerequisites: not advanced PHP, html5, familiarity with RSS feed reader as user
;Mentor:
Alessandro Cosentino (zimba12 on freenode -- email: [http://www.google.com/recaptcha/mailhide/d?k=01oDpb0VqzuZIpwreYqbRqtA==&c=09ZV9nY7WCMANmV24ZwUQvZtpLhGNz_uziqj2EA6utk=])
=== ownCloud: Public API for images/video thumbnails generation ===
;Description: ownCloud needs a thumbnails API for files app so the clients such us the android one can show them when exploring files without having to download the entire files by the client in order to create thumbnails. Imagine a user with hundred of images inside a folder named as IMG06258.jpg who wants to download that nice pic of his trip and don't want having to remember crappy file names nor having to download file by file to find it. See [https://github.com/owncloud/core/issues/86 https://github.com/owncloud/core/issues/86].
;Prerequisites: PHP
;Mentor: Bartek Przybylski (aqu on freenode -- email: [http://www.google.com/recaptcha/mailhide/d?k=01CNCd6V-0dyEN-sjOdB-_jg==&c=3DcuUTOUp4LUT2UIJUE0soP2kAc_jBs7CFTTNYMKrhs=])
=== KDE Edu Playground (Mula): Remove the QtGui dependency in the core ===
;Description: Unfortunatly the core library still has a minor method for a settings dialog, and hence it means a QtGui dependency. It would be nice to get rid of that method, the relevant include, build the project, and commit the change. This has been a long term plan, but nobody did the work yet. Simple, but very useful contribution. :)
;Links:
* [https://projects.kde.org/projects/playground/edu/mula/repository/revisions/master/show/core Repository]
;Prerequisites: Only very basic C++, Qt
;Mentor:
Laszlo Papp <[email protected]>
"djszapi" or "lpapp" on freenode (IRC)
=== KDE Edu (Kanagram): Add a timer to the game to make it more challenging ===
;Description: The game is more challenging when you have to figure out the word in a given time frame. Configurable timer value is a plus. This would be an addition to the desktop frontend. The mobile (Harmattan) frontend already has this feature so the logic is clear. Extending the handbook would also be a plus about this feature with screenshots.
;Links:
* [https://bugs.kde.org/show_bug.cgi?id=142659 Bugzilla description]
* [https://projects.kde.org/projects/kde/kdeedu/kanagram Repository]
;Prerequisites: Basic C++, Qt
;Mentor:
Laszlo Papp <[email protected]>, Jeremy Whiting <jpwhiting.kde.org>
#kde-edu channel or/and "djszapi"/"jpwhiting" on freenode (IRC)
=== KDE Edu (KHangMan): Add a timer to the game to make it more challenging ===
;Description: The game is more challenging when you have to figure out the word in a given time frame. Configurable timer value is a plus. This would be an addition to the desktop frontend. The mobile (Harmattan) frontend already has this feature so the logic is clear. Extending the handbook would also be a plus about this feature with screenshots. There is no bugzilla entry for this feature yet, but it is very similar to what has been reported against the kanagram project in theory.
;Links:
* [https://bugs.kde.org/show_bug.cgi?id=142659 Kanagram bugzilla request]
* [https://projects.kde.org/projects/kde/kdeedu/khangman Repository]
;Prerequisites: Basic C++, Qt
;Mentor:
Laszlo Papp <[email protected]>
#kde-edu channel or/and "djszapi" on freenode (IRC)
=== KDE Edu (Kanagram): Avoid the confusion after revealing a word ===
;Description: Currently, the reveal word is confusing to have enabled after revealing a word as it is no use to reveal the word by the relevant action once it is revealed. This is a confusion in the UI workflow and there has been an old bugreport about this one for a while. It would be nice to fix this once and all. :-)
;Links:
* [https://bugs.kde.org/show_bug.cgi?id=181357 Bugzilla description]
* [https://projects.kde.org/projects/kde/kdeedu/kanagram Repository]
;Prerequisites: Basic C++, Qt
;Mentor:
Laszlo Papp <[email protected]>, Jeremy Whiting <jpwhiting.kde.org>
#kde-edu channel or/and "djszapi"/"jpwhiting" on freenode (IRC)
=== KDE Edu: Create teaching units ===
;Description
KDE Edu have several greats programs but sometimes these aplications are difficult to integrate in a classroom. The goal is create teaching units for make easer to use KDE applications with the students.
E.g.:
# Create a problem of physics and solve it with step.
# Create a list of questions about chemistry and use Kalzium to solve it.
# Create lessons of maths with practice and use KAlgebra to solve it.
# ...
The goal is use KDE applications and search how integrate into the classroom.
Later these documents can be upload to the KDE Edu's wiki page.
;Prerequisites
Be able to install KDE Edu apps. Good grasp of written English.
;Links
[http://edu.kde.org/ KDE Edu ]
;Mentor
Baltasar Ortega <[email protected]>
=== KDE Edu (Rocs): Simplify and Extend Value Modifier ===
;Description
Rocs is a Graph Theory IDE for everybody interested in designing and analyzing graph algorithms. (For more information please refer to the Rocs handbook or the website).
The Task: Look at the class "ValueModifier" that allows the GUI and scripting engine to easily set the values of a set of elements by a specific pattern (enumerate elements, assign random values, etc.). Currently, the class implementation handles data elements and data connections separately, which results in duplicated code. In this task you should replace duplicated functionality by providing a more general interface that accepts arbitrary QLists. The subtasks are:
# combine the duplicated code
# extend the value modifier to assign also strings of the types
## fixed string combined with one of the other value modifiers (e.g., name1, name2...)
## enumeration by characters (e.g., a, b, c...)
# test compilation
# test unit tests
;Prerequisites
Basic C++, very basic Qt
;Links
* [http://edu.kde.org/applications/all/rocs Rocs Website]
* [http://docs.kde.org/stable/en/kdeedu/rocs/index.html Handbook]
;Mentor
Andreas Cord-Landwehr
=== KDE PIM: Fix library API documentation errors  (6x) ===
;Description
KDE runs a tool that checks for common errors in library documentation.
You can find the issues for KDE's PIM libraries here: [http://www.englishbreakfastnetwork.org/apidocs/index.php?component=kde-4.x&module=kdepimlibs EBN API Issues]
The task is to fix 101 of any of those and submit them as a review request for group "kdepimlibs" on [http://git.reviewboard.kde.org KDE Review Board]
;Prerequisites
* Checkout of kdepimlibs: git clone git://anongit.kde.org/kdepimlibs.git
* An account on [http://git.reviewboard.kde.org Review Board]
; Links
;Mentor
Kevin Krammer <[email protected]>, krake on irc.freenode.net, channels #akonadi and #kontact
=== KDE PIM: Fix kdepim code checker issues (6x) ===
;Description
KDE runs a tool that checks cdoe for common potential errors or provides recommendations on make code cleaner.
You can find the issues for KDE's PIM applications here: [http://www.englishbreakfastnetwork.org/krazy/index.php?component=kde-4.x&module=kdepim EBN Krazy Issues for KDE PIM applications]
The task is to fix 31 of any of those and submit them as a review request for group "kdepim" on [http://git.reviewboard.kde.org KDE Review Board]
;Prerequisites
* Checkout of kdepim: git clone git://anongit.kde.org/kdepim.git
* An account on [http://git.reviewboard.kde.org Review Board]
; Links
;Mentor
Kevin Krammer <[email protected]>, krake on irc.freenode.net, channels #akonadi and #kontact
=== KDE PIM: Fix kdepimlibs code checker issues (6x) ===
;Description
KDE runs a tool that checks cdoe for common potential errors or provides recommendations on make code cleaner.
You can find the issues for KDE's PIM libraries here: [http://www.englishbreakfastnetwork.org/krazy/index.php?component=kde-4.x&module=kdepimlibs EBN Krazy Issues for KDE PIM libraries]
The task is to fix 31 of any of those and submit them as a review request for group "kdepimlibs" on [http://git.reviewboard.kde.org KDE Review Board]
;Prerequisites
* Checkout of kdepimlibs: git clone git://anongit.kde.org/kdepimlibs.git
* An account on [http://git.reviewboard.kde.org Review Board]
; Links
;Mentor
Kevin Krammer <[email protected]>, krake on irc.freenode.net, channels #akonadi and #kontact
=== KDE PIM: Fix kdepim-runtime code checker issues (6x) ===
;Description
KDE runs a tool that checks cdoe for common potential errors or provides recommendations on make code cleaner.
You can find the issues for KDE's PIM runtime here: [http://www.englishbreakfastnetwork.org/krazy/index.php?component=kde-4.x&module=kdepim-runtime EBN Krazy Issues for KDE PIM runtime]
The task is to fix 31 of any of those and submit them as a review request for group "kdepim" on [http://git.reviewboard.kde.org KDE Review Board]
;Prerequisites
* Checkout of kdepim-runtime: git clone git://anongit.kde.org/kdepim-runtime.git
* An account on [http://git.reviewboard.kde.org Review Board]
; Links
;Mentor
Kevin Krammer <[email protected]>, krake on irc.freenode.net, channels #akonadi and #kontact


== Documentation/Training ==
== Documentation/Training ==
Line 103: Line 358:
(#kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))
(#kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))


=== Amarok: Reorganize wiki in its new location ===
=== KDE Telepathy: Rewrite the demo chats ===
 
;Description:
The demo chat is a fake conversation between 2 persons that is displayed when you choose the chat theme, and that should show some of the features of that theme. Our current demo chat is good for showing the features, but the dialog is quite nonsense and useless. This tasks consist in 2 parts all of which must be completed:
 
* Making the demo chat consistent and somehow useful. One idea is to make it a dialog between a new user asking some frequently asked questions about KDE Telepathy, and an expert user replying and adding links to the useful resources (wiki, bugzilla, mailing list, ecc.)
* Writing a conversation for group chat, i.e. a dialog between 3 or more persons. This should be consistent and useful as the previous one.
 
;Prerequisites:
Very basic c++ and html. Good grasp of English.
 
;Mentor:
The KDE Telepathy Team
(#kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))
 
=== Amarok: Reorganize wiki in its new location (multiple tasks possible) ===


;Description: Amarok is changing the location of its wiki and also needs to reorganize its wiki structure. Previously everything was in the same wiki, now we are moving to the 3 wiki site  of KDE: Techbase, Community and Userbase. The existing pages need to be checked for consistency and moved to their new location after having made a structure plan.
;Description: Amarok is changing the location of its wiki and also needs to reorganize its wiki structure. Previously everything was in the same wiki, now we are moving to the 3 wiki site  of KDE: Techbase, Community and Userbase. The existing pages need to be checked for consistency and moved to their new location after having made a structure plan.
Line 115: Line 385:
* [http://userbase.kde.org/Amarok Userbase main target page]
* [http://userbase.kde.org/Amarok Userbase main target page]


;Mentor: [mailto:[email protected] Myriam Schweingruber]
;Mentor: [mailto:[email protected] Myriam Schweingruber], Mamarok in #amarok on irc.freenode.net


=== Update KSirK documentation ===
=== Update KSirK documentation ===
Line 127: Line 397:
* [http://userbase.kde.org/Special:myLanguage/Taking_Screenshots Manual on how to take a screenshot]
* [http://userbase.kde.org/Special:myLanguage/Taking_Screenshots Manual on how to take a screenshot]


;Mentor: [mailto:[email protected] Yuir Chornoivan]
;Mentor: [mailto:[email protected] Yuri Chornoivan]


=== Kamoso: Create documentation ===
=== Kamoso: Create documentation ===
Line 162: Line 432:
Mentor: [mailto:[email protected] Marco Calignano]
Mentor: [mailto:[email protected] Marco Calignano]


===Pairs Editor: Create Placeholder strings ===
===Pairs Editor: Create What's This strings ===


;Description: The students should add placeholders for each KLineEdit widgets in the GUI to give an example to the user. These should start with "e.g."
;Description: The students should add "What's This" string on each component in the GUI to give valuable help to the user. These should be short and clear.


;Prerequisites: Be able to use QTDesigner. Good grasp of written English.
;Prerequisites: Be able to use QTDesigner. Good grasp of written English.
Line 170: Line 440:
Mentor: [mailto:[email protected] Marco Calignano]
Mentor: [mailto:[email protected] Marco Calignano]


===Pairs Editor: Create What's This strings ===
=== KDE Edu (Rocs): Create Example Algorithm Projects ===
 
;Description
Rocs is a Graph Theory IDE for everybody interested in designing and analyzing graph algorithms. (For more information please refer to the Rocs handbook or the website). In this task, two example algorithms shall be implemented for demonstrating Rocs.
 
The Task: For each of the following algorithms
* Breadth first search and
* Prim's spanning tree algorithm
create a project and implement the algorithm such that it can be used to illustrate the behavior of the algorithm. In detail, this includes
# implementation the algorithm and testing it
# creating a meaningful graph that is suited for illustrating the algorithm
# add useful steps to the algorithm (see interrupt() in the handbook)
# explain the algorithm's idea and what you can simulate in the project journal file
 
;Prerequisites
Basics of graph algorithms, very basic JavaScript
 
;Links
* [http://edu.kde.org/applications/all/rocs Rocs Website]
* [http://docs.kde.org/stable/en/kdeedu/rocs/index.html Handbook]
 
;Mentor
Andreas Cord-Landwehr
 
===ownCloud: Summary page of the apps ===
 
;Description: Write a short overview describing the different types of apps available for ownCloud. Specifically explain the difference between internal and 3rd party apps at [http://apps.owncloud.com apps.owncloud.com].
 
;Prerequisites: Good written English.
 
;Mentor: Michael Gapczynski (MTGap on freenode -- email: [http://www.google.com/recaptcha/mailhide/d?k=01oDpb0VqzuZIpwreYqbRqtA==&c=-rZCFyAYe1uaqqJYUg69CsqfvBAopm18gzTjnW01x3c=]
 
===ownCloud: User documentation for External Storage configuration ===
 
;Description: Write a short overview describing how to configure external storage with ownCloud. Adapt the blog posts found at [http://blog.gapinthecloud.com blog.gapinthecloud.com] into proper documentation.
 
;Prerequisites: Good written English.
 
;Mentor: Michael Gapczynski -- email: [http://www.google.com/recaptcha/mailhide/d?k=01oDpb0VqzuZIpwreYqbRqtA==&c=-rZCFyAYe1uaqqJYUg69CsqfvBAopm18gzTjnW01x3c=]
 
===ownCloud: Produce ownCloud FAQ ===
 
;Description: The student is asked to collect the most asked questions about ownCloud in the mailing list ([http://mail.kde.org/pipermail/owncloud/]) or on the forum  ([http://forum.owncloud.org/]) and create an FAQ list out of them. The questions should not apply to a specifc version of ownCloud. The student needs to discuss this task with the mentor before starting, so that he will get a grasp of what the important questions are.
 
;Prerequisites: Good written English.
 
;Mentor: Alessandro Cosentino (zimba12 on freenode -- email: [http://www.google.com/recaptcha/mailhide/d?k=01oDpb0VqzuZIpwreYqbRqtA==&c=09ZV9nY7WCMANmV24ZwUQvZtpLhGNz_uziqj2EA6utk=])
 
===ownCloud: Move documentation from Wordpress to the GitHub Infrastructure===
 
;Description: The student is asked to move ownCloud documentation from Wordpress to the GitHub Infrastructure, checking for outdated information along the way. Can be split up into two and up to four tasks (user, admin (app|core)-dev), with the user documentation being slightly simpler to handle. Requires learning reStructuredText. Applicants should feel comfortable editing foreign texts and should not be afraid of restructuring existing texts if needed.
 
;Mentors: [http://daniel.molkentin.de Daniel Molkentin] (danimo on freenode); [https://tomneedham.com/ Tom Needham] (tpn on freenode)
 
===ownCloud: User documentation for File access ===
 
;Description: Clean up the documentation on [owncloud.org owncloud.org] website concerning the different ways to access files in ownCloud. Along the way, make the documentation more user-friendly and exapnd it with an overview on how to interface ownCloud with different desktop and mobile file managers.
 
;Links:
* [http://owncloud.org/support/files/ Files]
* [http://owncloud.org/support/webdav Webdav]
 
;Mentor: Robin Appelman (icewind on freenode -- email: [http://www.google.com/recaptcha/mailhide/d?k=01oDpb0VqzuZIpwreYqbRqtA==&c=DkmA-ow--2NT5wxeQ0sV0p7oOY5jN7qeRvV6xuyvgqI=])
 
===ownCloud: End-user documentation for Contacts and Bookmarks apps ===
 
;Description: The student is asked to write two short overviews for two ownCloud apps: the first one describing the Contacts app and how to complete some simple tasks such as adding a contact, creating an addressbook, and syncing;
the second one describing the Bookmarks app and how to complete some simple tasks such as adding and editing a bookmark, and using the bookmarklet.
 
;Mentor: [http://tanghus.net Thomas Tanghus] (tanghus on freenode) for the Contacts part, [http://bmaron.net/ Brice Maron] (eMerzh on freenode) for the Bookmarks part
 
===Plasma Active: Handbook for PA in qualified english===
 
;Description: Proofreading the english handbook, check spelling, grammar and so on.
 
;Steps:
* Proofread Chapter 1 & 2 (Getting PA and First Steps)
* Proofread Chapter 3 (Initial Setup)
* Proofread Chapter 4 (Using PA)
* Proofread Chapter 5 (Configuring PA)
* Proofreading Appendix A (Help and Troubleshooting)


;Description: The students should add "What's This" string on each component in the GUI to give valuable help to the user. These should be short and clear.
;Links:
* [http://pactivehandbook.sourceforge.net/ Projectpage]
* [http://sourceforge.net/p/pactivehandbook/code/ The Sourcecode]


;Prerequisites: Be able to use QTDesigner. Good grasp of written English.
;Prequisites:
* Good knowledge of the english language
* Basic XML or DocBook Knowledge (can also mentor in this)
* Useraccount on Sourceforge


Mentor: [mailto:marco.calignano@gmail.com Marco Calignano]
;Mentor: Sascha Manns (saigkill on freenode) -- email: [mailto:Sascha.Manns@open-slx.de?subject=GoogleCodeIn2012 [email protected]] -- Userpage: [http://community.kde.org/User:Saigkill Userpage]


== Outreach/Research ==
== Outreach/Research ==
Line 183: Line 538:
;Description: Based on information from Amarok's "About" dialog, various social networks such as openDesktop.org, and talking to team members, make a "Team" page on Amarok's project website, like [http://tomahawk-player.org/about.html] or [http://chakra-project.org/team.html]. We're specifically interested in a nice design and layout, and can fill out the data ourselves later on.
;Description: Based on information from Amarok's "About" dialog, various social networks such as openDesktop.org, and talking to team members, make a "Team" page on Amarok's project website, like [http://tomahawk-player.org/about.html] or [http://chakra-project.org/team.html]. We're specifically interested in a nice design and layout, and can fill out the data ourselves later on.


;Mentor:
;Mentor: [mailto:[email protected] Teo Mrnjavac]
 
=== Amarok: LikeBack statistics ===
;Description: Amarok uses the Likeback feedback gathering system. Likeback is a client-server system. Its client component is a library which puts like/dislike buttons in the top right area of all the windows in an application, that allow users to send context-sensitive feedback. The server component runs on a web server hosted by the Amarok team which stores the feedback entries in a database. There's quite a lot of feedback messages, and the Amarok team hardly has the time to go through all of them. We need someone to take the database dump and analyze all the feedback gathered in the past year or so and produce a detailed report with like/dislike/feature statistics and prominent requests.
 
;Expected results: A thorough report, maybe in a PDF document or spreadsheet, with statistics and comments. A comparison with last year's statistics is also expected.
 
;Prerequisites: spreadsheet use, at least basic knowledge of SQL, basic writing skills and lots of patience.
 
;Mentor: [mailto:[email protected] Teo Mrnjavac]


=== KDE Forums: clean up KDE Brainstorm ===
=== KDE Forums: clean up KDE Brainstorm ===


;Description: Currently the KDE Brainstorm (http://brainstorm.forum.kde.org) includes a lot of invalid, duplicate, or already fixed ideas. In order for both users and developers to screen them effectively, they need to be reorganized. The Brainstorm interface already allows to do this: the task involves looking through the open ideas and mark them as fixed, invalid, in progress, or finished.  
;Description: Currently the KDE Brainstorm (http://brainstorm.forum.kde.org) includes a lot of invalid, duplicate, or already fixed ideas. In order for both users and developers to screen them effectively, they need to be reorganized. The Brainstorm interface already allows to do this: the task involves looking through the open ideas and mark them as fixed, invalid, in [Teo Mrnjavac <[email protected]>progress, or finished.  


;Prerequisites: Some general knowledge about the current progress of KDE software, including recent developments.
;Prerequisites: Some general knowledge about the current progress of KDE software, including recent developments.
Line 234: Line 598:


;Mentor: Lydia Pintscher
;Mentor: Lydia Pintscher
=== Marble: Create a custom map theme for Marble===
;Description: See e.g. http://techbase.kde.org/Projects/Marble/HistoricalMaps.
;Mentors: Torsten Rahn (rahn [at] kde.org)
=== Marble: Record a new Speaker set for Marble's Turn-By-Turn Navigation===
;Description: See e.g. http://userbase.kde.org/Marble/CustomSpeakers.
;Mentors: Torsten Rahn (rahn [at] kde.org)
=== Marble: Extend Marble's Measure Plugin by a feature===
;Description: Marble has a simple plugin to measure distances. Create a nice extension (e.g. make the color of the measure line configurable or allow it to measure areas.)
;Mentors: Torsten Rahn (rahn [at] kde.org)
=== Marble: Extend Marble's Stars Plugin by a feature===
;Description: Marble has a simple plugin to display stars. Create a nice extension (e.g. make it show constellation lines)
;Mentors: Torsten Rahn (rahn [at] kde.org)


=== KStars: Add a custom catalog ===
=== KStars: Add a custom catalog ===
Line 258: Line 643:


;Mentor: Lydia Pintscher
;Mentor: Lydia Pintscher
=== Kig: Document Geogebra Functionallity ===
;Description: We are preparing to implement support for Geogebra files in Kig, and the first step is to create a list of all the constructions in Geogebra that will have to be mapped to or implemented in Kig. Specifically, these tasks consist of:
# Identifying a Geogebra construction that has not yet been added as a bug in KDE's [http://bugs.kde.org bug tracking system]
# Look for an equivalent construction in Kig (could be one construction or a number of constructions that lead to the Geogebra one)
# Add a bug at KDE's [http://bugs.kde.org bug tracking system] documenting the construction
## The product is KDE
## Fill in the details of the construction in the bug report
##* The title should be the name of the Geogebra construction
##* The description could be an equivalent Kig construction, or set of constructions to achieve the Geogebra construction, or a note indicating that it has not yet been implemented in Kig
## Click the Show Advanced Fields in the bug report
## Locate the Assigned To field and change it to the e-mail address of the mentor of these tasks
## Locate the Blocks field and add the following ID: [https://bugs.kde.org/show_bug.cgi?id=309492 309492] (the ID of the main Geogebra support bug)
## Attach a Geogebra file with an example of the construction
## Submit the bug
;Mentor: [mailto:[email protected] David E. Narváez]
=== Promo: Create screencasts for Kwin options ===
; Description:
Create a video about each configuration option of KWin with comments about how activate, use, config and use of the visual effect . The goal is show all the things thant can do Kwin. Later these videos can be upload to Promo Channel of Youtube (or another video server) or/and be integrate in the Config Window of Kwin
;Prerequisites
* How capture a video from the own PC.
* How edit video
* How make subtitles
; Mentor
Baltasar Ortega  <[email protected]>
=== Promo: Create KDE Advertising Video's ===
; Description:
Create several KDE Advertising Video's for promote KDE anywhere: events, booths, talks, etc. It can be about peple, about software, about Community, etc.
Later these videos can be upload to Promo Channel.
;Prerequisites
* Know how edit video
* Know how make subtitles
; Mentor
Baltasar Ortega  <[email protected]>


== Quality Assurance ==
== Quality Assurance ==
Line 271: Line 702:
The KDE Telepathy Team
The KDE Telepathy Team
(#kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))
(#kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))


=== Pairs Editor: testing it ===
=== Pairs Editor: testing it ===
Line 279: Line 709:
;Mentors: [mailto:[email protected] Marco Calignano] and [mailto:[email protected] Aleix Pol]
;Mentors: [mailto:[email protected] Marco Calignano] and [mailto:[email protected] Aleix Pol]


=== Amarok: Testing from git ===
=== Amarok: Testing from git (multiple tasks possible)===


;Description: While Amarok ships a stable version there also is the current development version. The student should build a development installation from git and test the main functions of Amarok and report back eventual errors, inconsistencies and bugs.
;Description: While Amarok ships a stable version there also is the current development version. The student should build a development installation from git and test the main functions of Amarok and report back eventual errors, inconsistencies and bugs.
Line 289: Line 719:
* [http://blogs.fsfe.org/myriam/2009/09/compiling-amarok-from-git-locally-full-summary/ Local build instructions]
* [http://blogs.fsfe.org/myriam/2009/09/compiling-amarok-from-git-locally-full-summary/ Local build instructions]


;Mentor: [mailto:[email protected] Myriam Schweingruber]
;Mentor: [mailto:[email protected] Myriam Schweingruber], Mamarok in #amarok on irc.freenode.net
 
=== ownCloud: User testing of the News app ===
 
;Description: OwnCloud News app has been recently implemented as a Google Summer of Code 2012 project. So far, all the tests have been performed by developers of the app or ownCloud developers. The student will have to test the app from a user point of view, without digging into the code, and report the issues on the Github infrastructure.
 
;Prerequisites: Two testing experience can be performed (which means two kinds of candidate): one from a user (student) who has never used a feed reader, the second one from a user (student) who regularly uses a feed reader (Google Reader, for example).
 
;Links:
* [http://algorithmsforthekitchen.com/wiki/doku.php?id=owncloud_rssreader List of known issues on the app maintainer personal wiki]
* [https://github.com/owncloud/apps/issues List of known issues on Github]
 
;Mentor:
Alessandro Cosentino (zimba12 on freenode -- email: [http://www.google.com/recaptcha/mailhide/d?k=01oDpb0VqzuZIpwreYqbRqtA==&c=09ZV9nY7WCMANmV24ZwUQvZtpLhGNz_uziqj2EA6utk=])
 
=== KDE Edu (Kanagram): Feature test list ===
 
;Description:
There has been a Quality initiation recently to boost the effort. There are some test lists available for a few KDE projects, and it would be nice to have such a list for the latest Kanagram as well. This could be a very useful towards having a testing guideline for Windows, but for sure it is also useful for other platforms like Linux or Mac. This can be achieved by using the existinghandbook for instance available from the homepage. See the link below for that.
 
;Links:
* [http://community.kde.org/Getinvolved/Testing/Beta Quality testing page]
* [http://edu.kde.org/applications/school/kanagram/ Kanagram homepage]
 
;Prerequisites: Nothing, other than understanding an existing software, its documentation, and interest for sure. :-)
 
;Mentor:
Laszlo Papp <[email protected]>
 
"djszapi" or "lpapp" on freenode (IRC).
 
=== KDE Edu (KHangMan): Feature test list ===
 
;Description:
There has been a Quality initiation recently to boost the effort. There are some test lists available for a few KDE projects, and it would be nice to have such a list for the latest KHangMan as well. This could be a very useful towards having a testing guideline for Windows, but for sure it is also useful for other platforms like Linux or Mac. This can be achieved by using the existing handbook for instance available from the homepage. See the link below for that.
 
;Links:
* [http://community.kde.org/Getinvolved/Testing/Beta Quality testing page]
* [http://edu.kde.org/applications/school/khangman/ KHangMan homepage]
 
;Prerequisites: Nothing, other than understanding an existing software, its documentation, and interest for sure. :-)
 
;Mentor:
Laszlo Papp <[email protected]>
 
"djszapi" or "lpapp" on freenode (IRC).
 
 
=== KDE Edu (Rocs): Extend unit tests for parsing of DOT/GraphVis files ===
 
;Description
Rocs is a Graph Theory IDE for everybody interested in designing and analyzing graph algorithms. (For more information please refer to the Rocs handbook or the website).
 
The Task: Rocs provides backends to handle differnt graph file formats. Those include the DOT graph language format that is used by GraphVis. Currently we have a large test suite that tests parsing for a ca. 80 graph files given in the DOT format. For those unit tests pick 10 - 20 of them and add useful checks if the graph file is not only succesfully parsed, but the result is also sound.
 
;Prerequisites
Basic understanding on data structures and very basic C++
 
;Links
* [http://edu.kde.org/applications/all/rocs Rocs Website]
* [http://docs.kde.org/stable/en/kdeedu/rocs/index.html Handbook]
 
;Mentor
Andreas Cord-Landwehr
 
 
=== Marble: GPX file collection ===
 
;Description:
GPX is a commonly used file format to store tracks and routes. Marble can open and display such files in a map. We want to build a collection of sample .gpx files from different applications to ensure that all .gpx files are displayed in a sane way.
Collect sample GPX files from different applications (see the OpenStreetMap wiki on GPX conversion for a list of programs that produce GPX files). Ideally the files are available under a create commons or similar license.
 
;Links:
* [http://en.wikipedia.org/wiki/GPS_eXchange_Format Wikipedia on GPX]
* [http://wiki.openstreetmap.org/wiki/Converting_GPS_track_data_between_formats OpenStreetMap on programs that produce GPX files]
 
;Prerequisites: Nothing
 
;Mentor:
Dennis Nienhüser <[email protected]>
 
"Earthwings" on freenode in the #marble channel (IRC).


== User Interface ==
== User Interface ==
Line 324: Line 835:


;Mentor: Rafal Kulaga (rl.kulaga [at] gmail.com)
;Mentor: Rafal Kulaga (rl.kulaga [at] gmail.com)
=== ownCloud: Keyboard shortcut for the Files app ===
;Description: Propose and add keyboard shortcuts for actions such as creating a new text file, folder, and renaming. If possible, the behaviour of a file manager could be emulated, like entering folders or opening files on enter and selecting items with the arrow keys.
;Prerequisites: JavaScript, jQuery
;Mentor: Bernhard Posselt (Raydiation on freenode -- email: [http://www.google.com/recaptcha/mailhide/d?k=01oDpb0VqzuZIpwreYqbRqtA==&c=bIHOU6xDdpJGXsg0XfB5aN_57-zshAHiX8wD7mbAguQ=])
=== ownCloud: A new design for the Apps administration page  ===
;Description: Propose a new design for the page to manage apps. Remember this section will be used by admininstrators to manage applications for lots of users. The students should come up with one or more mockups for the new layout of the page.
;Prerequisites: UI design skills, experience with git preferred
;Mentor: [http://jancborchardt.net/ Jan-Christoph Borchardt] (jancborchardt on freenode)

Latest revision as of 10:57, 20 March 2013


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!

Please keep in mind that the tasks are going to be solved by 13 to 17 year olds.

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

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
  • User Interface: Tasks related to user experience research or user interface design and interaction

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

KDE Telepathy: Allow the user to configure the theme for group chats

Description
Currently a user can configure the theme used for normal 1-1 chats, but group chats are hardcoded to use a different theme. We should have a way to configure which theme is used for group chats as well

https://bugs.kde.org/show_bug.cgi?id=282518

Prerequisites
C++, Qt
Mentor

The KDE Telepathy Team (#kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))

KDE Telepathy: Provide an option on whether to go offline when the contact list closes

Description
Currently when a user goes offline they remain online if the presence applet is visible, otherwise it shows a prompt "Do you wish to go disconnect your accounts y/n". If a user selects the option "Do not show again" this never appears again and the user can never change this. Student should add an option in KDE Telepathy to say what should happen when the contact list closes.

https://bugs.kde.org/show_bug.cgi?id=306853

Prerequisites
C++, Qt
Mentor

The KDE Telepathy Team (#kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))

KDE Telepathy: Make presence applet use Plasma theme icons

Description
Our current presence plasmoid uses standard oxygen icons and does not really fit the rest of icons in systray, which are all monochrome. These monochrome icons are defined by Plasma theme. The task is to update our code to load the monochrome icons if they are available, or use the current oxygen ones if not. All needed steps are written down in the bugreport (look at comment #14).

https://bugs.kde.org/show_bug.cgi?id=302993

Prerequisites
C++, Qt
Mentor

Martin Klapetek; The KDE Telepathy Team (mklapetek [at] kde.org; #kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))

Amarok: Check Copyright Headers and Collect Contributor Email Addresses

Description
Amarok should be GPLv2+ licensed throughout, but not all license headers seem to contain the correct statement. Some files even miss a license header. If there is a incorrect license stated in a header the copyright holders should be contacted before making the fix. It could have been intentional (unlikely). It's useful to know who contributed to various parts of Amarok and during which period for statistical reasons. If we get a complete list and manage to maintain it, any future license changes (ex. to GPLv3) will be easier.
Mentors
Kevin Funk

Kexi: add d-pointers to classes

Description
Improve internal APIs in Kexi. This can be done easily by introducing d-poitners to classes that lack them. Details on Kexi wiki.
Prerequisites
General C++ knowledge, prior knowledge of Qt is a plus.
Mentor
Jstaniek (talk)

Pairs: add Get Hot New Stuff upload feature to Pairseditor

Description
Create a new action to provide the user to upload hers/his new Pairs Theme to a public server to make it available for the Get Hot New Stuff feature in the game.
Mentors
Marco Calignano and Aleix Pol

KGet: Code Style Check and Cleanup

Description
KGet currently consists of several lines of code which do not confirm to the KDE coding conventions. The task is to have KGet's codebase follow the coding conventions.
Mentors
Aish Raj Dahal [1], Lukas Appelhans [2]

Marble: Test KML files and create a test cases

Description
Marble has support for KML. We are looking for small tests that make use of "normal" KML functionality (except for NetworkLink, Overlays and 3D Models) which fail. The tests should be put onto a special wikipage for reference.
Mentors
Torsten Rahn (rahn [at] kde.org)

Marble: Improve KML support

Description
Fix the KML bugs that you have found and that you have created test cases for.
Mentors
Torsten Rahn (rahn [at] kde.org)

Marble: Implement the KML random color mode

Description
It's possible to define random colors in .kml files. Make Marble calculate suitable values and display them.
Prerequisites
Mentors
Dennis Nienhüser (earthwings [at] gentoo.org)

Marble: KML ScreenOverlay reader

Description
Create a kml tag reader for ScreenOverlay (including a GeoDataScreenOverlay) Hint: The existing tag handlers and geodata classes are good examples. See also our notes on KML support in Marble.
Prerequisites
Mentors
Dennis Nienhüser (earthwings [at] gentoo.org)

Marble: KML BalloonStyle and ListStyle readers

Description
Create kml tag readers for BalloonStyle and ListStyle (including GeoDataBalloonStyle and GeoDataListStyle backend classes) Hint: The existing tag handlers and geodata classes are good examples. See also our notes on KML support in Marble.
Prerequisites
Mentors
Dennis Nienhüser (earthwings [at] gentoo.org)

Marble: KML tag writers

Description
Create kml tag writers for Polygon, PhotoOverlay, GroundOverlay and TimeSpan. Hint: The existing tag handlers and tag writers are great examples, e.g. the LinearRing tag writer. See also our notes on KML support in Marble.
Prerequisites
Mentors
Dennis Nienhüser (earthwings [at] gentoo.org)

KStars: Review formatting styles used in KStars

Description
There are many coding styles and variable naming conventions used in KStars. We would like to have them reviewed, file by file, to get an overview of the situation. This information would be then used to decide on recommended style guide for KStars.
Mentors
Rafal Kulaga (rl.kulaga [at] gmail.com)

ownCloud: Podcast support in the News app

Description
At the moment, the News app shows items with empty body when you add a podcast feed. The student will have to fix this, by making the app show a small music player when the item of a feed is recognized to be coming from a podcast (same behaviour of Google Reader).
Prerequisites
not advanced PHP, html5, familiarity with RSS feed reader as user
Mentor

Alessandro Cosentino (zimba12 on freenode -- email: [3])

ownCloud: Public API for images/video thumbnails generation

Description
ownCloud needs a thumbnails API for files app so the clients such us the android one can show them when exploring files without having to download the entire files by the client in order to create thumbnails. Imagine a user with hundred of images inside a folder named as IMG06258.jpg who wants to download that nice pic of his trip and don't want having to remember crappy file names nor having to download file by file to find it. See https://github.com/owncloud/core/issues/86.
Prerequisites
PHP
Mentor
Bartek Przybylski (aqu on freenode -- email: [4])

KDE Edu Playground (Mula): Remove the QtGui dependency in the core

Description
Unfortunatly the core library still has a minor method for a settings dialog, and hence it means a QtGui dependency. It would be nice to get rid of that method, the relevant include, build the project, and commit the change. This has been a long term plan, but nobody did the work yet. Simple, but very useful contribution. :)
Links
Prerequisites
Only very basic C++, Qt
Mentor

Laszlo Papp <[email protected]>

"djszapi" or "lpapp" on freenode (IRC)

KDE Edu (Kanagram): Add a timer to the game to make it more challenging

Description
The game is more challenging when you have to figure out the word in a given time frame. Configurable timer value is a plus. This would be an addition to the desktop frontend. The mobile (Harmattan) frontend already has this feature so the logic is clear. Extending the handbook would also be a plus about this feature with screenshots.
Links
Prerequisites
Basic C++, Qt
Mentor

Laszlo Papp <[email protected]>, Jeremy Whiting <jpwhiting.kde.org>

  1. kde-edu channel or/and "djszapi"/"jpwhiting" on freenode (IRC)

KDE Edu (KHangMan): Add a timer to the game to make it more challenging

Description
The game is more challenging when you have to figure out the word in a given time frame. Configurable timer value is a plus. This would be an addition to the desktop frontend. The mobile (Harmattan) frontend already has this feature so the logic is clear. Extending the handbook would also be a plus about this feature with screenshots. There is no bugzilla entry for this feature yet, but it is very similar to what has been reported against the kanagram project in theory.
Links
Prerequisites
Basic C++, Qt
Mentor

Laszlo Papp <[email protected]>

  1. kde-edu channel or/and "djszapi" on freenode (IRC)

KDE Edu (Kanagram): Avoid the confusion after revealing a word

Description
Currently, the reveal word is confusing to have enabled after revealing a word as it is no use to reveal the word by the relevant action once it is revealed. This is a confusion in the UI workflow and there has been an old bugreport about this one for a while. It would be nice to fix this once and all. :-)
Links
Prerequisites
Basic C++, Qt
Mentor

Laszlo Papp <[email protected]>, Jeremy Whiting <jpwhiting.kde.org>

  1. kde-edu channel or/and "djszapi"/"jpwhiting" on freenode (IRC)

KDE Edu: Create teaching units

Description

KDE Edu have several greats programs but sometimes these aplications are difficult to integrate in a classroom. The goal is create teaching units for make easer to use KDE applications with the students. E.g.:

  1. Create a problem of physics and solve it with step.
  2. Create a list of questions about chemistry and use Kalzium to solve it.
  3. Create lessons of maths with practice and use KAlgebra to solve it.
  4. ...

The goal is use KDE applications and search how integrate into the classroom.

Later these documents can be upload to the KDE Edu's wiki page.


Prerequisites

Be able to install KDE Edu apps. Good grasp of written English.


Links

KDE Edu

Mentor

Baltasar Ortega <[email protected]>

KDE Edu (Rocs): Simplify and Extend Value Modifier

Description

Rocs is a Graph Theory IDE for everybody interested in designing and analyzing graph algorithms. (For more information please refer to the Rocs handbook or the website).

The Task: Look at the class "ValueModifier" that allows the GUI and scripting engine to easily set the values of a set of elements by a specific pattern (enumerate elements, assign random values, etc.). Currently, the class implementation handles data elements and data connections separately, which results in duplicated code. In this task you should replace duplicated functionality by providing a more general interface that accepts arbitrary QLists. The subtasks are:

  1. combine the duplicated code
  2. extend the value modifier to assign also strings of the types
    1. fixed string combined with one of the other value modifiers (e.g., name1, name2...)
    2. enumeration by characters (e.g., a, b, c...)
  3. test compilation
  4. test unit tests


Prerequisites

Basic C++, very basic Qt

Links
Mentor

Andreas Cord-Landwehr

KDE PIM: Fix library API documentation errors (6x)

Description

KDE runs a tool that checks for common errors in library documentation. You can find the issues for KDE's PIM libraries here: EBN API Issues

The task is to fix 101 of any of those and submit them as a review request for group "kdepimlibs" on KDE Review Board

Prerequisites
Links
Mentor

Kevin Krammer <[email protected]>, krake on irc.freenode.net, channels #akonadi and #kontact

KDE PIM: Fix kdepim code checker issues (6x)

Description

KDE runs a tool that checks cdoe for common potential errors or provides recommendations on make code cleaner.

You can find the issues for KDE's PIM applications here: EBN Krazy Issues for KDE PIM applications

The task is to fix 31 of any of those and submit them as a review request for group "kdepim" on KDE Review Board

Prerequisites
Links
Mentor

Kevin Krammer <[email protected]>, krake on irc.freenode.net, channels #akonadi and #kontact

KDE PIM: Fix kdepimlibs code checker issues (6x)

Description

KDE runs a tool that checks cdoe for common potential errors or provides recommendations on make code cleaner.

You can find the issues for KDE's PIM libraries here: EBN Krazy Issues for KDE PIM libraries

The task is to fix 31 of any of those and submit them as a review request for group "kdepimlibs" on KDE Review Board

Prerequisites
Links
Mentor

Kevin Krammer <[email protected]>, krake on irc.freenode.net, channels #akonadi and #kontact

KDE PIM: Fix kdepim-runtime code checker issues (6x)

Description

KDE runs a tool that checks cdoe for common potential errors or provides recommendations on make code cleaner.

You can find the issues for KDE's PIM runtime here: EBN Krazy Issues for KDE PIM runtime

The task is to fix 31 of any of those and submit them as a review request for group "kdepim" on KDE Review Board

Prerequisites
Links
Mentor

Kevin Krammer <[email protected]>, krake on irc.freenode.net, channels #akonadi and #kontact

Documentation/Training

KDE Telepathy: Update account creation documentation

Description

This task consists of 3 parts all of which must be completed:

* Update http://userbase.kde.org/Telepathy#1._How_do_I_add_a_new_IM_accounts to be more detailed with a step by step walkthrough with pictures
* Add a guide on how to add a GTalk account if you use Google 2 Factor Authentication (https://bugs.kde.org/show_bug.cgi?id=303351) 
* Update this page http://kdetalk.net/howtoregister.php to show how you'd do it with KTp details (https://bugs.kde.org/show_bug.cgi?id=303923)
Prerequisites

Be a user of KDE Telepathy. Good grasp of English. Able to take screenshots

Mentor

The KDE Telepathy Team (#kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))

KDE Telepathy: Rewrite the demo chats

Description

The demo chat is a fake conversation between 2 persons that is displayed when you choose the chat theme, and that should show some of the features of that theme. Our current demo chat is good for showing the features, but the dialog is quite nonsense and useless. This tasks consist in 2 parts all of which must be completed:

  • Making the demo chat consistent and somehow useful. One idea is to make it a dialog between a new user asking some frequently asked questions about KDE Telepathy, and an expert user replying and adding links to the useful resources (wiki, bugzilla, mailing list, ecc.)
  • Writing a conversation for group chat, i.e. a dialog between 3 or more persons. This should be consistent and useful as the previous one.
Prerequisites

Very basic c++ and html. Good grasp of English.

Mentor

The KDE Telepathy Team (#kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))

Amarok: Reorganize wiki in its new location (multiple tasks possible)

Description
Amarok is changing the location of its wiki and also needs to reorganize its wiki structure. Previously everything was in the same wiki, now we are moving to the 3 wiki site of KDE: Techbase, Community and Userbase. The existing pages need to be checked for consistency and moved to their new location after having made a structure plan.
Prerequisites
The student should be able to grasp large sets of data and be able to organize these in a logical manner. Some basic mediawiki editing knowledge is a plus.
Links
Mentor
Myriam Schweingruber, Mamarok in #amarok on irc.freenode.net

Update KSirK documentation

Description
KSirK documentation is moderate outdated (outdated screenshots, no description of new main menu items). Student should download documentation source and update it using HTML version as a reference, new screenshots for the default KDE theme (Oxygen) should be also presented.
Prerequisites
Moderate level of English, KDE distribution installed or run from live image.
Links
Mentor
Yuri Chornoivan

Kamoso: Create documentation

Description
Kamoso is a great program to use your webcam to take pictures or make videos, but we don't have a documentation to help our users. The student should download, install this application and use it and make a good documentation describing the main elements of the interface, such as how to take a picture, a video, what's the burst mode doing and how to share pictures and videos through facebook or youtube.


Prerequisites
Be able to install Kamoso. Good grasp of written English.


Links
Mentor
Alex Fiestas


Pairs Editor: Create documentation

Description
Pairs is a relatively new educational aplication of KDE Edu family. Pairs stimulates your memory and logic skills. It aims to help the learning for pre-school kids. We don't have a documentation to help our users to create their themes. The student should download, install this application and use it and make a good documentation describing the main elements of the interface, such as how to open a theme, create a new one and add all the needed information to have it ready for usage.
Prerequisites
Be able to install Pairs. Good grasp of written English.
Links
Mentor
Aleix Pol

Pairs Editor: Create Tooltips strings

Description
The students should add tooltips on each component in the GUI to give valuable help to the user. These should be short and clear.
Prerequisites
Be able to use QTDesigner. Good grasp of written English.

Mentor: Marco Calignano

Pairs Editor: Create What's This strings

Description
The students should add "What's This" string on each component in the GUI to give valuable help to the user. These should be short and clear.
Prerequisites
Be able to use QTDesigner. Good grasp of written English.

Mentor: Marco Calignano

KDE Edu (Rocs): Create Example Algorithm Projects

Description

Rocs is a Graph Theory IDE for everybody interested in designing and analyzing graph algorithms. (For more information please refer to the Rocs handbook or the website). In this task, two example algorithms shall be implemented for demonstrating Rocs.

The Task: For each of the following algorithms

  • Breadth first search and
  • Prim's spanning tree algorithm

create a project and implement the algorithm such that it can be used to illustrate the behavior of the algorithm. In detail, this includes

  1. implementation the algorithm and testing it
  2. creating a meaningful graph that is suited for illustrating the algorithm
  3. add useful steps to the algorithm (see interrupt() in the handbook)
  4. explain the algorithm's idea and what you can simulate in the project journal file
Prerequisites

Basics of graph algorithms, very basic JavaScript

Links
Mentor

Andreas Cord-Landwehr

ownCloud: Summary page of the apps

Description
Write a short overview describing the different types of apps available for ownCloud. Specifically explain the difference between internal and 3rd party apps at apps.owncloud.com.
Prerequisites
Good written English.
Mentor
Michael Gapczynski (MTGap on freenode -- email: [5]

ownCloud: User documentation for External Storage configuration

Description
Write a short overview describing how to configure external storage with ownCloud. Adapt the blog posts found at blog.gapinthecloud.com into proper documentation.
Prerequisites
Good written English.
Mentor
Michael Gapczynski -- email: [6]

ownCloud: Produce ownCloud FAQ

Description
The student is asked to collect the most asked questions about ownCloud in the mailing list ([7]) or on the forum ([8]) and create an FAQ list out of them. The questions should not apply to a specifc version of ownCloud. The student needs to discuss this task with the mentor before starting, so that he will get a grasp of what the important questions are.
Prerequisites
Good written English.
Mentor
Alessandro Cosentino (zimba12 on freenode -- email: [9])

ownCloud: Move documentation from Wordpress to the GitHub Infrastructure

Description
The student is asked to move ownCloud documentation from Wordpress to the GitHub Infrastructure, checking for outdated information along the way. Can be split up into two and up to four tasks (user, admin (app|core)-dev), with the user documentation being slightly simpler to handle. Requires learning reStructuredText. Applicants should feel comfortable editing foreign texts and should not be afraid of restructuring existing texts if needed.
Mentors
Daniel Molkentin (danimo on freenode); Tom Needham (tpn on freenode)

ownCloud: User documentation for File access

Description
Clean up the documentation on [owncloud.org owncloud.org] website concerning the different ways to access files in ownCloud. Along the way, make the documentation more user-friendly and exapnd it with an overview on how to interface ownCloud with different desktop and mobile file managers.
Links
Mentor
Robin Appelman (icewind on freenode -- email: [10])

ownCloud: End-user documentation for Contacts and Bookmarks apps

Description
The student is asked to write two short overviews for two ownCloud apps: the first one describing the Contacts app and how to complete some simple tasks such as adding a contact, creating an addressbook, and syncing;

the second one describing the Bookmarks app and how to complete some simple tasks such as adding and editing a bookmark, and using the bookmarklet.

Mentor
Thomas Tanghus (tanghus on freenode) for the Contacts part, Brice Maron (eMerzh on freenode) for the Bookmarks part

Plasma Active: Handbook for PA in qualified english

Description
Proofreading the english handbook, check spelling, grammar and so on.
Steps
  • Proofread Chapter 1 & 2 (Getting PA and First Steps)
  • Proofread Chapter 3 (Initial Setup)
  • Proofread Chapter 4 (Using PA)
  • Proofread Chapter 5 (Configuring PA)
  • Proofreading Appendix A (Help and Troubleshooting)
Links
Prequisites
  • Good knowledge of the english language
  • Basic XML or DocBook Knowledge (can also mentor in this)
  • Useraccount on Sourceforge
Mentor
Sascha Manns (saigkill on freenode) -- email: [email protected] -- Userpage: Userpage

Outreach/Research

Amarok: Make a "Team" page

Description
Based on information from Amarok's "About" dialog, various social networks such as openDesktop.org, and talking to team members, make a "Team" page on Amarok's project website, like [11] or [12]. We're specifically interested in a nice design and layout, and can fill out the data ourselves later on.
Mentor
Teo Mrnjavac

Amarok: LikeBack statistics

Description
Amarok uses the Likeback feedback gathering system. Likeback is a client-server system. Its client component is a library which puts like/dislike buttons in the top right area of all the windows in an application, that allow users to send context-sensitive feedback. The server component runs on a web server hosted by the Amarok team which stores the feedback entries in a database. There's quite a lot of feedback messages, and the Amarok team hardly has the time to go through all of them. We need someone to take the database dump and analyze all the feedback gathered in the past year or so and produce a detailed report with like/dislike/feature statistics and prominent requests.
Expected results
A thorough report, maybe in a PDF document or spreadsheet, with statistics and comments. A comparison with last year's statistics is also expected.
Prerequisites
spreadsheet use, at least basic knowledge of SQL, basic writing skills and lots of patience.
Mentor
Teo Mrnjavac

KDE Forums: clean up KDE Brainstorm

Description
Currently the KDE Brainstorm (http://brainstorm.forum.kde.org) includes a lot of invalid, duplicate, or already fixed ideas. In order for both users and developers to screen them effectively, they need to be reorganized. The Brainstorm interface already allows to do this: the task involves looking through the open ideas and mark them as fixed, invalid, in [Teo Mrnjavac <[email protected]>progress, or finished.
Prerequisites
Some general knowledge about the current progress of KDE software, including recent developments.
Mentor
Luca Beltrame ([email protected])

Metrics: Check Ohloh organisation page

Description
KDE is a showcase in Ohloh's new organisation feature. We need to make sure the information in the project is accurate. Please check if there are any missing projects in the project listing and if they are correctly categorized as being a KDE project. Check for other improvements that can be done and suggest them.
Mentor
Lydia Pintscher

Metrics: MLStats

Description
Investigate MLStats and create some useful statistics for 3 mailing lists. Document your findings and work so it can be extended later.
Mentor
Lydia Pintscher

Metrics: Git stats

Description
Investigate some options to get statistics out of git that let us learn more about the project and the people working on it. Document your findings and their benefits, drawbacks and what the individual options can do.
Mentor
Lydia Pintscher

Promo: new Twitter and identi.ca backgrounds

Description
Create new backgrounds for identi.ca and Twitter similar to the ones at Promo/Material/Microblogging.
Mentor
Lydia Pintscher

KDE e.V.: Create board timeline

Description
Create a timeline for the board of directors of KDE e.V. similar to http://meta.wikimedia.org/wiki/Wikimedia_Board_of_Trustees#Chart.
Mentor
Lydia Pintscher

Promo: Create a timeline of important events in KDE's history

Description
Create a timeline of important events in KDE's history.
Mentor
Lydia Pintscher

Promo: Create an overview of KDE

Description
Create a mindmap to give an overview of KDE similar to http://de.wikipedia.org/w/index.php?title=Datei:WikimediaMovementMindmap-October2012.svg.
Mentor
Lydia Pintscher

Marble: Create a custom map theme for Marble

Description
See e.g. http://techbase.kde.org/Projects/Marble/HistoricalMaps.
Mentors
Torsten Rahn (rahn [at] kde.org)

Marble: Record a new Speaker set for Marble's Turn-By-Turn Navigation

Description
See e.g. http://userbase.kde.org/Marble/CustomSpeakers.
Mentors
Torsten Rahn (rahn [at] kde.org)


Marble: Extend Marble's Measure Plugin by a feature

Description
Marble has a simple plugin to measure distances. Create a nice extension (e.g. make the color of the measure line configurable or allow it to measure areas.)
Mentors
Torsten Rahn (rahn [at] kde.org)

Marble: Extend Marble's Stars Plugin by a feature

Description
Marble has a simple plugin to display stars. Create a nice extension (e.g. make it show constellation lines)
Mentors
Torsten Rahn (rahn [at] kde.org)

KStars: Add a custom catalog

Description
The Catalog selected is the "Saguaro Astronomy Club catalog". Reformat and clean up the existing catalog to make it compatible for loading into KStars.
Mentor
Rishab Arora (ra.rishab [at] gmail.com)

KStars: Propose outreach actions to popularize KStars among amateur astronomers

Description
We would like to hear some fresh and unbiased opinions about outreach actions we can undertake to popularize KStars. Maybe we should use social media? Or maybe there are some nice astronomy related websites whose APIs we should implement to make KStars more attractive and useful?
Mentor
Rafal Kulaga (rl.kulaga [at] gmail.com)

Promo: Propose updates for KDE's events calendar

Description
KDE maintains an event calendar at http://events.kde.org/upcoming.php. Research dates of future events we've attended before and make a list of dates, locations and links for them.
Mentor
Lydia Pintscher

Join the Game: Come up with ideas for a social media campaign

Description
KDE e.V. is running an individual supporting membership program called Join the Game to help raise funds and connect to members. Come up with ideas for a social media campaign to raise awareness of the program. Look at what other organisations have done like the Ada Initiative.
Mentor
Lydia Pintscher

Kig: Document Geogebra Functionallity

Description
We are preparing to implement support for Geogebra files in Kig, and the first step is to create a list of all the constructions in Geogebra that will have to be mapped to or implemented in Kig. Specifically, these tasks consist of:
  1. Identifying a Geogebra construction that has not yet been added as a bug in KDE's bug tracking system
  2. Look for an equivalent construction in Kig (could be one construction or a number of constructions that lead to the Geogebra one)
  3. Add a bug at KDE's bug tracking system documenting the construction
    1. The product is KDE
    2. Fill in the details of the construction in the bug report
      • The title should be the name of the Geogebra construction
      • The description could be an equivalent Kig construction, or set of constructions to achieve the Geogebra construction, or a note indicating that it has not yet been implemented in Kig
    3. Click the Show Advanced Fields in the bug report
    4. Locate the Assigned To field and change it to the e-mail address of the mentor of these tasks
    5. Locate the Blocks field and add the following ID: 309492 (the ID of the main Geogebra support bug)
    6. Attach a Geogebra file with an example of the construction
    7. Submit the bug
Mentor
David E. Narváez


Promo: Create screencasts for Kwin options

Description

Create a video about each configuration option of KWin with comments about how activate, use, config and use of the visual effect . The goal is show all the things thant can do Kwin. Later these videos can be upload to Promo Channel of Youtube (or another video server) or/and be integrate in the Config Window of Kwin

Prerequisites
  • How capture a video from the own PC.
  • How edit video
  • How make subtitles


Mentor

Baltasar Ortega <[email protected]>

Promo: Create KDE Advertising Video's

Description

Create several KDE Advertising Video's for promote KDE anywhere: events, booths, talks, etc. It can be about peple, about software, about Community, etc. Later these videos can be upload to Promo Channel.

Prerequisites
  • Know how edit video
  • Know how make subtitles


Mentor

Baltasar Ortega <[email protected]>

Quality Assurance

KDE Telepathy: go through our testing specification

Description

We have a testing specification that we go through before every release. http://community.kde.org/Real-Time_Communication_and_Collaboration/ReleaseTesting. We require a student to go through this test procedure and see if there are any problems with the current code

Prerequisites
Running the latest KTp from source
Mentor

The KDE Telepathy Team (#kde-telepathy on freenode, or [email protected] (be sure to join the mailing list first, otherwise your email may get lost))

Pairs Editor: testing it

Description
The Pairs Editor is a new application and needs to be tested by actual users. The student will have to try create a pairs theme using the editor and help us figure out the parts that are not working that well.
Mentors
Marco Calignano and Aleix Pol

Amarok: Testing from git (multiple tasks possible)

Description
While Amarok ships a stable version there also is the current development version. The student should build a development installation from git and test the main functions of Amarok and report back eventual errors, inconsistencies and bugs.
Prerequisites
The student must be able to follow clear written instructions, have a logical way of thinking. Must be able to test software independently after a short introduction
Links
Mentor
Myriam Schweingruber, Mamarok in #amarok on irc.freenode.net

ownCloud: User testing of the News app

Description
OwnCloud News app has been recently implemented as a Google Summer of Code 2012 project. So far, all the tests have been performed by developers of the app or ownCloud developers. The student will have to test the app from a user point of view, without digging into the code, and report the issues on the Github infrastructure.
Prerequisites
Two testing experience can be performed (which means two kinds of candidate): one from a user (student) who has never used a feed reader, the second one from a user (student) who regularly uses a feed reader (Google Reader, for example).
Links
Mentor

Alessandro Cosentino (zimba12 on freenode -- email: [13])

KDE Edu (Kanagram): Feature test list

Description

There has been a Quality initiation recently to boost the effort. There are some test lists available for a few KDE projects, and it would be nice to have such a list for the latest Kanagram as well. This could be a very useful towards having a testing guideline for Windows, but for sure it is also useful for other platforms like Linux or Mac. This can be achieved by using the existinghandbook for instance available from the homepage. See the link below for that.

Links
Prerequisites
Nothing, other than understanding an existing software, its documentation, and interest for sure. :-)
Mentor

Laszlo Papp <[email protected]>

"djszapi" or "lpapp" on freenode (IRC).

KDE Edu (KHangMan): Feature test list

Description

There has been a Quality initiation recently to boost the effort. There are some test lists available for a few KDE projects, and it would be nice to have such a list for the latest KHangMan as well. This could be a very useful towards having a testing guideline for Windows, but for sure it is also useful for other platforms like Linux or Mac. This can be achieved by using the existing handbook for instance available from the homepage. See the link below for that.

Links
Prerequisites
Nothing, other than understanding an existing software, its documentation, and interest for sure. :-)
Mentor

Laszlo Papp <[email protected]>

"djszapi" or "lpapp" on freenode (IRC).


KDE Edu (Rocs): Extend unit tests for parsing of DOT/GraphVis files

Description

Rocs is a Graph Theory IDE for everybody interested in designing and analyzing graph algorithms. (For more information please refer to the Rocs handbook or the website).

The Task: Rocs provides backends to handle differnt graph file formats. Those include the DOT graph language format that is used by GraphVis. Currently we have a large test suite that tests parsing for a ca. 80 graph files given in the DOT format. For those unit tests pick 10 - 20 of them and add useful checks if the graph file is not only succesfully parsed, but the result is also sound.

Prerequisites

Basic understanding on data structures and very basic C++

Links
Mentor

Andreas Cord-Landwehr


Marble: GPX file collection

Description

GPX is a commonly used file format to store tracks and routes. Marble can open and display such files in a map. We want to build a collection of sample .gpx files from different applications to ensure that all .gpx files are displayed in a sane way. Collect sample GPX files from different applications (see the OpenStreetMap wiki on GPX conversion for a list of programs that produce GPX files). Ideally the files are available under a create commons or similar license.

Links
Prerequisites
Nothing
Mentor

Dennis Nienhüser <[email protected]>

"Earthwings" on freenode in the #marble channel (IRC).

User Interface

Kexi: find UI issues while running under non-KDE desktop

Description
Review Kexi UI to find glitches while running under non-KDE desktop such as Unity, GNOME or Xfce. Since Kexi is highly portable software, it is desired to have it adaptable to current look and feel of the underlying desktop.
Any found issue, suggestion or doubt should be reported. Proposing solutions is welcome too but not necessary. Providing screen shots and details of system (desktop) configuration is expected. No software engineering skills are needed. User-level understanding of Kexi is preferred.
Prerequisites
Ability of gathering data from users, aggregating it and structuring; UI design/analytic skills are welcome.
Mentor
Jstaniek (talk)

Pairs: create a new icon for Pairs Editor

Description
Modify the Pairs game icon to create a new icon for the Pairs Editor
Mentors
Marco Calignano and Aleix Pol

KAlgebra Mobile: figure out a touch-friendly keyboard

Description
We have had KAlgebra working for more than a year now and it works great. Now the problem is that the input method we're using uses the default keyboard in the device. That's good because it feels integrated, but it would be interesting to have our own keyboard targeting KAlgebra's language. In this task you'll have to design a keyboard either through a mock-up or a QML file (better) that will let the user enter any equation supported by KAlgebra's language.
Mentor
Aleix Pol Gonzalez <[email protected]>

KStars: propose UI design for mobile version of KStars

Description
We are planning to port KStars to mobile devices, tablets in particular. We would like to gather as many UI design concepts as possible. The scope of the design is to be considered, as well as the method of recording it.
Prerequisites
UI design skills and enthusiasm for work. Preferably amateur astronomer and KStars user. No coding skills needed.
Mentor
Rafal Kulaga (rl.kulaga [at] gmail.com)

KStars: design an icon for AstroBin.com API feature

Description
We are introducing AstroBin.com API support in KStars, so we're looking for a neat icon for its configuration page in Options window.
Mentor
Rafal Kulaga (rl.kulaga [at] gmail.com)

ownCloud: Keyboard shortcut for the Files app

Description
Propose and add keyboard shortcuts for actions such as creating a new text file, folder, and renaming. If possible, the behaviour of a file manager could be emulated, like entering folders or opening files on enter and selecting items with the arrow keys.
Prerequisites
JavaScript, jQuery
Mentor
Bernhard Posselt (Raydiation on freenode -- email: [14])

ownCloud: A new design for the Apps administration page

Description
Propose a new design for the page to manage apps. Remember this section will be used by admininstrators to manage applications for lots of users. The students should come up with one or more mockups for the new layout of the page.
Prerequisites
UI design skills, experience with git preferred
Mentor
Jan-Christoph Borchardt (jancborchardt on freenode)