mastodon.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
The original server operated by the Mastodon gGmbH non-profit

Administered by:

Server stats:

348K
active users

    n8   Doesn't follow you 🇺🇦

Obviously I'm all for code-pub, but I think work needs to be done to normalize publishing the messy/incomplete/piecemeal nature of research software. If you're like me (sorry), you barely have time to get it running once, it looks spaghettirific, and you didn't get to plan it from day one with a requirements doc.

That makes folk reluctant to release; the reception from the software world is often critical (or it's feared to be).

fediscience.org/@petersuber/11

(h/t to @mlinksva for the timelineboost)

e.g., probably 80% of the time I asked a FOSS-component-related question on a forum or mailing list, the first responses (or if not the first, extra loud ones) were people telling me my approach was wrong and/or I didn't actually need to do what I thought I wanted to. That being in reference to some application-driven development model / goal.

But research often requires poking at things that are oblique / not well-modeled / not-routine. All sorts of "that's not what this library is for" stuff.

The other angle, of course, is that "software written for an academic reason" may also have to be tailored for being read by non-programmers, such as subject-matter experts. It's a lot clearer to follow linear code chunks in an appendix than something that's highly modular or optimized for OOPyness, and that might make a big difference when you need to show a finding to a community that doesn't have the time to learn a bunch of unfamiliar frameworks when they review what you've written.
/eof

*Sidenote, before North America wakes up: I do want to clarify that the experiences alluded to only account for situations where I was an outsider with a "how to" question.

Where I engaged with teams and individuals I already knew (& vice-versa), it's not like that, even though they couldn't always refer me to an easy solution. But of course everybody's an outsider somewhere.

And feature requests are a bit different, too. But I often got "Nobody needs that because libfoo is for something else"

@n8 @mlinksva Would scientists publish a paper with spelling errors and mistakes? No, they'll get to great lengths to prepare the paper for publication. The same should apply to the code that they release to document/demonstrate their methodology.

@wtfrank I'm muting you; if you keep this up, I will block you. No further warnings.

@n8 keep what up? Are you confusing me with someone else? If not, I'm sorry for causing offence to you but I'm not quite sure how I caused it

@n8 @mlinksva I heard many times over the years that research software tends to "not up to professional software engineering standards". Not having a requirements document is part of that.

In my experience, in the software industry, very little software of any kind has a requirements doc, at least not a useful one, never mind anything else that one might expect of quality software.

I'd like to sit down with researchers, specifically, to discuses how to improve this, some day.

@liw @mlinksva Good points.

I have nowhere near to any solutions to offer, of course. Perhaps face-to-face consulting/assistance at the university/institution level would be highest impact, but that sounds quite difficult.

@n8 @mlinksva Of course, it is true that universities have people who study software engineering, so in theory they have this knowledge in-house.

@n8 The awesome solution would be that the institution keep experienced developers on payroll for researchers to collaborate with on software quality and practices, but even with preliminary evidence that code publication improves impact that's unlikely to happen.

Maybe if a single institution somewhere in the world does this and can show results, it could start the ball rolling?

@liw @mlinksva

@clacke @n8 @liw @mlinksva Plenty of examples of this in the UK: Sheffield, Manchester, UCL, Edinburgh, Imperial College to name a few ukrse.github.io/groups.html

Worth checking out society-rse.org/ and software.ac.uk/ for the growing body of evidence of the benefits of these roles and groups. Several other countries have Research Software Engineer associations too, including Germany and USA

ukrse.github.ioResearch Software Engineering Groups in the UK

@clacke @n8 @liw @mlinksva But yes, this is 100% essential to solving this: building a sustainable base of skills within the institution instead of always employing research software engineers on soft money fixed-term contracts and throwing their expertise away every 2-3 years.

Changing the research culture as suggested is the other part of the equation. So many researchers hate admitting that they are anything less than expert in anything they do.

@clacke @petrichor @liw @idlestate

Hey folks; it would probably be best to remove Mike ( mlinksva ) from the replies here. I included his handle at the beginning in order to credit the source of the post as it crossed my path; I did not anticipate that it would become a multi-person thread. So, my fault, but he didn't ask to be @-ed. 🙏

@n8 @clacke @petrichor @liw @idlestate that's OK, I'm idly interested in the topic. FWIW @danielskatz is someone to follow who is deep in the field (and Daniel's posts are mostly relevant, and show others to follow).

@petrichor @clacke @n8 @liw @mlinksva Ah nice; I do recognise at least a couple of the Manchester people there; with some overlap of both the CS dept and what used to be Manchester Computing; which was a department that had existed for a long long time to help with computer use in other research areas.

@clacke @n8 @petrichor @liw @mlinksva If they are I don't know their IDs, the two I recognise are people I've not spoken to in a LONG time.

Looking into the cool people on software.ac.uk/about/staff , but sadly so far none of them seem to be on Fedi.
software.ac.ukStaff

@clacke @clacke Manchester here :)

Interesting discussion! Personally I have always tried to make my research code as open and reusable as possible. And I think that it sort of worked? We even got an award for that.

It’s super hard though. And I’d argue that it’s not because of a lack of skills (at least in my field, systems software and security).

@clacke The main one is probably the pressure to output. As academics, especially junior ones, we need to publish, often, and at top tier venues (which are extremely competitive). If you’re working on a hot topic, it’s even more competitive - you want to be the first to have your fresh new idea published out there.

@clacke This tends to make researchers cut corners whereever they can. Scientific conferences do not really value code quality (it’s “engineering” not research), so researchers tend to cut corners on code quality.

IMO fixing that requires more profound changes in the functioning of academic research

@hle Yet another Nice Thing we can't have due to Publish Or Perish.