New igraph governance structure - Steering committee

The past year, we have been working on setting up a more formal governance structure for igraph. The overall idea is to have more clarity on who is responsible for what, have more transparent decision making and to have a greater degree of accountability, also with an eye on securing future funding for igraph. The formal governance structure document is available here.

The first thing that we will be doing next is to setup the steering committee. This committee is elected by the core members of igraph (you can see the list of core members here). The steering committee is responsible for ensuring the sustainable development and maintenance of igraph, in particular the organisational and financial viability of the project.The steering committee is not necessarily directly involved in the development and maintenance of igraph itself, but it does appoint coordinators, who are responsible for the development and maintenance of igraph.

The steering committee itself can also be composed of people outside the core members of igraph. With this message we would like to open up nominations for the steering committee. You can nominate yourself, or nominate somebody else.

The appointment at the steering committee is for 1 or 2 years (in order to introduce a staggered rotation of people serving on the committee for some continuity). Nominees can already indicate their preference, but who serves 1 year and who 2 years can also be decided after the election.

We will consider all (self)-nominations until September 30, 2024. After confirmation by the nominees to be willing to serve, we will make those nominations public on October 7. We will take one week to vote, and so on October 14 we will have elected the inaugural steering committee.

If you would like to nominate somebody, or yourself, please leave a message here, or reach out to Vincent Traag if you prefer to do this in private.

If you have any comments or questions, feel free to raise them here, or again, reach out to to Vincent Traag if you prefer to discuss in private.

Hi all,

To break the ice on this thread, I’d like to self-nominate for igraph’s upcoming steering committee. I would also like to briefly outline what I’d prioritise if elected. As always, happy to communicate via email or find a zoom slot to listen to any concerns and discuss matters in whatever way works.

Who I am:
I’ve been involved in igraph since around 2017. I was a postdoc back then, since 2019 I am a group leader at UNSW Sydney, Australia. My academic work is not only on graphs: I love bioengineering, software engineering, biodiversity, bioinformatics, and data science in biomedicine. I have contributed to scipy, matplotlib, Biopython, and htseq, among others. I run arch linux since 2006 and own 127 repositories on Github.

Within igraph, I have done a few things including fixing bugs in C and mostly Python, helping refactor the codebase, supervised students who implemented new features and improved the documentation, improved automation e.g. CI, refactored and partially redesigned the Python plotting interface, contributed to grant applications, represented igraph at conferences, presented igraph tutorials at workshops, and so on.

What I believe in:
I believe in Open Science and Open Source software as a positive force in the world, one that helps humans embody their best selves. The idea of taking extremely valuable technical skills and - instead of selling them off to the highest bidder - donating them for free to scalable projects (i.e. software) that reach millions is deeply moving and powerful.

I also believe that diversity is an asset, not a liability. In the human body, there are hundreds of different kinds of cells, each with its strengths and weaknesses. For instance, when we scratch our skin, fast but short-lived immune cells swarm the wound to minimise the risk of infection. They are not good as a long term solution, but they are great as a “hotfix”. I believe the same principle applies to humans: diversity is key to develop in the long term.

What I want to achieve within igraph:
The open source movement has not been particularly diverse - just check the mailing lists and issue trackers of whatever large project, from the kernel down. At times, there is a feeling that increasing diversity results in compromises on the technical side (code quality). igraph is pretty average in that respect, meaning it’s pretty bad. We are mostly white men with great coding skills and not much else going on. We are technically impressive, mediocre communicators, and often blissfully ignorant about how to recruit talent and seek out sponsors and donations.

I think that the idea that technical excellence and diversity form a zero sum game is flawed. To find 3 great contributors, you have to recruit 300 and that’s easier if you are open minded about how those 300 look like, write like, and - yes - code like. Academia is full of professors that are mediocre thinkers but extremely impactful because they attract the best talent. I have seen brilliant folks pulling off technical miracles at 2 am because they were inspired by their mentor. I think for igraph to mature, we have to accept that talent comes in many guises and some of them appear different from what we are used to.

If elected, I will not spend most of my time coding (we will have coordinators for that), though I enjoy that a lot. Instead, I will help finding ways to incorporate novel pathways into our efforts:

  • recruiting students to make tutorials and youtube videos
  • accepting beginner coders to contribute experimental functions or alternative ways to innovate the codebase with looser requirements than the gold standard
  • seeking funding through clever repositioning of our utility for different communities (e.g. most of our current money comes from biomedical grants at CZI)
  • creating live workshops and tutorials for different targets (e.g. social sciences, who mostly use R)
  • crafting onboarding pathways that welcome new contributors instead of scaring them
  • alas, yes, policing toxic behaviour towards members of the community.

Those things are all easier said than done, I know. But I would like to offer my limited talent to try and shift our organisational culture in that direction, which I believe will make us stronger in the long run. We will run into issues and misunderstandings, as it happens to everyone, but I can’t imagine igraph becoming weaker as a result. Change is scary but hey - if not now, when?

Apologies for the long message and thanks for reading :sweat_smile:

I would like to self-nominate for the steering committee as well.

Fabio’s introduction is great, my introduction will be a bit shorter.

For the past few years, I’ve been involved in helping out with igraph. The first years, I’ve been able to dedicate more time to also coding, but time is growing more scarce due to other responsibilities. As with many of us, time is the biggest limitation. The funding we got from CZI was great, and allowed us to make great progress in igraph. Alas, that funding has run out, and given all our time constraints, I think the first and foremost objective is to get a more sustainable source of funding, to allow us to continue development and maintenance. In tandem with that, getting more developers on-board is a parallel track to continue development and maintenance of igraph.

I would like to self-nominate as well. I have invested significantly into igraph over the years and I want to do what I can to see it flourish.

A few words about myself:

I am a complex systems researcher / network scientist, currently an assistant professor at Reykjavik University. I became involved with igraph in 2015 when I created its Mathematica interface, which I continue to maintain. In recent years I’ve been most active in the development of core algorithms in C, but I also help out a bit with the R and Python interfaces. Overall, I have been working towards ensuring that we have a scientifically sound and reliable network analysis tool that serves users’ needs well. To this end, I actively engage with the community both online (forums, Q&A) and in person (conferences), while also mentoring newcomers, including students from my institution, to contribute to igraph’s development.

What I consider the next priorities for igraph:

  • Secure funding both for the maintenance and improvement of igraph. As Vincent and Fabio said, this is a top priority, and I’ve been dedicating time to it within the past year.
  • Ensure sustainability by bringing more contributors aboard.
  • Ensure that igraph continues to serve user’s needs, both within network science (research and teaching) as well as in other fields that make use of network analysis.
  • Help define igraph’s role within the growing network analysis software ecosystem.

I would hope to see steering committee duties become shared by the igraph team (and possibly external stakeholders) on a rotating basis in the future.

Thank you for all self-nominations. There have been only public nominations, no other nominations have been made in private.

To be able to vote, I created an election via Helios Voting. You can see the election here: igraph Steering Committee 2024. Please note that only core members are eligible to vote, as listed in the MEMBERS.md file. Note that, since I am organising the election, according to the GOVERNANCE.md, 2.3.iv, I cannot vote myself. Therefore, only the 8 other core members are able to vote in this election.

Voting will open October 7, 00:00 (UTC), 2024 and will close October 14, 00:00 (UTC), 2024.

Voting was closed last week, and the result are available. All three candidates have been elected, meaning that Szabolcs, Fabio and I will form this inaugural Steering Committee.