SoK/Ideas/2013

From KDE Community Wiki
< SoK
Revision as of 20:15, 14 August 2013 by Jstaniek (talk | contribs)

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, you may wish to contact the developers and find out more about the particular suggestion you're looking at.

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 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.

Project: Cooperative Learning themes for Pairs

Brief explanation: Describe an xml theme-schema to add Cooperative learning to the educational game Pairs. Modify the Pairs Theme Editor to support this new theme-schema.

Pairs is an educational game for children. Pairs allows the user to load external themes so that the user can customize the game for her/his own educational goal. A Theme editor is also shipped together with Pairs. This editor allow the educator to produce their own themes.

Expected results: A brief documentation of the schema and a new version of the Editor that can create, read, modify and save new Themes following this schema

Knowledge Prerequisite: Git, XML, Qt, C++

Mentor: Marco Calignano <[email protected]>

Project: Cooperative Learning games for Pairs

Brief explanation: Enhance the Pairs Theme model interface to integrate the new xml-schema for the cooperative learning themes in the Pairs game. Further implement some GUI changes to allow the cooperative learning theme to be used more intuitively.

Pairs is an educational game for children. Pairs allows the user to load external themes so that the user can customize the game for her/his own educational goal. A Theme editor is also shipped together with Pairs. This editor allow the educator to produce their own themes.

Expected results: Pairs is able to understand the new theme schema. It also allows you to play following the ‘rules’ in the schema.

Knowledge Prerequisite: Git, XML, Qt, QML, C++

Mentor: Marco Calignano <[email protected]>

Project: Add support for importing tables from LibreOffice Base to Kexi

Brief explanation: Add support for importing (Kexi calls it data/design migration) tables from LibreOffice (or OpenOffice) Base (ODB format) to Kexi. This task involves research on ODB format (it's relatively openly defined). Qt/C++ shall be used for the task, not any Java engine (HSQL db). See [1] for a start. This could be introduction to later development of complete database import from ODB to a Kexi database.

Expected results: In the GUI the feature shall be put in the same place as the import from MDB: External Data -> Import Tables -> Table Importing Wizard. Then user would see .odb support in the open file dialog, just like it has access to importing CSV or MDB.

Knowledge Prerequisite: C++, some Qt, some databases, some XML, software architecture

Mentor: Jarosław Staniek (Kexi maintainer)

First steps:

  • Studying kexi/migration/importtablewizard.cpp which is a GUI taking an instance of implementation of a migrate driver derived from KexiMigration::KexiMigrate (in your case - the ODB driver). It's the m_migrateDriver attribute.
  • Trying to implement plugin (needed methods of the driver) in migration/odb/ by looking how it was performed for other cases, e.g. for mysql (see kexi/migration/mysql/ dir) or other cases such as pqxx, txt, xbase, sybase or mdb.