Marble/GoMarble/JJ: Difference between revisions

From KDE Community Wiki
No edit summary
m (35 revisions imported: Import from techbase...)
 
(13 intermediate revisions by 4 users not shown)
Line 1: Line 1:
==Marble Junior Jobs==
If you are new to Marble then you want to check this page. We list a few things you can do which are easy tasks and introduce you to Marble development.
If you are new to Marble then you want to check this page. We list a few things you can do which are easy tasks and introduce you to Marble development.
You can possible find some Junior Jobs at [https://bugs.kde.org/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=&product=marble&long_desc_type=substring&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&keywords_type=allwords&keywords=junior-jobs&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&cmdtype=doit&order=Reuse+same+sort+as+last+time&field0-0-0=noop&type0-0-0=noop&value0-0-0= KDE's Bugzilla].
You can possible find some Junior Jobs at [https://bugs.kde.org/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=&product=marble&long_desc_type=substring&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&keywords_type=allwords&keywords=junior-jobs&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&cmdtype=doit&order=Reuse+same+sort+as+last+time&field0-0-0=noop&type0-0-0=noop&value0-0-0= KDE's Bugzilla].


===Marble Marketing Junior Job===
== Marble Marketing Junior Jobs ==
Check  
Check  


[http://www.google.de/search?as_q=Marble+KDE&hl=de&num=100&btnG=Google-Suche&as_epq=&as_oq=&as_eq=&lr=&cr=&as_ft=i&as_filetype=&as_qdr=d&as_occt=any&as_dt=i&as_sitesearch=&as_rights=&safe=images "Marble KDE"] results of the last 24 hours
[http://www.google.de/search?as_q=Marble+KDE&hl=de&num=100&btnG=Google-Suche&as_epq=&as_oq=&as_eq=&lr=&cr=&as_ft=i&as_filetype=&as_qdr=d&as_occt=any&as_dt=i&as_sitesearch=&as_rights=&safe=images "Marble KDE"] results of the last 24 hours


for interesting news items related to Marble. Then post these news to our Marble [http://www.facebook.com/#!/group.php?gid=346064806033 "Marble Facebook group"]. In the next step update our [http://edu.kde.org/marble "Marble Website"] accordingly.
for interesting news items related to Marble. Then post these news to our Marble [http://www.facebook.com/#!/group.php?gid=346064806033 "Marble Facebook group"]. In the next step update our [http://marble.kde.org "Marble Website"] accordingly.


===Quality Assurance / Documentation===
== Quality Assurance / Documentation ==
We want our <i>Marble source code to look good</i>. The <i>documentation should be concise and helpful</i> and the comments shouldn't have spelling errors. Also it shouldn't have any obvious "formal" bugs. Help us to improve our code quality. This is an easy job that helps you to get familiar with the source code. It's the first thing that absolute beginners usually want to look at. We list a few important issues that need to be checked for <i>regularly</i>:
We want our <i>Marble source code to look good</i>. The <i>documentation should be concise and helpful</i> and the comments shouldn't have spelling errors. Also it shouldn't have any obvious "formal" bugs. Help us to improve our code quality. This is an easy job that helps you to get familiar with the source code. It's the first thing that absolute beginners usually want to look at. We list a few important issues that need to be checked for <i>regularly</i>:


Line 30: Line 28:




===Programmer Junior Jobs===
== Programmer Junior Jobs ==
This section deals with junior jobs that require basic C++ skills:
This section deals with junior jobs that require basic C++ skills: See https://bugs.kde.org/buglist.cgi?keywords=junior-jobs&keywords_type=allwords&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&product=marble
 
===Implement a "simple" tag for KML support (e.g. LookAt)===
The <LookAt> tag in KML should be quite easy to implement -- at least compared to the other tags. Alternatively you can try to find a different tag that looks like it would be easy to implement, however you need to check in the handler or data directory whether it is implemented already.
* Have a look at the KML reference:
 
http://code.google.com/apis/kml/documentation/kmlreference.html#lookat
 
* Have a look at Marble's geodata source (in marble/src/lib/geodata).
* Try to understand what the parser, the handler and the data stuff does.
* Create a new handler (EASY)
* Connect Marble's MarbleMap::setLookAt() command to execute the lookat command
 
===Create an "Open Recent ..." menu entry===
In marble/src/KdeMainWindow.cpp use
 
http://api.kde.org/4.x-api/kdelibs-apidocs/kdeui/html/classKRecentFilesAction.html
 
to create an open recent menu entry for the KDE version of Marble.
Adding the same functionality to the Qt version of Marble is a bonus task.
 
 
===Adding Bookmarks===
* It would be nice if Marble had its own bookmark feature: Like in Konqueror you'd be able to click Bookmark->Add Bookmark and the current position and zoom value would get stored as a bookmark. Once the user would click the bookmark item the original coordinate and zoom value would get restored. You can use MarbleWidget::centerLongitude(), MarbleWidget::centerLatitude(), MarbleWidget::zoom() and the setters for the same properties to retrieve and set the coordinates.
 
Level of difficulty: HARD
 
=== Add more Plugin Icons ===
Marble's plugin API lets plugins define an icon which is shown in the menu for activating plugins. Only a few plugins use icons so far however. Please locate appropriate plugin icons (chances are high the oxygen project already has some) and add them. A good start would be the Photos Online Service Plugin.
 
Level of difficulty: EASY
 
=== Update the country information to 2010 ===
Marble is using the CIA World Factbook for displaying country information.
Have a look at the python script
 
marble/data/ciasource/cia2kml.py
 
and use it to compile the latest information from the latest version of the Factbook:
 
https://www.cia.gov/library/publications/the-world-factbook/
 
Once done you need to do some extensive testing to see whether the information got properly applied.
 
Level of difficulty: EASY
 
 
=== Add support for 23 to marble's Photos Online Service Plugin ===
Marble's Photos Online Service Plugin currently displays photos downloaded from Flickr. As [http://www.23hq.com 23] also provides flickr API, it should be possible to display images from 23 as well.
 
[https://bugs.kde.org/show_bug.cgi?id=232357 Bugzilla]
 
Level of difficulty: HARD
 
=== add fast adding messurment points by ctrl+click ===
See [https://bugs.kde.org/show_bug.cgi?id=232098 Bug 232098] for more information.
 
Level of difficulty: MEDIUM
 
=== Download Progress Bar for Marble Qt ===
The KDE version of Marble has a nice progress bar in the statusbar that shows the progress of tile downloading. Users of Qt Marble don't see any progress indication. Please change that: Have a look at MarblePart::setupDownloadProgressBar() in marble_part.cpp (part of the implementation in the KDE version) and integrate a similar progress bar feature in QtMainWindow.cpp, the Qt version of Marble. The feature can be tested using View => Redisplay for example, which triggers a re-download of tiles on the screen.
 
Level of difficulty: EASY
 
=== OpenStreetMap Legend ===
We have a nice OpenStreetMap theme with a nice legend, but it's not complete! Please add important OSM features to it. See [https://bugs.kde.org/show_bug.cgi?id=162685 Bug 162685] for more information.
 
Level of difficulty: EASY

Latest revision as of 16:40, 25 October 2016

If you are new to Marble then you want to check this page. We list a few things you can do which are easy tasks and introduce you to Marble development. You can possible find some Junior Jobs at KDE's Bugzilla.

Marble Marketing Junior Jobs

Check

"Marble KDE" results of the last 24 hours

for interesting news items related to Marble. Then post these news to our Marble "Marble Facebook group". In the next step update our "Marble Website" accordingly.

Quality Assurance / Documentation

We want our Marble source code to look good. The documentation should be concise and helpful and the comments shouldn't have spelling errors. Also it shouldn't have any obvious "formal" bugs. Help us to improve our code quality. This is an easy job that helps you to get familiar with the source code. It's the first thing that absolute beginners usually want to look at. We list a few important issues that need to be checked for regularly:

  • Try to find spelling errors in the source code comments and in Marble UI strings. (EASY)
  • KDE Krazy check: Have a look at the results of the static code checker: http://www.englishbreakfastnetwork.org/krazy/reports/kde-4.x/kdeedu/marble/index.html. Try to understand possible problems and create a fix for them. (EASY/MEDIUM)
  • Get rid of compile warnings: Compile Marble from scratch and check all the warnings that possibly appear. Try to get rid of the warnings by adding fixes. If parameters are not used, examine why and either remove them or hide the warning or leave it as it is. (EASY-MEDIUM)
  • Compile marble with the cmake option -DPEDANTIC=ON. Fix all errors that come up until Marble compiles through (MEDIUM).
  • Add comments. You don't understand some source code in Marble? Then probably other people won't either. Try to understand it and ask Marble developers. The add some comments so that the next person will be able to understand the source code much easier (MEDIUM).
  • Create API-Documentation (EASY).
  • Review the API. Make sure that the API is Qt-ish (MEDIUM). Read http://qt.gitorious.org/qt/pages/ApiDesignPrinciples and read the Marble source code. Try to find cases which seem to be non-standard. (MEDIUM)
  • Read our Marble Coding Standards: http://websvn.kde.org/trunk/KDE/kdeedu/marble/CODING?revision=700337&view=markup. Ensure that the Marble source code follows it (EASY).
  • Help to translate Marble into your own language. Try to find "weird" translations or translations that don't express things in words that a normal user would understand and correct/report them (MEDIUM).
  • Check KDE's Bugzilla for any open Marble bugs: https://bugs.kde.org/buglist.cgi?quicksearch=Marble. Try to reproduce the bugs and check whether the bugs are still valid. Remove them if they're not valid anymore and seem to be fixed already (EASY). Try to fix them if they are still valid (MEDIUM/HARD).

If you come across a problem don't hesitate to ask us (there are no stupid questions, just people who are afraid of asking for stupid reasons ;-) If you want to send in your patch for review, please send it to our mailing list [email protected].


Programmer Junior Jobs

This section deals with junior jobs that require basic C++ skills: See https://bugs.kde.org/buglist.cgi?keywords=junior-jobs&keywords_type=allwords&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&product=marble