<<

GCompris goes Quick QtCon’16, Berlin(Germany) ● Code

About me ● Community

● Travel

● A project created in 2000 to provide educational content on GNU/ for children 2 to 10 years of age. ● Used worldwide at home, at school, at the hospital, ... ● Originally written in GTK+, ported to begining in January 2014 and still in progress Why we selected Qt Quick ?

● Goal is to target desktop and mobile platforms from a single code base GCompris ● Tested HTML5 ● But Qt Quick is a better approach +KDE Edu in our case as: ○ Better development platform ○ Better graphics (e.g. particles) ○ Smooth animations ○ Simple Qt Quick ?

● Provides a way of building custom, highly dynamic user interfaces with fluid transitions and effects, which are becoming more common especially in mobile devices. Qt Quick includes a declarative scripting language called QML.

●Fast to develop

●Fast to extend

●Fast to render Qt is doing an excellent job in multiplatform.

Platform specific code is limited to

● Updating our CMakeList for the platform

Multiplatform ● Selecting the path to the resources and the translations

The “good” side ● Adding in App purchase hook

● Packaging audio file in a supported codec ● Supporting a platform requires to have the hardware to test it

● Need to learn and integrate specific Multiplatform toolchains to make a package ● Need to maintain app store product The “bad” side entries ● Promoting the app towards a given platform ● On Android, particles makes GCompris crash (Still not a stable fix)

● On Windows, could not find a suitable Multiplatform audio codec (Close to 100 %) ● On MacOSX need qmake, IOS requires The “ugly” Side the commercial Qt version :( ● SailfishOS with older Qt version (5.2.2) and QtQuick . Controls not packaged Porting Strategy

● Full rewriting in QML

● We copy the game play, graphics, dataset and the translations from the GTK+ version

● Screen resolution independence (Thanks SVG)

● Major effort on the graphics and the user experience

● Can run in landscape or portrait mode

● Compilation chain in CMake Why KDE?

● GCompris has always been a community project

●Major focus on i18n/l10n

●Community helps and is a great motivation

●Fit perfectly in KDE-EDU What is a good activity ?

● We don't replace teachers, parents and traditional approaches

● A good activity helps the children acquire knowledge 'differently'

●The computer must do something more than just giving the right answer.

Quizzes are not enough ??? Demo Time ● Android demo has 260 installations / day (50000 so far) ... but 170 de-installs / day Statistics ● Rated 4.30 ● Very popular in France, growing slowly in other countries.

● Windows (in GTK+) is 300 DL / day ● Increased our audience with a Windows version in 2003 ● But this version requires an Community & activation code in order to : ○ Give an advantage to the Commercial GNU/Linux version ○ Fund the development ○ Increase our audience by being distributed in commercial distribution channels and app stores Status!!

Currently more than 120 activities have been ported on the 140 of the GTK+ version, 10 majors are missing. ●70+ contributors

●Completed a rework of the graphics byTimothée Giet backed by a crowd funding operation

●Available in Android, Mac OSX, iOS App stores

●23 languages at 100% thanks to KDE-I18N.

●Completing the port and killing the GTK+ version

●Adding a teacher console – Let the teacher see in real time what the children are doing RoadMap – Looking at achievements, detecting difficulties – Creating exercises What is the current plan ? – Assigning exercises to a child or a group GCompris needs you...

●Talk about GCompris to your friends, teachers, blogs, tweets, ...

●Package GCompris on whatever platform you like

●Pick a mic and give voice

http://gcompris.net/wiki/Developer's_corner

Questions ??

Thank You !!! Sagar Chand Agarwal and Team GCompris scagarwal@.org @sagaragarwal94