The on-wiki version of this newsletter can be found here: https://www.wikifunctions.org/wiki/Wikifunctions:Status_updates/2026-01-15 ---- 25 years of Wikipedia https://www.wikifunctions.org/wiki/File:Wikipedia-logo-v3-en-25-alt.svg
On 15 January 2001, a Monday https://www.wikifunctions.org/wiki/Z13163?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13163%22%2C%22Z13163K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%222001%22%7D%2C%22Z13163K2%22%3A%22Z16101%22%2C%22Z13163K3%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2215%22%7D%7D exactly 9131 days https://www.wikifunctions.org/view/en/Z20744?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z20744%22%2C%22Z20744K1%22%3A%7B%22Z1K1%22%3A%22Z20420%22%2C%22Z20420K1%22%3A%7B%22Z1K1%22%3A%22Z20159%22%2C%22Z20159K1%22%3A%7B%22Z1K1%22%3A%22Z17813%22%2C%22Z17813K1%22%3A%22Z17814%22%7D%2C%22Z20159K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%222001%22%7D%7D%2C%22Z20420K2%22%3A%7B%22Z1K1%22%3A%22Z20342%22%2C%22Z20342K1%22%3A%7B%22Z1K1%22%3A%22Z16098%22%2C%22Z16098K1%22%3A%22Z16101%22%7D%2C%22Z20342K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2215%22%7D%7D%7D%2C%22Z20744K2%22%3A%7B%22Z1K1%22%3A%22Z20420%22%2C%22Z20420K1%22%3A%7B%22Z1K1%22%3A%22Z20159%22%2C%22Z20159K1%22%3A%7B%22Z1K1%22%3A%22Z17813%22%2C%22Z17813K1%22%3A%22Z17814%22%7D%2C%22Z20159K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%222026%22%7D%7D%2C%22Z20420K2%22%3A%7B%22Z1K1%22%3A%22Z20342%22%2C%22Z20342K1%22%3A%7B%22Z1K1%22%3A%22Z16098%22%2C%22Z16098K1%22%3A%22Z16101%22%7D%2C%22Z20342K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2215%22%7D%7D%7D%7D ago, Wikipedia, the free encyclopedia, was launched.
In the last 25 years Wikipedia developed from being a curiosity of odd Internet optimists, from being something ridiculed and disparaged, from being a hope and a dream, to the most widely used encyclopedia of today.
A quarter of a century in, a quarter of a million monthly active editors work on 65 million articles in 300 languages, directly accessed more than 15 billion times every month through more than a billion devices. But beyond these direct page views, Wikipedia is also being accessed in many other ways, be it through voice assistants, search engines, printouts in schools, and chatbots using artificial intelligence. Wikipedia is the backbone of knowledge on the Internet.
Throughout the year, Wikipedia will celebrate this anniversary. Two months after the English Wikipedia launched, on 16 March 2001, the first two non-English language editions joined it, German and Catalan. French followed a week later; Italian and Portuguese on 11 May; and on 20 May Spanish, Russian, and the first non-European language, Japanese. By the end of its first year, 18 language editions had launched. Today the number has grown to 342, of which 11 are on Incubator https://incubator.wikimedia.org/wiki/.
The language editions of Wikipedia started as independent projects. They had their own rules and processes, their own logins and administrators. Images were uploaded to the individual projects, and articles had to individually link to their corresponding articles in different languages.
Over the years, the Wikipedias started growing together. Already in 2001, Meta-Wiki https://meta.wikimedia.org/wiki/ was launched, offering a place to discuss and agree common principles https://meta.wikimedia.org/wiki/Founding%20principles and a common vision https://wikimediafoundation.org/who-we-are/vision/. In 2004, stewards https://meta.wikimedia.org/wiki/Stewards were introduced, a kind of global administrator, and Wikimedia Commons https://commons.wikimedia.org/wiki/ launched, a global repository for images and other multimedia files, which could be used from any of the local Wikipedias. From 2008 to 2015, logins were unified https://meta.wikimedia.org/wiki/Help:Unified%20login, and eventually contributors needed only a single login for all Wikimedia projects, instead of having one login for each language edition of Wikipedia. In 2013, Wikidata https://www.wikidata.org/wiki/ allowed wikis to centralize the links between the different articles about the same topic in different languages, removing hundreds of millions of lines of wikitext, and in the years later, more and more data was made available to be used from Wikidata. In 2020, a Universal Code of Conduct https://meta.wikimedia.org/wiki/Universal%20Code%20of%20Conduct was ratified. In 2025, Wikifunctions allowed for use of functionality from a shared, global repository, which has been rolled out to more than a hundred Wikimedia projects so far.
In Wikipedia’s Silver Jubilee year https://en.wikipedia.org/wiki/Silver%20jubilee, we will make Wikifunctions accessible from many more Wikipedias and other wikis, and introduce Abstract Wikipedia, both major steps in further bringing the many Wikipedia language communities closer together.
Abstract Wikipedia will enable communities to work together on the content of articles which will be made available to any Wikipedia that is lacking an article on a given topic. Like on Commons, Wikidata, and Wikifunctions, contributors can each work in their own language, and yet work together on shared knowledge. With Abstract Wikipedia, we will help solve the problem of cross-lingual collaboration in a way that not only respects the autonomy of the individual language communities, but also is fully aligned with the values that made Wikipedia what it is.
Abstract Wikipedia fully recognizes that knowledge is curated and edited by humans. Errors and omissions can quickly be fixed, the wiki way. But every article that is created and maintained in Abstract Wikipedia will have the potential to be reflected in hundreds of languages. Local communities can choose to rely on Abstract Wikipedia for a given article, or to write their own, allowing each community to focus on the topics they care about most.
Join us in celebrating 25 years of Wikipedia, the way that Wikipedia has always been: by evolving and growing, by becoming better, and by being guided by our vision: working towards a world in which everyone can share in the sum of all knowledge. Recent Changes in the software
Throughout the first two weeks of this year, we added a contextual link to the *How to create implementations* guide at the top of the implementation page, so relevant help is available directly where it’s needed (T401011 https://phabricator.wikimedia.org/T401011). During the same period, we improved the page loading experience by removing a confusing flash message that could briefly appear even when JavaScript was enabled, making pages feel jumpy and sometimes showing the message more than once. The “no JavaScript” message now only appears when JavaScript is disabled, while users with JavaScript see a clear loading indicator right away (T345405 https://phabricator.wikimedia.org/T345405).
Alongside these improvements, we also fixed a number of issues. Some buttons were previously rendered as ‘div’ or ‘a’ tags, which may not be handled correctly by accessibility tools (T410498 https://phabricator.wikimedia.org/T410498). In addition, an issue where fragments linking to Wikifunctions only worked with protocol-relative links was corrected; links to Wikifunctions and other sites in the site matrix should now render correctly in all cases (T407640 https://phabricator.wikimedia.org/T407640).
Finally, we fixed a bug affecting certain JavaScript or Python code snippets, often using a regex, where incorrect handling of backslashes could cause JSON to become invalid and lead to unexpected errors; this issue is now fixed (T413466 https://phabricator.wikimedia.org/T413466). No NLG SIG meeting next week
As no agenda has been proposed, we will skip next week’s NLG SIG (Natural Language Generation Special Interest Group) meeting. If you have suggestions for future meetings, feel free to add them to the NLG SIG page https://www.wikifunctions.org/wiki/Wikifunctions:NLG_SIG. Fresh Functions: 83 new Functions
Since our last update, we have had 83 new functions. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing!
- intro for year in Malay (Z30638) https://www.wikifunctions.org/wiki/Z30638 - "[gender] is a [country] [professional]" ms Lexeme (Z30643) https://www.wikifunctions.org/wiki/Z30643 - Malay article-ful instantiating sentence (Z30654) https://www.wikifunctions.org/wiki/Z30654 - Dominical letter (Z30664) https://www.wikifunctions.org/wiki/Z30664 - Unlabelled (Z30671) https://www.wikifunctions.org/wiki/Z30671 - is pantagram (Danish alphabet) (Z30676) https://www.wikifunctions.org/wiki/Z30676 - are multisets equivalent? (Z30692) https://www.wikifunctions.org/wiki/Z30692 - Frequency of simple harmonic oscillator (Z30704) https://www.wikifunctions.org/wiki/Z30704 - prefix + (Z30715) https://www.wikifunctions.org/wiki/Z30715 - GNU line/byte count option snippet (Z30721) https://www.wikifunctions.org/wiki/Z30721 - prefix + to number (Z30731) https://www.wikifunctions.org/wiki/Z30731 - length of Typed map (Z30737) https://www.wikifunctions.org/wiki/Z30737 - is valid GNU coreutils binary unit? (Z30742) https://www.wikifunctions.org/wiki/Z30742 - is valid GNU coreutils decimal unit? (Z30747) https://www.wikifunctions.org/wiki/Z30747 - is valid GNU coreutils size unit? (Z30751) https://www.wikifunctions.org/wiki/Z30751 - is byte mode and valid size unit? (Z30755) https://www.wikifunctions.org/wiki/Z30755 - (quiet or verbose) or empty string (Z30759) https://www.wikifunctions.org/wiki/Z30759 - is valid arguments to Z30708? (Z30768) https://www.wikifunctions.org/wiki/Z30768 - arithmetic sequence (Z30774) https://www.wikifunctions.org/wiki/Z30774 - transform Monolingual text to sentence case (Z30784) https://www.wikifunctions.org/wiki/Z30784 - capitalise first letter of Monolingual text (Z30785) https://www.wikifunctions.org/wiki/Z30785 - append String to Monolingual text (Z30795) https://www.wikifunctions.org/wiki/Z30795 - English preposition for location ("in"/"on"/"at") (Z30798) https://www.wikifunctions.org/wiki/Z30798 - note (Z30805) https://www.wikifunctions.org/wiki/Z30805 - value after Type (Z30811) https://www.wikifunctions.org/wiki/Z30811 - Unlabelled (Z30813) https://www.wikifunctions.org/wiki/Z30813 - get result or Error of quoted Function call (Z30824) https://www.wikifunctions.org/wiki/Z30824 - list of Keys defined for Type (Z30833) https://www.wikifunctions.org/wiki/Z30833 - syllable count from IPA transcription (Z30837) https://www.wikifunctions.org/wiki/Z30837 - arithmetic mean of Natural numbers as Rational (Z30840) https://www.wikifunctions.org/wiki/Z30840 - Unlabelled (Z30857) https://www.wikifunctions.org/wiki/Z30857 - run-length encoding (Z30865) https://www.wikifunctions.org/wiki/Z30865 - left-associative running reduce (Z30871) https://www.wikifunctions.org/wiki/Z30871 - list of key-id Strings for Key-list (Z30875) https://www.wikifunctions.org/wiki/Z30875 - value by Persistent object key (Z30887) https://www.wikifunctions.org/wiki/Z30887 - validator function by Type (Z30890) https://www.wikifunctions.org/wiki/Z30890 - tokiponise (Z30901) https://www.wikifunctions.org/wiki/Z30901 - native languages of Wikidata Item (Z30916) https://www.wikifunctions.org/wiki/Z30916 - throws error (Z30928) https://www.wikifunctions.org/wiki/Z30928 - find Lexeme Senses related to Wikidata Item (Z30943) https://www.wikifunctions.org/wiki/Z30943 - is a valid CAS Registry Number (Z30950) https://www.wikifunctions.org/wiki/Z30950 - Codex CSS-only link button (Z30954) https://www.wikifunctions.org/wiki/Z30954 - multilingual text includes string (Z30972) https://www.wikifunctions.org/wiki/Z30972 - common prefix of many lists (Z30975) https://www.wikifunctions.org/wiki/Z30975 - common suffix of many lists (Z30976) https://www.wikifunctions.org/wiki/Z30976 - length of common prefix of many lists (Z30977) https://www.wikifunctions.org/wiki/Z30977 - length of common suffix of many lists (Z30978) https://www.wikifunctions.org/wiki/Z30978 - strip common suffix of many lists (Z31003) https://www.wikifunctions.org/wiki/Z31003 - set (i,j)th element on list of lists (Z31010) https://www.wikifunctions.org/wiki/Z31010 - Levenshtein distance between two lists (Z31013) https://www.wikifunctions.org/wiki/Z31013 - Levenshtein distance between lists is at most n? (Z31019) https://www.wikifunctions.org/wiki/Z31019 - Hamming distance (Z31026) https://www.wikifunctions.org/wiki/Z31026 - index of first mismatching element (Z31032) https://www.wikifunctions.org/wiki/Z31032 - display object label (Z31041) https://www.wikifunctions.org/wiki/Z31041
A complete list of all functions sorted by when they were created https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest is available.
abstract-wikipedia@lists.wikimedia.org