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: 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
Activities already including the selection level can be found in our git repository under multiple_dataset branch. Activities are smallnumber, smallnumbers2, gletters, reversecount, gletters.
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: Emmanuel Charruau (IRC: allon), Johnny Jazeix (IRC: JohnnyJ), Timothée Giet (IRC: Animtim), Rajdeep Kaur (IRC: )
Project: KDE Connect
Brief explanation: Create a website for KDE Connect for better outreach and visibility. The website should showcase information regarding plugins of KDE Connect, how to use KDE Connect, various features of KDE Connect and the underlying technologies and libraries that power KDE Connect on various platforms. Other than this, the website should connect to various KDE wikis that explain more about KDE Connect.
The current discussion for this project is available here.
Expected results: To have a static website for KDE Connect that allows any user or developer to understand the purpose and features of KDE Connect and to also provide static link(s) for the various master builds of KDE Connect applications, namely the android application and its desktop counterpart(s).
Knowledge Prerequisite:
- Basic knowledge of HTML, CSS, JavaScript.
- Previous static website projects are a nice-to-have.
- Please do elaborate about how you plan to explain the inner working of KDE Connect in your proposal.
- We are not looking for professional designers. We are more interested in developers who have a rich and in-depth understanding of KDE Connect, who can use our existing documentation and improve it to better explain how KDE Connect works.
Mentors:
- Carl Schwan
- Piyush Aggarwal