Meta:Wikimedia CH/Cronos/About

This page describes Cronos 📅 – the ultimate calendar to discover your Wikimedia events in your wiki.

This project was incubated by Wikimedia CH and developed as part of their Tech Boosts.

We started working on Cronos in the hope to collect all the experiences lived by lot of already existing "wiki calendars" scattered around the world but that never took off for some reasons. Sometime, for some critical design issues.

Here some Cronos features and goals:

Federation
We tried to design something not stucking on a single data-source. For example, being able to merge the (known so) French Events calendar together with the Wikimedia Phabricator's Calendar and so on if you plan to do this, or having a Calendar on English Wikipedia talking with the calendar on Meta-Wiki and vice-versa. If the user wants to create an Event somewhere it should be allowed to do so and everything could be available in Cronos.
→ Actually Cronos provides access to the contents in the French Events calendar.
→ Federation with other wikis is just waiting for community consensus.
→ Federation with the Phabricator:Calendar is planned
MediaWiki and Wikimedians friendly
We tried to build Cronos over well-known and already-available MediaWiki features accessible to as many Wikimedians as possible.
→ We have not invested in another MediaWiki extension. Did you know in this moment we have 5+ MediaWiki calendar extensions.. never deployed nowhere?
→ and we have not continued one of these extensions. This because an extension needs constant code review and it usually involves slow "deployment trains" slowing down development and adoption. Moreover it's usually a play for a small group of developers, not something in the hands of the community. The risk of abandonment is too high.
→ We didn't invested in a MediaWiki gadget because they must be edited by a sysop or an interface admin. Again we decided that would be a game for few people and not something accessible to the community.
→ We invested in Lua (mw:Extension:Scribunto). This is a sandboxed technology in the hands of the whole community. We decided it's better something "somehow weird" but accessible to everyone than something "more mainstream / more powerful" but accessible to very few authorized guys. With Lua we designed a Calendar that, if you want, can be also improved by an anonymous users without security implications. Something that will be never be obtainable with a gadget or an extension.
Accessibility
Cronos was developed with accessibility in mind while being still attractive. We tried to achieve this goal avoiding to rely too much on content generated by JavaScript and preferring instead the generation of clean HTML documents server-side. As the result of these choices we hope blind people will be able to benefits from Cronos even with their very particular textual readers. Well, followed by hackers who still use Lynx as well as that kind of guys who appreciate the NoScript Security Suite. Yes, it will work on your very very old device, etc. Also note that a static HTML content will help in spreading events better through all search engines.
Interoperability
Cronos was designed to abstract many data formats and receives data from multiple sources and export everything in an unified object, provided by some simple Lua APIs interesting for developers who want to create more eye-catching calendars tomorrow.
→ HTTP read/write APIs are planned to help machines in contributing in Cronos
Archiviation
We are Wikimedians and we are here to stay, but many calendars are designed to do not keep track of events as long as possible.
→ We designed Cronos to store an Event also forever, to check it again for historical purposes.
→ We designed Cronos to do not need an archiving process even lasting 100 years and having 100 Events a day.
→ Archiviation just works using standard technologies like categories (e.g. Category:Cronos events by year). Again something well-known and in the hands of the community.
→ A Cronos Event is designed to keep a permalink. When you save it on your wiki, that is already in the final place (e.g. Meta:Cronos/Events/2020-11-27)
Scalability
Some Calendars are not designed to scale in time.
→ We designed Cronos to store data in the wiki itself but in decentralized places.
→ We designed Cronos without the risk of becoming bigger and bigger and slower over time.
→ We achieved these goals avoiding an on-wiki monolithic database (like a JSON page).

Current team edit

Some People involved in the WMCH Cronos Tech Boosts:

Tech Boosts edit

You may expect some improvements in one of the Wikimedia CH Tech Boosts. Well, let's use WMCH Cronos itself to display them:

February
Monday Thursday Wednesday Thursday Friday Saturday Sunday
26 27 28 29
March
Monday Thursday Wednesday Thursday Friday Saturday Sunday
01 02 03
04 05 06 07 08 09 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
April
Monday Thursday Wednesday Thursday Friday Saturday Sunday
01 02 03 04 05 06 07
08 09 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
May
Monday Thursday Wednesday Thursday Friday Saturday Sunday
01 02 03 04 05
wmch-tech-boost

Add Event!

See also edit