Lars Willighagen's Avatar

Lars Willighagen

@larsgw.mastodon.social.ap.brid.gy

Studying ecology, biodiversity, taxonomy. PhD candidate @Radboud_uni. Interested in bibliographic data (@citationjs), digital humanities (#CDLI), statistics. [bridged from https://mastodon.social/@larsgw on the fediverse by https://fed.brid.gy/ ]

3 Followers  |  1 Following  |  31 Posts  |  Joined: 14.01.2025  |  2.2614

Latest posts by larsgw.mastodon.social.ap.brid.gy on Bluesky

Preview
Updates to taxonomic coverage and search result scoring Two parts of the Library of Identification Resources have gotten major updates in the last year. First, the **taxon coverage** field (also labeled β€œFor identifying …” in some places) is now linked to external databases, namely Wikidata and GBIF. Second, the scoring and sorting of search results in the **Find resources** tool was made more transparent and visible. ### Taxon coverage The **taxon coverage** field specifies the taxa to which the identification resource applies. For example, for the _Key to the British Scathophagidae (Diptera)_ by Stuart G. Ball (B17) that would be the family Scathophagidae. Previously, this was a plain-text field. Now, the values are all linked to a separate table. In this table, the rank of the taxon is given, and mappings are made with Wikidata and GBIF. The main taxonomy data in GBIF does not include minor ranks such as superfamilies, subfamilies, and subgenera; for those taxa, the GBIF identifiers of its children are recorded instead. The same goes for outdated taxa which are now considered paraphyletic, or were synonymized or split up. Additionally, the parent taxa of each taxon are recorded, allowing statistics on the number of resources in larger groups. This is also shown on the taxon pages, such as that of Animalia (T55): ### Search result sorting In the **Find resources** tool, available at identification-resources.github.io/find-resources, search results are scored on a number of different factors. The score is now visually displayed next to the taxonomic completeness. When clicking on the scores, their factors are now shown in three groups which are explained in more detail. In addition, results can now be sorted by those specific groups of factors, instead of only by the total score. Results can now also be filtered by language or by characteristics of observations and/or organisms, including keys specifically for females or males, or keys for nests galls, eggs, nymphs, etc.

Some new functionality for the Library of Identification Resources

https://doi.org/10.59350/c87y0-72m49

24.10.2025 15:12 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
Esoteric bug with specific text Β· Issue #193 Β· r-lib/ragg Hi Thomas, This is a transfer of tidyverse/ggplot2#6539. Essentially, when trying to render the text 'Sr' and 'Fe', it renders 'Sr' twice instead of each once. In the reprex below, this is why we o...

Turns out there was a bug in the ragg renderer in R that replaces the text "Fe" with "Sr" (or vice versa) for certain font sizes (and probably specific fonts). How does that happen?

https://github.com/r-lib/ragg/issues/193

#rstudio #ggplot

23.10.2025 13:21 β€” πŸ‘ 0    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Original post on social.edu.nl

new blog: "20 years of blogging" https://chem-bla-ics.linkedchemistry.info/2025/10/15/20-years-of-blogging.html https://doi.org/10.59350/v9c2y-4f248

"Today, exactly 20 years ago I started this blog. Two years ago I decided to upgrade my blog to one with version control. A decision I am still […]

15.10.2025 15:38 β€” πŸ‘ 0    πŸ” 6    πŸ’¬ 1    πŸ“Œ 0
Preview
10 years of Citation.js 10 years ago, on September 28th, 2015, I pushed the first commit of β€œC[1]”, which would later form the basis of Citation.js. Back then, it was a simple webapp that took bibliographical data from manual input from a form and converted it to APA. I had not learned about Citation Style Language (CSL) or CSL-JSON yet, so the implementation was not particularly interoperable, but it served its purpose: allowing me and my classmates to format bibliographies without stressing over the correct punctuation. In April of 2016 I created the larsgw/citation.js repository on GitHub, containing a JavaScript file for browser usage of Citation.js. In September of the same year, I added support for Node.js, including a CLI. Next, in November of 2018 I moved most of the code to a new repository under the new `citation-js` GitHub organization. Finally, in 2019 I published an article in _PeerJ Computer Science_ (doi:10.7717/peerj-cs.214) on the software and mappings. Since then, development has been relatively stable. During that time, it has been used in several projects. We have used it in Scholia for importing metadata from DOIs and ISBNs and exporting citations. At the Cuneiform Digital Library Initiative we use it to provide page citations and for importing BibTeX metadata. Additionally, it is used in Forgejo (and Gitea) to implement CITATION.cff support, which can also be seen on Codeberg. It is also used in several blogs and personal websites. If you know of any other cool uses, please let me know! On to the next 10 years! _Stomorhina lunata_ , 9.vi.2025, Noorbeek, NL

One of my first open sources projects, Citation.js (@citationjs), turns 10 years old today!

https://larsgw.blogspot.com/2025/09/10-years-of-citationjs.html

28.09.2025 15:17 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Graph of the occurrence of the words "vergiftig" (teal line) and "giftig" (orange line) from 1500 to present time. "giftig" is consistently used as much or more than "vergiftig", except from ca. 1939–1944.

Graph of the occurrence of the words "vergiftig" (teal line) and "giftig" (orange line) from 1500 to present time. "giftig" is consistently used as much or more than "vergiftig", except from ca. 1939–1944.

Ik wilde zeggen, Google Ngram Viewer heeft helaas geen corpus voor Nederlandse woorden, maar #DBNL wel! Lijkt erop dat "giftig" over het algemeen al een lange tijd meer werd gebruikt dan "vergiftig".

https://www.dbnl.org/ngram-viewer/

17.09.2025 22:46 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

De eerste paar edities van Heukels' Flora schrijven "Vergiftig!" (als zelfst. naamwoord) in plaats van gewoon "Giftig!", iemand enig idee of dat toen meer gangbaar was? Of lag het meer aan de schrijver, welk van de twee werd gebruikt?

#nederlands #taal #planten

17.09.2025 22:39 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

@egonw @Radboud_uni It's "opt-out" but "opting out" just greys out the icon, it's still there. It's a joke.

16.09.2025 18:20 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

@fasterthanlime RE: the unresponsiveness of npm, I noticed that there's not really a way of reporting *failed* phishing attempts mentioned on the site either.

08.09.2025 17:16 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
color npm package compromised Note: the situation is still unfolding, I’ll update this article as more comes in. On September 8 2025, around 13:00 UTC, someone compromised Josh Junon’s npm account (qix) and started publishing b...

The 'color' npm package has been compromised: https://fasterthanli.me/articles/color-npm-package-compromised

08.09.2025 17:00 β€” πŸ‘ 2    πŸ” 11    πŸ’¬ 2    πŸ“Œ 0

@fasterthanlime I think I got the same 2FA phishing email!

08.09.2025 17:15 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Original post on mastodon.social

Our paper on the Library of Identification Resources is out! In it, we describe how and why to record publications for the taxonomic identification of organisms in a FAIR database, and how to query that data to find applicable resources for an insect or a plant in NW Europe. Next, we will look […]

26.08.2025 12:17 β€” πŸ‘ 0    πŸ” 4    πŸ’¬ 0    πŸ“Œ 0
Web page with jumbo text "Free and open access to biodiversity data" on top of a banner photo showing a portrait of a standing, deep-orange mongoose staring into the camera.

Web page with jumbo text "Free and open access to biodiversity data" on top of a banner photo showing a portrait of a standing, deep-orange mongoose staring into the camera.

I always enjoy the banner photos that @gbif puts on their front page but today's is especially good

20.08.2025 09:29 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

@kbnationalebibliotheek Ik kon nu bijvoorbeeld de IRIScan Desk 6 Pro lenen maar ondanks de opties voor curve fitting van pagina's en finger removal, heb ik moeite met het plat genoeg houden van pagina's

18.08.2025 13:32 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Original post on mastodon.social

@kbnationalebibliotheek Hebben jullie tips voor het digitaliseren van oude boeken? De scanners die ik heb geprobeerd zijn niet geweldig (of ik gebruik ze niet goed). Ik heb een aantal oude edities van Heukels' Flora verzameld die inmiddels in het publieke domein vallen, en zou graag goede scans […]

18.08.2025 13:30 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Original post on mastodon.social

@larsgw that patch is awesome! runs very quickly on the 276k IUPAC names!

pv -l iupac-names.txt | groovy countVariants.groovy > iupac-names-counts.txt

And thx for the following tip!

xsv stats -n -d'\t' iupac-names-counts.txt

Wow, from this 276k names we can generate 3.4 *billion* IUPAC names […]

16.08.2025 21:02 β€” πŸ‘ 1    πŸ” 2    πŸ’¬ 0    πŸ“Œ 0
Preview
Add OpsinManager#countPotentialVariations() by larsgw Β· Pull Request #132 Β· egonw/bacting Patch description Add method to count the count of potential, unvalidated variations of an IUPAC name, as a counterpart to createVariations() in the same class. Pull request checks When reusing Bio...

@egonw I've opened a PR to count the potential variations of a given IUPAC name before validation: https://github.com/egonw/bacting/pull/132. The name you posted in the previous post potentially has 1,953,125 variations with these substitutions.

16.08.2025 20:20 β€” πŸ‘ 0    πŸ” 1    πŸ’¬ 2    πŸ“Œ 0
Screenshot van de reviews van de plugin.

five stars: "Hele handige plug-in voor de NWO-ISAAC-portal. Hiermee hoef ik niet meer alle losse kopjes van iedere publicatie in te voeren. Ik gebruik de DOI en alles komt juist in de portal. Top!"

five stars: "Werkt geweldig. Bespottelijk dat NWO in 2022 zelf dit soort zaken nog niet op orde heeft, maar zo lang we gedwongen zijn met ISAAC te worstelen is dit de enige manier waarop publicaties redelijk ingevoerd kunnen worden."

Screenshot van de reviews van de plugin. five stars: "Hele handige plug-in voor de NWO-ISAAC-portal. Hiermee hoef ik niet meer alle losse kopjes van iedere publicatie in te voeren. Ik gebruik de DOI en alles komt juist in de portal. Top!" five stars: "Werkt geweldig. Bespottelijk dat NWO in 2022 zelf dit soort zaken nog niet op orde heeft, maar zo lang we gedwongen zijn met ISAAC te worstelen is dit de enige manier waarop publicaties redelijk ingevoerd kunnen worden."

dankzij open data en open standards kunnen publicaties en andere research output (*) met een DOI eenvoudig aan de NWO ISAAC database toegevoegd worden https://chromewebstore.google.com/detail/isaac-chrome-extension/kiljfbiapahlahhilgcgfkfjnkgggode

Gebruik je […]

[Original post on mastodon.social]

31.07.2025 10:37 β€” πŸ‘ 0    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0

Just found out https://npm-stat.com/ seems to be gone too.

27.06.2025 09:42 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Sad to see Glitch go. RunKit too, both great platforms learning Node.js

27.06.2025 09:40 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

I love Discourse as a software but the visit counters have somehow conditioned me to right click to open a link, just to avoid the counter going up.

27.06.2025 09:33 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Since when do all new laptops have a dedicated Copilot-logo button on the keyboard. HP, ThinkPad, Dell, you can't get around it...

25.06.2025 13:20 β€” πŸ‘ 0    πŸ” 2    πŸ’¬ 0    πŸ“Œ 0

"The novel platform uses Citation.js 67], a versatile library and tool that allows for the conversion of CSL objects to and from many different citation styles, including BibTeX, RIS, and APA, among others." [https://pure.tue.nl/ws/portalfiles/portal/217980364/0870734_Boer_D.J._MSc_thesis_MAP.pdf

21.06.2025 07:58 β€” πŸ‘ 0    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Series β€” Library of Identification Resources

New in the Library of Identification Resources: metadata for all volumes of Fauna d'Italia (1956–2023, ISSN: 0430-1226) https://identification-resources.github.io/catalog/series/?issn=0430-1226

26.05.2025 12:26 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Original post on mastodon.social

I missed it but it looks like npm stopped ranking search results by popularity-quality-maintenance, instead opting for the somewhat more opaque sort variable "Default". See how it was before (note the p-q-m bar chart on the right) […]

23.04.2025 13:20 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

[nlpol]

@egonw Dit had in 2008 dan al in het uitgebreid in het nieuws moeten komen. Wel mooi dat sommige partijen er juist tegen zijn omdat de straffen van het OM minder zwaar zijn, dan vraag ik me wie de voorstanders zijn (oh ja, de VVD).

09.04.2025 09:03 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Taxon β€” Library of Identification Resources

@adafede Thank you again for the help. I finished the data curation that I needed the query for, now I can display these charts https://identification-resources.github.io/taxonomy/taxon/?gbif=1 (among other things)

02.04.2025 23:38 β€” πŸ‘ 0    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
You might want to stop running atop Comments

an ominous I-am-under-NDA-coded warning to immediately uninstall atop has been posted by a reputable tech blogger. https://rachelbythebay.com/w/2025/03/25/atop/

26.03.2025 06:23 β€” πŸ‘ 18    πŸ” 108    πŸ’¬ 3    πŸ“Œ 1

what is going on https://www.theatlantic.com/politics/archive/2025/03/trump-administration-accidentally-texted-me-its-war-plans/682151/

24.03.2025 16:56 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
New paper: Identification of Cholevinae larvae In 2022, I started my Master’s in Biology, at Radboud University in the Netherlands where I had just finished my Bachelor’s degree. The Master’s programme includes two research internships of 36 EC (approx. 6 months), both of which include writing a thesis. As I had been working on a database of identification keys, I was interested in a project focused on taxonomy for my first research internship. Thanks to Henk Siepel I ended up contacting Menno Schilthuizen at Naturalis, who suggested I work on Cholevinae larvae. Schilthuizen had been collecting Cholevinae larvae since the 1980s, and had also received material from Peter Zwick who started collecting larvae in different areas of Germany in the 1950s. The challenge was to use this material to make an identification key based on these specimens. Although the first description of a larva of Cholevinae was published back in 1961 by J. C. SchiΓΈdte, descriptions have since been relatively few and far between. This also meant that there are almost no existing identification keys for the larval Cholevinae. Making these descriptions and keys is difficult, as you need larvae from a known species. This is only possible if the larvae are cultured from adults, which takes time and effort, if molts are collected and the emerged adults is identified, or if DNA barcoding can be used. The specimens collected by Zwick and Schilthuizen mainly used the first method. However, there happened to be a recent, detailed description of _Sciodrepoides watsoni_, a species for which I also had specimens. I started by comparing the larvae of _S. watosni_ (as well as a few of the related _S. fumatus_) to the drawings and descriptions made by Kilian and MΔ…dra. From there, I could start looking at different species and identify potential areas and types of characteristics that are consistent enough within a species, but that differ between separate species. To illustrate these differences I also made schematic drawings (Fig. 1) of different sets of characteristic features. Finally, I measured certain parts of the larvae, where possible for specimens preserved in microscope slides. **Figure 1: Illustrations of Cholevinae larvae** At the end of the 6 months, I had a complete key to all species for which specimens were available, but only for the 1st instar. When the larvae molt for the first time, they gain secondary bristles, grow in size, and more, meaning the identifying characteristics cannot always be used for both the 1st instar, and the 2nd and 3rd instars. I ended up spending another year or so to finalize the key for all instars. This includes 28 of the 39 species of Cholevinae occurring in the Netherlands, and a lot of descriptions for which no (detailed) description was available previously. In a true full circle moment, I could add my own work to the aforementioned database of identification keys (as B1860). Ultimately, collaborating with Schilthuizen, Siepel, and Zwick, this culminated in an article, Comparative morphology of the larval stages of Cholevinae (Coleoptera: Leiodidae), with special reference to those in the Netherlands. We were able to publish this in the final issue of _Tijdschrift voor Entomologie_, which is unfortunately being discontinued after 167 volumes. Again, many thanks to Menno Schilthuizen, Peter Zwick, and Henk Siepel for this great opportunity. Check it out! ## References * Willighagen, L. (2022, augustus 6). Library of Identification Resources. Syntaxus Baccata. https://doi.org/10.59350/h8qka-z4a05 * SchiΓΈdte, J. C. (1861). De metamorphosi eleutheratorum observationes: Bidrag til insekternes udviklingshistorie (pp. 1–558). _Thieles Bogtrykkeri_. https://doi.org/10.5962/bhl.title.8797 * Kilian, A., & MΔ…dra, A. (2015). Comments on the biology of _Sciodrepoides watsoni watsoni_ (Spence, 1813) with descriptions of larvae and pupa (Coleoptera: Leiodidae: Cholevinae). _Zootaxa_ , 3955(1), 45–64. https://doi.org/10.11646/zootaxa.3955.1.2 * Willighagen, L. G., Schilthuizen, M., Siepel, H., & Zwick, P. (2025). Comparative morphology of the larval stages of Cholevinae (Coleoptera: Leiodidae), with special reference to those in the Netherlands. _Tijdschrift Voor Entomologie_ , 167, 59–101. https://doi.org/10.1163/22119434-bja10033 * * * > Written with StackEdit.

New paper! Comparative morphology of the larval stages of Cholevinae (Coleoptera: Leiodidae), with special reference to those in the Netherlands (https://doi.org/10.1163/22119434-bja10033)

https://larsgw.blogspot.com/2025/03/new-paper-identification-of-cholevinae.html

20.03.2025 09:14 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

@adafede I'm so confused, that's the query I started with, just without BIND(). I didn't realize that was such a problem, does BIND() not work with FILTER NOT EXISTS?

19.03.2025 13:04 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

@larsgw.mastodon.social.ap.brid.gy is following 1 prominent accounts