KDE Core/Astronomical Calendars: Difference between revisions

From KDE Community Wiki
Line 6: Line 6:


'''Knowledge Prerequisite:''' C++, especially an understanding of Binary Compatibility rules and good API design.  Some knowledge of Celestial Mechanics and good mathematical literacy.  Any experience with regular cultural use of astronomical calendars would be highly useful.
'''Knowledge Prerequisite:''' C++, especially an understanding of Binary Compatibility rules and good API design.  Some knowledge of Celestial Mechanics and good mathematical literacy.  Any experience with regular cultural use of astronomical calendars would be highly useful.
== Required KDE Reading ==
Background knowledge you need about KDE and kdelibs:
* http://techbase.kde.org/Policies/Library_Code_Policy
* http://doc.trolltech.com/qq/qq13-apis.html
* http://techbase.kde.org/Policies/Kdelibs_Coding_Style
* http://techbase.kde.org/Policies/Binary_Compatibility_Issues_With_C++


== Available Resources ==
== Available Resources ==

Revision as of 19:12, 27 April 2011

GSoC Project: Support for astronomical calendar systems

Brief explanation: Add support for astronomical calendar systems. KDE is unique in the Linux eco-system for providing support for alternative calendar systems, such as the Hebrew, Islamic Civil, and Japanese calendar systems. Support for such calendar systems is standard in the Windows and Mac worlds. However, KDE does not as yet support calendar systems that require astronomical calculations, such as the Chinese and Islamic Lunar calendars, This project would fill this gap.

Expected results: Documentation, design and production of Chinese, Indian, Islamic and Jalali/Persian calendar systems and their numerous derivatives. The documentation to be of a high enough standard to submit to various standardization bodies. Production of an astronomical library for calculating sunrise, sunset and moon phase (and any other useful calculations) for shared use between the calendar systems and other KDE libraries and applications such as KHolidays, KStars and Marble.

Knowledge Prerequisite: C++, especially an understanding of Binary Compatibility rules and good API design. Some knowledge of Celestial Mechanics and good mathematical literacy. Any experience with regular cultural use of astronomical calendars would be highly useful.

Required KDE Reading

Background knowledge you need about KDE and kdelibs:

Available Resources

Books

I have copies I can lend if needed.

"Calendrical Calculations" 3rd Edition by Nachum Dershowitz and Edward M. Reingold. Note no code or data can be used form this book due to licensing conditions, but provides a good general background.

"Mapping Time" by E G Richards. A good general reader on calendars.

"Astronomical Algorithms" 2nd edition by Jean Meeus. The book on astronomical calculations, basis for libnova.

"Explanatory Supplement to the Astronomical Almanac" revised edition 2006, edited by P. Kenneth Seidelmann. A handy reference.