SoK/Ideas/2020
Ideas
Information for students
These ideas were contributed by our developers and users. They are sometimes vague or incomplete. If you wish to submit a proposal based on these ideas, contact the developers and find out more about the particular suggestion you're interested in.
When writing your proposal or asking for help from the general KDE community don't assume people are familiar with the ideas here. KDE is really big!
If there is no specific contact given in the idea, you can ask questions on the general KDE development list [email protected]. See the KDE mailing lists page for information on available mailing lists and how to subscribe.
Project: Sample project
Brief explanation:
Expected results:
Knowledge Prerequisite:
Mentor:
When adding an idea to this section, please try to include the following data:
- if the application is not widely known, a description of what it does and where its code lives
- a brief explanation
- the expected results
- pre-requisites for working on your project
- if applicable, links to more information or discussions
- mailing list or IRC channel for your application/library/module
- your name and email address for contact (if you're willing to be a mentor)
If you are not a developer but have a good idea for a proposal, get in contact with relevant developers first.
Your Own Idea
Project: Something that you're totally excited about
Brief explanation: Do you have an awesome idea you want to work on with KDE but that is not among the ideas below? That's cool. We love that! But please do us a favor: Get in touch with a mentor early on and make sure your project is realistic and within the scope of KDE. That will spare you and us a lot of frustration.
Expected results: Something you and KDE loves
Knowledge Prerequisite: Probably C++ and Qt but depends on your project
Mentor: Try to see who in KDE is interested in what you want to work on and approach them. If you are unsure you can always ask in #kde-soc on Freenode IRC.
Project: Atelier/Atcore
Brief explanation: Atelier is the 3DPrinting software built by the KDE Community to help you to control your 3Dprinters from your PC, and hopeful from any device.
Expected results:
What we would like to have:
- Build a web layer on AtCore(That is the library behind Atelier)
- Build an interface with QML for mobile/embedded devices.
Knowledge Prerequisite: C++ and Qt.
Mentor: Lays Rodrigues Tomaz Canabrava Chris Rizzitello
Project: KDE Web/Calligra
Brief explanation: Calligra is an office program developed by KDE for 22 years. Currently, the webpage of Calligra looks very dated and is using old screenshots from the KDE4 era. The task consists of rewriting the website to look similar to kontact.kde.org. Since the code can be reused the task will consist mostly in writing content and taking screenshots.
Expected results:
A beautiful webpage for the promotion of Calligra.
Knowledge Prerequisite: Markdown and some very basic programming. Familiarity with git. Good English knowledge is recommended.
Mentor: Carl Schwan
Project: Promo/Kdenlive
Brief explanation: Kdenlive is the video editor by KDE. Currently, the homepage of Kdenlive is missing some important information (screenshot, description). The goal of this task is to improve the homepage to provide enough information for a potential user, with information why it should use Kdenlive instead of another video editor.
Expected results:
A beautiful webpage for the promotion of Kdenlive.
Knowledge Prerequisite: Good English knowledge is recommended. Interest in promotion. Optional knowledge in web design and web development.
Mentor: Carl Schwan, Farid Abdelnour
Project: Kdenlive
Brief explanation: Improve the timeline clips color palette.
Expected results: To have a better UI/UX by designing a concept on how clips should look in the timeline. Also improve the way audio waves are displayed.
Knowledge Prerequisite: Qt and QML
Mentor: Farid Abdelnour
Project: Krita
Brief explanation: Krita is a wide-used digital painting application, written in C++ and Qt. Plugins can also be written in Python. If you want to participate in Season of KDE 2020 for Krita, please contact the Krita developers on #krita on irc.freenode.org (there is also a matrix mirror on webchat.kde.org). We prefer students bring their own ideas. Examples of coding projects you can work on are image filters, pixel generators or brush engines. Non-coding project proposals are welcome as well. These could take the form of papercuts inventories, usability surveys or creating tutorials for underdocumented aspects of Krita.
Mentor: Boudewijn Rempt
Project: marK
Brief explanation: marK is a machine learning dataset annotation tool which allows users to annotate multiple types of data to help during the training for supervised classification problems. It is currently under development and we are planning to release its beta version soon. We now have a version of marK that was developed with Qt Widgets, but we are planning to port it to QML, as it will provide an easier way to manipulate different types of data and a possible release for mobile devices in the future. More information can be seen in this post: https://caiojcarvalho.wordpress.com/2019/01/29/mark-a-general-purpose-tool-for-data-annotation/
Expected results: Finish porting marK to QML.
Knowledge Prerequisite: Qt and QML
Mentor: Caio Jordão Carvalho
Project: ROCS Graph Theory IDE
Brief explanation: Rocs is a Graph Theory IDE for designing and analyzing graph algorithms. It provides a easy to use visual editor for creating graphs, a scripting engine to execute the algorithms and other tools for experimentation on graphs. The scripting language is Javascript. The task is fixing the graph editor view that have some problems related to the placement of the graphs in the view and mouse clicks not working correctly.
Expected results: A graph editor view working correctly.
Knowledge Prerequisite: Basic programming in C++ and QML. Familiarity with git. Good English knowledge is recommended.
Mentor: Caio Tonetti
GCompris
Contact the GCompris team.
Brief explanation:
GCompris is a high quality educational software suite, including a large number of activities for children aged 2 to 10. We recently introduced a multiple level selection. This allows user to choose more closely the competences they want to work on. For example when working on numeration, user can now choose if he wants to learn numbers from 0 to 3 or 0 to 4 or 0 to 5 etc...
Expected results: The aim of this year is to complete the number of activities including this features. Targeted activities are:
- Enumeration memory game
- Find the date
- Count the items
- Balance the scales properly
But also to improve the level selection for the following activities :
- Analog watch
- Small Numbers
Knowledge Prerequisite:
Be interested in children’s education
Be familiar with GCompris concept and content
Basic knowledge in a programming language (a 1 year school course is enough)
Be able to build the Qt Quick version of GCompris
Application guide: Provide a timeline in your application. If you haven't contributed yet please read http://gcompris.net/wiki/GSOC_newcomers, http://gcompris.net/wiki/An_exercise_for_new_contributors and http://gcompris.net/wiki/Reviewing_an_activity
There are several info in the wiki: http://gcompris.net/wiki/Developer%27s_corner.
Feel free to contact us either on irc or by mail ([email protected])
Mentors: Aman Kumar Gupta (IRC: gupta2140[m]), Emmanuel Charruau (IRC: allon), Johnny Jazeix (IRC: JohnnyJ), Timothée Giet (IRC: Animtim), Sagar Chand Agarwal (IRC: sagaragarwal94)
Project: One step closer to version 1.0
Brief explanation: we had some remarks that the difficulty in an activity can increase too much and target different ages in the same levels. The aim of this project is to add a granularity on the datasets so the child can better target what to learn.
Expected results: The aim of this project is to update activities to be able to use json files as datasets so we can have multiple datasets (each targeting a different learning goal) for the same activity.
You need to choose activities that need this kind of datasets and update their code to use multiple datasets.
A discussion is opened in https://phabricator.kde.org/T10211 to better know what we want and how to do it (WIP).
Knowledge Prerequisite:
Be interested in children’s education
Be familiar with GCompris concept and content
Basic knowledge in a programming language (a 1 year school course is enough)
Be able to build the Qt Quick version of GCompris
Application guide: Provide a timeline in your application. If you haven't contributed yet please read http://gcompris.net/wiki/GSOC_newcomers, http://gcompris.net/wiki/An_exercise_for_new_contributors and http://gcompris.net/wiki/Reviewing_an_activity
There are several info in the wiki: http://gcompris.net/wiki/Developer%27s_corner.
Feel free to contact us either on irc or by mail ([email protected])
Mentor: Emmanuel Charruau (IRC: allon)