{
(set: $DMP_history to (a: (passage:)'s name))
(set: $feedback's DMP to (a:))
(set: $full_score to it + 20)
<p>You are just settling down to work at your computer when you notice that the pile of papers next to you is somewhat taller than you left it.
Leafing through, you find some new journal issues, a birthday card to sign, and an envelope stuffed with paperwork.
Attached to the envelope is a note:</p>
<blockquote><q>Here’s the latest on that bid we were talking about. But I’ve hit a snag.
See me as soon as you can.
– M.</q></blockquote>
<p>That sounds ominous.
You start to tip out the contents, wondering what the problem might be, but you barely have time to skim the first page when the door bursts open and a familiar face appears in the doorway.</p>
<p><q>Ah, good. You made it in at last.
I see you found my note.
Would you mind popping through?</q></p>
<p>The professor doesn’t wait for a reply. You tip the papers back into the envelope and race to [[catch up->DMP definition]].</p>
}{
<p>By the time you get there, the professor is already seated with steepled fingers, staring at you owlishly.</p>
<p><q>I’ve been looking through the terms of the funding call, and I’ve spotted something utterly alarming.
You’ll see I’ve highlighted it for you.</q></p>
<p>Wondering what fiendish bureaucratic trap might have been set, you tip the papers back out of the envelope and leaf through them.
Seconds later, you find a passage that has been gashed through with luminescent yellow ink.
Oh. The bid needs to include a data management plan.
Mistaking your puzzlement for shared incredulity and outrage, the professor continues:</p>
<p><q>I know. When will this obsession with paperwork ever end? Ridiculous.
I mean, I ask you. What exactly is a *data management plan* when it’s at home?</q></p>
<p>The professor’s mocking tone has you smiling in sympathy before you realise the question was not rhetorical, and you are expected to answer.</p>
<ul>
<li><q>(link: 'I’m sorry, I’m not entirely sure myself.')[
(set: $response to 0)
(set: $feedback's DMP to it + (a: '0 (out of 4) for not knowing what a data management plan is. Don’t worry, this is easily fixed!'))
(go-to: 'DMP purpose')]</q></li>
<li><q>(link: 'It’s a detailed handbook for how data will be handled during the project.')[
(set: $response to 2)
(set: $feedback's DMP to it + (a: '2 (out of 4) for your definition of a data management plan. They are more of an outline than a detailed handbook, and also discuss how data will be handled *after* the project.'))
(go-to: 'DMP purpose')]</q></li>
<li><q>(link: 'It’s where you outline how data will be managed at each stage of the project and beyond.')[
(set: $response to 4)
(set: $feedback's DMP to it + (a: '4 (out of 4) for your definition of a data management plan.'))
(go-to: 'DMP purpose')]</q></li>
<li><q>(link: 'It’s where you outline the procedures you will use for managing data during the research project.')[
(set: $response to 3)
(set: $feedback's DMP to it + (a: '3 (out of 4) for your definition of a data management plan. They also discuss how data will be handled *after* the project.'))
(go-to: 'DMP purpose')]</q></li>
<li><q>(link: 'It’s a plan for managing data.')[
(set: $response to 1)
(set: $feedback's DMP to it + (a: '1 (out of 4) for your wittily unhelpful definition of a data management plan.'))
(go-to: 'DMP purpose')]</q></li>
</ul>
}{
(set: $max_score to it + 4)
(set: $score to it + $response)
<p><q>(if: $response is 0)[
Well, if you don’t know and I don’t know, I guess it can’t be that important.
What do reckon the point of it all is?
](else-if: $response is 1)[
I’d managed to work that much out myself, thank you very much.
But what is it for? What’s the *point* of it?
](else-if: $response < 4)[
Really? If you say so.
I still don’t see the point of it.
](else:)[
Hmm. Well, I’m glad I called you in, you seem to know all about it.
But why do we need one before we’ve even got the grant?
]</q></p>
<ul>
<li><q>(link: 'Just another of those hoops we have to jump through to get things done.')[
(set: $response to 1)
(set: $feedback's DMP to it + (a: '1 (out of 4) for recognising a need for data management plans, but missing the point of them.'))
(go-to: 'DMP author')]</q></li>
<li><q>(link: 'Funding bodies these days expect us to publish data as well as papers. We need to plan for it.')[
(set: $response to 3)
(set: $feedback's DMP to it + (a: '3 (out of 4) for recognising why funders ask for data management plans, but missing how they can help you too.'))
(go-to: 'DMP author')]</q></li>
<li><q>(link: 'There is no point to it. It is what it is.')[
(set: $response to 0)
(set: $feedback's DMP to it + (a: '0 (out of 4) for dismissing data management plans as pointless.'))
(go-to: 'DMP author')]</q></li>
<li><q>(link: 'It will help us do our research better, and could save us from embarrassing mistakes.')[
(set: $response to 4)
(set: $feedback's DMP to it + (a: '4 (out of 4) for recognising the benefits of a good data management plan.'))
(go-to: 'DMP author')]</q></li>
<li><q>(link: "The funder’s covering its own back and won’t accept the bid without one.")[
(set: $response to 2)
(set: $feedback's DMP to it + (a: '2 (out of 4) for recognising the financial implications of not writing a data management plan, but missing the reason why funders ask for them.'))
(go-to: 'DMP author')]</q></li>
</ul>
}{
(set: $max_score to it + 4)
(set: $score to it + $response)
<p><q>(if: $response is 4)[
Ah yes. You heard what happened to Dr Jurgens?
Terrible business. Wouldn’t wish that on anyone.
](else:)[
Hmmph. Well, it all seems like a lot of extra red tape to me.
]</q></p>
<p>(if: $response is 4)[
The professor seems lost in thought for a moment, then gives a deep sigh of frustration.
](else:)[
The professor rummages through some papers, presumably copies of the ones in your envelope,
then drops them with a frustrated sigh.
]</p>
<p><q>Look, I don’t have time for all this.
Is this something [[you could do->DMP do it yourself]]?
(set: $dmp_support to '')
Or what about your [[post-doc->DMP delegate to junior]], I’m sure she’d be keen to get her teeth into something like this.</q></p>
<p>Suddenly a mad gleam appears in the professor’s eye.</p>
<p><q>That is, if we have to do it all.
Aren’t there people employed in the University to do this kind of grunt work?
Someone in the (link: 'Research Office')[(set: $dmp_support to 'Research Office')(go-to: 'DMP delegate to supporters')]?
Or the (link: 'Library')[(set: $dmp_support to 'Library')(go-to: 'DMP delegate to supporters')]?
I think I saw someone from the Library talk about research data at one of our departmental meetings,
though what it has to do with books I’ll never know.</q></p>
}{
(set: $max_score to it + 2)
<p><q>Jolly good. Well, I’m glad that’s all sorted out.
I won’t keep you any longer.
Shut the door on the way out, won’t you?</q></p>
}(display: "DMP author sorted"){
(set: $score to it + 1)
(set: $feedback's DMP to it + (a: '1 (out of 2) for delegating the data management plan to your post-doc. It was generous to give someone else a career development opportunity, but you saw how well it turned out.'))
<p>You scoop up the envelope stuffed with papers and head to the workroom at the other end of the corridor.
Affecting a breezy air, you drop the envelope on your post-doc’s desk and explain you have a wonderful career development opportunity for her.
You linger just long enough to outline the task, then scuttle off before she has a chance to ask any difficult questions.</p>
<p>It’s nice to know everything’s taken care of.
You get on with something more interesting, sparing only a moment’s thought to wonder what sort of
[[data management plan->DMP junior moves on]] you’ll end up with.</p>
}(display: "DMP author sorted"){
(set: $feedback's DMP to it + (a: '0 (out of 2) for trying to get the $dmp_support to write your data management plan for you. They don’t know your research as well as you do.'))
<p>You scoop up the envelope stuffed with papers and head to the post room,
where a hastily constructed cover note and a fresh address are all it takes to make this someone else’s problem.</p>
<p>It’s nice to know everything’s taken care of.
You get on with something more interesting, sparing only a moment’s thought to wonder what sort of [[data management plan->DMP return to sender]] you’ll end up with.</p>
}(display: "DMP author sorted"){
(set: $score to it + 2)
(set: $feedback's DMP to it + (a: '2 (out of 2) for opting to write the data management plan yourself.'))
<p>You scoop up the envelope stuffed with papers and head back to your office.
As you slump down in your chair you curse yourself for not passing the buck on to someone else.
Still, if you want to make sure it’s done properly, you may as well [[do it yourself->DMP how to write]].</p>
}{
<p>Three short weeks later, there is a knock on your door.</p>
<p>Your post-doc comes in and sits down.
She explains, half-excitedly and half-apologetically, that she has accepted a post as a research assistant in an international, multidisciplinary research project
and she will be leaving the country just as soon as her notice period is up.
This is all very exciting, and you are truly happy for her,
but what with her outstanding leave and a heap of writing up to do,
she won’t have time to work on the data management plan before she leaves.</p>
<p>As she gets up to go, she hands you back that envelope stuffed with papers.
You place it back down on your desk as gently as you can,
but even so it seems to thud like a toppling tombstone.
It looks like you’ll have to [[write it yourself->DMP how to write]] after all.</p>
}{
<p>A suspiciously familiar envelope lands on your desk two days later.
Delving inside, you confirm that it is indeed the same bundle of papers you sent off.
Hmm. You check a few times but fail to find a completed data management plan among them.
That’s disappointing.</p>
<p>Then it comes to you.
Of course they didn’t print it out;
it would make much more sense for them to email it to you.
You are just about to drop the bundle and check your email client
when you notice that the covering letter is not the one you sent off.
You can’t help skimming down the page, and as you do so your heart sinks.</p>
<blockquote>
<p>Thank you for your enquiry$ellipsis</p>
<p>(if: $dmp_support is 'Research Office')[
The Research Office is only too glad to support you through the process of bidding for funding$ellipsis
](else:)[
The Library’s research data support team can advise on all aspects of research data management, including how to write a data management plan$ellipsis
]</p>
<p>Writing data management plans on behalf of researchers is not, however, one of the services we provide$ellipsis</p>
</blockquote>
<p>It looks like you’ll have to [[write it yourself->DMP how to write]] after all.</p>
}{
(set: $dmp_online to false)
(set: $dmp_feedback to "")
<p>You re-examine the bundle of papers, this time picking through them more carefully.
You find something relevant in the wording of the call:
it seems the funder is very keen for the (if: $type is 'qual')[interview transcripts and other survey data] (else:)[cleaned-up instrument data] to be shared at the end of the project,
and wants to know how you plan to get your data in a state to be able to do that.</p>
}(display: "Set Rank")(if: $score > 0)[{
<p>(Your [[score->Score so far]] has gone up by $score (if: $score is 1)[point](else:)[points].)</p>
}]{
<p>You drop the papers and think for a moment.
You don’t have a *lot* of time to get this done.
What are you going to do?</p>
<ul>
<li>[[Write a couple of paragraphs->DMP scribble]] about your commitment to open access and your institutional repository.</li>
<li>[[Ask around->DMP ask colleague]] to see if anyone else has had to write one of these recently.</li>
<li>(if: $dmp_support is 'Library')[
Take up the offer of help from the Library’s research data support team
](else:)[
See if the professor was right about the Library having some expertise in data management
], and [[book a meeting->DMP ask librarian]] with one of the librarians.</li>
<li>Click around on the [[University website->DMP website]] to see if you can find any advice.</li>
<li>[[Search online->DMP google]] for an existing plan you might be able to use as inspiration or adapt or, well, not *shamelessly steal* exactly, but$ellipsis</li>
<li>Look through the [[funder’s information->DMP funder policy]] again for clues.</li>
</ul>
}{
(set: $dmp_quality to 0)
(set: $dmp_feedback to "0 (out of 10) for trying to write a data management plan completely unaided. How will you know what the funder is looking for? Are you sure you know all the issues by heart?")
<p>You fire up your word processor and start typing.
You recall a departmental meeting where they talked about green and gold routes to open access and things like that.
That seems to chime in with what the instructions were saying about openness and sharing, in which case you’re confident you can make all the right noises.</p>
<blockquote>
<p><strong>Data Management Plan</strong></p>
<p>The results from our (if: $type is 'qual')[study](else:)[experiment] will be published in open access journals where possible,
otherwise pre-prints will be made available through the University’s institutional repository.
The data associated with the paper will be saved as PDF and added to the paper’s supplementary information.</p>
</blockquote>
<p>That looks a bit short so you pad it out with key points from the case for support,
and throw in some complimentary things about the repository and the University’s IT systems in general.</p>
<p>There, that’ll do.</p>
}(display: 'DMP next'){
(set: $DMP_history to it + (a: (passage:)'s name))
(set: $dmp_quality to 1)
(set: $dmp_feedback to "1 (out of 10) for plagiarising a data management plan off the Internet. Who knows, you may have accidentally got some details right.")
<p>You fire up your search engine of choice, type ‘data management plan’ and your field of study into the search box, and hit ‘Enter’.</p>
<p>You wade through thinly veiled adverts from data analytics companies and a surprisingly large number of library guides before finally hitting some example plans. Yes!</p>
<p>The first one relates to a project that sounds similar to one you suggested several years ago, before your colleagues told you not to be absurd.</p>
<p>The second one is by a researcher whose name you recognise, but the details of the project do not sound at all familiar.</p>
<p>The third is somewhat longer than the others, and was written for a funder you’ve never heard of, but the topic seems about right.</p>
<p>You could probably find more, but time is pressing and you have a reasonable shortlist.
Which will you choose: the [[first->DMP copy paste]], [[second->DMP copy paste]] or [[third->DMP copy paste]]?</p>
}{
<p>You save the plan under a different name and go through it, changing some of the details to match the new project proposal.
Yes, that looks about right.</p>
}(display: 'DMP next'){
(set: $dmp_quality to 2)
(set: $dmp_feedback to "2 (out of 10) for copying a colleague’s data management plan. "
+ "There are some parts that will be the same for all plans in your department or institution, but even quite similar projects can have very different data management needs. "
+ "And can you be sure that what they wrote reflected best practice?")
<p>You meet up for coffee with some fellow researchers and ask if any of them have written a data management plan before.
Mostly you just get blank looks but one of the junior fellows pipes up that he had to write one a few months back.
You ask him about the process and ask to see a copy.</p>
<p>Later that day you get an email with subject line ‘Data management plan’.
Aha. You open up the attachment.
It is about two pages long, with brief paragraphs explaining how the data would be collected, stored, organized and archived.
It looks pretty good.</p>
}(display: 'DMP copy paste'){
<p>Consulting the Library web pages, you are pleasantly surprised to find (unless: $dmp_support is 'Library')[that the professor was indeed correct. There is] a whole section on research data management.
Finding the contact details of one of the librarians involved, you arrange to [[meet the next day->DMP meet librarian]].</p>
}{
(set: $DMP_history to it + (a: (passage:)'s name))
<p>The librarian turns out to very knowledgeable about data management plans.
When you mention the funding body you’re applying to, she nods, pulls out a template document and goes through it with you.
She explains the various sections, asks your first thoughts on what you might put and gives you some helpful advice.
You even learn about some University services whose existence you had never previously suspected.</p>
<p>Later that day, you get an email from the librarian summarizing your conversation.
You download a copy of the template, follow up some of the other links in her email, and [[set to work->DMP right template]].</p>
}{
(set: $DMP_history to it + (a: (passage:)'s name))
<p>You go to the University home page, type ‘Data Management Plans’ in the search bar and see what comes up.</p>
<p>Bingo! You find a page the library has put up with information on how to write plans.
You read about the research data lifecycle, and how you need to say what you’ll do with your data at each stage.
There are even some examples of things you might write.</p>
<p>You probably have enough to go on, so you are minded to [[set to work->DMP write guided]] straight away, but then a couple of other links catch your eye:
some [[funder-specific guidance->DMP funder guidance]] and an [[online authoring tool->DMP Roadmap]].</p>
}{
<p>The link takes you to an explanation of the funder’s policy on research data management:
what their priorities are and what they will expect you as grant holders to do.
There is also a Data Management Plan template.
Hang on, a template?
That should make things easier.
You download it and [[set to work->DMP right template]].</p>
}{
<p>Picking up the papers again, you rummage through and find something you’d missed the first time:
the funder’s policy on research data management.
It explains what their priorities are and what they will expect you as grant holders to do.
It also mentions something about a Data Management Plan template, and that there are ‘online tools that can help’.</p>
<p>You reckon you ought to be able to find either of those online without too much difficultly.
Do you want to look for the [[template->DMP seek funder template]] or an [[authoring tool->DMP seek software]]?</p>
}{
(set: $DMP_history to it + (a: (passage:)'s name))
<p>You fire up your search engine of choice, type ‘data management planning tool’ into the search box, and hit ‘Enter’.</p>
<p>You wade through thinly veiled adverts from data analytics companies before hitting some meaningful results.
The [[first of these->DMP Roadmap]] promises to help you ‘create data management plans that meet institutional and funder requirements.’
The [[second one->DMP dodgy tool]] simply describes itself as a data management plan generator.</p>
}{
(set: $dmp_online to true)
<p>From what you can gather, this tool was created a few years ago with some one-off project funding.
The interface is a bit rough around the edges but from what you understand from the funder policy it seems to be asking all the right questions, so you stick with it.</p>
}(display: "DMP wrong template"){
(set: $dmp_online to true)
<p>You follow the link and find yourself on a pleasingly swishy sort of site.
It looks promising.</p>
<p>You set yourself up with an account and then you are able to start work on your plan.
One of the first questions you are asked is which template you would like to use.
There is a wide range of options, but you can discount most of them at a glance.
You are left with a choice between one provided by your [[funder->DMP right template]] and a generic one supplied by your [[institution->DMP wrong template]].</p>
}{
(set: $DMP_history to it + (a: (passage:)'s name))
<p>You fire up your search engine of choice, type ‘data management plan template’ into the search box, and hit ‘Enter’.</p>
<p>Quite a few promising looking links come up, though you can’t see one from your funder.
You glance at the clock and realise time is not on your side.
Do you spend the next few precious moments searching for a [[better template->DMP funder template]] to use,
or pick one from the list in front of you and [[start writing->DMP wrong template]]?</p>
}{
<p>You are about to wade through several pages of search results when you come to your senses and repeat your search, this time including the name of the funder.
Thankfully you have better luck this time, and a few clicks later you are downloading the template provided by your funder.</p>
}(display: "DMP right template"){
(set: $dmp_quality to 5)
(set: $dmp_feedback to "5 (out of 10) for writing a plan using the wrong template. "
+ "Most templates cover very similar ground, so it’s likely you addressed the main points, but missed some others and wrote at the wrong level of detail.")
<p>(if: $dmp_online is true)[
You work your way through the online form, following up some suggested links to online guidance as you go.
](else:)[
You save the template under a new name and start replacing the instructions with actual answers.
](if: $DMP_history contains "DMP website")[
You are able to answer most of the questions with help from the University’s guidance pages,
but others are trickier so you send emails asking for advice from colleagues, the Library, the Research Office, and so on.
](else:)[
Some of the questions are easy but there are some that take you a bit by surprise.
You do what you can, and send emails asking for advice on the rest from colleagues, the Library, the Research Office, and so on.
]</p>
<p>The next day, you have enough replies back to be able to fill in most of the gaps in the plan;
other bits just don’t seem relevant, so you (if: $dmp_online is true)[leave them blank](else:)[delete them].
That’s probably good enough.</p>
}(display: 'DMP next'){
(set: $dmp_quality to 5)
(set: $dmp_feedback to "5 (out of 10) for seeking guidance/advice before writing your data management plan freeform. "
+ "You probably addressed all the main points, but it is better to follow a template – especially if the funder provides one – so you cover everything they ask for at the right level of detail.")
<p>You fire up your word processor and start typing, using the suggested headings and topics from the guidance page.
Some parts are easy to write, but others are harder.
You do what you can, and send emails asking for advice on the rest from colleagues, the Library, the Research Office, and so on.</p>
<p>The next day, you have enough replies back to be able to fill in most of the gaps in the plan.
That’s probably good enough.</p>
}(display: 'DMP next'){
(set: $dmp_quality to 10)
(set: $dmp_feedback to "10 (out of 10) for writing your data management plan using to the correct funder template.")
<p>(if: $dmp_online is true)[
You work your way through the online form, following up some suggested links to online guidance as you go.
](else:)[
You save the template under a new name and start replacing the instructions with actual answers.
](if: $DMP_history contains "DMP meet librarian")[
Thanks to your chat with the librarian, there are no nasty surprises and you work your way through the template fairly quickly.
There are a couple of places where you’re not sure of the details, so you send off some emails to the librarian and IT support.
](else-if: $DMP_history contains "DMP website")[
You are able to answer most of the questions with help from the University’s guidance pages,
but others are trickier so you send emails asking for advice from colleagues, the Library, the Research Office, and so on.
](else:)[
Some of the questions are easy but there are some that take you a bit by surprise.
You do what you can, and send emails asking for advice on the rest from colleagues, the Library, the Research Office, and so on.
]</p>
<p>The next day, you have the replies you need to finish off the plan. (Phew!)</p>
}(display: 'DMP next'){
<p>You (if: $dmp_online)[export the plan](else:)[save the file] and email it to the professor, then print a copy of it for safety.
[[Let’s see->DMP submission]] what they make of that$ellipsis</p>
}{
<p>You get a reply back by email.</p>
<blockquote>
<p><q>Thanks for this, you’re a lifesaver.
I’m just chasing down the last few figures and I’ll send it off.</q></p>
</blockquote>
<p>You’re not convinced the professor has even read it but you take the compliment anyway.
At least you can cross that task off your list and get on with your [[actual work->DMP result]] now$ellipsis</p>
}{
<p>The weeks roll by and you think no more of it until a familiar face pops through the door.</p>
<p><q>Ah, I’m glad I caught you in.
I’ve just heard back from the funding body about our bid.
(if: $dmp_quality is 0)[
Bad news, I’m afraid. They didn’t like it at all.
One of the reviews was particularly scathing about your data management plan.
They said, what was it, oh yes, that it entirely missed the point and cast doubts on our ability to handle the trickier parts of the project.
Bit harsh, I thought, but I suppose we’d better have a meeting about it$ellipsis
](else-if: $dmp_quality < 3)[
There’s good news and bad news.
They’re willing to fund the project but we’re not getting the full whack, something about concerns over gaps in the proposal.
There was something about your data management plan$ellipsis
oh yes, they said it mostly okay but some bits seemed entirely inappropriate for the (if: $type is 'qual')[study](else:)[experiment] we were proposing;
almost like it was written for another project entirely.
Still, we’ve got the money. Thanks again!
](else:)[
Good news! We were successful.
(if: $dmp_quality is 10)[
They singled out our data management plan for particular praise;
one of the best they’ve seen, apparently.
](else:)[
They didn’t say much about the data management side of things, but no news is good news, that’s what I always say.
]
] Thanks for all your help!</q></p>
(set: $max_score to it + 10)
(set: $score to it + $dmp_quality)
(set: $feedback's DMP to it + (a: $dmp_feedback))
}(display: "Set Rank")(if: $dmp_quality is 0)[(display: "DMP fail")](else:)[(display: "DMP win")]{
<p>That sounds ominous.
Perhaps you’d better find out more about these data management plans,
it’s clearly not as simple as you’d thought.</p>
}(display: "Game ends early"){
<p>(if: $dmp_quality is 1)[
Well, some funding is better than no funding.
](else:)[
Result! The Head of Department will be pleased.
]</p>
<p>(Your [[score->Game suspended]] has gone up by $dmp_quality (if: $dmp_quality is 1)[point](else:)[points].)</p>
<p style='text-align:center;'><img src='img/bag-of-money.svg' alt='Cash!'></p>
<p>Soon enough, the paperwork is filled out, resources are allocated and you find yourself [[starting work->SD start]] on the project$ellipsis</p>
(set: $breakpoint to true)
}<!-- End of Level 1 -->{
(set: $SD_history to (a: (passage:)'s name))
(set: $feedback's SD to (a:))
(set: $full_score to it + 20)
(set: $allowed_to_archive to true)
(set: $instrument_is_wonky to false)
<p>Project kickoff meetings are always positively charged events, and this one was no different.
You came out of it pumped up with enthusiasm and determined that the next three years would see you produce some of the most world-changing and career-defining research the world has ever seen.</p>
<p>Of course, at some point you do actually have to make a start, and so here you are, back at your desk, looking at the actions that were assigned to you.
As you run your eyes down the list, you try hard to hang on to that feeling of imminent greatness.</p>
<p>It’s down to you to sort out the details of how the project will gather its data.
You brought it on yourself, really, back when the Professor was writing the bid.
You pointed out it would be a good idea to check if the data you needed had already been collected by previous projects, and thereby landed yourself with another job to do.
After your extensive ten-minute search, you concluded that$ellipsis</p>
<ul>
<li>
<p>good [[data already existed->SD reuse]] to support the research.</p>
</li>
<li>
<p>you would need to (link: "collect new data")[(if: $type is 'qual')[
(go-to: "SD consent or not")](else:)[(go-to: "SD equipment")
]](print: " ")after all, just as everyone had assumed.</p>
</li>
</ul>
}REUSE SCENARIO =========================================================={
(set: $SD_history to it + (a: (passage:)'s name))
<p>Of course, neither the project plan nor the Data Management Plan made any firm commitments about what existing data sources you should be using.
The rationale at the time was that you didn’t want to make yourself a hostage to fortune in case any of the data were withdrawn or discredited in the meantime.</p>
<p>But you can’t put it off any longer.
You’ve been put in charge of gathering together the data for the team to process and analyse.
So what will your first step be?</p>
<ul>
<li>
<p>Read through as many journal [[tables of contents->SD reuse toc]] as possible to see if you can find relevant research,
then see if the underlying data are available.</p>
</li>
<li>
<p>Perform a [[general web search->SD reuse seek general]] for data.</p>
</li>
<li>
<p>Search using [[specialist data discovery services->SD reuse seek data]].</p>
</li>
<li>
<p>Look for [[specialist data archives->SD reuse seek archive]], then search those archives individually.</p>
</li>
</ul>
}{
(set: $SD_history to it + (a: (passage:)'s name))
<p>After three days of sifting through journals, you are concerned at the amount of time you are spending without getting very far.
It is hard enough to find papers on relevant topics, but even when you do find them, you have to read through very carefully to find any mention of underlying data;
often the data are not mentioned at all.
And when they are mentioned, it tends to be somewhat cryptically, almost as if the authors find the matter embarrassing.</p>
<p>You find yourself resolved to take a stand against this nonsense and provide a proper data access statement in all your papers.</p>
<p>That doesn’t help at the moment, though.
There is a whole team of people relying on you finding data they can work with, and you only have a couple of scrappy leads so far.
Perhaps a different approach would be quicker?</p>
<ul>
<li>
<p>Perform a [[general web search->SD reuse seek general]] for data.</p>
</li>
<li>
<p>Search using [[specialist data discovery services->SD reuse seek data]].</p>
</li>
<li>
<p>Look for [[specialist data archives->SD reuse seek archive]], then search those archives individually.</p>
</li>
</ul>
}{
<p>(if: $DMP_history contains "DMP google" or $DMP_history contains "DMP seek software" or $DMP_history contains "DMP seek funder template")[You return to your trusty search engine](else:)[You fire up your search engine of choice] and tap in a selection of keywords describing the data you’re interested in.
In no time at all you have your list of search results.
There are some datasets, but you have to sift through and reject a lot of forum posts, blog posts, sponsored links and the occasional journal article to get your short list.</p>
}(display: "SD candidate data sources")\
(set: $sources to (shuffled: $source1, $source3, $source4, $source5, $source6))\
(display: "SD data source selection"){
<p>You figure it will save a lot of time if you use a search engine specifically aimed at research data.
(if: $DMP_history contains "DMP meet librarian")[
Thinking back to your meeting with the librarian, you recall she mentioned a few, and refer back to the email she sent you.
](else-if: $DMP_history contains "DMP website")[
You return to the library’s guidance pages to remind yourself of the services they recommend.
](else:)[
You vaguely recall writing something about this in your Data Management Plan, so you open up the file on your computer and are pleased to find the names of some services you can try.
]</p>
<p>You try your search at WorldWideScience.org, DataCite, the Data Citation Index and one or two more specialised services, and are pleased to find a good selection of resources to choose from without much difficulty.</p>
}(display: "SD candidate data sources")\
(set: $sources to (shuffled: $source1, $source2, $source3, $source4, $source5))\
(display: "SD data source selection"){
<p>You go to the Registry of Research Data Repositories and are met with a bewildering quantity of archives.
You filter the list by discipline and, where appropriate, geographic area, but you still end up with a long list of places to try.</p>
<p>You spend the rest of the day working through the list, patiently repeating the same or similar searches across each one in turn.
You are quite pleased with the precision offered by some of the advanced search screens, but find the whole process utterly exhausting.
As dusk settles outside your window, you wonder if there might be a quicker way of doing this, and if not, why not.</p>
<p>The idea of just performing a general web search pops back into your head.
It might get you to your dinner a bit sooner.
Do you want to [[try it->SD reuse then seek general]], or [[continue as you are->SD reuse then seek archive]] for another hour?</p>
}{
<p>Frustration gets the better of you.
(if: $DMP_history contains "DMP google" or $DMP_history contains "DMP seek software" or $DMP_history contains "DMP seek funder template")[You return to your trusty search engine](else:)[You fire up your search engine of choice] and tap in a selection of keywords describing the data you’re interested in.
When the results come back, even though you have to sift through and reject a lot of forum posts, blog posts, sponsored links and the occasional journal article, it feels like you’re making rapid progress.
In seemingly no time at all, you have rounded out your selection of datasets, and can head off to dinner with your head held high.</p>
}(display: "SD candidate data sources")\
(set: $sources to (shuffled: $source1, $source2, $source3, $source4, $source5, $source6))\
(display: "SD data source selection"){
<p>You cast the thought of easy options aside.
You are a quality researcher: you have standards and you need to stay strong.</p>
<p>It’s not much comfort when your stomach starts rumbling, but when you finally reach the end of your list you are reasonably confident you have pulled out the most suitable datasets available.
You leave your desk with a sense of achievement.</p>
}(display: "SD candidate data sources")\
(set: $sources to (shuffled: $source1, $source2, $source3, $source4))\
(display: "SD data source selection")(set: $source1 to (dm:
"name", "Opperman and de Vries",
"location", "The dataset is held in a domain-specific data repository and has been assigned a DOI.",
"relevance", "The landing page for the dataset provides an abstract, some subject keywords and coverage information, all of which are encouraging. It also shows that the dataset has been cited in peer-reviewed journals.",
"documentation", "The dataset comes with a README file that describes how the data were collected and processed, and explains how the files have been organized.",
"format", "(if: $type is 'qual')[All the transcripts and supporting documents are in Rich Text Format](else:)[All the tables have been saved in Comma-Separated Value files].",
"licence", "The data and documentation are all licensed under Creative Commons Attribution 4.0 International.",
"score", 5,
))(set: $source2 to (dm:
"name", "Mbonambi et al.",
"location", "The dataset is in a university data repository, and has been assigned both a DOI and a Handle.",
"relevance", "The abstract describes exactly the sort of data you’re looking for, and it’s linked to a peer-reviewed paper in a reputable journal.",
"documentation", "For details of the methodology, you have to look up the associated paper, which is available on open access. The landing page explains which files are which; the coding is described in one of the files.",
"format", "(if: $type is 'qual')[The main file is in NVivo format, but the creators have also provided elements of the data in regular Office formats](else:)[The main file is in SPSS format, but the data have also been saved as CSV and the codebook has been exported to an HTML document].",
"licence", "The whole dataset has been released under an Open Data Commons Attribution Licence.",
"score", 5,
))(set: $source3 to (dm:
"name", "Hlongwane et al.",
"location", "The dataset has been released through Figshare and assigned a DOI.",
"relevance", "There’s no abstract as such, but the title is encouraging, and a glance at the files makes you think it is worth a second look.",
"documentation", "You have subscription access to the associated paper, which contains a thorough methodology. The data have been tabulated with meaningful column headings(if: $type is 'quant')[, including units of measurement].",
"format", "The files are all recognisable Office formats.",
"licence", "The whole dataset has been released under a Creative Commons Attribution Share-Alike 4.0 International licence.",
"score", 3,
))(set: $source4 to (dm:
"name", "Mulholland et al.",
"location", "The dataset is listed in an institutional data catalogue, but the files are in the journal paper’s supplementary information.",
"relevance", "The dataset’s catalogue entry just repeats the abstract of the associated paper, but the research sounds like it might be relevant.",
"documentation", "You only have the methodology from the paper to go on. It provides you with the essence of how the research was conducted, but is vague in places.",
"format", "The data have been entered into a spreadsheet, but you are left to work out what’s going on as none of the columns are labelled.",
"licence", "The catalogue record includes a long licence text that only your colleagues in the School of Law would be able to unpick.",
"score", 2,
))(set: $source5 to (dm:
"name", "Bunting et al.",
"location", "The files are hosted on the project website.",
"relevance", "The dataset is linked to a paper in a journal you don’t recognise. Having skimmed the abstract it is not entirely clear if it covers the (if: $type is 'qual')[topics](else:)[variables] you are interested in.",
"documentation", "Apparently it should all be obvious from the paper, but you don’t have access to it.",
"format", "The files all end in a .kgr extension. What on earth is a .kgr file?",
"licence", "You cannot find any licensing information, so the default legal position must apply, whatever that is.",
"score", -3,
))(set: $source6 to (dm:
"name", "anabrite/ijqwrty-data",
"location", "The files seem to be hosted on the researcher’s own FTP site, but it’s hard to be certain.",
"relevance", "The link to the data was mentioned in a conference abstract that sounded like it was in the right area, but so far you haven’t found the full paper.",
"documentation", "There’s no documentation included with the files. Hopefully you will be able to work it out from the headings.",
"format", "They look like standard MS Office files.",
"licence", "You cannot find any licensing information, so the default legal position must apply, whatever that is.",
"score", -3,
))(set: $source_ranking to (a:))(set: $sd_src_seen to (a:)){
<p>The next day, you come back to your pile of notes to look again at what you have found with fresh eyes.
You sense some of these datasets might be better than others; some may not be suitable at all.
You just need to [[work out which->SD choose data sources]].</p>
}(if: $sd_src_seen's length is 0)[{
<p>Here is your first batch of datasets to look through.
You’ll need to review all of them in turn, but which one do you want to look at first?</p>
}](else:)[{
<p>(if: $source_ranking's length is 0)[
You haven’t chosen any datasets yet.
](else:)[
(if: $source_ranking's length is 1)[
So far, you’ve only picked one dataset: (print: $source_ranking's 1st's name)
](else:)[
(if: $sd_src_seen's length < $sources's length)[So far, you’ve](else:)[You’ve] chosen (print: $source_ranking's length) datasets and ranked them in this order of preference:
(folded: _name making _allnames via _allnames + ", " + _name, ...(altered: _item via _item's name, ...$source_ranking))
](if: $source_ranking's last's name is "Opperman and de Vries")[.]
]</p>
}(if: $sd_src_seen's length < $sources's length)[{
<p>Which dataset do you want to look at next?</p>
}](else:)[{
<p>Do you need to take another look at any of them?</p>
}]]{
<ul>(for: each _item, ...$sources)[
<li>(link: _item's name)[(set: $current_option to _item)(go-to: "SD view data source")]
(if: $sd_src_seen contains _item's name)[ again]</li>]
</ul>
}(if: $source_ranking's length > 0)[{
<p>Or have you (link-goto: "finished with this batch?", "SD data source scoring")</p>
}]{
<p>You look at the (print: $current_option's name) dataset (if: $sd_src_seen contains $current_option's name)[again ](else:)[(set: $sd_src_seen to it + (a: $current_option's name))]in more detail and consider its merits.</p>
<ul>
<li>(link-reveal: "*Hosting location*")[*:* (print: $current_option's location)]</li>
<li>(link-reveal: "*Relevance and context*")[*:* (print: $current_option's relevance)]</li>
<li>(link-reveal: "*Documentation*")[*:* (print: $current_option's documentation)]</li>
<li>(link-reveal: "*Format*")[*:* (print: $current_option's format)]</li>
<li>(link-reveal: "*Licensing*")[*:* (print: $current_option's licence)]</li>
</ul>
<p>How do you rate this dataset?</p>
<ul>(if: $source_ranking's length is 0)[
<li>(link: "Worth considering.")[(set: $source_ranking to (a: $current_option))(go-to: "SD choose data sources")]</li>]
(else:)[
<li>(if: $current_option's name is $source_ranking's 1st's name)[
(link-goto: "Still the best so far", "SD choose data sources")
](else:)[
(link: "Better than or the same as (print: $source_ranking's 1st's name)")[
(set: $source_ranking to it - (a: $current_option))
(set: $source_ranking to (a: $current_option) + it)
(go-to: "SD choose data sources")
]]</li>
(for: _i where $current_option's name is not $source_ranking's (_i)'s name, ...(range: 1, $source_ranking's length))[
<li>(if: $source_ranking's length > _i)[
(if: $current_option's name is $source_ranking's (_i + 1)'s name)[
(link-goto: "Still not as good as (print: $source_ranking's (_i)'s name)" +
"(if: $source_ranking's length > (_i + 1))[ but better than or the same as (print: $source_ranking's (_i + 2)'s name)]",
"SD choose data sources")
](else:)[
(print: "(link: \"Not as good as (print: $source_ranking's (_i)'s name) but better than or the same as (print: $source_ranking's (_i + 1)'s name)\")[" +
"(set: _head to $source_ranking's (range:1, " + (text: _i) + "))" +
"(set: _head to it - (a: $current_option))" +
"(set: _tail to $source_ranking's (range:" + (text: _i + 1) + ", $source_ranking's length))" +
"(set: _tail to it - (a: $current_option))" +
"(set: $source_ranking to _head + (a: $current_option) + _tail)" +
"(go-to:\"SD choose data sources\")]")
]](else:)[
(link: "Not as good as (print: $source_ranking's (_i)'s name)")[
(set: $source_ranking to it - (a: $current_option))
(set: $source_ranking to it + (a: $current_option))
(go-to:"SD choose data sources")
]]</li>]]
<li>(link: "Not even worth a second glance.")[(if $source_ranking contains $current_option)[(set: $source_ranking to it - (a: $current_option))](go-to:"SD choose data sources")]</li>
</ul>
}{
(set: $max_score to it + 20)
(set: $selection_score to (folded: _score making _selectionscore via _selectionscore + _score, ...(altered: _item via _item's score, ...$source_ranking)))
(for: each _src, ...$source_ranking)[(if: _src's score < 0)[(set: $allowed_to_archive to false)]]
(set: $src_order_score to 0)
(if: $source_ranking's length > 1)[(for: each _i, ...(range: 2, $source_ranking's length))[(if: $source_ranking's (_i - 1)'s score >= $source_ranking's (_i)'s score)[(set: $src_order_score to it + 1)]]]
(if: ($selection_score is 15) and ($src_order_score is 3))[(set: $src_order_score to 5)]
(set: $score to it + $selection_score + $src_order_score)
(set: $feedback's SD to it + (a:
(str: $selection_score) + " (out of 15) for your selection of existing data sources.",
(str: $src_order_score) + " (out of 5) for how you ranked the quality of your data sources" +
"(if: ($selection_score < 15) and ($src_order_score is ($source_ranking's length - 1)))[, but you did the best you could with the selection you made]."
))
<p>You work through the remaining candidate datasets in much the same fashion.</p>
<p>In due course you have a list of data citations, divided up into definites and possibles.
You jot them down in an email and send it off to your team of research assistants, along with your customary nuggets of wisdom and motivational deadlines.
Sitting back in your chair, you take a moment to savour the satisfaction of a job (if: ($selection_score + $src_order_score) > 14)[well done](else:)[completed].
That’s one action you can cross off your to-do list.</p>
}(if: $selection_score + $src_order_score > 0)[{
<p>(Your [[score->Game suspended]] has gone up by (print: $selection_score + $src_order_score) (if: ($selection_score + $src_order_score) is 1)[point](else:)[points].)</p>
<p style='text-align:center;'><img src='img/data-collection.svg' alt='Data assembled!'></p>
}](display: "SD pass")ETHICS SCENARIO ========================================================={
(set: $SD_history to it + (a: (passage:)'s name))
(set: $consent_score to 20)
(set: $allowed_to_archive to false)
<p>The nature of your research means that you will be collecting data from human participants, which in turn means you will have to apply for ethical clearance from the university’s Ethics Board.
Amongst other things this application should describe the manner in which the data will be collected from the participants.
Just thinking about it makes your mind recoil in horror from the magnitude of the paperwork in prospect.</p>
<p>The only way to get through this is to approach it methodically, so you start from first principles.
Will you obtain some form of [[consent->SD consent]] from your participants?
Or is there a good reason why, given the nature of your research, you can [[bypass obtaining consent->SD no consent]]?</p>
}{
<p>(if: $SD_history contains "SD no consent")[
You understand the reasons why the Ethics Board is insisting on you getting informed consent.
](else:)[
It is clear to you that you need to obtain informed consent from research participants, since you can’t think of a compelling reason to the contrary.
](print:" ") For starters you are aware that this is considered to be good ethical practice.
But perhaps more importantly informed consent is a legal requirement in terms of the applicable data privacy laws.
You certainly do not want to contravene the laws and bring your university into disrepute.</p>
<p>But it has been a very long time since you got your hands dirty with matters of consent.
In all your recent projects, such matters have been handled by someone else, and one of the members of the Ethics Board teaches it to the students.
Consequently you find yourself seeking out reading material which addresses research ethics.</p>
<p>Unfortunately, the material you find is by turns tortuous, vague and non-committal.
It talks about participant information sheets and consent forms, but leaves you mystified about whether the latest best practice is to use one or the other or both.
You get a vague sense of what should go in them, but nothing specific.</p>
<p>With a sigh, you discard the guidance and fall back on your own impeccable instincts to [[make the decisions->SD written consent]].</p>
}{
(set: $pis to 1)(set: $cf to 1)
(set: $with_consent to false)
(set: $pis_feedback to (a:))
<p>After thinking about the matter(if: $SD_history contains "SD written consent")[ some more,] you (if: $SD_history contains "SD written consent")[reconsider](else:)[proceed to make] your first decision.
Which documentation will you rely on?</p>
<ul>
<li>(link: "A participant information sheet on its own")[(set: $consent_score to it - 6)(go-to: "SD participant information sheet")].</li>
<li>(link: "A consent form on its own")[(set: $consent_score to it - 5)(go-to: "SD consent form")].</li>
<li>(link: "A combination of participant information sheet and consent form")[(set: $with_consent to true)(go-to: "SD participant information sheet")].</li>
</ul>
(set: $SD_history to it + (a: (passage:)'s name))
}{
<p>Will you construct a participant information sheet based on [[participants' information->SD participant information]] or on the [[essential details relating to the specific study->SD study information]]?</p>
}{
(set: $pis to 2)
(set: $consent_score to it - 3)
(set: $pis_extrainfo to 0.0)
<p>You begin by listing some basic information to collect:</p>
<ol>
<li>Name and Surname</li>
<li>Date of birth</li>
<li>Sex</li>
<li>Identity number</li>
</ol>
<p>It’s not a long list, so you think of some other things you might include:</p>
<ol>
<li>(link-reveal: "Personal address")[(set: $pis_extrainfo to it + 0.333)]</li>
<li>(link-reveal: "Postal address")[(set: $pis_extrainfo to it + 0.333)]</li>
<li>(link-reveal: "Cellphone number")[(set: $pis_extrainfo to it + 0.333)]</li>
<li>(link-reveal: "Telephone number (home)")[(set: $pis_extrainfo to it + 0.333)]</li>
<li>(link-reveal: "Telephone number (work)")[(set: $pis_extrainfo to it + 0.333)]</li>
<li>(link-reveal: "E-mail address")[(set: $pis_extrainfo to it + 0.333)]</li>
</ol>
<p>When you have finished brainstorming, you type up the full participant information sheet template and move on (if: $with_consent)[
to your (link: "consent form")[(set: $consent_score to it - (ceil: $pis_extrainfo))(go-to: "SD consent form")]
](else:)[
with your (link: "ethics application")[(set: $consent_score to it - (ceil: $pis_extrainfo))(go-to: "SD consent verdict")]
].</p>
}{
(set: $pis to 6)
(set: $pis_is_template to false)
<p>You sketch out a template for the participant information sheet:</p>
<ol>
<li>
<p>Details of the study</p>|details>[
<ul>(for: each _option, ...(shuffled: (dm:
"text", "The name of the study, the sponsoring institution, the name of the participant, the approval status from the ethics committee and the funding source.",
"act", "(set: $pis to 3)(set: $pis_is_template to true)"
), (dm:
"text", "The name of the study, the sponsoring institution, the approval status from the ethics committee and the funding source.",
"act", ""
)))[
<li>
<p>(link: _option's text)[(print: _option's act)(show: ?purpose)(replace: ?details)[]]</p>
</li>]
</ul>]
</li>
<li>
<p>Purpose of the study</p>|purpose)[
<ul>(for: each _option, ...(shuffled: (dm:
"text", "A description of how the study will radically change the world, the study objectives and the expected contribution to the body of knowledge.",
"act", "(set: $pis to 3)(set: $pis_feedback to it + (a: 'your description of the purpose of the study was potentially misleading.'))"
), (dm:
"text", "A description of the study objectives and the expected contribution to the body of knowledge.",
"act", ""
)))[
<li>
<p>(link: _option's text)[(print: _option's act)(show: ?summary)(replace: ?purpose)[]]</p>
</li>]
</ul>]
</li>
<li>
<p>What will participation in the study involve?</p>|summary)[
<ul>(for: each _option, ...(shuffled: (dm:
"text", "Time involving participant, activities involving participant, potential disclosure of sensitive information by the participant, collection of personal information and remuneration for the participant.",
"act", "(set: $pis to 3)(set: $pis_feedback to it + (a: 'your description of what participation will involve was flawed.'))"
), (dm:
"text", "Time involving participant, activities involving participant, potential disclosure of sensitive information by the participant and collection of personal information.",
"act", ""
)))[
<li>
<p>(link: _option's text)[(print: _option's act)(show: ?payment)(replace: ?summary)[]]</p>
</li>]
</ul>]
</li>
<li>
<p>Payment for the study</p>|payment)[
<ul>(for: each _option, ...(shuffled: (dm:
"text", "Although costs incurred by the participant will be borne by the participant, the participant will be paid to take part in study.",
"act", "(set: $pis to 3)(set: $pis_feedback to it + (a: 'your plans for reimbursing participants contradicts accepted practice at this institution.'))"
), (dm:
"text", "The participant will not bear any costs incurred and reimbursements (if any) will be paid in recognition of participation.",
"act", ""
)))[
<li>
<p>(link: _option's text)[(print: _option's act)(show: ?withdrawal)(replace: ?payment)[]]</p>
</li>]
</ul>]
</li>
<li>
<p>Withdrawal from the study</p>|withdrawal)[
<ul>(for: each _option, ...(shuffled: (dm:
"text", "Participants can only withdraw from the study before it commences.",
"act", "(set: $pis to 3)(set: $pis_feedback to it + (a: 'your advice on participant withdrawal does not accord with accepted ethical standards.'))"
), (dm:
"text", "Participants can withdraw from the study at any time.",
"act", ""
)))[
<li>
<p>(link: _option's text)[(print: _option's act)(show: ?security)(replace: ?withdrawal)[]]</p>
</li>]
</ul>]
</li>
<li>
<p>Ethical use of the research data</p>|security)[
<ul>(for: each _option, ...(shuffled: (dm:
"text", "the collected data will only be used for the purposes of the study and will be subject to some form of access control.",
"act", "(set: $pis to 3)(set: $pis_feedback to it + (a: 'we are concerned that you have not fully considered matters of data protection.'))"
), (dm:
"text", "the collected data will only be used for the purposes of the study, the data will be de-identified and will also be subject to some form of access control.",
"act", ""
)))[
<li>
<p>In recognition of the participant’s right to privacy as well as confidentiality, (link: _option's text)[(print: _option's act)(show: ?uses)(replace: ?security)[]]</p>
</li>]
</ul>]
</li>
<li>
<p>Usage of the data</p>|uses)[
<ul>(for: each _option, ...(shuffled: (dm:
"text", "During the study the collected data will be processed and analysed in order to derive research findings.",
"act", ""
), (dm:
"text", "During the study the collected data will be processed and analysed in order to derive research findings. After the study the data will be retained and disseminated so that they can be used by others in future studies.",
"act", "(set: $allowed_to_archive to true)"
)))[
<li>
<p>(link: _option's text)[(print: _option's act)(show: ?contact)(replace: ?uses)[]]</p>
</li>]
</ul>]
</li>
<li>
<p>Summary of participants’ rights</p>
</li>
<li>
<p>Contact details</p>|contact)[
<ul>(for: each _option, ...(shuffled: (dm:
"text", "Participant’s telephone/cellphone number, e-mail address, physical address and postal address.",
"act", "(set: $pis to 3)(set: $pis_is_template to true)"
), (dm:
"text", "Researcher’s name, telephone/cellphone number, e-mail address, physical address and postal address.",
"act", ""
)))[
<li>
<p>(link: _option's text)[(print: _option's act)(show: ?finally)(replace: ?contact)[]]</p>
</li>]
</ul>]
</li>
</ol>
}|finally)[{
(if: $pis is 3)[(set: $consent_score to it - 2)]
<p>When you have finished brainstorming, you type up the full participant information sheet (if: $pis_is_template)[
template(set: $pis_feedback to it + (a: "we believe you may have misunderstood the purpose of a participant information sheet: it is intended to provide information *to* participants, not to collect information *from* participants."))
](print: " ") and move on (if: $with_consent)[to your (link-goto: "consent form", "SD consent form")](else:)[with your (link-goto: "ethics application", "SD consent verdict")].</p>
}]{
(set: $consent_forms to (shuffled:
"SD Consent Form 1",
"SD Consent Form 2",
"SD Consent Form 3",
"SD Consent Form 4",
))
<p>You consider what sort of template to use for your consent form, and end up sketching out four possible structures. Do you want to use the one below, or (cycling-link:
"look at the second one(replace: ?form)[(display: $consent_forms's 1st)]",
"look at the third one(replace: ?form)[(display: $consent_forms's 2nd)]",
"look at the fourth one(replace: ?form)[(display: $consent_forms's 3rd)]",
"look at the first one again(replace: ?form)[(display: $consent_forms's 4th)]",
)?</p>
<blockquote>|form>[(display: $consent_forms's 1st)]</blockquote>
<p>Once you have settled on the most appropriate form, you type up a neat copy on your computer and move on with your (link: "ethics application")[
(set: $consent_score to it - $cf_penalty)
(go-to: "SD consent verdict")
].</p>
}{
(set: $cf to 6)
(set: $cf_penalty to 0)
(set: $allowed_to_archive to true)
<p><em>Terms of consent</em></p>
<ul>
<li>Voluntary participation</li>
<li>Withdrawal</li>
<li>Confidentiality</li>
<li>Use of the data</li>
<li>Archiving of the data</li>
</ul>
<p><em>Acknowledgement</em></p>
<ul>
<li>The participant has read and understood the information about the project</li>
</ul>
<p><em>Signatures and dates</em></p>
<ul>
<li>Signatures and dates of signing for the participant and the researcher</li>
</ul>
}{
(set: $cf to 6)
(set: $cf_penalty to 1)
(set: $allowed_to_archive to false)
<p><em>Terms of consent</em></p>
<ul>
<li>Participation</li>
<li>Withdrawal</li>
<li>Confidentiality</li>
<li>Use of the data</li>
</ul>
<p><em>Acknowledgement</em></p>
<ul>
<li>The participant has read the information about the project</li>
</ul>
<p><em>Signature and date</em></p>
<ul>
<li>Participant’s signature and date of signing</li>
</ul>
}{
(set: $cf to 2)
(set: $cf_penalty to 4)
(set: $allowed_to_archive to false)
<p><em>Acknowledgement</em></p>
<ul>
<li>Participant consents to participate in the research</li>
</ul>
<p><em>Signatures and dates</em></p>
<ul>
<li>Participant’s signature and date of signing</li>
</ul>
}{
(set: $cf to 2)(set: $cf_penalty to 5)(set: $allowed_to_archive to false)
<p><em>Acknowledgement</em></p>
<ul>
<li>Participant consents to participate in the research</li>
</ul>
}{
(set: $pis_error to (a:
"Your application did not contain a participant information sheet. "
+ "This form is a requirement for ethical clearance purposes and should be submitted along with "
+ "(if: $cf is 1)[a](else-if: $cf is 2)[an appropriate](else:)[the] consent form.",
"(if: $cf is 6)[The participant information sheet you submitted](else:)[your participant information sheet] "
+ "did not contain the relevant information which should be conveyed by such a document."
+ "(if: (count: $SD_history, 'SD written consent') > 1)[ Indeed, we believe you may have misunderstood the purpose of a participant information sheet: "
+ "it is intended to provide information *to* participants, not to collect information *from* participants.]",
"(if: $cf is 6)[The participant information sheet you submitted](else:)[your participant information sheet] "
+ "contained information that is inappropriate for such a document."
+ "(if: $pis_feedback's length > 0)[ For example, (print: (either: ...$pis_feedback))]",
))(set: $cf_error to (a:
"Your application did not contain a consent form. "
+ "This form is a requirement for ethical clearance purposes and should be submitted along with "
+ "(if: $pis is 1)[a](else-if: $pis is 2)[an appropriate](else:)[the] participant information sheet.",
"(if: $pis is 6)[The consent form you submitted](else:)[your consent form] "
+ "did not contain all of the relevant information which should be conveyed by such a document.",
))
<p>You include your (if: $pis > 1)[participant information sheet(if: $cf > 1)[ and consent form]](else-if: $cf > 1)[consent form](print: " ") in your application for ethical clearance.
A few weeks later you receive the following e-mailed response from the chairperson of the Ethics Board:</p>
}(if: $pis + $cf is 12)[{
<blockquote>
<p><q>After careful deliberation the Ethics Board has considered your application and deemed it to be acceptable.
Therefore the decision has been taken to approve your application for ethical clearance.</q></p>
</blockquote>
}(display: "SD consent scoring")](else:)[{
<blockquote>
<p><q>The Ethics Board recently received your application for ethical clearance.
Subsequently we would like to draw your attention (if: $pis + $cf > 5)[
to a certain issue.
(if: $pis < 6)[(print: $pis_error's $pis)](else:)[(print: $cf_error's $cf)]
](else:)[
to the following two issues. (if: $pis is 1)[
Firstly, (lowerfirst: $cf_error's $cf) Secondly, (lowerfirst: $pis_error's $pis)
](else:)[
Firstly, (lowerfirst: $pis_error's $pis) Secondly, (lowerfirst: $cf_error's $cf)
]](print: " ") As a result of the above your application has been rejected for the time being.
However, you still have the opportunity to resubmit your application along with the correct documentation.</q></p>
</blockquote>
<p>The Ethics Board’s rejection of your application has set you back a bit in terms of your planned timeline and you are now pressed for time.
But at least the board’s response has given you a clue about the best way forward.
It looks like you will have to rely on (if: (min: $pis, $cf) is 1)[
the combination of a participant information sheet and a consent form in order to obtain written consent.
](else-if: $pis < 6)[(if: $cf < 6)[
more appropriate participant information sheet and consent form templates.
](else:)[
a more appropriate participant information sheet template.
]](else:)[
a more appropriate consent form template.
](print: " ") This means that you have to [[change your decision->SD written consent]] regarding the type of documentation which you will rely on for the purposes of obtaining such written consent.</p>
}]{
(set: $SD_history to it + (a: (passage:)'s name))
<p>While being able to bypass obtaining consent is going to make your research considerably more tractable, the thought of selling this to the Ethics Board gives you a headache.
Such a literal headache, in fact, that you find yourself reaching for the venerable packet of painkillers in your desk drawer.</p>
<p>Soon after taking them, the headache eases into a sort of giddy haze.
You know you could probably make a long and exhausting argument that the specific nature of your research warrants bypassing the acquisition of informed consent.
But all this red tape, ye gods, it gets in the way of real research.
You think back to all those cop shows where it’s the renegade detective who gets the results.
Well, you can be a renegade too.
Everyone has the right of access to information and if anyone can make a case for its application to data collection, you can.</p>
<p>You ponder over which approach has more merit.
Should you explain to the Ethics Board that [[you simply thought that informed consent was not necessary->SD no consent necessary]]
or would it be better off to attempt to [[justify this decision based on the specific nature of your research->SD justification for no consent]]?</p>
}{
(set: $SD_history to it + (a: (passage:)'s name))
(set: $consent_score to it - 9)
<p>You complete your ethics approval form and indicate that you do not intend to obtain any informed consent from your participants because you do not think that this will be necessary.
You [[submit->SD no consent verdict lazy]] your application to the Ethics Board on time and wait with bated breath for a response.</p>
}{
<p>You are aware that there are several reasons that can be advanced as the basis for not obtaining consent from research participants.
Based on the specific nature of your research you decide that it would be best to advance either one of the following reasons:</p>
<ul>
<li>[[Decrease of data quality and validity->SD Decrease of data quality and validity]]</li>
<li>[[Distress or confusion of participants->SD Distress or confusion of participants]]</li>
<li>[[Research participants are minors->SD Research participants are minors]]</li>
<li>[[Practical problems->SD Practical problems]]</li>
</ul>
}{
<p>You are concerned that asking for informed consent will have the effect of decreasing the validity or quality of your outcome data.
It is all very well for you to worry about this but you still need to convince the Ethics Board that your reason is justifiable.
You consider the nature of the research and formulate the following possible justifications:</p>
<ol>
<li>[[The outcomes of your study will be self-reported and the inclusion of informed consent may give rise to the *Hawthorne effect* in terms of which the behaviour or your research participants is likely to be influenced significantly by their awareness of being part of your study->SD no consent verdict success]].</li>
<li>[[The research outcome could be affected by *resentful demoralisation*. This could happen if informed consent is obtained from research participants who subsequently end up being disappointed about being randomized to a control group->SD no consent verdict success]].</li>
</ol>
}{
(set: $consent_score to it - 6)
<p>You believe you are in a specific situation in which the consent procedure might lead to unnecessary distress or confusion on the participants’ part.
Your main concern is that the informed consent procedure itself may generate such distress or confusion.
It is all very well for you to worry about this but you still need to convince the Ethics Board that your reason is justifiable.
You consider the nature of the research and formulate the following possible justifications:</p>
<ul>
<li>[[You expect to interact with severely ill patients who, already being quite anxious, may find it disturbing to be informed about your study->SD no consent verdict proxy]].</li>
<li>[[You will be conducting emergency research and believe that the stressfulness of the medical situation will inhibit potential study participants from grasping the rationale of the study->SD no consent verdict proxy]].</li>
</ul>
}{
(set: $consent_score to it - 6)
<p>You distinctly recall being informed by someone that minors lack contractual capacity.
As such if they were to provide any consent it would not be binding.
You decide to confirm if this is true by asking a legal expert whom you happen to know.
Much to your relief you are informed that minors do indeed lack contractual capacity.</p>
<p>You therefore proceed to complete your ethics approval form and indicate that you do not intend to obtain any informed consent from your participants
because your participants will be minors and will therefore lack any required contractual capacity.
You [[submit->SD no consent verdict parental]] your application to the Ethics Board on time and wait with bated breath for a response.</p>
}{
<p>Based on your preliminary assessment any efforts to obtain informed consent would be fraught with practical problems.
It is all very well for you to worry about this but you still need to convince the Ethics Board that your reason is justifiable.
You consider the nature of the research and formulate the following possible justifications:</p>
<ul>
<li>(link: "Your research participants will be (temporarily) incapacitated patients. It will not be possible for you to ask such participants for informed consent")[
(set: $consent_score to it - 3)
(go-to: "SD no consent verdict proxy")
].</li>
<li>[[You will be conducting emergency research which is associated with a short treatment window. Under such circumstances the main alternative of using proxy consent will not be possible->SD no consent verdict success]].</li>
<li>(link: "The research participants are physically or mentally unable to give consent and the cause of this inability is a necessary characteristic of the research population")[
(set: $consent_score to it - 3)
(go-to: "SD no consent verdict proxy")
].</li>
</ul>
}{
<p>A few weeks later you receive an e-mailed response from the chairperson of the ethic board notifying you that your application has been rejected.
The main reason for the rejection is listed as:
*the absence of any credible justification, on your part, for the decision to not obtain any informed consent from your research participants.*</p>
<p>It appears that trying to be a renegade did not work out for you in this instance.
Luckily, you have been offered an opportunity to resubmit you application provided that it is amended.
However the exact nature of these amendments is not actually articulated in the e-mail.
You find this to be somewhat annoying.
How can the Ethics Board expect you to be a mind-reader?</p>
<p>The Ethics Board’s rejection of your application has set you back a bit in terms of your planned timeline and you are now pressed for time.
But you still have to decide on the way forward.</p>
<p>Are you going to [[resubmit your application->SD justification for no consent]] to the Ethics Board with a justification for your decision based on the specific nature of the research itself
or do you think that it would be better off if you opt to [[obtain some form of consent from your participants->SD consent]]?</p>{
<p>You include your justification in your application for ethical clearance.
A few weeks later you receive the following e-mailed response from the chairperson of the Ethics Board:</p>
<blockquote>
<p><q>After careful deliberation the Ethics Board has considered your justification for not obtaining consent and deemed it to be unacceptable.
Although it is accepted that you cannot obtain consent from your intended participants based on the reasons which you pointed out
we would still advise that you consider obtaining some form of proxy consent.</q></p>
</blockquote>
<p>The Ethics Board’s rejection of your application has set you back a bit in terms of your planned timeline and you are now pressed for time.
But at least the board’s response has given you a clue about the best way forward.
It looks like you will have to [[obtain informed consent->SD consent]].</p>
}{
<p>A few weeks later you receive the following e-mailed response from the chairperson of the Ethics Board:</p>
<blockquote>
<p><q>We regret to inform you that your application for ethical clearance has been rejected.
The main reason for the rejection is the absence of any credible justification, on your part, for the decision to not obtain any informed consent from your research participants.
Although it is accepted that minors do not have any contractual capacity you would still be required to obtain the necessary informed consent from either the parents or guardians of the minors in question.</q></p>
</blockquote>
<p>The Ethics Board’s rejection of your application has set you back a bit in terms of your planned timeline and you are now pressed for time.
But at least the board’s response has given you a clue about the best way forward.
It looks like you will have to [[obtain informed consent->SD consent]].</p>{
(set: $allowed_to_archive to true)
<p>You include your justification in your application for ethical clearance.
A few weeks later you receive the following e-mailed response from the chairperson of the Ethics Board:</p>
<blockquote>
<p><q>After careful deliberation the Ethics Board has considered your justification for not obtaining consent and deemed it to be acceptable.
Therefore the decision has been taken to approve your application for ethical clearance.
Please note that this waiver of the consent requirement does not mean that you will be exempt from data privacy requirements which are still applicable to the collection of your data.</q></p>
</blockquote>
}(display: "SD consent scoring"){
(set: $max_score to it + 20)
(if: $consent_score < 0)[(set: $consent_score to 0)]
(set: $score to it + $consent_score)
(set: $consent_feedback to (str: $consent_score) + " (out of 20) for getting ethical approval for the research ")
(set: $consent_attempts to (count: $SD_history, "SD no consent") + (count: $SD_history, "SD written consent"))
(if: $consent_attempts is 1)[(set: $consent_feedback to it + "on the first attempt.")](else:)[(set: $consent_feedback to it + "after " + (str: $consent_attempts) + " attempts.")]
(set: $feedback's SD to it + (a: $consent_feedback))
<p>You are delighted to see that the Ethics Board has approved your application.</p>
}(if: $consent_score > 0)[{
<p>(Your [[score->Game suspended]] has gone up by (print: $consent_score) (if: $consent_score is 1)[point](else:)[points].)</p>
<p style='text-align:center;'><img src='img/approved.svg' alt='Approved!'></p>
}](display: "SD pass")INSTRUMENT SCENARIO ====================================================={
(set: $SD_history to it + (a: (passage:)'s name))
<p>You now have the task of selecting an instrument which you will use for data collection purposes.
The lab manager tells you that the range of instruments at your disposal is quite broad – including several on loan from another institution, for reasons too tediously complicated to go into – but does not provide any further details about how you can select the most appropriate instrument.
Instead the decision is left to your discretion based on your appraisal of the available instruments.
When you attempt to probe for some guidance you are met with the following response:</p>
<blockquote>
<p><q>Just make sure that it does what you want it to do based on your research objectives.
I cannot go into the specifics as this is something which you must be able to determine by yourself after evaluating the instrument.
After you have selected what you think is the most appropriate instrument we will test it by conducting a test experiment.
Only after that will I be able to give you some proper feedback.</q></p>
</blockquote>
<p>(display: "SD candidate instruments")So it looks like this is a [[decision->SD Select an instrument]] which you will have to make on your own.</p>
}(set: $inst_options to (shuffled: (dm:
'name', 'Moltoscan Scanmaster XL5',
'summary', 'SD Instrument 1',
'deselect', (a:),
),(dm:
'name', 'Moltoscan Scanmaster PDQ',
'summary', 'SD Instrument 2',
'deselect', (a: 'SD Instrument 2 test experiment results'),
),(dm:
'name', 'Scan-D Knavia',
'summary', 'SD Instrument 3',
'deselect', (a: 'SD Test experiment 3', "SD Readjust the instrument's settings 2"),
),(dm:
'name', 'Hubristo Ultrascan',
'summary', 'SD Instrument 4',
'deselect', (a: 'SD Test experiment 4', "SD Readjust the instrument's settings 3"),
),(dm:
'name', 'McScanFace SCAN-E',
'summary', 'SD Instrument 5',
'deselect', (a: 'SD choose instrument 5', 'SD Find your departmental colleagues', 'SD Consult with other departmental colleagues'),
)))(set: $inst_score to 20)(set: $inst_feedback to (a:))(set: $sd_inst_seen to (a:))(if: $sd_inst_seen's length is 0)[{
<p>You proceed by conducting some preliminary research on the most appropriate instrument to use for your research.
You eventually trim down your possible options to five instruments.
Since you can only use one of these instruments, you need to look at them in turn to determine which you can best rely on for your research.</p>
<p>Which instrument will you look at first?</p>
}](else-if: $sd_inst_seen's length < $inst_options's length)[{
<p>Which instrument will you look at next?</p>
}](else:)[{
<p>Which instrument will you look at now?</p>
}]{
<ul>(for: each _inst, ...$inst_options)[(unless: _inst's deselect contains (history:)'s last )[
<li>(link: _inst's name)[(go-to: _inst's summary)](if: $sd_inst_seen contains _inst's summary)[ again]</li>]]
</ul>
}(set: $SD_history to it + (a: (passage:)'s name))(display: "SD Select an instrument"){
<p>The instrument comes with a manual.
You read the manual (if: $sd_inst_seen contains (passage:)'s name)[again ](else:)[(set: $sd_inst_seen to it + (a: (passage:)'s name))]and compile a list of the instrument’s attributes.</p>
<ol>
<li>**Proper use:** The manual describes how to operate, maintain, and calibrate the instrument.</li>
<li>**Representation of precision:** The manual specifies the degree of the instrument’s precision.</li>
<li>**Accuracy:** The manual specifies the manufacturer’s stated accuracy of instrument.</li>
<li>**Chain of custody:** The instrument has a secure chain of custody.</li>
<li>**Traceability:** The instrument has the ability to show all changes between the original data and the data analysed for studies.</li>
<li>**Context:** The instrument facilitates the association of data values with context.</li>
</ol>
<p>What would you like to do?</p>
<ul>
<li>[[Select this instrument for testing->SD choose instrument 1]].</li>
<li>[[Look at the other options->SD Select an instrument]].</li>
</ul>
}{
<p>You have the opportunity to either [[test the instrument right now->SD Test Instrument 1]] or to [[skip->SD Skip Instrument 1 test]] this option.
You ponder over what to do.
After all the instrument’s attributes which are described in the manual indicate that this is good instrument.
As such it does not seem necessary to test the instrument.
Perhaps it is not worth going through all the trouble.</p>
}{
<p>You approach your department’s lab manager and give notice of your intention to test the selected instrument.
You justify your selection based on the information you acquired from the manual.
The lab manager has a look at your list of attributes and indicates that it would be prudent to still test the instrument just in case it happens to be faulty.
The lab manager then proceeds to [[test the instrument->SD Instrument 1 test experiment results]] by conducting a text experiment.</p>
}{
<p>After the test experiment has been completed the lab manager provides you with the following feedback:</p>
<blockquote>
<p><q>I am satisfied with the instrument which you selected.
I therefore believe that it is an appropriate instrument for your research.</q></p>
</blockquote>
<p>You are delighted with the lab manager’s response.
You make a block booking for time on it and notify your colleagues on the project.</p>
}(display: "SD instrument scoring")(display: "SD pass"){
(set: $inst_score to it - 1)
(set: _msg to " It’s a bad idea to skip tests.")
(unless: _msg is in $inst_feedback)[(set: $inst_feedback to it + (a: _msg))]
<p>You make a block booking for time on the instrument and notify your colleagues on the project.</p>
}(display: "SD instrument scoring")(display: "SD pass"){
(if: $inst_score < 0)[(set: $inst_score to 0)]
(set: $max_score to it + 20)
(set: $score to it + $inst_score)
(set: $inst_attempts to 1 + (count: $SD_history, "SD Deselect an instrument"))
(set: $feedback's SD to it + (a: (str: $inst_score) + " (out of 20) for choosing a suitable instrument (if: $inst_attempts > 1)[after $inst_attempts attempts.](else:)[on your first attempt.]" + (str: ...$inst_feedback)))
}(if: $inst_score > 0)[{
<p>(Your [[score->Game suspended]] has gone up by (print: $inst_score) (if: $inst_score is 1)[point](else:)[points].)</p>
<p style='text-align:center;'><img src='img/microscope.svg' alt='Instrument activated!'></p>
}]{
<p>The instrument comes with a manual.
You read the manual (if: $sd_inst_seen contains (passage:)'s name)[again ](else:)[(set: $sd_inst_seen to it + (a: (passage:)'s name))]and compile a list of the instrument’s attributes.</p>
<ol>
<li>**Proper use:** The manual describes how to operate, maintain, and calibrate the instrument.</li>
<li>**Representation of precision:** The manual specifies the degree of the instrument’s precision.</li>
<li>**Accuracy:** The manual specifies the manufacturer’s stated accuracy of instrument.</li>
<li>**Chain of custody:** The instrument has a secure chain of custody.</li>
<li>**Traceability:** The instrument has the ability to show all changes between the original data and the data analysed for studies.</li>
<li>**Context:** The instrument facilitates the association of data values with context.</li>
</ol>
<p>What would you like to do?</p>
<ul>
<li>[[Select this instrument for testing->SD choose instrument 2]].</li>
<li>[[Look at the other options->SD Select an instrument]].</li>
</ul>
}{
<p>You have the opportunity to either [[test the instrument right now->SD Test Instrument 2]] or to [[skip->SD Skip Instrument 2 test]] this option.
You ponder over what to do.
After all the instrument’s attributes which are described in the manual indicate that this is good instrument.
As such it does not seem necessary to test the instrument.
Perhaps it is not worth going through all the trouble.</p>
}{
<p>You approach your department’s lab manager and give notice of your intention to test the selected instrument.
You justify your selection based on the information you acquired from the manual.
The lab manager has a look at your list of attributes and indicates that it would be prudent to still test the instrument just in case it happens to be faulty.
The lab manager then proceeds to [[test the instrument->SD Instrument 2 test experiment results]] by conducting a text experiment.</p>
}{
<p>After the test experiment has been completed the lab manager provides you with some feedback.
The instrument appears to be a good instrument based on all but one of the attributes which you listed.
During the test experiment a particular concern arose in relation to the instrument’s **chain of custody**.</p>
<ul>
<li>**Chain of custody:** The instrument suffered from chain of custody lapse.
This means that it was not possible to document all changes made by individuals and machines with access to the instrument’s data.
As a result the instrument failed to capture the final results that were generated by the test experiment.</li>
</ul>
<p>After receiving this feedback you consider your options.
Should you [[readjust the instrument’s settings->SD Readjust the instrument's settings]] when the time comes for you to conduct your actual experiment at a future date
or should you simply [[opt to use another instrument->SD Deselect an instrument]]?</p>
}{
(set: $inst_score to it - 1)
(set: _msg to " You ignored issues raised by the tests.")
(unless: _msg is in $inst_feedback)[(set: $inst_feedback to it + (a: _msg))]
(set: $instrument_is_wonky to true)
<p>You make a block booking for time on the instrument and notify your colleagues on the project,
making sure you warn them to attend to the settings on the machine before using it.</p>
}(display: "SD instrument scoring")(display: "SD pass"){
(set: $inst_score to it - 2)
(set: _msg to " It’s a bad idea to skip tests.")
(unless: _msg is in $inst_feedback)[(set: $inst_feedback to it + (a: _msg))]
(set: $instrument_is_wonky to true)
<p>You make a block booking for time on the instrument and notify your colleagues on the project.</p>
}(display: "SD instrument scoring")(display: "SD pass"){
<p>The instrument comes with a manual.
You read the manual (if: $sd_inst_seen contains (passage:)'s name)[again](else:)[(set: $sd_inst_seen to it + (a: (passage:)'s name))](print: " ")
and compile a list of the instrument’s attributes.</p>
<ol>
<li>**Proper use:** The manual describes how to operate, maintain, and calibrate the instrument.</li>
<li>**Representation of precision:** The precision of the instrument is unknown.
In spite of this there is still a chance that the precision of the instrument is actually appropriate for the research project.</li>
<li>**Accuracy:** The manual specifies manufacturer’s stated accuracy of instrument.</li>
<li>**Chain of custody:** The instrument does not have a secure chain of custody.</li>
<li>**Traceability:** You cannot determine the traceability in advance without first testing the instrument.</li>
<li>**Context:** The instrument does not facilitate the association of data values with context.</li>
</ol>
<p>What would you like to do?</p>
<ul>
<li>[[Select this instrument for testing->SD choose instrument 3]].</li>
<li>[[Look at the other options->SD Select an instrument]].</li>
</ul>
}{
(set: $inst_score to it - 2)
(set: _msg to " You tried out an instrument that did not sound promising to begin with.")
(unless: _msg is in $inst_feedback)[(set: $inst_feedback to it + (a: _msg))]
<p>You return to the lab manager and indicate that the instrument which you selected can now be tested.
The lab manager asks you to adjust the instrument’s settings accordingly.
After you have done this the lab manager informs you that a [[test experiment->SD Test experiment 3]] should be conducted with this instrument in order to assess the instrument’s suitability for use.</p>
}{
<p>After the test experiment has been completed the lab manager provides you with some feedback.
A number of concerns have been raised in relation to the several aspects relating to the instrument.</p>
<ol>
<li>**Representation of precision:** The precision of the instrument is not appropriate for the research question.
Use of the instrument yields imprecise results.</li>
<li>**Chain of custody:** The instrument suffered from a chain of custody lapse.
This means that it was not possible to document all changes made by individuals and machines with access to the instrument’s data.
As a result the instrument failed to capture the final results that were generated by the test experiment.</li>
<li>**Traceability:** The instrument suffers from a lack of traceability.
This means that the instrument does not have the ability to show all changes between the original data and the data analysed for studies.</li>
<li>**Context:** The instrument suffers from a loss of context.
This means that the associations between the data values and the context such as the time, location and experimental unit are lost.
Consequently, it is not be possible to reassociate them.</li>
</ol>
<p>After receiving this feedback you consider your options.
Should you [[readjust the instrument’s settings->SD Readjust the instrument's settings 2]] in order to address these four issues
or should you simply [[opt to use another instrument->SD Deselect an instrument]]?</p>
}{
(set: $inst_score to it - 3)
(set: _msg to " You ignored issues raised by the tests.")
(unless: _msg is in $inst_feedback)[(set: $inst_feedback to it + (a: _msg))]
<p>You attempt to save face and plead with the lab manager for a second attempt at conducting a test experiment.
The lab manager counters with the following response:</p>
<blockquote>
<p><q>It seems that you are missing the point.
Firstly, the instrument’s precision is simply not appropriate for this type of research as it is not precise enough.
Secondly, the chain of custody, traceability and context are not things which you can alter by merely readjusting the instrument’s settings.
These are inherent features of the instrument itself.
This is something which is quite clear from my reading of the instrument’s manual.
I would therefore not recommend that we conduct a second test experiment.</q></p>
</blockquote>
<p>It seems that you would be better off if you were to [[select to use another instrument->SD Deselect an instrument]].</p>
}{
<p>You could not find the instrument’s manual.
(if: $sd_inst_seen contains (passage:)'s name)[
However, you still have the notes you made about it based on the opinions of your colleagues.
](else:)[
(set: $sd_inst_seen to it + (a: (passage:)'s name))
However, you know several colleagues in your department who have conducted relatively similar research over the past few years.
You decide to ask them about them about this instrument in order to gauge their opinions.
Based on these opinions you a compile a list of the instrument’s attributes.
]</p>
<ol>
<li>**Proper use:** Your colleagues gave you demonstrations on how to operate and maintain the instrument.</li>
<li>**Representation of precision:** The precision of the instrument is unknown.
In spite of this there is still a chance that the precision of the instrument is actually appropriate for the research project.</li>
<li>**Accuracy:** The instrument’s accuracy remains unknown.</li>
<li>**Chain of custody:** The instrument has a secure chain of custody.</li>
<li>**Traceability:** The instrument has the ability to show all changes between the original data and the data analysed for studies.</li>
<li>**Context:** The instrument facilitates the association of data values with context.</li>
</ol>
<p>What would you like to do?</p>
<ul>
<li>[[Select this instrument for testing->SD choose instrument 4]].</li>
<li>[[Look at the other options->SD Select an instrument]].</li>
</ul>
}{
(set: $inst_score to it - 4)
(set: _msg to " You tried out an instrument that did not sound promising to begin with.")
(unless: _msg is in $inst_feedback)[(set: $inst_feedback to it + (a: _msg))]
<p>You return to the lab manager and indicate that the instrument which you selected can now be tested.
The lab manager asks you to adjust the instrument’s settings accordingly.
After you have done this the lab manager informs you that a [[test experiment->SD Test experiment 4]] should be conducted with this instrument in order to assess the instrument’s suitability for use.</p>
}{
<p>After the test experiment has been completed the lab manager provides you with some feedback.
A number of concerns have raised in relation to the certain aspects relating to the instrument.</p>
<ol>
<li>**Representation of precision:** The precision of the instrument is not appropriate for the research question.
Use of the instrument yields imprecise results.</li>
<li>**Accuracy:** The instrument’s accuracy is unknown.
Thus it is not possible to test the accuracy at all.
But what is troubling about this is the fact that the instrument generated inaccurate results.</li>
</ol>
<p>After receiving this feedback you consider your options.
Should you [[readjust the instrument’s settings->SD Readjust the instrument's settings 3]] in order to address these two issues
or should you simply [[opt to use another instrument->SD Deselect an instrument]]?</p>
}{
(set: $inst_score to it - 3)
(set: _msg to " You ignored issues raised by the tests.")
(unless: _msg is in $inst_feedback)[(set: $inst_feedback to it + (a: _msg))]
<p>You attempt to save face and plead with the lab manager for a second attempt at conducting a test experiment.
The lab manager counters with the following response:</p>
<blockquote>
<p><q>It seems that you are missing the point.
Firstly, it would be difficult to determine the instrument’s accuracy.
Secondly, even if we were to assume, for argument’s sake, that the instrument’s accuracy was known the representation of precision would still pose as a problem.
The instrument’s precision is simply not appropriate for this type of research as it is not precise enough.
I would therefore not recommend that we conduct a second test experiment.</q></p>
</blockquote>
<p>It seems that you would be better off if you were to [[select to use another instrument->SD Deselect an instrument]].</p>
}{
<p>You could not find the instrument’s manual.
(if: $sd_inst_seen contains (passage:)'s name)[
However, you still have the notes you made about it based on the opinions of your colleagues.
](else:)[
(set: $sd_inst_seen to it + (a: (passage:)'s name))
However, you know several colleagues in your department who have conducted relatively similar research over the past few years.
You decide to ask them about them about this instrument in order to gauge their opinions.
Based on these opinions you a compile a list of the instrument’s attributes.
]</p>
<ol>
<li>**Proper use:** Your colleagues have described to you the manner in which the instrument should be operated.</li>
<li>**Representation of precision:** The precision of the instrument is unknown.
In spite of this there is still a chance that the precision of the instrument is actually appropriate for the research project.</li>
<li>**Accuracy:** The instrument’s accuracy remains unknown.</li>
<li>**Chain of custody:** You cannot determine the chain of custody in advance without first testing the instrument.</li>
<li>**Traceability:** The instrument does not have any traceability features.</li>
<li>**Context:** You cannot determine the instrument’s ability to facilitate the association of data values with contextual factors without first testing the instrument.</li>
</ol>
<p>What would you like to do?</p>
<ul>
<li>[[Select this instrument for testing->SD choose instrument 5]].</li>
<li>[[Look at the other options->SD Select an instrument]].</li>
</ul>
}{
(set: $inst_score to it - 6)
(set: _msg to " You tried out an instrument that did not sound promising to begin with.")
(unless: _msg is in $inst_feedback)[(set: $inst_feedback to it + (a: _msg))]
<p>You return to the lab manager and indicate that the instrument which you selected can now be tested.
However, when the lab manager attempts to test the instrument it malfunctions.
You attempt to fix the problem but since your colleagues only taught you how to operate the instrument and not how to fix it you struggle in your attempt to determine the source of the problem.
The lab manager seems to sense that something is wrong and enquires if everything is alright.
You attempt to save face and claim that it is just a glitch.
But after struggling further with the instrument you give up and consider your options.
You could either [[opt to use another instrument->SD Deselect an instrument]]
or you could [[consult with your departmental colleagues->SD Consult with your departmental colleagues]] who showed you how to operate the instrument.</p>{
(set: $inst_score to it - 2)
(set: _msg to " You wasted the time of your colleagues trying to fix an obviously faulty instrument.")
(unless: _msg is in $inst_feedback)[(set: $inst_feedback to it + (a: _msg))]
<p>You ask the lab manager if you can consult with the department colleagues who showed you how to operate the instrument and find out if they can assist you.
The lab manager looks at you with a very displeased look but accedes to your request.
You run off in an attempt to [[find your departmental colleagues->SD Find your departmental colleagues]].</p>
}{
<p>You seek out a number of colleagues and are lucky enough to find some of them still in the department.
After enquiring about the use of the instrument it turns out that none of them ever experienced any malfunctions when they used the instrument.
As such there is no way through which they can assist you.
You consider your options once again.</p>
<p>The way you see it you have either one of two options.
On the one hand you could go back to the lab manager, apologise for the convenience and offer to [[select another instrument->SD Deselect an instrument]] to use.
On the other hand since some of your colleagues who used this very instrument are not in the department at the moment
you could simply [[consult->SD Consult with other departmental colleagues]] with them later in the hope that they can assist you in fixing the problem.
After all it is possible that one of them also experienced a similar problem whilst using the machine.</p>
}{
(set: $inst_score to it - 2)
<p>You try to phone your departmental colleagues.
You are unable to reach all of them.
Only two of your colleagues answer your calls.</p>
<p>Your first colleague to answer responds to your query by informing you that she never experienced any malfunctions whilst using the instrument.</p>
<p>You experience better luck with your second colleague who informs you that he actually did experience a malfunction whilst using the instrument.
Unfortunately for you the nature of the malfunction turns out to be completely different from your problem.</p>
<p>It seems that you have reached a dead end.
By now the lab manager is visibly irritated.
You concede that there seems to be very little else that you could do to salvage the situation.
You apologise to the lab manager for the inconvenience and offer to [[select another instrument->SD Deselect an instrument]] instead.</p>
}FINISHING OFF ===========================================================(display: "Set Rank")Things are starting to fall into place, and you’re looking forward to seeing [[how things develop->ORG start]] once the data starts to come in$ellipsis(set: $breakpoint to true)<!-- End of Level 2 -->{
(set: $ORG_history to (a: (passage:)'s name))
(set: $feedback's ORG to (a:))
(set: $full_score to it + 25)
(set: $org_score to 0)
<p>More meetings come and go, and soon enough your research assistants are off doing their thing and gathering all that wonderful data.
Things seem to be ticking along nicely, until one of them pipes up with a question in the middle of a progress meeting.</p>
<p><q>So, boss, what exactly do you want us to do with the data we’re gathering?
Do you want us to email it to you or something?</q></p>
<p>It’s a good question. What should they do with it?
Not wishing to rush into anything, you tell them you’ll [[think about it->ORG think]] and get back to them.</p>
}(set: $store_locations to (shuffled: (dm:
"id", "usb",
"name", "USB sticks",
"reject", "A drawer full of USB sticks? No, that would silly. The number of times you have had them fail on you makes you very wary of trusting them with precious data. Plus they are so easy to lose.",
"accept", "What could be simpler and more convenient than plugging in a USB stick, copying the data over, and dropping the stick into a drawer for safekeeping?",
"score", 0,
"feedback", "0 (out of 5) for choosing to store your data on USB sticks. These are easy to lose or damage, and require considerable manual effort to back up and protect.",
),(dm:
"id", "xhd",
"name", "External hard drive",
"reject", "You can get one quite cheap, but what if it fails? What if several people need it at once? What if someone walks off with it? You dismiss the idea.(if: $type is 'qual')[ If you were dealing with hyper sensitive data it might be the only way, but for what you’ll be dealing with it just isn’t worth the hassle.]",
"accept", "You can get quite a big external hard drive at low cost these days, so it makes sense to get a couple to put the data on. If you lock them in your cupboard they will be perfectly safe and no-one will be able to get at them without your say-so.",
"score", 0,
"feedback", "0 (out of 5) for choosing to store your data on external hard drives. While more reliable than USB sticks, these are still easy to lose or damage, and require considerable manual effort to back up and protect.",
),(dm:
"id", "dpt",
"name", "Research group server, under your desk",
"reject", "While the project team can all access it, and it hasn’t let you down yet, you’re aware that the backups are a bit spotty and kept in the same building. If anything went wrong with it, you know perfectly well who would be blamed.",
"accept", "If it’s on your research group server, everyone on the team can have access, and you can set permissions to make sure none of the data will leak out. Okay, you will need to be a bit more disciplined about getting it backed up, but at least it will be under your control.",
"score", 2,
"feedback", "2 (out of 5) for choosing to store your data on a server under your desk. It is possible to set up access controls and backup regimes, and servers are not so easy to smuggle out the door as USB sticks, but it’s a lot of responsibility to put on yourself when you really want to concentrate on your research.",
),(dm:
"id", "net",
"name", "University network drive",
"reject", "Ugh. The hassle of dealing with the IT people, haggling over space, having to fill in forms every time someone new needs access$ellipsis Life is just too short for that sort of bureaucracy.",
"accept", "If it’s on the University network drives, at least you know there’s a team of people on site who’ll look after it, and it won’t all be down to you to sort out.",
"score", 5,
"feedback", "5 (out of 5) for choosing to store your data on a University network drive.",
),(dm:
"id", "cloud",
"name", "Personal cloud storage",
"reject", "Out of interest you scan through the terms of service, and find they explicitly do not guarantee the safety of your data. (Tellingly, they cap any compensation to just twenty dollars.) Plus the data could end up in a data centre anywhere in the world; who knows what data protection laws will be in force there? Perhaps it’s not such a great idea after all.",
"accept", "You don’t get much easier than cloud storage. Admittedly, you’ll have to upgrade your account to make room, but perhaps you can claim it back on expenses. And these guys are the experts; I mean, whoever heard of them losing data? Well, there was that case a few years ago, but they’ll have learned from that, surely.",
"score", 2,
"feedback", "2 (out of 5) for choosing to store your data on your personal cloud storage. While you can be fairly sure your data will be looked after, personal accounts do not have the guarantees that enterprise accounts do. If the cloud provider suffers data loss, a security breach, or does not respect your national legislation, there is not much you can do about it.",
))){
<p>Once you have blocked out some quiet time for yourself, you give the matter full consideration.
You begin by brainstorming what you could use as your primary data storage area,
and thinking about the pros and cons of each medium.</p>
<p>You reject the less appealing options before making your final selection.</p>
<ul>(display: "ORG candidate locations")(set: $remaining to (a:))(for: each _item, ...$store_locations)[
<li>(set: $remaining to it + (a: "r" + _item's id))(print: _item's name):
(hook: "a" + _item's id)[Select?] (hook: "r" + _item's id)[Reject?]
(click: (hooks-named: "r" + _item's id))[(replace: (hooks-named: "r" + _item's id))[(print: _item's reject)](replace: (hooks-named: "a" + _item's id))[](set: $remaining to it - (a: "r" + _item's id))]
(click: (hooks-named: "a" + _item's id))[(set: $store_chosen to _item)(go-to: "ORG convention")]
</li>]
</ul>(event: when $remaining's length is 1)[(replace: (hooks-named: $remaining's 1st))[]]
}{
(set: $feedback's ORG to it + (a: $store_chosen's feedback))
(set: $max_score to it + 5)
(if: $store_chosen's score > 0)[(set: $score to it + $store_chosen's score)(set: $org_score to it + $store_chosen's score)]
<p>(print: $store_chosen's accept)</p>
<p>Now you’ve sorted that out, another thought occurs to you.
Your research assistants are a talented bunch but not very experienced.
If you just let them loose saving files anywhere they want, things are going to end up in a right mess.
You shudder involuntarily at the thought.</p>
<p>You’re going to have to rein them in a bit.
What you need is a, a, what do you call it?
A *file naming convention.* Yes, that’s it.
Now how do you go about [[writing one of them->ORG pnc elements]]?</p>
}(set: $fnc_els to (shuffled: (dm:
"id", "created",
"name", "Date",
"display", "Creation date",
"type", "date",
"unsuitable", false,
"values", (a: "2020-06-02", "2020-02-06", "2020-08-09"),
),(dm:
"id", "subject",
"name", "(if: $type is 'qual')[Participant](else:)[Sample]",
"display", "(if: $type is 'qual')[Participant](else:)[Sample]",
"type", "entity",
"unsuitable", false,
"values", (a: "A001", "D002", "X004"),
),(dm:
"id", "ftype",
"name", "Content type",
"display", "Content type (e.g. (if: $type is 'qual')[transcript](else:)[readings])",
"type", "vocab",
"unsuitable", false,
"values", (a: "Transcript", "Summary", "Statistics"),
),(dm:
"id", "version",
"name", "Version",
"display", "File version",
"type", "version",
"unsuitable", false,
"values", (a: "v1", "v2", "v3"),
),(dm:
"id", "wp",
"name", "Work package",
"display", "Work package number",
"type", "vocab",
"unsuitable", false,
"values", (a: "WP1", "WP2", "WP3"),
),(dm:
"id", "task",
"name", "Task",
"display", "Task number",
"type", "vocab",
"unsuitable", false,
"values", (a: "T1", "T2", "T3"),
),(dm:
"id", "access",
"name", "Access status",
"display", "Access status (e.g. internal only, shared with partners)",
"type", "vocab",
"unsuitable", false,
"values", (a: "Internal", "Shared", "Restricted"),
),(dm:
"id", "workflow",
"name", "Workflow stage",
"display", "Workflow stage (e.g. raw, processed)",
"type", "vocab",
"unsuitable", false,
"values", (a: "Raw", "Clean", "Derived"),
),(dm:
"id", "serial",
"name", "Serial number",
"display", "Serial number (as in file 1, file 2, file 3)",
"type", "serial",
"unsuitable", false,
"values", (a: "1", "2", "3"),
),(dm:
"id", "instr",
"name", "(if: $type is 'qual')[Survey instrument](else:)[Instrument/sensor]",
"display", "(if: $type is 'qual')[Survey instrument (e.g. interview, questionnaire)](else:)[Instrument/sensor used]",
"type", "entity",
"unsuitable", false,
"values", (a: "Q1", "Q2", "Q3"),
),(dm:
"id", "author",
"name", "Creator name",
"display", "Name of file author/creator",
"type", "entity",
"unsuitable", true,
"values", (a: "Angela", "Bob", "Chinai"),
),(dm:
"id", "fsize",
"name", "File size",
"display", "File size",
"type", "vocab",
"unsuitable", true,
"values", (a: "183KB", "234KB", "376KB"),
)))\
(set: $fnc_el_fmts to (dm:))\
(set: $fnc_date_year to "Year")\
(set: $fnc_date_month to "Month")\
(set: $fnc_date_day to "Day"){
<p>You again start brainstorming, and sketch out a basic folder structure.
You decide to have one folder for administrative documents – it’ll be good to get them all gathered in one place – and another for the project data.</p>
<p>Turning to the data folder, you think about how to lay everything out.
Hmm. So many possibilities. You’d better be methodical about this.
You decide to make a list of possible ways to divide up your files, then decide whether and how to use them.</p>
<p>Here’s the list you come up with.
You pick out the ones you want to use in your folder and file names, and dismiss the rest:</p>
<ul>(set: $els_rejected to 0)(set: $chosen_els to (a:))(display: "ORG candidate elements")(for: each _el, ...$fnc_els)[
<li>(print: _el's display):
(hook: "a" + _el's id)[Include?] (hook: "r" + _el's id)[Exclude?]
(click: (hooks-named: "r" + _el's id))[(replace: (hooks-named: "r" + _el's id))[Excluded.](replace: (hooks-named: "a" + _el's id))[](set: $els_rejected to it + 1)]
(click: (hooks-named: "a" + _el's id))[(replace: (hooks-named: "r" + _el's id))[](replace: (hooks-named: "a" + _el's id))[Included.](set: $chosen_els to it + (a: _el))]
</li>]
</ul>
}(event: when $chosen_els's length > 2)[{
<p>Are you ready to use these elements to [[build up your folder structure and file names->ORG pnc design]]?</p>
}](event: when $els_rejected is $fnc_els's length)[{
<p>Oh dear. You’ve run out of elements. That can’t be right.
You screw up the piece of paper, toss it into your groaningly full recycling bin,
and start the process [[all over again->ORG pnc elements]].</p>
}]{
<p>Now you’ve decided on the elements to use, you need to decide how you’ll use them.
Will you use them as a folder name or as part of your file names?
(Pick them in the order you want to use them, if you can.)</p>
<ul>(set: $els_assigned to 0)(set: $pathspec to (a:))(set: $fnspec to (a:))(display: "ORG candidate elements")(for: each _el, ...$chosen_els)[
<li>(print: _el's name):
(hook: "p" + _el's id)[Folder?] (hook: "f" + _el's id)[File name?] (hook: "b" + _el's id)[Both?]
(click: (hooks-named: "p" + _el's id))[(replace: (hooks-named: "p" + _el's id))[Folder](set: $pathspec to it + (a: _el))(set: $els_assigned to it + 1)(replace: (hooks-named: "f" + _el's id))[](replace: (hooks-named: "b" + _el's id))[]]
(click: (hooks-named: "f" + _el's id))[(set: $els_rejected to it + 1)(replace: (hooks-named: "p" + _el's id))[](replace: (hooks-named: "f" + _el's id))[File name](replace: (hooks-named: "b" + _el's id))[](set: $fnspec to it + (a: _el))(set: $els_assigned to it + 1)]
(click: (hooks-named: "b" + _el's id))[(set: $els_rejected to it + 1)(replace: (hooks-named: "p" + _el's id))[](replace: (hooks-named: "f" + _el's id))[](replace: (hooks-named: "b" + _el's id))[Both](set: $pathspec to it + (a: _el))(set: $fnspec to it + (a: _el))(set: $els_assigned to it + 1)]
</li>]
</ul>
}(event: when $els_assigned is $chosen_els's length)[{
<p>So, what you’re saying is that you want to arrange your files like this:</p>
(set: $int to 1)
<p>(for: each _item, (dm: "name", "Data folder"), ...$pathspec)[
<span class='folder'>(print: _item's name)</span><br>
<code class='path_sep'>(str-repeated: $int, " ")(print: "└ ")(set: $int to it + 2)</code>
](for: each _item, ...$fnspec)[
<span class='fn_element'>(print: "`[`" + _item's name + "`]`")</span>
].extension</p>
<ul>
<li>Do you want to [[change the order->ORG pnc change order]]?</li>
<li>Do you want to spend a bit of time [[refining it->ORG pnc refine filename]]?</li>
<li>Are you [[happy with it->ORG pnc complete]] as it is?</li>
</ul>
}]{
<p>Select the element you'd like to use to name folders directly within the project folder,
then the one to use for folders at the next level down,
and so on down your file path.</p>
<ul>(set: $old_pathspec to $pathspec)(set: $pathspec to (a:))(set: $old_fnspec to $fnspec)(set: $fnspec to (a:))(for: each _el, ...$old_pathspec)[
<li>(link-reveal: (text: _el's name))[(set: $pathspec to it + (a: _el))]</li>]
</ul>
}(event: when $pathspec's length is $old_pathspec's length)[{
<p>Your folder structure now looks like this:</p>
(set: $int to 1)
<p>Data folder(for: each _item, ...$pathspec)[<br>
<code class='path_sep'>(str-repeated: $int, " ")(print: "└ ")(set: $int to it + 2)</code>
<span class='folder'>(print: _item's name)</span>
]</p>
<p>Now select the elements of the filename in the order you’d like them to appear.</p>
<ul>(for: each _el, ...$old_fnspec)[
<li>(link-reveal: (text: _el's name))[(set: $fnspec to it + (a: _el))]</li>]
</ul>
}](event: when $fnspec's length is $old_fnspec's length)[{
<p>Your filenames now look like this:</p>
<p>(for: each _item, ...$fnspec)[
<span class='fn_element'>(print: "`[`" + _item's name + "`]`")</span>
].extension</p>
<ul>
<li>Do you want to have another go at [[changing the order->ORG pnc change order]]?</li>
<li>Do you want to spend a bit of time [[refining it->ORG pnc refine filename]]?</li>
<li>Are you completely [[happy with it->ORG pnc complete]] now?</li>
</ul>
}]{
<p>Even though you have the elements in some sort of order, this convention could fail spectacularly if everyone writes those elements in a different way.
Better stop all that nonsense before it starts.</p>
(set: $fnc_types to (ds:))
(set: $fnc_examples to (dm:))
(for: each _item, ...($pathspec + $fnspec))[
(set: $fnc_types to it + (ds: _item's type))
(set: $fnc_examples to it + (dm: _item's type, _item's name))]
(set: $fnc_sel_types to (a:))
(for: each _item, "date", "version", "entity", "vocab" )[
(if: length of $fnc_sel_types < 2 and $fnc_types contains _item)[
(set: $fnc_sel_types to it + (a: _item))]]
(set: $fnc_sel_types to it + (a: "separator"))
}(display: "ORG pnc refine " + $fnc_sel_types's 1st){
(set: $fnc_sel_types to it - (a: "date"))
<p>How would you like to format your dates?
There are several ways of doing it:
(set: $fnc_el_fmts to it + (dm: "date",""))</p>
<ul>
<li>
<p>|fnc_year_todo>[For representing the year, you could use
(link: "two digits")[(set: $fnc_date_year to "two")(replace: ?fnc_year_todo)[](show: ?fnc_year_done)] or
(link: "four digits")[(set: $fnc_date_year to "four")(replace: ?fnc_year_todo)[](show: ?fnc_year_done)].]
|fnc_year_done)[You choose to represent years as $fnc_date_year digit numbers.]</p>
</li>
<li>
<p>|fnc_month_todo>[For representing the month, you could use
(link: "normal numbers")[(set: $fnc_date_month to "normal numbers")(replace: ?fnc_month_todo)[](show: ?fnc_month_done)] like 1, 2, 3 and so on;
(link: "padded numbers")[(set: $fnc_date_month to "padded numbers")(replace: ?fnc_month_todo)[](show: ?fnc_month_done)] like 01, 02, 03 and so on;
or you could write out the (link: "name")[(set: $fnc_date_month to "words")(replace: ?fnc_month_todo)[](show: ?fnc_month_done)] of the month.]
|fnc_month_done)[You choose to represent months using $fnc_date_month.]</p>
</li>
<li>
<p>|fnc_day_todo>[For representing the day, you could use
(link: "normal numbers")[(set: $fnc_date_day to "normal numbers")(replace: ?fnc_day_todo)[](show: ?fnc_day_done)] like 1, 2, 3 and so on;
or (link: "padded numbers")[(set: $fnc_date_day to "padded numbers")(replace: ?fnc_day_todo)[](show: ?fnc_day_done)] like 01, 02, 03 and so on.]
|fnc_day_done)[You choose to represent days using $fnc_date_day.]</p>
</li>
</ul>
<p>Then there are all the ways you can string them together.
You cycle through some possibilities in your head:
there’s (cycling-link: bind $fnc_el_fmts's date, ...(shuffled:
"DayMonthYear",
"MonthDayYear",
"YearDayMonth",
"YearMonthDay",
"Day-Month-Year",
"Month-Day-Year",
"Year-Day-Month",
"Year-Month-Day",
"Day/Month/Year",
"Month/Day/Year",
"Year/Day/Month",
"Year/Month/Day",
"Day.Month.Year",
"Month.Day.Year",
"Year.Day.Month",
"Year.Month.Day",
)) (or...)</p>
<p>Once you are happy with your choice, you (link-goto: "note it down", "ORG pnc refine " + $fnc_sel_types's 1st) on a scrap of paper you have to hand.</p>
}{
(set: $fnc_sel_types to it - (a: "version"))
<p>How would you like to represent your file versions?
You could use (link: "numbers")[(set: $fnc_el_fmts's version to "numbers")(go-to: "ORG pnc refine " + $fnc_sel_types's 1st)] like v1 or v1-4;
or (link: "letters")[(set: $fnc_el_fmts's version to "letters")(go-to: "ORG pnc refine " + $fnc_sel_types's 1st)] like A, B, C;
or (link: "keywords")[(set: $fnc_el_fmts's version to "keywords")(go-to: "ORG pnc refine " + $fnc_sel_types's 1st)] like "draft-1" or "final".</p>
}{
(set: $fnc_sel_types to it - (a: "entity"))
<p>How are you going to refer to specific things (e.g. the (lowercase: $fnc_examples's entity)) your files relate to?
You could leave it up to everyone to (link: "decide for themselves")[(set: $fnc_el_fmts's entity to "free")(go-to: "ORG pnc refine " + $fnc_sel_types's 1st)];
you could provide some (link: "general guidance")[(set: $fnc_el_fmts's entity to "guided")(go-to: "ORG pnc refine " + $fnc_sel_types's 1st)] on how to format the name;
or you could specify a strict (link: "coding scheme")[(set: $fnc_el_fmts's entity to "coded")(go-to: "ORG pnc refine " + $fnc_sel_types's 1st)].</p>
}{
(set: $fnc_sel_types to it - (a: "vocab"))
<p>How will you refer to things like the (lowercase: $fnc_examples's vocab)?
You could leave it up to everyone to (link: "decide for themselves")[(set: $fnc_el_fmts's vocab to "free")(go-to: "ORG pnc refine " + $fnc_sel_types's 1st)];
you could provide some (link: "general guidance")[(set: $fnc_el_fmts's vocab to "guided")(go-to: "ORG pnc refine " + $fnc_sel_types's 1st)] on things like use of capital letters;
or you could come up with an agreed (link: "list of terms")[(set: $fnc_el_fmts's vocab to "coded")(go-to: "ORG pnc refine " + $fnc_sel_types's 1st)] that everyone should use.</p>
}{
<p>Lastly, it occurs to you that it might be a good idea to specify how your filename elements should be written out.
Should you run them all together or separate them in some way?
You cycle through the possibilities: you could separate the elements with (cycling-link: bind $fnc_el_fmts's sep,
"nothing",
"spaces",
"underscores",
"hyphens",
"dots",
"asterisks",
"some other punctuation"
) (or...)</p>
<p>Once you are happy with your choice, you [[note it down->ORG pnc complete]] on a scrap of paper you have to hand.</p>
}{
(set: $max_score to it + 9)
(set: $pnc_score to 0)
(set: $pnc_feedback to "")
(set: $pnc_browse_issues to (ds:))(set: $pnc_search_issues to (ds:))
(set: $pnc_traps to (a:))(set: $pnc_dups to 0)(set: $pnc_version to (dm:))
(for: each _item, ...$fnc_els)[
(if: _item's unsuitable and ($fnspec contains _item or $pathspec contains _item))[
(set: $pnc_traps to it + (a: _item's name))
(if: $pathspec contains _item)[(set: $pnc_browse_issues to it + (ds: "trap"))]
(if: $fnspec contains _item)[(set: $pnc_search_issues to it + (ds: "trap"))]]
(if: $pathspec contains _item and $fnspec contains _item)[
(set: $pnc_dups to it + 1)]
(if: _item's id is "version")[
(set: $pnc_version to _item)]]
(if: length of $pnc_traps > 1)[
(set: $pnc_feedback to it + " " + 1st of $pnc_traps + " and " + 2nd of $pnc_traps + " are not great choices for including in file or folder names.")
](else-if: length of $pnc_traps is 1)[
(set: $pnc_feedback to it + " " + 1st of $pnc_traps + " is not a great choice for including in file or folder names.")
(set: $pnc_score to it + 1)
](else:)[
(set: $pnc_score to it + 2)]
(if: $pnc_traps contains "Creator name")[(set: $pnc_feedback to it + " Researcher initials might make sense as part of a version identifier, but otherwise including researcher names makes files harder to find.")]
(if: length of $pathspec < 2)[
(set: $pnc_feedback to it + " You chose a very shallow folder structure; you would probably waste a lot of time scanning your list of files for the right one.")
(set: $pnc_browse_issues to it + (ds: "shallow"))
](else-if: length of $pathspec > 4)[
(set: $pnc_feedback to it + " You chose a deep folder structure; you would probably waste a lot of time moving between folders while looking for files.")
(set: $pnc_browse_issues to it + (ds: "deep"))
](else:)[
(set: $pnc_score to it + 1)]
(if: length of $fnspec is 0)[
(set: $pnc_feedback to it + " On many systems, files with no name, just an extension, are not shown at all.")
(set: $pnc_search_issues to it + (ds: "blank"))
(set: $pnc_score to it - 3)
](else-if: length of $fnspec > 5)[
(set: $pnc_feedback to it + " If you make your filenames too complicated, people are likely to forget the pattern and make mistakes.")
(set: $pnc_search_issues to it + (ds: "complex"))
](else:)[
(set: $pnc_score to it + 1)]
(if: $pnc_dups > 1)[
(set: $pnc_feedback to it + " It is okay use the same elements in both your file and folder names, but you overdid it a bit.")
](else:)[
(set: $pnc_score to it + 1)]
(if: $pathspec contains $pnc_version)[
(set: $pnc_feedback to it + " File version belongs in the filename, not a folder name.")
](else-if: $fnspec contains $pnc_version and last of $fnspec is not $pnc_version)[
(set: $pnc_feedback to it + " File version should be the last element in the filename.")
](else:)[
(set: $pnc_score to it + 1)]
(if: length of (datanames: $fnc_el_fmts) is 0)[
(set: $pnc_feedback to it + " You did not specify how your elements should be formatted.")
(set: $pnc_browse_issues to it + (ds: "sort"))
(set: $pnc_search_issues to it + (ds: "variety"))
](else:)[
(set: $fnc_el_fmt_date to "")(if: $fnc_el_fmts contains "date")[(set: $fnc_el_fmt_date to $fnc_el_fmts's date)]
(if: $fnc_el_fmts's sep is "nothing")[
(set: $pnc_feedback to it + " Running all your filename elements together makes them hard to read.")
](else-if: $fnc_el_fmts's sep is "spaces")[
(set: $pnc_feedback to it + " Separating your filename elements with spaces can cause problems for some applications.")
](else-if: $fnc_el_fmts's sep is "dots" or $fnc_el_fmts's sep is "asterisks" or $fnc_el_fmts's sep is "some other punctuation")[
(set: $pnc_feedback to it + " You need to be really careful about the symbols you use in filenames as some have special meanings for the computers that read them.")
](else-if: $fnc_el_fmts's sep is "hyphens" and $fnc_el_fmts contains "date" and $fnc_el_fmt_date contains "-")[
(set: $pnc_feedback to it + " Using hyphens to separate your filename elements as well as the elements in your dates makes the filename harder to understand at a glance.")
](else:)[
(set: $pnc_score to it + 1)]
(if: $fnc_el_fmts contains "date")[
(set: $fnc_date_fmt_err to "")
(if: $fnc_el_fmts's date contains any of "/.")[
(set: $fnc_date_fmt_err to it + " Your date format contained characters unsuitable for filenames.")]
(unless: 1 of $fnc_el_fmts's date is "Y" and 6 of $fnc_el_fmts's date is in "Mo")[
(set: $fnc_date_fmt_err to it + " It is best to format dates as Year-Month-Day so they file in chronological order.")
(set: $pnc_browse_issues to it + (ds: "sort"))]
(unless: $fnc_date_year is "four")[
(set: $fnc_date_fmt_err to it + " Years are easier to recognise when formatted as four digits.")]
(if: $fnc_date_month is any of (a:"Month", "normal numbers") or $fnc_date_day is any of (a:"Day", "normal numbers"))[
(set: $fnc_date_fmt_err to it + " It’s best to use padded numbers in dates to keep them a consistent length.")
(set: $pnc_browse_issues to it + (ds: "sort"))]
(if: $fnc_date_month is "words")[
(set: $fnc_date_fmt_err to it + " It’s best to stick to numeric months so they sort chronologically and can be understood in any language.")
(set: $pnc_browse_issues to it + (ds: "sort"))]
(if: $fnc_date_fmt_err is "")[
(set: $pnc_score to it + 1)
](else:)[
(set: $pnc_feedback to it + $fnc_date_fmt_err)]]
(if: $fnc_el_fmts contains "version")[
(if: $fnc_el_fmts's version is "letters")[
(set: $pnc_feedback to it + " Version numbers are easier to recognise when written like v2, rather than B.")
](else-if: $fnc_el_fmts's version is "keywords")[
(set: $pnc_feedback to it + " If you call a version ‘final’ and then make a change, what do call the next version?")
](else:)[(set: $pnc_score to it + 1)]]
(if: $fnc_el_fmts contains "entity")[
(if: $fnc_el_fmts's entity is "coded")[
(set: $pnc_score to it + 1)
](else:)[
(set: $pnc_feedback to it + " It’s best to use a coding scheme to refer to things like the (lowercase: $fnc_examples's entity), so you can make sure the names are suitable and consistent.")
(set: $pnc_search_issues to it + (ds: "variety"))]]
(if: $fnc_el_fmts contains "vocab")[
(if: $fnc_el_fmts's entity is "coded")[
(set: $pnc_score to it + 1)
](else:)[
(set: $pnc_feedback to it + " It’s best to use an agreed set of terms to use for things like the (lowercase: $fnc_examples's vocab), so files end up in predictable places.")
(set: $pnc_search_issues to it + (ds: "variety"))]]]
(if: $pnc_score is 9)[
(set: $pnc_feedback to "9 (out of 9) for constructing an excellent folder and file naming convention." + it)
](else:)[
(set: $pnc_feedback to (str: $pnc_score) + " (out of 9) for your folder and file naming convention." + it)]
(set: $score to it + $pnc_score)
(set: $feedback's ORG to it + (a: $pnc_feedback))
<p>You look through your notes with a sense of accomplishment.</p>
}(display: "Set Rank")(if: $pnc_score > 0)[{
<p>(Your [[score->Score so far]] has gone up by $pnc_score points.)</p>
}]{
<p>Good. You’re glad that’s settled.
Now you just need to tell your team to use it.
What will be the best way to do that?</p>
<ul>
<li>Write it in an [[email->ORG pnc doc email]] to everyone.</li>
(unless: $store_chosen's id is any of (a: "usb", "xhd"))[
<li>Write it down in a document and save it to your [[shared area->ORG pnc doc shared]].
You can explain it to them later.</li>]
<li>Just describe it at the next [[team meeting->ORG pnc doc verbal]].</li>
</ul>
}(set: $max_score to it + 3)(display: "ORG pnc doc maxscore"){
(set: $pnc_doc to "shared")
(set: $score to it + 3)
(set: $org_score to it + 3)
(set: $feedback's ORG to it + (a: "3 (out of 3) for saving your file naming convention with your files for easy reference."))
<p>You manage to wrangle your thoughts about directory structure and file names into some sort of coherent order, and save them in a file in the top level of your project folder.
You try to think of a sensible name for it, cycling through possibilities like (cycling-link:
"folder-structure-and-filenames.doc",
"README.txt",
"file-organization.html",
"file-name-convention.pdf"
) (or...)</p>
<p>In an uncharacteristic moment of administrative enthusiasm, you even start creating folders and adding some new files according to the convention.
Yes, that seems to work okay.</p>
<p>You are just about to move on to another piece of work when Jason from IT Support pops his head around the door, clearly interested in having a [[quick chat->ORG IT support intro]] with you.</p>
}(display: "ORG pnc doc maxscore"){
(set: $pnc_doc to "email")
(set: $score to it + 1)
(set: $org_score to it + 1)
(set: $feedback's ORG to it + (a: "1 (out of 3) for emailing your file naming convention to people. They will be able to refer back to it, but what if they lose the email, or someone new joins the project?"))
<p>You manage to wrangle your thoughts about directory structure and file names into some sort of coherent order, and set them out in an email to all project staff.
You think about the possible subject lines you could use: (cycling-link:
"Project rules: Naming files and folders",
"IMPORTANT: file naming convention for project",
"How to organize project files",
"This is the way we name our files, name our files, name our files..."
) (or...)</p>
<p>You pick one and send out the email.
You get a couple of out-of-office replies back, and one from the Professor saying,
<q>Good job. Wish I’d thought of doing that.</q></p>
<p>It seems you accidentally copied in Jason from IT Support as well, as he [[pops in to see you->ORG IT support intro]] later that afternoon.</p>
}(display: "ORG pnc doc maxscore"){
(set: $pnc_doc to "verbal")
(set: $pnc_browse_issues to it + (ds: "forgot"))
(set: $pnc_search_issues to it + (ds: "forgot"))
(set: $feedback's ORG to it + (a: "0 (out of 3) for telling your file naming convention to people verbally. They will quickly forget the details."))
<p>You add the file naming convention to the agenda of the next project meeting and get on with something more interesting.</p>
<p>You are not sure if it is coincidence or not, but a few hours after the agenda is circulated, there’s a knock on your door.</p>
<p><q>Come in,</q>
you call, and in walks Jason from IT Support.
You wonder [[what he wants->ORG IT support intro]].</p>
}{
<p><q>I hear you’ve started trying to get your project files into some sort of order.
And the best of luck to you.
Have you tried getting these academic sorts to do as they’re told?
It’s like herding cats. Er, no offence.</q></p>
<p><q>None taken,</q>
you say, as graciously as you can.
You consider taking offence anyway, but then remember saying much the same thing when you attended a project management course last year.</p>
<p><q>So anyway, I’d thought I’d best pop in to see if you needed help setting anything up?</q></p>
<p>You pause for a moment to consider whether there’s anything you’ve forgotten to do.</p>
(set: $org_norm_sec to "none")
(set: $org_conf_sec to "none")
(if: $store_chosen's id is "net")[
(set: $org_backup_state to "auto")
](else:)[
(set: $org_backup_state to "none")
](set: $org_it_ending to "nice")
<ul>
<li><q>[[No, I think everything’s under control.->ORG no IT support]]</q></li>
<li><q>Oh yes, I was going to ask you about [[backing up our files->ORG backup start]]?</q></li>
<li><q>Now you mention it, what should I do about [[controlling access to our files->ORG security basic]]?</q></li>
</ul>
}{
(set: $max_score to it + 8)
(set: $score to it - 1)
(set: $feedback's ORG to it + (a: "-1 (out of 8) for not ensuring the safety and security of your data."))
<p><q>Okay, if you’re sure. If you change your mind, you know where I am.</q></p>
<p>As Jason turns to leave, you spot a strange little smile on his face that you don’t much like the look of.
It puts you in mind of a teenager looking forward to the gory bits of a slasher movie.</p>
}(display: "ORG team meeting segue"){
(set: $ORG_history to it + (a: (passage:)'s name))
(set: $org_it_ending to "nice")
<p><q>I’m glad you asked me that,</q>
Jason says, and for once you dare to believe it might be the truth.
<q>It’s the sort of thing people don’t realise they need until they do, and by then it’s too late.
Oh, the stories I could tell$ellipsis</q></p>
<p>You chuckle nervously, hoping against hope that he won’t.</p>
}(if: $store_chosen's id is "net")[{
(set: $max_score to it + 3)
(set: $score to it + 3)
(set: $org_score to it + 3)
(set: $feedback's ORG to it + (a: "3 (out of 3) for confirming that the project data files will be properly backed up."))
<p>But Jason just sighs and shakes his head before continuing.
<q>Well, you can rest assured on that point.
Your files are on the network drives, aren’t they?
That means it’s all taken care of.
We take snapshots for file recovery, and there will always be at least three copies of the files, one of them in a secret offsite location known only as *The Bunker.*</q></p>
<p>Jason’s movie trailer impression conjures images of those sinister warehouses from Indiana Jones or the X-Files.
But it is almost certainly just a cold and noisy room full of computer racking.</p>
<p>You permit yourself a small sigh of relief, and feel [[reassured->ORG more IT support]].</p>
}](else-if: $store_chosen's id is "cloud")[{
<p>Thankfully, Jason finishes his reminiscence in silence before continuing.
<q>Those cloud services are usually pretty resilient against bit-level corruption, but accidental deletion? Or catastrophic failure?
They usually only care about that for enterprise customers.</q></p>
<p>He lets that thought settle before continuing.</p>
<p><q>As I see it, you have three options.
You could [[trust the cloud->ORG backup cloud none]] to take care of everything.
Or you could [[take a second copy->ORG backup cloud manual]] of the data on your computer every so often; you know, somewhere that isn’t auto-sync’ed.
Or perhaps I could set up a [[backup script->ORG backup cloud auto]] for you to pull down snapshots on a regular basis?</q></p>
}](else-if: $store_chosen's id is "dpt")[{
<p>Thankfully, Jason turns his attention to the server under your desk instead.
<q>Ah yes, that old thing.
We had one of those in a place I used to work; it’s got a tape slot – you see? – and we’d [[back it up to tape->ORG backup dpt manual]] every Friday.
Four tapes in succession to give us a month’s worth.
A bit basic by today’s standards but it did the job.
Or perhaps I could set up a [[backup script->ORG backup dpt auto]] for you to pull across snapshots on a regular basis?</q></p>
}](else:)[{
<p>Thankfully, Jason finishes his reminiscence in silence before continuing.
<q>(if: $ORG_history contains "ORG security basic")[
Anyway, your removable media, eh?
](else:)[
You were going to keep everything on removable media, weren’t you? Hmm.
] Your options are a bit limited there.
Basically it comes down to someone sitting down and copying everything over on a regular basis.
(if: $org_conf_sec is not "none")[Someone with the right permissions, of course.]</q></p>
<p>His meaningful look leaves you with a sinking feeling that you might not be able to palm this off on a student.
You suddenly [[doubt if you can be bothered->ORG backup usb none]].</p>
<p><q>So what you need to decide is, do you copy the data over to your [[computer->ORG backup usb computer]], say,
or do you get (if: $store_chosen's id is "usb")[
another [[load of USB sticks->ORG backup usb duplicates]]
](else:)[
a [[third external hard drive->ORG backup usb duplicates]]
] to copy onto?</q></p>
}]{
(set: $max_score to it + 3)
(set: $feedback's ORG to it + (a: "0 (out of 3) for deciding not to back up your project data. You saw how well that turned out."))
(set: $org_it_ending to "nasty")
<p><q>Look,</q>
you explain,
<q>I’m sure they know what they’re doing.
It seems like a big waste of time, not to mention disk space, duplicating the effort they’re already putting in.
Especially as I reckon most of the team will have their own copies of things.</q></p>
<p>Jason shrugs non-committally.</p>
}(display: "ORG more IT support"){
(set: $org_backup_state to "manual")
(set: $max_score to it + 3)
(set: $score to it + 2)
(set: $org_score to it + 2)
(set: $feedback's ORG to it + (a: "2 (out of 3) for manually backing up your project data to a separate location. It’s unlikely the same thing will go wrong with both sets of files, but what if you forget to do it?"))
<p>You agree it would probably just be simplest to copy the files to another folder on your computer, maybe once a week.</p>
<p><q>Okay, well, keep an eye on your disk space.
If you look like you’re about to run out, I might have to dig you out a second hard drive, or set you up with some storage on the network somewhere.
Maybe on that thing.</q></p>
<p>Jason wafts with mock disdain at the departmental server sat under your desk.</p>
}(display: "ORG more IT support"){
(set: $org_backup_state to "auto")
(set: $max_score to it + 3)
(set: $score to it + 3)
(set: $org_score to it + 3)
(set: $feedback's ORG to it + (a: "3 (out of 3) for setting up an automated backup routine for your project data."))
<p>You ask Jason how that might work.</p>
<p>He gives a long and technical reply involving cron jobs, hard links, and various other details you prefer not to bother with.
What you do understand is that he thinks he can fit seven daily snapshots and four weekly snapshots on the departmental server under your desk, without taking up eleven times the space.
It is all deeply mysterious.</p>
<p><q>I’ll set things up, then I’ll need to grab you for a set of credentials I use with the script. Is that okay?</q></p>
<p>You nod, baffled but happy.</p>
}(display: "ORG more IT support"){
<p>You’ve always wondered what that slot was for, and now you know.
Suspecting the old ways are probably the best, you ask Jason if he has any tapes that fit it.</p>
<p><q>Yes, I’m pretty sure we do.
I’ll dig them out for you.
I might even have a lockable rack you can put them in.</q></p>
<p>He pauses to look around at your lack of available wall space.</p>
<p><q>Erm, so where were you thinking of keeping them?</q></p>
<ul>
<li><q>On second thoughts, maybe we should just [[leave it->ORG backup dpt none]].</q></li>
<li><q>I think there’s some space in the [[workroom->ORG backup dpt onsite]] a few doors down.</q></li>
<li><q>Maybe I could get a student to run them back and forth to the [[records centre->ORG backup dpt offsite]].</q></li>
</ul>
}{
(set: $max_score to it + 3)
(set: $feedback's ORG to it + (a: "0 (out of 3) for deciding not to back up your project data. You saw how well that turned out."))
<p>Jason looks disappointed.
Perhaps he was looking forward to doing things *old school* again.</p>
}(display: "ORG more IT support"){
(set: $org_backup_state to "onsite")
(set: $max_score to it + 3)
(set: $score to it + 1)
(set: $org_score to it + 1)
(set: $feedback's ORG to it + (a: "1 (out of 3) for backing up your project data manually to a similar location. What if you forget to do it? What if the building is compromised?"))
<p>Jason nods.
<q>Well, you’ve certainly not left yourself much space in here. Okay, leave it with me.</q></p>
<p>He pulls out a pad of paper and scribbles some notes, then turns his attention back to you.</p>
}(display: "ORG more IT support"){
(set: $org_backup_state to "manual")
(set: $max_score to it + 3)
(set: $score to it + 2)
(set: $org_score to it + 2)
(set: $feedback's ORG to it + (a: "2 (out of 3) for manually backing up your project data to a separate location. It’s unlikely the same thing will go wrong with both sets of files, but what if you forget to do it?"))
<p>You both have a good chortle at the thought, but Jason breaks off first.</p>
<p><q>Actually, that’s not such a terrible idea.
They’d certainly be safe there.
If you wanted to be merciful, I guess there’d be no harm in keeping one tape here, then getting your student to swap it for the oldest one in the records centre once you’d done the backup.
It would just be one trip a week then, instead of two. Could work.</q></p>
<p>You are surprised, but warm to the idea.
You agree to approach the records centre manager and ask about it.
Jason starts making his way to the door.</p>
}(display: "ORG more IT support"){
(set: $org_backup_state to "auto")
(set: $max_score to it + 3)
(set: $score to it + 3)
(set: $org_score to it + 3)
(set: $feedback's ORG to it + (a: "3 (out of 3) for setting up an automated backup routine for your project data."))
<p>You ask Jason how that might work.</p>
<p><q>Ah, well, truth be told I’ve been meaning to set up automated backups for that machine for a while, but, you know, priorities.
But since that last procurement it’s become a lot easier.
I just need to install some supervisor software and I’ll be able to start saving daily snapshots to the network.
Depending on the size I might be able to keep them for, what, maybe three months each?</q></p>
<p>That sounds worth having, and what’s better, it involves no extra effort on your part.
You give the go-ahead, and Jason adds it to his to-do list.</p>
}(display: "ORG more IT support"){
(set: $max_score to it + 3)
(set: $feedback's ORG to it + (a: "0 (out of 3) for deciding not to back up your project data. You saw how well that turned out."))
(set: $org_it_ending to "nasty")
<p>You explain that you are a very important person and have much better ways of spending your afternoons than copying files between removable storage devices.</p>
<p>The expression on Jason’s face suggests he can think of several better things he could be doing right now than trying to help you.</p>
}(display: "ORG more IT support"){
(set: $ORG_history to it + (a: (passage:)'s name))
(set: $org_backup_state to "onsite")
(set: $max_score to it + 3)
(set: $score to it + 1)
(set: $org_score to it + 1)
(set: $feedback's ORG to it + (a: "1 (out of 3) for backing up your project data manually to a similar location. What if you forget to do it? What if the building is compromised?"))
<p>The thought of faffing around with (if: $store_chosen's id is "usb")[one set of USB sticks](else:)[two external hard drives] is bad enough without confusing the issue with (if: $store_chosen's id is "usb")[two](else:)[three].
Plus, saving to your computer helps avoid additional procurement costs.
You tell Jason your decision.</p>
<p><q>Okay, well, keep an eye on your disk space.
If you look like you’re about to run out, I might have to dig you out a second hard drive, or set you up with some storage on the network somewhere.
Maybe on that thing.</q></p>
<p>Jason wafts with mock disdain at the departmental server sat under your desk.</p>
}(display: "ORG more IT support"){
<p>You sigh deeply at the thought of having to fiddle around with not (if: $store_chosen's id is "usb")[one but two sets of USB sticks](else:)[two but three external hard drives], but you can see it makes sense, and say so.</p>
}(if: $store_chosen's id is "usb")[{
<p><q>Look,</q>
says Jason,
Why not make it easy on yourself and back up to an external hard drive instead?
It’ll save you half your unplugging and replugging.</p>
<p>You agree that that makes even better sense.</p>
<p><q>Yeah, no point making work for yourself, is there?
There’s plenty enough people around here who’ll do that already.</q>
After some sage nodding, he continues.
<q>Just out of interest, have you thought about where you’ll keep it?</q></p>
<p>The question takes you a bit by surprise, but you don’t take long to answer.</p>
<ul>
<li><q>I’ll just [[keep it with the USB sticks->ORG backup usb onsite]].</q></li>
<li><q>Maybe I could get a student to run it back and forth to the [[records centre->ORG backup usb offsite]].</q></li>
</ul>
}](else:)[{
<p><q>Okay. Better safe than sorry, eh?
Just out of interest, where are you going to keep the backup?
You don’t want the two drives getting mixed up, do you?</q></p>
<p>No, you don’t. But what to do?</p>
<ul>
<li><q>I’ll [[keep it separate in my desk drawers->ORG backup usb onsite]].</q></li>
<li><q>Maybe I could get a student to run it back and forth to the [[records centre->ORG backup usb offsite]].</q></li>
</ul>
}]{
(set: $ORG_history to it + (a: (passage:)'s name))
(set: $org_backup_state to "onsite")
(set: $max_score to it + 3)
(set: $score to it + 1)
(set: $org_score to it + 1)
(set: $feedback's ORG to it + (a: "1 (out of 3) for backing up your project data manually to a similar location. What if you forget to do it? What if the building is compromised?"))
(set: $org_it_ending to "nasty")
<p><q>What is it they say? Keep it simple, stupid.</q></p>
<p>Jason nods and gives a mischievous little giggle.
You are not entirely sure if that’s a good sign or not.</p>
}(display: "ORG more IT support"){
(set: $org_backup_state to "manual")
(set: $max_score to it + 3)
(set: $score to it + 2)
(set: $org_score to it + 2)
(set: $feedback's ORG to it + (a: "2 (out of 3) for manually backing up your project data to a separate location. It’s unlikely the same thing will go wrong with both sets of files, but what if you forget to do it?"))
<p>You both have a good chortle at the thought, but Jason breaks off first.</p>
<p><q>Actually, that’s not such a terrible idea.
It would certainly be safe there.
And I don’t think you’d be the first to do something like that.</q></p>
<p>You are surprised, but warm to the idea.
You agree to approach the records centre manager and ask about it.
Jason starts making his way to the door.</p>
}(display: "ORG more IT support")(if: $ORG_history contains "ORG backup start" and $ORG_history contains "ORG security basic")[(display: "ORG IT support conclusion")](else:)[{
<p><q>Was that it, or was there anything else you wanted to discuss?</q></p>
<ul>
<li><q>(link: "No, I think that’s everything")[
(if: $ORG_history contains "ORG backup start")[
(set: $max_score to it + 5)
(set: $score to it - 1)
(set: $feedback's ORG to it + (a: "-1 (out of 5) for not ensuring the security of your data."))
](else:)[
(set: $max_score to it + 3)
(set: $feedback's ORG to it + (a: "0 (out of 3) for not ensuring your data are safely backed up."))
](go-to:"ORG IT support conclusion")].</q></li>
(unless: $ORG_history contains "ORG backup start")[
<li><q>Oh yes, I was going to ask you about [[backing up our files->ORG backup start]]?</q></li>]
(unless: $ORG_history contains "ORG security basic")[
<li><q>Now you mention it, what should I do about [[controlling access to our files->ORG security basic]]?</q></li>]
</ul>
}]{
(set: $ORG_history to it + (a: (passage:)'s name))
<p>(if: $type is 'qual')[
Since you will be handling some sensitive personal information, it occurs to you that security is going to be quite important.
](else:)[
The Professor is trying to get your industrial collaborators to release some confidential data to the project, so you need to be prepared.
](print: " ") Jason considers your question.</p>
}(if: $store_chosen's id is any of (a: "usb", "xhd"))[{
<p><q>(if: $ORG_history contains "ORG backup start")[
Awkward stuff, removable media.
](else:)[
You were going to keep everything on removable media, weren’t you? Hmm.
](print: " ") What have you got in place currently?</q></p>
<ul>
<li><q>(link: "I keep them in this box.")[(set: $response to 0)(go-to: "ORG security advanced")](print: " ")
The others come in, help themselves, and give them back in when they’ve finished.</q></li>
<li><q>They’re in this locked drawer. (link: "Everyone in the team has a key.")[(set: $response to 3)(go-to: "ORG security advanced")]</q></li>
<li><q>They’re in this locked drawer. (link: "Only I have the key.")[(set: $response to 2)(go-to: "ORG security advanced")]</q></li>
</ul>
}](else:)[{
<p><q>Well, there’s various things you can do. (if: $store_chosen's id is "cloud")[
You could just set things up so (link: "anyone with the right link can access")[(set: $response to 0)(go-to: "ORG security advanced")]
](else:)[
We could just set things up so (link: "anyone with a login can access")[(set: $response to 0)(go-to: "ORG security advanced")]] that area,
or (if: $store_chosen's id is "cloud")[you](else:)[we] could lock it down so (link: "only your team members have access")[(set: $response to 3)(go-to: "ORG security advanced")
]. I’m talking about the whole project area, mind you. What do you reckon?</q></p>
}]{
(set: $max_score to it + 3)
(set: $score to it + $response)
(set: $org_score to it + $response)
<p>(if: $response is 0)[
(set: $feedback's ORG to it + (a: "0 (out of 3) for setting the access controls for your project data too wide."))
Jason puffs out his cheeks with a vaguely incredulous air.
](else:)[
(set: $org_norm_sec to "locked")
(if: $response is 2)[
(set: $feedback's ORG to it + (a: "3 (out of 3) for controlling access to your project data.", "-1 for being the sole gatekeeper of your project data. What if something happens to you, or you lose the key?"))
An expression flits over Jason’s face that suggests his suspicions about your character have been confirmed.
](else:)[
(set: $feedback's ORG to it + (a: "3 (out of 3) for setting an appropriate access regime for your project data."))
Jason nods approvingly.]
]</p>
<p><q>Okay. Well, I guess what you need to think about next is whether there’s a need for any additional security measures.</q></p>
<p>You don’t quite follow, and say so.</p>
<p><q>Well, what I’m getting at is, are you happy for everyone on the team to have access to everything,
or do you want to lock down certain (if: $store_chosen's id is "usb")[drives](else:)[folders] to certain people?
I mean, if you do lock them down, it’s a bit more admin, people might feel you don’t trust them, so I guess it comes down to what you’re storing.</q></p>
<ul>
<li><q>Let’s (link: "keep it all the same")[
(set: $response to -1)
(set: $feedback's ORG to it + (a: "-1 (out of 1) for letting the whole team have access to (if: $type is 'qual')[sensitive](else:)[confidential] data. Restricting access to a few individuals makes it easier to defend such data from attackers."))
(go-to: "ORG security encryption")
].</q></li>
<li><q>I’ll need some folders (link: "locked down to one person")[
(set: $response to 0)
(set: $feedback's ORG to it + (a: "0 (out of 1) for having sole access to the (if: $type is 'qual')[sensitive](else:)[confidential] data. What if something happens to you?"))
(go-to: "ORG security encryption")
].</q></li>
<li><q>I’ll need some folders (link: "locked down to two or three people")[
(set: $response to 1)
(set: $feedback's ORG to it + (a: "1 (out of 1) for having a tighter access regime for (if: $type is 'qual')[sensitive](else:)[confidential] data."))
(go-to: "ORG security encryption")
].</q></li>
</ul>
}{
(set: $max_score to it + 1)
(set: $score to it + $response)
(set: $org_score to it + $response)
}(if: $response is -1)[{
(set: $max_score to it + 1)
(set: $org_it_ending to "nasty")
<p><q>Yes, that’s probably the best way if you’re not handling any sensitive data.
Just imagine if you were, though, eh?</q></p>
<p>Jason looks off into the distance and chuckles to himself for a bit.
You get the impression he’s the sort of person who watches Formula One racing for the accidents.</p>
<p><q>(if: $store_chosen's id is any of (a: "usb", "xhd"))[
Well, it looks like you have everything under control. Good luck with it all.
](else-if: $store_chosen's id is "cloud")[
Anyway, one good thing is that once you’ve shared the space there’s not much else to do, so that’s a time saver.
](else:)[
Well, I’m glad we sorted that out. I’ll set up the permissions for you and let you know when it’s done.
]</q></p>
<p>He stands and starts heading towards the door.</p>
}(display: "ORG more IT support")](else:)[{
(set: $org_conf_sec to "separate")
<p>(if: $response is 0)[
You explain your requirements.
Jason suggests keeping all the (if: $type is 'qual')[sensitive](else:)[confidential] data in a separate folder
(if: $store_chosen's id is "xhd")[near the top of the hard drive’s file system](else:)[directly within the project folder],
so he only has to lock down that one folder.
](else:)[
You spend a bit of time working out who should have access to which datasets.
Jason suggests separating files according to who has access,
and putting each set (if: $store_chosen's id is "usb")[on its own storage device](else:)[
in a separate folder (if: $store_chosen's id is "xhd")[near the top of the hard drive’s file system](else:)[directly within the project folder].]
](print: " ") Then another thought occurs to him.</p>
<p><q>I suppose you could encrypt the (if: $response is 1)[folders](else:)[folder] as well.
We don’t usually recommend it because people can be a bit lazy about the decryption step,
and if you forget the password then that’s all your data gone down the toilet.
But you could use a password manager, or write it down and put it in a safe or something$ellipsis</q></p>
<p>Jason gives a workmanlike sniff while you think it over.</p>
<ul>
<li><q>(link: "No")[
(set: $response to 0)
(set: $feedback's ORG to it + (a: "0 (out of 1) for not encrypting your (if: $type is 'qual')[sensitive](else:)[confidential] data. If any of it leaked out, anyone would be able to read it."))
(go-to: "ORG security conclusion")
], that sounds a bit dangerous.</q></li>
<li><q>Encryption sounds like a (link: "good idea")[
(set: $feedback's ORG to it + (a: "1 (out of 1) for encrypting your (if: $type is 'qual')[sensitive](else:)[confidential] data."))
(if: $response is 0)[
(set: $response to -1)
(set: $feedback's ORG to it + (a: "-2 (out of 0) for being the only person who can decrypt the data. The data will be irretrievable without you."))
](else:)[
(set: $response to 1)
](set: $org_conf_sec to "encrypted")(go-to: "ORG security conclusion")
].</q></li>
</ul>
}]{
(set: $org_it_ending to "nice")
(set: $max_score to it + 1)
(set: $score to it + $response)
(set: $org_score to it + $response)
<p>Jason nods.
<q>Okay then.</q>
(if: $store_chosen's id is any of (a: "usb", "xhd"))[
He scoops up your storage media.
<q>I’ll get these set up for you, and let you have them back tomorrow morning with a copy of the passwords.</q>
](else-if: $store_chosen's id is "cloud")[
He sits with you as you configure your personal cloud storage, which is more help than you were expecting from him.
It is a slightly fiddly job but before long you both have it sorted out.
](else:)[
You both go over the details one more time; this time Jason scribbles them down on a notepad.
<q>I should have the folders set up for you by tomorrow morning.
(if: $response is 1)[I’ll drop by again with the encryption passwords.]</q>
]</p>
<p>He stands and heads towards the door.</p>
}(display: "ORG more IT support"){
<p><q>Now, if you don’t mind, I’d better shoot off:
I have to explain to one of the professors about Caps Lock again.</q></p>
}(if: $org_it_ending is "nice")[{
<p>As he heads away down the corridor, you reflect that, even though that wasn’t the most exciting afternoon you’ve ever spent, you’re glad Jason stopped by.
But even so, it feels like soothing balm to be able to get back to some real research$ellipsis</p>
}](else:)[{
<p>Before you can engage in any more pleasantries, Jason backs out of the room and strides away down the corridor.
In some ways it is a relief.</p>
}](display: "ORG team meeting segue"){
<p>Soon enough, the day of the next (link: "team meeting")[
(if: $pnc_doc is "verbal")[(go-to: "ORG team meeting pnc intro")](else:)[(go-to: "ORG team meeting simple intro")]
](print: " ") comes around.</p>
}{
<p>You head into the meeting room and take your seat.
After a tedious item about changes to the expenses claim form, the Professor stands to make an important announcement.</p>
}(display: "ORG team meeting next item"){
<p>You grab your handful of notes and head off to the meeting. When your item on file naming comes up, you leap to your feet.</p>
<p><q>It’s very important that we all stick to a plan of where to put our files and what to call them,</q>
you begin, and spot at least three people glancing at their smartphones.
<q>You might have seen this, but just inside the project folder we’re going to have one folder for each (lowercase: ($pathspec's 1st)'s name)$ellipsis</q></p>
<p>You copy out the salient points from your scrappy notes onto the whiteboard, giving a running commentary with as much of your rationale as you remember.
<q>[$pre_ellipsis]And of course the extension goes on the end.
Now, is that clear?</q></p>
<p>You see about half the faces in the room snap up from their phones, surprised by the silence.
Another quarter don’t bother and the rest just stare at you.</p>
<p><q>Great. Well, I think this is going to make all our lives easier.</q>
You sit down and let the Professor take the [[next item->ORG team meeting next item]].
Who knows, maybe some of it sank in.</p>
}{
<p><q>I have some quite exciting news to share with you.
You probably recall the bid we put in some weeks ago for hosting a new national centre of research excellence.
Well, I’m happy to say that we have been shortlisted.
We’re in the final three!</q></p>
<p>There is a smattering of applause and a general chatter of approval.
This will be a big deal if it goes through.
Not only for the prestige, but more importantly the cash injection.</p>
<p><q>Now, due to the scale of this venture, the funder is taking the unusual step of holding a workshop with the three of us.
We’ll be presenting our pitches in person, and I’m given to understand there will be some sort of group discussion.
Professor Le Fevre and I will be representing this department$ellipsis</q></p>
<p>The Professor continues on in this vein for some moments.
It is made quite clear that the funder will be looking very closely at the running of this project, as evidence of whether the department is up to handling the new centre.
No pressure, then!</p>
<p>At least with all the effort you’ve put into research data management, you can rest assured they won’t be able to find fault with that side of things.
Realistically, what can possibly go wrong between now and the [[week of the workshop->ORG security challenge]]?</p>
}{
<p>It is the morning of the workshop.
Not that it makes much difference to you, since you haven’t been invited to it.
But as usual when the Professor is travelling about, it is up to you to keep things running smoothly.</p>
<p>When you manage to burn your breakfast, spill coffee over yourself, drop your phone in the toilet then tread on something nasty on your way into work,
you suspect that this is not going to be your day.</p>
}(if: $store_chosen's id is any of (a: "usb", "xhd"))[{
<p>Your suspicions are confirmed when you greeted at the entrance to your building by security guards.</p>
<p><q>I’m afraid I can’t let you in right now. This is a crime scene.</q></p>
<p>You express your surprise with some fruity language, then introduce yourself and ask for more details.</p>
<p><q>There was a break-in last night.
It seems it was IT equipment they were after, mostly from your side of the building as it happens.
We’ll know more when the police have finished.</q></p>
<p>As it turns out, you only have to wait half an hour or so before you are called in to help work out [[what’s missing->ORG security burglary]].</p>
}](else-if: $store_chosen's id is any of (a: "dpt", "net"))[{
<p>Even before you manage to sit down at your desk, the phone rings. It’s the IT security manager.</p>
<p><q>There’s a problem.
Late last night, the duty technician was notified of some suspicious behaviour, and on further investigation it seems that our systems were hacked.
We think someone got lucky guessing a weak password.
Anyway, we booted them off and reset the credentials, but now we need to find out what they had access to and what they did.</q></p>
<p>Just when you thought things couldn’t get worse, this happens!
As soon as you are able, you check through all your [[project files->ORG security hack]].</p>
}](else:)[{
<p>Your suspicions deepen when you finally get into your email and see a raft of notifications that suggest someone might have tried hacking into your cloud storage account.</p>
<p>Sensing trouble, you open it up and have a [[look around->ORG security hack]].</p>
}]{
(set: $ORG_history to it + (a: (passage:)'s name))
<p>There is a lot of mess to look through, but surprisingly there’s not much missing.
It is only after talking to your research team that you realise that the thieves have taken the laptops that had been left in the building overnight.
That, and a few desktops have had their hard drives removed(if: $ORG_history contains "ORG backup usb computer")[, including yours].
Presumably that’s all they had time for.</p>
<p>That last fact nags at you.
Seems odd, stealing hard drives.
Unless$ellipsis were the thieves after something in particular?
Surely not$ellipsis data?</p>
}(if: $org_norm_sec is "none")[{
<p>With a sinking feeling, you look around for the box containing the project’s (if: $store_chosen's id is 'usb')[USB sticks(if: $ORG_history contains "ORG backup usb onsite")[ and external hard drive]](else:)[external hard drives].</p>
<p>It’s not where you left it.</p>
<p>It isn’t anywhere.</p>
<p>You have lost (if: $org_backup_state is any of (a:"none", "onsite"))[all ]your project’s data.
And someone else could be reading it all right now.
(if: $org_conf_sec is "encrypted")[
If any (if: $type is 'qual')[sensitive](else:)[confidential] data was left (if: $store_chosen's id is 'usb')[on an unencrypted stick](else:)[in an unencrypted folder]
](else-if: $org_conf_sec is "separate")[
If they bypass the security on the (if: $type is 'qual')[sensitive](else:)[confidential] data
](else:)[
Including all the (if: $type is 'qual')[sensitive](else:)[confidential] data on those drives
]$ellipsis</p>
<p>(if: ($org_backup_state is "manual") and ($org_conf_sec is "encrypted"))[
(set: $org_loss_is_critical to false)
](else:)[
(set: $org_loss_is_critical to true)
] It’s at that exact moment that the [[phone rings->ORG retrieval challenge no data]].</p>
}](else:)[{
<p>You rush over to the drawer where you keep the project’s (if: $store_chosen's id is 'usb')[USB sticks](else:)[external hard drives].
It looks like someone tried to force it open, but didn’t have time to finish the job.</p>
<p>You breathe a hefty sigh of relief. If the thieves had made off with that, it would have been a disaster.</p>
<p>Nevertheless, you nearly jump out of your skin when the [[phone rings->ORG retrieval challenge]].</p>
}]{
<p>You open up the project’s data folder on your computer.</p>
}(if: $org_norm_sec is "none")[{
<p>Or at least you think you do, but that’s not your project folder.
How silly of you.</p>
<p>You try again. No, hang on. That *is* your project folder.
You just didn’t recognize it at first because (if: $org_conf_sec is "none")[all](else:)[most of] the folders are missing and there’s only one file.
The file is called `SuX0r!!!.exe`.</p>
<p>(if: ($org_conf_sec is "none") or ($org_backup_state is "none"))[
(set: $org_loss_is_critical to true)
](else:)[
(set: $org_loss_is_critical to false)
] You issue a stream of profanity so long and so loud it takes you a moment to realise that the [[phone is ringing->ORG retrieval challenge no data]].</p>
}](else:)[{
<p>You look closely at a representative sample of folders.
The files all look to be intact, and none of the timestamps are from last night.</p>
<p>(if: $store_chosen's id is 'cloud')[
You hope this means that the security measures you put in place have fended off the hackers,
but if they were only reading your files, how would you ever know?
](else:)[
So you have the data still.
And Jason will be able to confirm whether the compromised account would have been able to access the files.
] (if: $org_conf_sec is "none")[
You ponder whether giving everyone on the project access to all the files was such a good idea.
](else:)[
You are quite glad now that the sensitive data was (if: $org_conf_sec is "separate")[restricted to fewer accounts: there’s less of a chance that the hackers had the right credentials.](else:)[in an encrypted folder: even if the hackers had access, they wouldn’t have been able to decrypt it.]
]</p>
<p>Before you can get lost in too many what-ifs and maybes, the [[phone rings->ORG retrieval challenge]].</p>
}]{
(set: $centre_won to false)
(set: $ORG_history to it + (a: (passage:)'s name))
<p>The Professor is calling from the workshop.</p>
<p><q>Ah, there you are.
Just thought you’d like to know our interview went very well.
I made sure to stress to the panel just what an amazing job you did with organizing all our files, so you’ll get the credit for that, no fear.
Talking of which, I’ve just come out of our discussion whatsit and I need to ask a favour.
One of the opposition has been making pointed remarks in our direction all session like a journalist about to spring an exposé.
I need your help to fend her off, but I only have about ten minutes before we go back in$ellipsis</q></p>
<p>Without pausing for breath, the Professor starts reeling off a list of files for you to look up.</p>
<p>You try to get a word in edgeways for what seems like an eternity, until finally you can stand it no longer and blurt out, far louder than you intended, what has happened.</p>
<p>The line falls silent for a few seconds.</p>
<p><q>You’re not serious.</q></p>
}(if: $org_loss_is_critical)[{
<p>You explain just how serious you are.</p>
<p><q>There’s going to be an investigation, you realise that?
Hmm, well there’s no point crying about it now.
I’m going to have to brazen out the rest of the session, and then we’re going to have a long and serious talk about how we move forward from this.
If we can.</q></p>
<p>That sounds ominous.
Who could have guessed that hand-waving the security of your project’s data would have such dire consequences?</p>
}(display: "Game ends early")](else:)[{
<p>You explain just how serious you are,
but point out in your defence that you should be able to restore a snapshot of the missing files from backups and that (if: $store_chosen's id is any of (a: "usb", "xhd"))[
the thieves won’t be able to read the encrypted (if: $type is 'qual')[sensitive](else:)[confidential] files.
](else:)[
none of the (if: $type is 'qual')[sensitive](else:)[confidential] files were compromised.]</p>
<p><q>There’s still going to be an investigation, you realise that?
Hmm, well there’s no point crying about it now.
I’m going to have to brazen out the rest of the session, and then we’re going to have a long and serious talk about how we move forward from this.</q></p>
<p>And with that the line goes dead.
The silence rings in your ears.</p>
<p>These are stressful times, there’s no doubt about that.
Now, not only do you need to test your procedure for restoring from backups (fingers crossed *that* works okay) and rethink your security measures,
but you need to get some robust, groundbreaking, and above all publishable findings out of your [[data analysis->DOC start]],
knowing all the while that someone out there is one step ahead of you$ellipsis</p>
(set: $breakpoint to true)
}]{
<p>The Professor is calling from the workshop.</p>
<p><q>Ah, there you are.
Just thought you’d like to know our interview went very well.
I made sure to stress to the panel just what an amazing job you did with organizing all our files, so you’ll get the credit for that, no fear.
Talking of which, I’ve just come out of our discussion whatsit and I need to ask a favour.
It’s getting fierce in there, and I need you to look up some figures for me so I can fend off the others.
Thing is, I only have about ten minutes before we go back in$ellipsis</q></p>
<p>Without pausing for breath, the Professor starts reeling off the files and information required.</p>
<p>You scribble down notes, wondering if shorthand would be a useful skill to learn, then set to work looking up the files.
All the while you are conscious of the Professor tutting away the seconds.</p>
<p>Do you [[browse through the folders->ORG retrieval challenge browse]] in your project area to locate the files,
or [[search for the files->ORG retrieval challenge search]] by name?</p>
}(if: $store_chosen's id is "usb")[{
<p>You unlock the drawer and grab USB sticks by the handful.
You realise with horror that while some have descriptive labels,
others have people’s names on, others have labels you can’t read let alone understand,
and the rest either have lost their labels or never had them in the first place. Aargh!</p>
<p>You grab a stick at random and shove it in a USB port.
It seems to take forever for the thing to mount up.
This is going to be tight.</p>
<p>At last, you are eventually able to start $searchbrowsing through the contents.</p>
}](else-if: $store_chosen's id is "xhd")[{
<p>You unlock the drawer and take out the two hard drives you’ve been using up till now.
It had seemed like a good idea at the time to lend them out separately and get a student to synchronise the contents every Friday afternoon,
but now that means you’ll have to check both drives.
Let’s hope you won’t have to resolve any version conflicts.</p>
<p>You plug the first one in and wait for it to mount up.
It seems to take forever.
You’re glad you only have to do this twice.</p>
<p>At last, you are eventually able to start $searchbrowsing through the contents.</p>
}](else:)[{
<p>(if: $searchbrowsing is "browsing")[
You navigate to your project data folder
](else:)[
You start up your file search tool and set it to search within your project data folder
], thankful that you’re not wasting precious seconds fiddling around with physical media.</p>
}](set: $searchbrowsing to "browsing")\
(unless: $SD_history contains "ORG retrieval challenge search")[(display: "ORG retrieval challenge media intro")]{
(set: $pnc_browse_penalty to $pnc_browse_issues's length)
<p>(if: $pnc_browse_penalty is 0)[
(if: $store_chosen's id is "usb")[
You start working through your list.
Even though none of the files are technically out of place, it is frustrating that you can only see a small set of them at once.
The temptation builds to rip the sticks out of your USB slot as you finish with them, but you resist – you don’t want to corrupt the data.
Yet you resent each wasted second as you eject one drive to start browsing through the next.
](else-if: $store_chosen's id is "xhd")[
You work methodically through your list, relieved to find that most of the files are where they are supposed to be.
When you have exhausted the first drive, you unmount it and replace it with the second, fumbling a bit with the lead as you do so.
Come on, come on$ellipsis it mounts!
You resume your browsing, willing the remaining files to be in place.
](else:)[
You work methodically through your list, relieved to find that the files are all where they are supposed to be.
You settle into a state of zen-like calm as you piece together the information you need.
]](else:)[
As you work your way through your list, you find your progress is hampered(if: $pnc_browse_penalty > 2)[ by a few issues](else-if: $pnc_browse_penalty > 1)[ by a couple of issues].
(if: $pnc_browse_issues contains 'forgot')[
(if: $pnc_browse_penalty > 1)[By far the worst is that nothing](else:)[Nothing] is where you expect it to be.
It’s as if people started out following your instructions then gave up and did their own thing.
(if: $pnc_browse_penalty > 1)[Even where they have followed the convention, things aren’t great.]
](if: $pnc_browse_issues contains 'deep')[
You find you are wasting a lot of time navigating up and down the folder tree;
it’s almost like each file has its own folder.
](else-if: $pnc_browse_issues contains 'shallow')[
You find you are wasting a lot of time scrolling up and down long lists of files.
Perhaps it would have been better to split them up a bit more.
](if: $pnc_browse_issues contains 'sort')[
(if: $pnc_browse_issues contains 'deep' or $pnc_browse_issues contains 'shallow')[And when](else:)[When] looking for a particular folder or file,
you always have to scan through each name individually instead of skipping to the right one:
even though they are in alphabetical order, they seem all jumbled up in an unpredictable way.
](if: $pnc_browse_issues contains 'trap')[
(if: $pnc_browse_penalty > 2)[Lastly, you](else:)[You] are irritated by having to check in multiple folders
because the files have been split up according to something that has no bearing on the file contents.
Whoever thought that was a good idea?]
]</p>
(if: $ORG_history contains "ORG retrieval challenge search")[(set: $pnc_browse_penalty to it + 1)]
(if: $store_chosen's id is "usb")[(set: $pnc_browse_penalty to it + 2)](else-if: $store_chosen's id is "xhd")[(set: $pnc_browse_penalty to it + 1)]
<p>A loud cough brings your attention (link: "back to the phone call")[
(if: $pnc_browse_penalty > 2)[(go-to: "ORG fail")](else:)[(go-to: "ORG pass")]
].</p>
}(set: $searchbrowsing to "searching")\
(set: $ORG_history to it + (a: (passage:)'s name))\
(display: "ORG retrieval challenge media intro")\
(if: $pnc_search_issues contains "blank")[{
<p>But staring at the empty search box, you belatedly realise that relying totally on folder structure, and having no actual filenames to speak of, means you can’t effectively search for files.
You resort to [[browsing for them->ORG retrieval challenge browse]] instead.</p>
}](else-if: $pnc_search_issues contains "trap")[{
<p>But as you start typing in the search box, you realise there are parts of your filenames you can’t possibly predict.
If you had more time, you might experiment to see if you could get wildcard searches to work, but the seconds are draining away.
You resort to [[browsing for them->ORG retrieval challenge browse]] instead.</p>
}](else:)[{
<p>(if: $store_chosen's id is "usb")[
(if: $pnc_search_issues contains "forgot")[
You type in search after search, but each one comes up blank.
At first you put this down to sheer bad lack, but as you try stick after USB stick, it dawns on you that something is dreadfully wrong.
In desperation, you drill down into the folders and immediately see the problem.
It’s clear no-one could quite remember that they were supposed to do, and none of the filenames match the convention.
](else-if: $pnc_search_issues contains "variety")[
You type in search after search but each comes up blank.
Just as you start searching through the second USB stick, you realise there are several ways your researchers could have written the elements in your filenames and repeat each search several different ways.
You find a couple of files that way.
You then go back to the first stick and try your new searches.
Then think of a few new options you could try on this and the second stick$ellipsis
](else-if: $pnc_search_issues contains "complex")[
As you type in search after search, you soon regret making your filenames so long.
What is worse, they keep coming up blank.
In fact, you’re not even halfway through your list when you realise you’ve taken nearly the full ten minutes.
In desperation, you drill down into the folders on the current USB stick and immediately see the problem.
It’s clear no-one could quite remember that they were supposed to do.
](else:)[
Despite the files all falling under a predictable pattern, it is tedious work repeating the same searches over and over again on different drives.
This is made all the more exasperating by the age you have to wait while the drives are unmounted – you just can’t bring yourself to rip them out for fear of corrupting the data – and the next one mounted.
On the plus side, though, each file you find makes searching the next drive a bit quicker, so you might just be able to do this$ellipsis
]](else:)[
(if: $pnc_search_issues contains "forgot")[
You type in search after search, but each one comes up blank.
(if: $store_chosen's id is "xhd")[
That can’t be right, can it, that all the files you need are on the other drive?
It takes many precious seconds to swap the drives, and further minutes to repeat the searches.
Still nothing.
In desperation, you drill down into the folders and immediately see the problem.
It’s clear no-one could quite remember that they were supposed to do, and none of the filenames match the convention.
](else:)[
That can’t be right, can it?
You’ve already confirmed that none of the files were missing.
In desperation, you drill down into the folders.
Yes, the files are still there.
You stare at the screen, puzzled, and then with lightning clarity you see the problem.
No-one could quite remember that they were supposed to do, and none of the filenames match the convention.
]](else-if: $pnc_search_issues contains "variety")[
You type in search after search but each comes up blank.
Just as you are about to start panicking, you realise there are several ways your researchers could have written the elements in your filenames.
You repeat each search several different ways.
At last you start to make progress, but there are so many combinations to try and so little time.
And after a while you lose track of which you have tried.
And if only you had the time to be methodical about this.
And you think of yet another way to try$ellipsis
](else-if: $pnc_search_issues contains "complex")[
As you type in search after search, you soon regret making your filenames so long.
What is worse, they keep coming up blank.
In fact, you’re not even halfway through your list when you realise you’ve taken nearly the full ten minutes.
In desperation, you drill down into the folders immediately see the problem.
It’s clear no-one could quite remember that they were supposed to do.
](else:)[
Since your filenames all fall under a predictable pattern,
(if: $store_chosen's id is "xhd")[
you manage to find most of them on the first drive.
You then unmount the first drive and mount the second, fumbling a bit with the lead as you do so.
Come on, come on$ellipsis it mounts!
With one eye on the clock, you start searching the second drive.
Aha! You find the remaining files.
Conscientious as you are, you start repeating your earlier searches in case there are newer versions on here$ellipsis
](else:)[
you manage to find each one first time.
(if: $pathspec's length > 2)[Okay, you sometimes find two named the same, but you can tell which is the one you want by the folder it’s in.]
With a certain amount of zen calm, you work methodically through the list then start putting your notes in order.
]]]</p>
<p>A loud cough brings your attention (link: "back to the phone call")[
(if: $store_chosen's id is "usb" or $pnc_search_issues contains "complex" or $pnc_search_issues contains "variety" or $pnc_search_issues contains "forgot")[(go-to: "ORG fail")](else:)[(go-to: "ORG pass")]
].</p>
}]{
(set: $centre_won to false)
<p>The Professor harrumphs a second time, and you sense the displeasure resonating down the line.</p>
<p><q>Look, we’re out of time.
Everyone’s going back in.
I suppose I’ll just have to improvise.
Wish me luck.</q></p>
<p>And with that the line goes dead.
Your frustration is replaced by anger at yourself for letting the Professor down.
Would things have gone better if your files had been better organized?</p>
<p style='text-align:center;'><img src='img/telephone.svg' alt='You put down the phone.'></p>
<p>These are stressful times, there’s no doubt about that.
Now, not only do you need to rethink your procedures,
but the pressure’s on to get some robust, groundbreaking, and above all publishable findings out of your [[data analysis->DOC start]]$ellipsis</p>
(set: $breakpoint to true)
}{
<p>You breathlessly reel off the information, and then finally you have a chance to tell the Professor about this morning’s incident.</p>
<p><q>That is suspicious.
I wonder – no, they wouldn’t stoop so low, surely?
Anyway, thank goodness you’re one step ahead.
Ah, they’re calling us back in.
Thanks to you we should see off all opposition!</q></p>
<p>With that, the Professor rings off, leaving you with a little glow of happiness.</p>
(set: $centre_won to true)
}(display: "Set Rank")(if: $org_score > 0)[{
<p>(Your [[score->Game suspended]] has gone up by (print: $org_score) (if: $org_score is 1)[point](else:)[points].)</p>
}]{
<p style='text-align:center;'><img src='img/telephone.svg' alt='You put down the phone.'></p>
<p>These are stressful times, there’s no doubt about that.
The pressure’s on to get some robust, groundbreaking, and above all publishable findings out of your [[data analysis->DOC start]]$ellipsis</p>
(set: $breakpoint to true)
}<!-- End of Level 3 -->{
(set: $DOC_history to (a: (passage:)'s name))
(set: $feedback's DOC to (a:))
(set: $full_score to it + 15)
<p>As the days roll by, the atmosphere in the team becomes increasingly tense.
There is still no word about the outcome of the workshop, and theories are circulating that either the panel is struggling to decide or the award has already been made unannounced to another institution.</p>
}(if: $ORG_history contains "ORG retrieval challenge no data")[{
<p>The investigation goes ahead as the Professor predicted, and it is every bit as unpleasant as you feared it might be.
You are lucky still to be in a job, and have been forced to undergo additional training in IT security.</p>
}]{
<p>Added to that, the security breach has rattled everyone’s nerves.
(if: $store_chosen's id is any of (a: "usb", "xhd"))[
You can see people thinking twice about hanging up their coats, let alone leaving bags unattended.
](else:)[
Even you find you are bracing yourself each time you turn on your computer, half expecting some gremlin to have eaten your data.
] But, if anything good can be said to have come out of the experience, at least people seem to be following your (if: $ORG_history contains "ORG retrieval challenge no data")[new procedures for keeping data safe and secure to the letter](else:)[procedures for keeping data safe and secure more closely now].</p>
<p>You happen to be pondering that very point when Tosin, one of your research assistants, arrives for his regular [[supervision meetings->DOC analysis question]].</p>
}{
(set: $doc_score to 0)
(set: $doc_fail to (a: "analysis", "detail", "method", "legal", "process", "representation", "structure"))
<p>You begin the meeting with the usual pleasantries, then ask how things are going.</p>
<p><q>Fine, fine. Well, mostly fine. Actually I wanted your advice on something.</q></p>
<p>You very carefully and tactfully probe for what the problem is. Thankfully it is nothing awful.</p>
<p><q>I’ve hit a roadblock in my data analysis.
(if: $type is 'qual')[
I have all these responses I need to compare, so that’s going to be a lot easier if I can code them,
but I’m not sure if I should be trying to invent my own coding scheme or using an existing one.
I’m not even sure if anyone has coded this sort of data before.
](else:)[
I need to analyse these figures statistically, but I’m no statistician.
Should I just plot them on a graph and look for a pattern, or is there some sort of test I should be calculating?
]</q></p>
<p>You ask to have a look at the data in question, but the answer does not immediately leap out at you.
You consider the options.</p>
<ul>
<li><q>Just analyse the data in a way that seems to [[make most sense->DOC analysis adhoc]] to you.</q></li>
<li><q>Have you tried doing a [[literature search->DOC analysis lit]] to see if there’s a standard approach for this?</q></li>
<li>You could [[recommend some colleagues->DOC analysis peer]] for Tosin to talk to.</li>
<li>You could look through some of the [[previous work in the department->DOC analysis dept]] to see if anyone has tackled a similar problem before.</li>
</ul>
}{
(set: $feedback's DOC to it + (a: "0 (out of 2) for encouraging ad hoc analysis of data. It is easier to compare, contrast and combine datasets when they analyse data in a standardised fashion."))
<p>You explain that gut instinct is one of the key characteristics of a great researcher, and that Tosin should trust his intuition.
<q>Each dataset is unique and deserves its own unique solution,</q>
you conclude.</p>
<p>Tosin seems satisfied with your answer, but looks a little doubtful.
It soon becomes clear that that is not the only thing on his mind.</p>
}(display: "DOC detail question"){
(set: $doc_score to it + 1)
(set: $feedback's DOC to it + (a: "1 (out of 2) for only looking within the department for comparable analyses. It is better to consider interoperability more broadly."))
<p><q>Leave it with me,</q>
you say, and explain your plan to flick through some old project work and PhD theses, looking for a precedent.
<q>It’s important not to reinvent the wheel.</q></p>
<p>Tosin seems happy with that, but it soon becomes clear that that is not the only thing on his mind.</p>
}(display: "DOC detail question"){
(set: $doc_score to it + 1)
(set: $feedback's DOC to it + (a: "1 (out of 2) for recommending asking around for comparable analyses. This might result in an interoperable solution, but their knowledge may be out of date or incomplete."))
<p>You express your opinion that it’s probably better to avoid inventing a brand new (if: $type is 'qual')[coding scheme](else:)[statistical test], but you’re not sure which one to use either.
You list a few colleagues who might be able to help.</p>
<p>Tosin commits the names to memory and seems pleased to have some leads to follow up, but it soon becomes clear that that is not the only thing on his mind.</p>
}(display: "DOC detail question"){
(set: $doc_score to it + 2)
(set: $feedback's DOC to it + (a: "2 (out of 2) for recommending a full literature search for comparable analyses."))
<p>You explain that the analysis will be more comparable with other research if Tosin uses a standard (if: $type is 'qual')[coding scheme](else:)[statistical technique],
and so recommend he conduct a literature search to discover what that might be.
For good measure, you drop in the name the librarian who came to the departmental meeting at the beginning of the year as someone who might be able to help with that.</p>
<p>Tosin sighs, as if he knew that was the answer all along and wanted to avoid the extra work.
You ask if he has any more concerns, and it turns out he has.</p>
}(display: "DOC detail question"){
(set: $max_score to it + 2)(set: $score to it + $doc_score)(if: $doc_score > 0)[(set: $doc_fail to it - (a: "analysis"))]
<p><q>I was looking at the data management plan, and it says we should be writing documentation about the data we’re using, but it doesn’t really explain what that means.</q></p>
<p>You are pleasantly surprised he’s even read the plan. You told everyone to, of course, but didn’t really expect that they would.</p>
<p>He continues,
<q>What am I aiming for? What sort of detail are you expecting?</q></p>
<ul>
<li><q>If all goes well you’ll be writing about it in a journal paper, so (link: "as much detail as you’d need for that")[
(set: $doc_detail to 2)
(set: $feedback's DOC to it + (a: "2 (out of 3) for recommending writing enough documentation for a journal write-up. This has an immediate practical benefit, but may not be enough to allow the results to be verified or reproduced."))
(go-to: "DOC elements question")
].</q></li>
<li><q>I only wrote that to get the money.
[[We can just ask you->DOC detail none]] if we need to know what you did, can’t we?</q></li>
<li><q>Enough so another researcher in your field could (link: "repeat what you did")[
(set: $doc_detail to 3)
(set: $feedback's DOC to it + (a: "3 (out of 3) for recommending writing enough documentation to enable reproducibility."))
(go-to: "DOC elements question")
].</q></li>
<li><q>Just enough to be able to (link: "jog your memory")[
(set: $doc_detail to 1)
(set: $feedback's DOC to it + (a: "1 (out of 3) for recommending writing just enough documentation to jog the memory. It is unlikely anyone else would fully understand the data from those notes."))
(go-to: "DOC elements question")
] about what you did.</q></li>
</ul>
}{
<p><q>Well, yeah, but$ellipsis What if I forget stuff?
It might be a while before any of this gets published.</q></p>
<ul>
<li><q>[[If it’s important, you’ll remember->DOC detail abort]]. No-one’s interested in the fiddly little details.</q></li>
<li><q>If you’re worried about forgetting things, by all means (link: "write yourself some notes")[
(set: $doc_detail to 0)
(set: $feedback's DOC to it + (a: "0 (out of 3) for your reluctance to recommend that data should be documented. It is unlikely anyone else would be able to understand undocumented data."))
(go-to: "DOC elements question")
].</q></li>
</ul>
}{
(set: $max_score to it + 13)
(set: $feedback's DOC to it + (a: "0 (out of 13) for recommending that the data should not be documented at all. It is unlikely anyone else would be able to understand it."))
<p><q>Er, okay. Well, thanks for putting my mind at rest.</q></p>
}(display: "DOC meeting end"){
(set: $max_score to it + 3)
(set: $doc_score to it + $doc_detail)
(set: $score to it + $doc_detail)
(if: $doc_detail is 3)[(set: $doc_fail to it - (a: "detail"))]
(if: $doc_detail < 2)[(set: $doc_el_feedback to " If you only collect minimal documentation, a lot of important content will be missed.")]
(set: $doc_el_count to 0)
(set: $response to 0)
(set: $doc_el_feedback to "")
<p><q>Okay, okay, I suppose that makes sense.</q>
He sighs heavily.
<q>But what are the important points (if: $doc_detail < 2)[
I’m going to need to remember
](else-if: $doc_detail is 2)[
I’m going to need to write about
](else:)[
they’re going to need to know in order to do that
]? I mean, is there a checklist or something?</q></p>
<p>There isn’t, because as a seasoned professional this is all second nature to you.
It’s easy to forget what it was like when you were first starting out.
However, imparting wisdom is a favourite hobby so you start distilling your vast experience down to a medium-sized speech.</p>
<p><q>There are of course many different aspects of the data we could consider, and in an ideal world we would be designing specifications that accord with known use cases—</q></p>
<p>Once you feel you have both established yourself as a supreme authority and given yourself enough thinking time,
you are ready to go into a bit more detail about what those aspects actually are, starting with$ellipsis</p>
<ul>
<li>[[data collection methodology->DOC elements method]]</li>
<li>[[legal and ethical matters->DOC elements legal]]</li>
<li>[[how the data is being processed->DOC elements process]]</li>
(if: $doc_detail > 1)[
<li>[[how the data is being arranged into files->DOC elements representation]]</li>]
</ul>
}{
(set: $DOC_history to it + (a: (passage:)'s name))
(set: $doc_el_count to it + 1)
<p>You explain that it is much easier to understand the significance of data if you know all about how it was collected.</p>
}(if: $SD_history contains "SD reuse")[{
<p><q>But our data mainly came from third parties.
What is there to talk about?</q></p>
<p>What points do you include in your reply?</p>
}(set: $doc_elements to (shuffled:
(dm: "id", "cr", "text", "If potentially relevant data was excluded, why", "worthy", true),
(dm: "id", "nm", "text", "Data alignment or normalization operations performed", "worthy", true),
(dm: "id", "lk", "text", "Links to the methodologies of the earlier data", "worthy", true),
(dm: "id", "gb", "text", "Review of the good and bad points of each dataset", "worthy", false),
))](else:)[{
<p><q>So, I should say my data was collected (if: $type is 'qual')[by interviewing participants](else:)[in a lab using that instrument we booked time on],
but what are the other things I should talk about?</q></p>
<p>What points do you include in your reply?</p>
}(if: $type is 'qual')[(set: $doc_elements to (shuffled:
(dm: "id", "st", "text", "Date and location of data collection", "worthy", true),
(dm: "id", "no", "text", "Number of participants", "worthy", true),
(dm: "id", "qs", "text", "Topic guides, interview structures, etc.", "worthy", true),
(dm: "id", "tc", "text", "Sampling technique", "worthy", true),
(dm: "id", "id", "text", "How the recording equipment was set up", "worthy", false),
))](else:)[(set: $doc_elements to (shuffled:
(dm: "id", "ob", "text", "Object of study", "worthy", true),
(dm: "id", "pr", "text", "Experimental preconditions", "worthy", true),
(dm: "id", "ic", "text", "Instrument calibrations", "worthy", true),
(dm: "id", "st", "text", "Time and location of experiment", "worthy", false),
(dm: "id", "hd", "text", "Handling protocols used", "worthy", true),
))]]{
<ul>(set: $doc_choices to (a:))(for: each _el, ...$doc_elements)[
<li>(print: _el's text):
(hook: "r" + _el's id)[Exclude?] (hook: "a" + _el's id)[Include?]
(click: (hooks-named: "r" + _el's id))[(replace: (hooks-named: "r" + _el's id))[no](replace: (hooks-named: "a" + _el's id))[](if: _el's worthy)[(set: $doc_choices to it + (a: "Under"))](else:)[(set: $doc_choices to it + (a: "Right"))]]
(click: (hooks-named: "a" + _el's id))[(replace: (hooks-named: "r" + _el's id))[](replace: (hooks-named: "a" + _el's id))[yes](if: _el's worthy)[(set: $doc_choices to it + (a: "Right"))](else:)[(set: $doc_choices to it + (a: "Over"))]]
</li>]
</ul>
}(event: when $doc_choices's length is $doc_elements's length)[{
<p>You explain the value or otherwise of each piece of information, drawing examples from Tosin’s work,
then pause to let him (link: "write that down")[(if: (count: $doc_choices, "Over") > 0)[
(if: (count: $doc_choices, "Under") > 0)[
(set: $doc_el_feedback to it + " You missed out some important methodological details and included some irrelevant ones.")
](else:)[
(set: $doc_el_feedback to it + " You included some irrelevant methodological details.")
(set: $doc_fail to it - (a: "method"))
]](else:)[
(if: (count: $doc_choices, "Under") > 0)[
(set: $doc_el_feedback to it + " You missed out some important methodological details.")
](else:)[
(set: $response to it + 1)(set: $doc_fail to it - (a: "method"))
]](go-to: "DOC elements next")].</p>
}]{
(set: $DOC_history to it + (a: (passage:)'s name))
(set: $doc_el_count to it + 1)
<p>You explain that any other researchers coming to look at the data will need to know what they are legally and ethically allowed to do with it.</p>
<p><q>(if: $type is 'qual')[
Should I just a keep copy of the ethics application with the data?
](else:)[
Isn’t there a University statute I can quote or something?
]</q></p>
<p>There is that possibility, you admit, but argue that a clear and concise summary of the situation would be even more useful.
Now, what should go in it?</p>
}(set: $doc_elements to (shuffled:
(dm: "id", "lc", "text", "Explicit licensing information", "worthy", true),
(dm: "id", "ow", "text", "Information on who holds the rights", "worthy", true),
(dm: "id", "st", "text", "A statement that the dataset complies with all known legislation", "worthy", false),
))(if: $type is 'qual')[(set: $doc_elements to (shuffled: ...it,
(dm: "id", "cf", "text", "Consent form wording", "worthy", true),
(dm: "id", "sg", "text", "Signatures of consent", "worthy", false),
))](else:)[(set: $doc_elements to (shuffled: ...it,
(dm: "id", "cs", "text", "Safety measures employed", "worthy", true),
))]{
(set: $doc_choices to (a:))
<ul>(for: each _el, ...$doc_elements)[
<li>(print: _el's text):
(hook: "r" + _el's id)[Exclude?] (hook: "a" + _el's id)[Include?]
(click: (hooks-named: "r" + _el's id))[(replace: (hooks-named: "r" + _el's id))[no](replace: (hooks-named: "a" + _el's id))[](if: _el's worthy)[(set: $doc_choices to it + (a: "Under"))](else:)[(set: $doc_choices to it + (a: "Right"))]]
(click: (hooks-named: "a" + _el's id))[(replace: (hooks-named: "r" + _el's id))[](replace: (hooks-named: "a" + _el's id))[yes](if: _el's worthy)[(set: $doc_choices to it + (a: "Right"))](else:)[(set: $doc_choices to it + (a: "Over"))]]
</li>]
</ul>
}(event: when $doc_choices's length is $doc_elements's length)[{
<p>You explain the value or otherwise of each piece of information, drawing examples from Tosin’s work,
then pause to let him (link: "write that down")[(if: (count: $doc_choices, "Over") > 0)[
(if: (count: $doc_choices, "Under") > 0)[
(set: $doc_el_feedback to it + " You missed out some important legal (if: $type is 'qual')[or ethical ]details and included some irrelevant ones.")
](else:)[
(set: $doc_el_feedback to it + " You included some irrelevant legal (if: $type is 'qual')[or ethical ]details.")
(set: $doc_fail to it - (a: "legal"))
]](else:)[
(if: (count: $doc_choices, "Under") > 0)[
(set: $doc_el_feedback to it + " You missed out some important legal (if: $type is 'qual')[or ethical ]details.")
](else:)[
(set: $response to it + 1)(set: $doc_fail to it - (a: "legal"))
]](go-to: "DOC elements next")].</p>
}]{
(set: $DOC_history to it + (a: (passage:)'s name))
(set: $doc_el_count to it + 1)
<p>You recount some cautionary anecdotes about journalists misreporting science because they didn’t understand the subtleties of how the data had been analysed.
You invite Tosin to imagine what might happen if those sorts of misunderstandings crept into influential metastudies.</p>
<p><q>It would be good for raising awareness, though.</q>
Seeing your disapproval, he continues.
<q>Can’t I just say that I did all my analysis in (if: $type is 'qual')[NVivo](else:)[MATLAB]?</q></p>
<p>It’s a start, but are there other important things to mention?</p>
}(set: $doc_elements to (shuffled:
(dm: "id", "vn", "text", "Version and any special configuration of the analysis software used", "worthy", true),
(dm: "id", "st", "text", "Data cleaning operations performed", "worthy", true),
(dm: "id", "dq", "text", "Description and explanation of known quality issues", "worthy", true),
))(if: $type is 'qual')[(set: $doc_elements to (shuffled: ...it,
(dm: "id", "an", "text", "Aggregation or anonymisation operations performed", "worthy", true),
))](else:)[(set: $doc_elements to (shuffled: ...it,
(dm: "id", "dx", "text", "Information about discarded runs", "worthy", true),
))]{
<ul>(set: $doc_choices to (a:))(for: each _el, ...$doc_elements)[
<li>(print: _el's text):
(hook: "r" + _el's id)[Exclude?] (hook: "a" + _el's id)[Include?]
(click: (hooks-named: "r" + _el's id))[(replace: (hooks-named: "r" + _el's id))[no](replace: (hooks-named: "a" + _el's id))[](if: _el's worthy)[(set: $doc_choices to it + (a: "Under"))](else:)[(set: $doc_choices to it + (a: "Right"))]]
(click: (hooks-named: "a" + _el's id))[(replace: (hooks-named: "r" + _el's id))[](replace: (hooks-named: "a" + _el's id))[yes](if: _el's worthy)[(set: $doc_choices to it + (a: "Right"))](else:)[(set: $doc_choices to it + (a: "Over"))]]
</li>]
</ul>
}(event: when $doc_choices's length is $doc_elements's length)[{
<p>You explain the value or otherwise of each piece of information, drawing examples from Tosin’s work,
then pause to let him (link: "write that down")[(if: (count: $doc_choices, "Over") > 0)[
(if: (count: $doc_choices, "Under") > 0)[
(set: $doc_el_feedback to it + " You missed out some important details about data processing and included some irrelevant ones.")
](else:)[
(set: $doc_el_feedback to it + " You included some irrelevant details about data processing.")
(set: $doc_fail to it - (a: "process"))
]](else:)[
(if: (count: $doc_choices, "Under") > 0)[
(set: $doc_el_feedback to it + " You missed out some important details about data processing.")
](else:)[
(set: $response to it + 1)(set: $doc_fail to it - (a: "process"))
]](go-to: "DOC elements next")].</p>
}]{
(set: $DOC_history to it + (a: (passage:)'s name))
(set: $doc_el_count to it + 1)
<p>You explain that it can be very hard to find your way around someone else’s data without some sort of guide.
You draw some loose parallels with archaeology.</p>
<p><q>Are you serious? Wouldn’t they be able to work it out just by looking at it?</q></p>
<p>Eventually, maybe, you admit, but it gets exponentially harder with scale and you’re trying to encourage good habits.
You consider which particular good habits to stress in your reply.</p>
}(set: $doc_elements to (shuffled:
(dm: "id", "ft", "text", "Specialist file formats used", "worthy", true),
(dm: "id", "fn", "text", "Conventions for arranging and naming files", "worthy", true),
(dm: "id", "sp", "text", "Specification documents for all file formats used", "worthy", false),
))(if: $type is 'qual')[(set: $doc_elements to (shuffled: ...it,
(dm: "id", "un", "text", "Coding scheme used", "worthy", true),
))](else:)[(set: $doc_elements to (shuffled: ...it,
(dm: "id", "cl", "text", "Explanations of column headings", "worthy", true),
(dm: "id", "un", "text", "Units of measurement", "worthy", true),
))]{
<ul>(set: $doc_choices to (a:))(for: each _el, ...$doc_elements)[
<li>(print: _el's text):
(hook: "r" + _el's id)[Exclude?] (hook: "a" + _el's id)[Include?]
(click: (hooks-named: "r" + _el's id))[(replace: (hooks-named: "r" + _el's id))[no](replace: (hooks-named: "a" + _el's id))[](if: _el's worthy)[(set: $doc_choices to it + (a: "Under"))](else:)[(set: $doc_choices to it + (a: "Right"))]]
(click: (hooks-named: "a" + _el's id))[(replace: (hooks-named: "r" + _el's id))[](replace: (hooks-named: "a" + _el's id))[yes](if: _el's worthy)[(set: $doc_choices to it + (a: "Right"))](else:)[(set: $doc_choices to it + (a: "Over"))]]
</li>]
</ul>
}(event: when $doc_choices's length is $doc_elements's length)[{
<p>You explain the value or otherwise of each piece of information, drawing examples from Tosin’s work,
then pause to let him (link: "write that down")[(if: (count: $doc_choices, "Over") > 0)[
(if: (count: $doc_choices, "Under") > 0)[
(set: $doc_el_feedback to it + " You missed out some important details about data representation and included some irrelevant ones.")
](else:)[
(set: $doc_el_feedback to it + " You included some irrelevant details about data representation.")
(set: $doc_fail to it - (a: "representation"))
]](else:)[
(if: (count: $doc_choices, "Under") > 0)[
(set: $doc_el_feedback to it + " You missed out some important details about data representation.")
](else:)[
(set: $response to it + 1)(set: $doc_fail to it - (a: "representation"))
]](go-to: "DOC elements next")].</p>
}](set: $DOC_history to it + (a: (passage:)'s name))\
(if: $doc_el_count is 4 or ($doc_detail < 2 and $doc_el_count is 3))[{
<p>Tosin finishes making notes on what you just said, dotting hard on the final full stop.</p>
(display: "DOC writing question")
}](else:)[{
<p>Tosin jots all of that down, then looks back at you expectantly.</p>
<p><q>Anything else?</q></p>
<ul>
<li><q>No, I think [[that’s about it->DOC writing question]].</q></li>
(unless: $DOC_history contains "DOC elements method")[
<li><q>You’ll need the details of your [[data collection methodology->DOC elements method]].</q></li>]
(unless: $DOC_history contains "DOC elements legal")[
<li><q>You should also make a note of any [[legal or ethical matters->DOC elements legal]] that might need to be considered.</q></li>]
(unless: $DOC_history contains "DOC elements process")[
<li><q>You should keep a record of [[how you are processing the data->DOC elements process]].</q></li>]
(unless: $DOC_history contains "DOC elements representation" or $doc_detail < 2)[
<li><q>You should be prepared to explain [[how to interpret your files->DOC elements representation]] and how they fit together.</q></li>]
</ul>
}]<p>(unless: $DOC_history contains "DOC elements method")[(set: $doc_el_feedback to it + " You decided against including any documentation about how the data was collected.")]\
(unless: $DOC_history contains "DOC elements legal")[(set: $doc_el_feedback to it + " You decided against including any documentation of legal and ethical issues – this would have included very common concerns like data ownership.")]\
(unless: $DOC_history contains "DOC elements process")[(set: $doc_el_feedback to it + " You decided against including any documentation about the processing of the data.")]\
(unless: $DOC_history contains "DOC elements representation" or $doc_detail < 2)[(set: $doc_el_feedback to it + " You decided against documenting the file formats used and how the data was arranged.")]\
(if: $response is 4)[(set: $response to 5)(set: $feedback's DOC to it + (a: "5 (out of 5) for giving the right advice about what to include in data documentation."))](else:)[(set: $feedback's DOC to it + (a: (str: $response) + " (out of 5) for your advice on what to include in data documentation.$doc_el_feedback"))]\
(set: $max_score to it + 5)(set: $score to it + $response)(set: $doc_score to it + $response)<q>(if: $doc_el_count < 3)[Okay, well that’s been](else:)[Thanks, that’s] really helpful.</q></p>
<p>He glances once more at his notes.</p>
<p>(if: $doc_el_count < 3)[<q>I guess that’s not too much to handle. Perhaps I could just email it to myself,</q>{} he says, with a twinkle in his eye that reassures you it was a joke.
](else-if: $doc_el_count is 3)[<q>Hmm. That’s more than I was expecting. Is there a good way of writing all this down so I can keep track of it?</q>](else:)[<q>Wow, that is a *lot* to think about. Is there a good way of writing all this down so I can keep track of it?</q>]</p>
<p><q>Actually there are lot of different ways you could record your documentation(if: $doc_el_count < 3)[, all of them better than emailing notes to yourself]. But I’ll tell you what the absolute best way is to communicate this information both to other researchers and to your future self.</q></p>
<p>You pause for dramatic effect, and suddenly wonder if that sounded a bit pompous. Nah, it was fine.</p><ul><li><q>Write it all out in a [[README file->DOC use readme]].</q></li>(unless: $type is 'qual')[<li><q>Keep comprehensive notes on your [[lab notebook->DOC use ln]].</q></li>]<li><q>Use a formal [[metadata standard->DOC use metadata]] to encode the information.</q></li><li><q>Embed as much information as you can [[in the data files->DOC use inline]] themselves.</q></li></ul>{
(set: $DOC_history to it + (a: (passage:)'s name))
(set: $doc_fail to it - (a: "structure"))
<p><q>A metadata standard? What’s that?</q></p>
<p>You explain that it’s a sort of list of properties and relationships that a dataset or other entity might have, usually written in a machine-readable format like XML.
<q>The good thing about using a standard is that you can be sure you won’t miss anything important, and you can feed it into different systems and they’ll all understand it.</q></p>
<p><q>So what metadata standard should I be using?</q></p>
<p>It has been a while since you last got your hands dirty with this sort of thing, and the name stubbornly refuses to come to your lips.
You promise to look it up.</p>
<p><q>But what if you don’t find one?</q></p>
<p>You protest that that’s unlikely, but provide an alternative suggestion anyway.</p>
<ul>
<li><q>Write it all out in a [[README file->DOC use readme]].</q></li>
(unless: $type is 'qual')[
<li><q>Keep comprehensive notes on your [[lab notebook->DOC use ln]].</q></li>]
<li><q>Embed as much information as you can [[in the data files->DOC use inline]] themselves.</q></li>
</ul>
}{
(set: $DOC_history to it + (a: (passage:)'s name))
(set: $doc_fail to it - (a: "structure"))
<p><q>How do you mean?</q></p>
<p>You explain about (if: $type is 'qual')[
the facilities in nVivo and SPSS for storing data descriptions, code books and the like.
](else:)[
the importance of fully descriptive column headings and the various ways of embedding sample or feature metadata in MATLAB files.
]</p>
<p><q>Okay, but will I be able to embed all this information you say I should include?</q></p>
<p>He waves his notes from earlier at you.
You admit there might not be a satisfactory way of including it all, so suggest he supplement the inline documentation with a [[README file->DOC use readme]].</p>{
(set: $DOC_history to it + (a: (passage:)'s name))
(set: $doc_fail to it - (a: "structure"))
<p><q>Well, okay, I can see how that would help me now, but I don’t see how it’ll help either my future self or anyone else.
They stay locked in a cupboard here, don’t they?</q></p>
<p><q>That’s true,</q>
you admit, once more wishing that the department could afford to buy an electronic lab notebook system,
<q>but the point is to have it all written down in a standardised way in a central location.
You’ll use that as reference for writing up the data documentation later on.</q></p>
<p><q>Okay$ellipsis so how do you suggest I write it up at that point?</q></p>
<p>And that’s how the topic of [[README files->DOC use readme]] comes up.</p>
}{
<p><q>Are you some kind of Lewis Carroll nut?</q></p>
<p><q>No, that’s really what they’re called.</q></p>
<p><q>So you’re saying I just, what, write an essay called,
<q>My dataset for dummies</q>?</q></p>
<p><q>No, obviously not,</q>
you say, perishing the thought,</p>
<ul>
<li><q>but that’s the (link: "right sort of idea")[(set: $response to 0)(go-to: "DOC meeting coda")].</q></li>
<li><q>it’s more of an FAQ.
Structure it into (link: "different sections with headings")[(set: $response to 3)(set: $doc_fail to it - (a: "structure"))(go-to: "DOC meeting coda")] so people can scan through it and quickly find the bit they need.</q></li></ul>
}{
(if: $response is 0)[
(set: $doc_format_feedback to "README files are most useful when they are well structured.")
](else:)[
(set: $doc_format_feedback to "Structured README files are great, but could there have been an even more useful option?")]
(if: $DOC_history contains "DOC use metadata")[
(set: $response to it + 1)
](else:)[
(set: $doc_format_feedback to it + " Using a metadata standard would have made it easier for other researchers to understand and process the data.")]
(if: $DOC_history contains "DOC use inline" or $DOC_history contains "DOC use ln")[
(set: $response to it + 1)
](else:)[
(set: $doc_format_feedback to it + " Inline documentation won’t get lost and may be useful to automated tools")
(if: $type is 'qual')[
(set: $doc_format_feedback to it + ".")
](else:)[
(set: $doc_format_feedback to it + ", while keeping comprehensive structured notes in a lab notebook would help keep your documentation to an agreed standard.")]]
(set: $max_score to it + 5)
(set: $doc_score to it + $response)
(set: $score to it + $response)
(if: $response is 5)[
(set: $feedback's DOC to it + (a: "5 (out of 5) for comprehensively answering how to write out data documentation."))
](else:)[
(set: $feedback's DOC to it + (a: (str: $response) + " (out of 5) for your advice on documentation formats. $doc_format_feedback"))]
<p><q>Okay, thanks, that’s been very helpful.</q></p>
<p>Not for the first time, you feel it is a privilege to guide a new generation of researchers onto the correct path.</p>
(display: "DOC meeting end")
}(display: "Set Rank")(if: $doc_score > 0)[{
<p>(Your [[score->Score so far]] has gone up by $doc_score (if: $doc_score is 1)[point](else:)[points].)</p>
}]{
<p>You end the meeting by discussing what goals to set for the week ahead and all that sort of thing, then Tosin leaves you to [[get on with your work->DOC staff turnover]].</p>
}{
<p>The events of that meeting are soon driven from your mind when the news about the bid comes in.</p>
}(if: $centre_won)[{
<p>Your institution has won!</p>
<p>There is much rejoicing and celebration all round, followed by an awful lot of strategizing, planning, and above all meetings.
Oh, the meetings. They seem endless in both number and duration.</p>
<p>One eventual consequence of this is a lot of vacancies open up.
Several research assistants from your project either move over to the new centre, or move out to other institutions to fill posts vacated by those coming into the centre.</p>
<p>As it happens, Tosin is one of those who move away.
He is replaced by [[Maya->DOC newbie arrival]].</p>
}](else:)[{
<p>It is not good news.</p>
<p>Everyone’s worst fears are confirmed when it is revealed that the new centre will be established at the Ryvalle Institute.
If that wasn’t enough of a blow, it seems to start a trend of bad luck.
More projects end than start, so the department starts to shrink and the atmosphere sours.</p>
<p>Due to the nature of project funding, you and your team are protected from this for the time being, of course, but you know many of them are considering their position carefully.
As it happens, Tosin is one of the first to go, tempted away by a position at Ryvalle.
Luckily there is enough time left to make it worthwhile recruiting, so he is replaced by [[Maya->DOC newbie arrival]].</p>
}]{
<p>You run through an induction programme for Maya;
you introduce her to the Professor and the rest of the team, and go through the project management protocols and of course the data management plan.</p>
<p>You also arrange it with Jason for Maya to inherit Tosin’s permissions and project files.
Then you leave her to read through them all.</p>
<p>Once you feel she’s had enough time to settle in, you call her in for a supervision meeting to ask [[how she’s getting on->DOC newbie challenge]].</p>
}(if: $doc_score < 10 and $doc_fail's length > 0)[{
<p>Maya slumps down in the chair.</p>
<p><q>I always knew it was going to be tough joining a project halfway through, but this is something else.</q></p>
<p>Seeing your concerned expression, she explains that she’s been made to feel perfectly welcome, but she’s having trouble getting up to speed with the work.</p>
<p><q>Is there anything in particular holding you back?</q>
you ask.</p>
<p><q>I’ll say there is! It’s the data, isn’t it?</q></p>
<p><q>Is it? What’s wrong with it?</q></p>
(set: $doc_fail_reason to (dm:
"analysis",
"(if: $type is 'qual')[The coding scheme that’s been used. It’s entirely inappropriate. I don’t understand why anyone would do it like that. We’re missing out on so many cross-comparison opportunities it’s untrue. I’ll have to redo them.](else:)[Those statistical tests that have been done. Just meaningless if you ask me. I’m going to have to start again with them.]",
"detail",
"The notes I’ve been left are really sketchy. (if: $type is 'qual')[It’s one thing to have a set of responses, but without an idea of the sampling methods and how the questions were phrased, how can I draw solid conclusions?](else:)[I mean, I have all these tables of numbers, but without a better idea of how they were produced or what the quantities refer to, they may as well be football scores.] At this point I’m wondering if I’d be better off throwing the data out and starting again.",
"method",
"Well, how am I supposed to interpret it properly without an idea of how it was collected? Sure, I have a few scrappy notes, but nowhere near enough to go on",
"legal",
"We can’t use it! Not unless I can find the right paperwork, anyway. (if: $type is 'qual')[There are checkboxes saying consent was given, but consent for what? Where are the forms?](else:)[Some of it looks like it came from industry, but I have no idea if it’s been cleared, and if not, which company I need to contact for clearance.]",
"process",
"I can see we have the raw data and the summary data, but I can’t work out how what’s-his-name, Tosin or whoever, got from one to the other. Either there were steps in the middle he didn’t tell anyone about, or he did it wrong, and at this point I can’t tell which it is.",
"representation",
"The data’s in a right mess. I have no idea what relates to what and how it all fits together. And there are some files I don’t even know how to open.",
"structure",
"I tried reading through the documentation, but it just reads like a stream of consciousness. It rambles on about some details, and skips over others; and there are even places where it contradicts itself. It’s going to take me ages to work out what’s going on.",
))
<p>Maya sighs deeply before replying.
<q>(print: $doc_fail_reason's (either: ...$doc_fail)) You know what I mean?</q></p>
<p>This turns out to be one of several problems.
You spend the next hour going over the data with her, and even then you don’t manage to resolve all the issues.</p>
<p>As a result, you are not in the best of moods when the time comes to [[leave for home->DOC fire outbreak]].</p>
}](else:)[{
<p>Maya beams brightly at you as she takes a seat in your office.</p>
<p><q>You know, it was a bit strange at first.
Everyone seems to know everyone else, and here I am, just starting.
I was like a fish out of water to begin with, but I’m getting up to speed.</q></p>
<p>You ask how the research is going.
You are keen to know because Tosin had given the impression that a paper wouldn’t be too far off.</p>
<p><q>That was the part I was most worried about, you know?
Finishing off what someone else had started?
Especially as we didn’t get a handover.
But you know what?
I read through the docs and it didn’t take long to sort it all out.</q></p>
<p>This is(unless: $centre_won)[ a welcome piece of] good news, and you say so.</p>
<p><q>Yeah, yeah. You know, I reckon I could start writing up the results soon!
That’ll be a quick turnaround, even for me!</q></p>
<p>You are quietly impressed, and by the end of the meeting, you are reassured that the work is in safe hands.
And also that the data are in good shape, of course.</p>
<p>All of which puts you in quite a good mood when the time comes to [[leave for home->DOC fire outbreak]].</p>
}]{
<p>The following morning you are woken at some unearthly time in the morning by a phone call.
It’s the Professor, sounding even more grave than usual.</p>
<p><q>There’s no easy way to say this, but there’s been a fire. There *is* a fire. They’re still putting it out.
Look, I’m operating a kind of cascade whatsit here, telling people to work from home today.
Where’s my list? Ah yes$ellipsis</q></p>
<p>You scrabble around for some paper and a pen, and agree to make some calls.</p>
<p>Afterwards, while you wait for further news to trickle in, you catch up on email and update your CV.
You even pull out an application form the Professor had recommended you work on.
It seems as good a time as any.</p>
<p>Over the course of the day, it transpires that your whole department building has been gutted by the fire.
Luckily it was contained, so the rest of the campus is unscathed, but there is nothing left of your workspace.</p>
<p>You go in the following day to [[survey the scene->DOC fire survey]].</p>
}{
<p>You stand, looking through the barrier at the charpit that used to be your building.
It is muddy with ash, and smells. Even now the occasional wisp of steam escapes from the rubble.</p>
<p>You hear foosteps pad closer behind you.
Turning, you see Jason approaching.</p>
<p><q>What a mess,</q>
he says.</p>
<p>You agree, and turn back to the site.
<q>It’s too early to say for sure, but they’re saying it looks like arson.</q></p>
<p><q>Someone arson around, maybe.</q></p>
<p>You don’t laugh.
First the (if: $ORG_history contains "ORG security burglary")[break-in](else:)[hacking incident] and now this.
This is no petty vandalism. This is calculated sabotage.</p>
}(if: $store_chosen's id is in (a: "net", "cloud"))[{
<p style='text-align:center;'><img src='img/burning-building.svg' alt='Fire!'></p>
<p><q>Look,</q>
he continues,
<q>it’s small comfort, I know, but at least with your project files being (if: $store_chosen's id is "net")[on the network drives](else:)[in the cloud], you haven’t lost your work.
They can set you up in a portable cabin and off you go again, good as new.</q></p>
<p>
He’s right. It *is* small comfort.
You turn away, hoping that things take a [[turn for the better->AD start]] soon.</p>
(set: $breakpoint to true)
}](else-if: $org_backup_state is "auto")[{
<p style='text-align:center;'><img src='img/burning-building.svg' alt='Fire!'></p>
<p><q>Look,</q>
he continues,
<q>it’s small comfort, I know, but at least with your project files being backed up to the network you haven’t lost your work.
They can set you up in a portable cabin, I can reimage you a new server, and off you go again, good as new.</q></p>
<p>
He’s right. It *is* small comfort.
You turn away, hoping that things take a [[turn for the better->AD start]] soon.</p>
(set: $breakpoint to true)
}](else-if: $org_backup_state is "manual")[{
<p style='text-align:center;'><img src='img/burning-building.svg' alt='Fire!'></p>
<p><q>Look,</q>
he continues,
<q>I know it’s a bad time to ask, but have you been doing your backups and lodging them in the records centre like you were going to?</q></p>
<p>You nod.
You can’t remember when exactly the last time was, but if it wasn’t last week, it would have been the week before.</p>
<p><q>It might have been a hassle at the time, but I bet you’re glad of it now, eh?
At least you haven’t lost everything.</q></p>
<p>That small drop of comfort does little to cool the anger you feel building inside.
You turn away, hoping that things take a [[turn for the better->AD start]] soon.</p>
(set: $breakpoint to true)
}](else:)[{
<p><q>Look,</q>
he continues,
<q>I know you don’t want to hear this right now, but all your project work, all your data, went up in that inferno.
What are you going to do?</q></p>
<p>As you glare down at the wreckage, you realise you have absolutely no idea.</p>
(display: "Game ends early")
}]<!-- End of Level 4 -->PREPARE SUBMISSION ======================================================{
(set: $AD_PB_history to (a: (passage:)'s name))
(set: $feedback's ADPB to (a:))
(set: $full_score to it + 15)
(set: $archive_status to "none")
(set: $including_sensitive to false)
<p>You are now in full writing-mode.
Hours turn into days and days into weeks as you proceed to write your research paper.
The closer that you get to finishing your paper the more excited you become at the prospect of having the paper published.
At least most of your hard work will soon be over.
You almost feel a sense of relief which seems natural especially considering the ordeals which you have had to put up with during this research project.</p>
<p>You begin scouting for prospective academic publishers to whom you could possibly submit your paper.
You notice that the majority of the journals which you are targeting insist that the data underlying your research findings must be made openly accessible.
Presumably that means it needs to be downloadable from a website?
The academic publishers are willing to host research articles but none of them is willing to host research data.
This means that you have to see to it that your research data are [[hosted->AD what data to select for hosting]] accordingly.</p>
}{
<p>You suppose that the first step should be to work out what data you need to share.</p>
<p>You (if: $SD_history contains "SD reuse")[gathered](else-if: $SD_history contains "SD consent or not" or $SD_history contains "SD equipment")[generated](else:)[collected] various data during your research project.
In addition to this you went on to process and analyse this data.
Subsequently you now find yourself sitting with quite a substantial amount of data.
You could obviously just make things easier for yourself and simply archive all of the content which you either collected or generated as part of your research project.
But you question the sense in such a course of action.
Perhaps it would be better quickly to assess everything which was produced during the research project and then [[select->AD select data for hosting]] the data which should actually be hosted.</p>
}{
(set: $common_dataset_parts to (a: (dm:
"id", "figures",
"name", "Figures, tables, graphs from the paper",
"score", -1,
"feedback", " There is not much point in simply reproducing content from your paper, and you may run into problems if you assign copyright to the publisher.",
),(dm:
"id", "dmp",
"name", "Data Management Plan",
"score", 1,
"feedback", " It is a good idea to archive your data management plan alongside your data, as it tells archivists the provenance of your data and your intentions for its preservation.",
),(dm:
"id", "summarydata",
"name", "Tables underlying graphs",
"score", 1,
"feedback", " Tables are considerably more useful than graphs for verifying results and secondary processing.",
)))
(if: $type is 'qual')[
(set: $dataset_parts to (shuffled: ...$common_dataset_parts, (dm:
"id", "sensitive",
"name", "Personally identifying/sensitive information",
"score", 0,
"feedback", " If you archive sensitive information, you must obtain consent (if applicable) and should normally restrict access to the data.",
),(dm:
"id", "audiovisual",
"name", "AV recordings of participants",
"score", 0,
"feedback", " AV recordings of participants are inherently personal, so if you archive them you must obtain consent and should normally restrict access to them.",
),(dm:
"id", "cftemplate",
"name", "Consent form wording",
"score", 1,
"feedback", " By archiving consent form wording, you make it clear to archivists and future users what can be done with the data.",
),(dm:
"id", "cfconsent",
"name", "Signatures of consent",
"score", -1,
"feedback", " Signed consent forms should be kept securely and separate from the data to reduce the risk of confidentiality breaches.",
),(dm:
"id", "transcripts",
"name", "Interview transcripts",
"score", 1,
"feedback", " Transcripts are usually the best way to archive interview content, since they are more accessible, easier to analyse, and much easier to anonymise than recordings.",)))
](else:)[
(set: $dataset_parts to (shuffled: ...$common_dataset_parts, (dm:
"id", "sensitive",
"name", "Commercially sensitive information",
"score", 0,
"feedback", " If you archive commercially sensitive information, you must obtain clearance from the affected parties and restrict access to the data.",
),(dm:
"id", "rawdata",
"name", "Full, raw data (non-sensitive)",
"score", 1,
"feedback", " Raw data is often easier to repurpose for new research than data derived to answer a specific research question.",
),(dm:
"id", "auxiliary",
"name", "Auxiliary processing files",
"score", -1,
"feedback", " Auxiliary files are by definition not worth keeping for the long term.",
),(dm:
"id", "workflow",
"name", "Executable data processing workflow",
"score", 1,
"feedback", " Providing a copy of scripts (e.g. MATLAB, Python) or other executable workflows used to process the data greatly increases the reproducibility of your research.")))]
}{
(set: $appraisal_selection to (a:))
(set: $appraisal_score to 0)
(set: $pre5score to $score)
<p>You assess all the files associated with your research project and place them into a number of categories.
Now comes the big task$ellipsis selecting which categories should be archived.
You go down the list, deciding for each category in turn whether or not to include it in your submission to the archive:</p>
<ul>(display: "AD candidate components")(set: $selection_count to 0)(for: each _item, ...$dataset_parts)[
<li>(print: _item's name):
(hook: "a" + _item's id)[Include?] (hook: "r" + _item's id)[Exclude?]
(click: (hooks-named: "a" + _item's id))[(set: $selection_count to it + 1)(replace: (hooks-named: "a" + _item's id))[Included.](replace: (hooks-named: "r" + _item's id))[](set: $appraisal_selection to it + (a: _item))]
(click: (hooks-named: "r" + _item's id))[(set: $selection_count to it + 1)(replace: (hooks-named: "a" + _item's id))[](replace: (hooks-named: "r" + _item's id))[Excluded.]]
</li>]
</ul>
}(event: when $selection_count is length of $dataset_parts)[(if: $appraisal_selection's length < 1)[{
<p>Oh dear, that’s not right.
You weren’t planning on publishing an empty dataset.
With a sigh you begin your selection process [[all over again->AD select data for hosting]].</p>
}](else:)[{
<p>You have selected the following content for publication:
(print: $appraisal_selection's 1st's name)(if: $appraisal_selection's length > 1)[(str: ...(altered: _item via "; " + name of _item, ...($appraisal_selection's 2ndtolast)))].</p>
<p>Next you need to determine the manner in which you will [[package your research data->AD how to package data]].</p>
}]]{
(set: $appraisal_feedback to "")
(for: each _item, ...$dataset_parts)[
(if: $appraisal_selection contains _item)[
(set: $appraisal_score to it + _item's score)
(if: _item's score < 1)[
(set: $appraisal_feedback to it + _item's feedback)]
(if: (a: "sensitive", "audiovisual") contains _item's id)[
(set: $including_sensitive to true)]
](else-if: _item's score > 0)[
(set: $appraisal_feedback to it + _item's feedback)]]
(if: $appraisal_score > 4)[(set: $appraisal_score to 4)]
(set: $appraisal_feedback to (str: $appraisal_score) + " (out of 4) for your selection of data to include in your published dataset." + it)
(set: $max_score to it + 4)(set: $score to it + $appraisal_score)
(set: $feedback's ADPB to it + (a: $appraisal_feedback))
<p>You now need to finalise your data files before you can make them accessible.
You are certainly aware that the manner in which data have been packaged affects the degree to which the data are considered accessible.
After all, what good is it to make your data public if future users cannot actually access the data with ease?</p>
<p>You consider several options with a view of selecting the most appropriate method.
Initially you consider copying and pasting the data into a Microsoft Word document.
This seems reasonable as a number of people make use of Microsoft Word documents.
You also consider possibly converting those Word documents into PDF files so the formatting remains fixed.
In addition to this you wonder if it would be better of to present your data files in a flat or nested directory structure.
In your mind all of these options seem applicable.
But eventually you [[settle on making use of only one data packaging method->AD data packaging options]].</p>
}{
<p>Which data packaging method do you consider to be the most appropriate option?</p>
<ol>
<li>(link: "Bundle files into a flat directory structure")[
(set: $response to 1)
(set: $feedback's ADPB to it + (a: "1 (out of 2) for choosing a flat directory structure. With more complex datasets it is usually better to arrange the files into a folder structure."))
(go-to: "AD where to host data")]</li>
<li>(link: "Copy and paste data into a Microsoft Word document")[
(set: $response to 0)
(set: $feedback's ADPB to it + (a: "0 (out of 2) for copying data into a Word document. Users of the data will have to copy it back out again before they can use it."))
(go-to: "AD where to host data")]</li>
<li>(link: "Bundle files into a nested directory structure")[
(set: $response to 2)
(set: $feedback's ADPB to it + (a: "2 (out of 2) for choosing a nested directory structure. This is usually the best way to arrange complex datasets."))
(go-to: "AD where to host data")]</li>
<li>(link: "Copy and paste data into a Microsoft Word document and then convert it to PDF")[
(set: $response to -1)
(set: $feedback's ADPB to it + (a: "-1 (out of 2) for converting your data to a PDF. Users of the data will have to expend a lot of effort to extract it again."))
(go-to: "AD where to host data")]</li>
</ol>
}{
(set: $max_score to it + 2)
(set: $score to it + $response)
<p>Now that you have determined how your research data will be packaged you need to decide where the data will be hosted.
Unfortunately, the academic publishers themselves do not actually prescribe any specific media which you should use for hosting purposes.
As far as you are aware you could host the research data by yourself and ensure that they are publicly accessible.
There is also the option of having the research data archived in a research data repository (in which case the data may or may not be subjected to curation).
All that you know is that you can only select one of these media.
You decide to [[think->AD medium of choice]] about the matter.</p>
}{
<p>Which medium will you choose to use?</p>
<ul>
<li>
<p>*Self-hosted:*
(link: "Consider?")[
You will be personally responsible for ensuring the storage, security and accessibility of the research data.
All of this will by achieved through a project or personal website which you can set up fairly easily.
You will have the ability to select the medium of storage as well as the access levels.
This will enable you to either publish your research data or to simply share it privately.
Once research data has been uploaded it can be published immediately.
An added bonus is that there is no limitation on the number of years over which the research data could be hosted.
(link: "Select?")[(set: $is_mediated to false)(go-to: "AD self-hosted")]
]</p>
</li>
<li>
<p>*Mediated archive:*
(link: "Consider?")[
This is a research data repository which provides archival storage services.
Mediated archives subject uploaded research data to a curation process.
Consequently, research data uploaded onto such archives is appraised for its quality before being accepted.
After being published the research data are actively managed for as long as they continue to be of scholarly, scientific or research interest.
In general there is a limitation of the number of years over which the research could be hosted.
(link: "Select?")[(set: $is_mediated to true)(go-to: "AD formal archive")]
]</p>
</li>
<li>
<p>*Unmediated archive:*
(link: "Consider?")[
This is a research data repository which provides archival storage services.
Unmediated archives do not subject uploaded research data to a curation process.
Once research data have been uploaded and their related descriptive fields have been completed the data can be published.
An added bonus is that there is no limitation on the number of years over which the research data could be hosted (provided the archive remains operational).
(link: "Select?")[(set: $is_mediated to false)(go-to: "AD formal archive")]
]</p>
</li>
</ul>
}ARCHIVE SUBMISSION ========================================================{
(set: $archive_status to "queued")
<p>Now that you have made a decision regarding where your research data will be hosted you are now ready to upload your content onto the repository and submit it for publication.
Therefore, you proceed to identify a specific repository that will address your needs.
Afterwards you access the repository by registering an account, logging in and clicking your way through to your user account.
On your computer screen, you see a bright button that prompts you to [[create a new item->AD deposit title]].</p>
}{
(set: $deposit_faults to (a:))
<p>The system directs you to an electronic submission form.
The submission form prompts you to provide details relating to your submission by filling in elements one at a time.
The first element looks like this:</p>
<blockquote>
<p><em>Title</em></p>
<p>Choose a title for your submission.</p>
</blockquote>
<p>What title will you put in?</p>
<ul>
<li>(link: "Use same title as associated paper")[
(set: $response to 0)
(set: $deposit_faults to it + (a: 'title'))
(set: $feedback's ADPB to it + (a: "0 (out of 2) for using the exact same title for both your paper and the underlying dataset; even if you don’t get the two mixed up, other people and computer algorithms probably will."))
(go-to: "AD deposit abstract")
].</li>
<li>(link: "Use different title from associated paper")[
(set: $response to 2)
(set: $feedback's ADPB to it + (a: "2 (out of 2) for giving your dataset a distinct title; this prevents any confusion with the associated paper."))
(go-to: "AD deposit abstract")
].</li>
</ul>
}{
(set: $max_score to it + 2)
(set: $score to it + $response)
<p>The next element looks like this:</p>
<blockquote>
<p><em>Description/Abstract</em></p>
<p>Write a description/abstract.</p>
</blockquote>
<p>What sort of thing will you write?</p>
<ul>
<li><q>(link: "This is the data from my paper")[
(set: $response to 0)
(set: $deposit_faults to it + (a: 'abstract'))
(set: $feedback's ADPB to it + (a: "0 (out of 2) for giving your dataset an abstract that is meaningless out of context."))
(go-to:"AD deposit documentation")
].</q></li>
<li>(link: "The abstract of the related academic paper")[
(set: $response to 1)
(set: $deposit_faults to it + (a: 'abstract'))
(set: $feedback's ADPB to it + (a: "1 (out of 2) for giving your dataset the same abstract as your paper. While it will give a good impression of what your dataset is about and what it proves, it will give a misleading impression of what the dataset actually contains."))
(go-to:"AD deposit documentation")
].</li>
<li>(link: "The subject of the data and the types of data included in the dataset")[
(set: $response to 2)
(set: $feedback's ADPB to it + (a: "2 (out of 2) for giving your dataset an abstract containing the information that potential reusers need to know about it."))
(go-to:"AD deposit documentation")
].</li>
</ul>
}{
(set: $max_score to it + 2)
(set: $score to it + $response)
<p>The next element looks like this:</p>
<blockquote>
<p><em>Documentation</em></p>
<p>Provide documentation</p>
</blockquote>
<p>This gives you the option either to complete the text box or simply upload your documentation files.</p>
<p>You consider your options and make the following decision:</p>
<ul>
<li>You (link: "summarise the documentation")[
(set: $response to 1)
(set: $deposit_faults to it + (a: 'documentation'))
(set: $feedback's ADPB to it + (a: "1 (out of 2) for including summary documentation with your dataset. Some is better than none, but why waste your earlier efforts?"))
(go-to: "AD deposit licence")
] that Tosin and Maya prepared earlier.</li>
<li>You (link: "do not provide any documentation")[
(set: $response to -1)
(set: $deposit_faults to it + (a: 'documentation'))
(set: $feedback's ADPB to it + (a: "-1 (out of 2) for providing no documentation at all for your dataset; this makes it just about useless to anyone else, and you’ll probably forget important details yourself over time."))
(go-to: "AD deposit licence")
] at all.</li>
<li>You (link: "include the documentation")[
(set: $response to 2)
(set: $feedback's ADPB to it + (a: "2 (out of 2) for providing full documentation for your dataset."))
(go-to: "AD deposit licence")
] that Tosin and Maya prepared earlier.</li>
<li>You (link: "avoid repeating yourself")[
(set: $response to 0)
(set: $deposit_faults to it + (a: 'documentation'))
(set: $feedback's ADPB to it + (a: "0 (out of 2) for relying on your paper to explain your dataset. This makes it harder for people to understand your data. Plus, does your paper explain all the nuances of the dataset? Will the paper be hidden behind a paywall?"))
(go-to: "AD deposit licence")
] by directing readers to <q>see the paper</q> for more details.</li>
</ul>
}{
(set: $max_score to it + 2)
(set: $score to it + $response)
<p>The last element looks like this:</p>
<blockquote>
<p><em>Licence</em></p>
<p>Select a licence to apply to your data.</p>
</blockquote>
<p>A drop-down menu appears on the screen thereby permitting you to select a licence from a list of options.
Select an appropriate licence for your data from this list:</p>
<ul>
<li>(link: "Upload custom licence")[(if: $including_sensitive)[
(set: $response to 2)
(set: $feedback's ADPB to it + (a: "2 (out of 2) for using a custom licence for your dataset. You can specify exactly how people can use the dataset and keep control of who can access it."))
](else:)[
(set: $response to 0)
(set: $feedback's ADPB to it + (a: "0 (out of 2) for using a custom licence for your data. Potential users may feel uneasy about using the data without getting a lawyer to inspect your terms."))
](go-to: "AD submit dataset to archive")]</li>
<li>Creative Commons Attribution-NoDerivatives ((link: "CC BY-ND")[(if: $including_sensitive)[
(set: $response to -1)
(set: $deposit_faults to it + (a: 'licensing'))
(set: $feedback's ADPB to it + (a: "-1 (out of 2) for using a Creative Commons licence with sensitive data. This licence would allow any user of the dataset to redistribute it, negating any access restrictions you put in place."))
](else:)[
(set: $response to 1)
(set: $feedback's ADPB to it + (a: "1 (out of 2) for using a No Derivatives licence: potential users could verify your results but would not be able to derive new data from your dataset, severely limiting its usefulness."))
](go-to: "AD submit dataset to archive")])</li>
<li>All rights reserved/(link: "Not specified")[(if: $including_sensitive)[
(set: $response to 0)
(set: $feedback's ADPB to it + (a: "0 (out of 2) for not licensing your dataset. This leaves it unclear what people are able to do with it."))
](else:)[
(set: $response to -1)
(set: $deposit_faults to it + (a: 'licensing'))
(set: $feedback's ADPB to it + (a: "-1 (out of 2) for not licensing your dataset. This leaves it unclear what people are able to do with it."))
](go-to: "AD submit dataset to archive")]</li>
<li>Creative Commons Attribution ((link: "CC BY")[(if: $including_sensitive)[
(set: $response to -1)
(set: $deposit_faults to it + (a: 'licensing'))
(set: $feedback's ADPB to it + (a: "-1 (out of 2) for using a Creative Commons licence with sensitive data. This licence would allow any user of the dataset to redistribute it, negating any access restrictions you put in place."))
](else:)[
(set: $response to 2)
(set: $feedback's ADPB to it + (a: "2 (out of 2) for using a permissive licence for your dataset. This ensures it is as widely usable as possible while still ensuring you receive credit for it."))
](go-to: "AD submit dataset to archive")])</li>
</ul>
<p>If you need to look into this a bit more before deciding,
you could look up (link-reveal: "what CC BY-ND means")[(open-url: "https://creativecommons.org/licenses/by-nd/4.0/")]
or (link-reveal: "what CC BY means")[(open-url: "https://creativecommons.org/licenses/by/4.0/")]
in another browser tab.</p>
}{
(set: $max_score to it + 2)
(set: $score to it + $response)
<p>The final screens allow you, at long last, to upload your actual data.
Having done that, you have to agree to the terms of deposit, and then you are able to press the big button that says "Submit".</p>
<p>Now that’s over with you are free to (link-goto: "get on", "AD challenge setup") with the rest of your day’s work.</p>
}SET UP SELF-HOSTING ====================================================={
(set: $max_score to it + 9)
(set: $feedback's ADPB to it + (a: "0 (out of 9) for choosing to host your dataset outside an archival environment. How can you guarantee that the data will still be accessible from that URL for decades to come?"))
<p>Now that you have made a decision regarding where your research data will be hosted, as well as the specific data that will actually be hosted, you wonder whether or not you should publish your research data right now.</p>
<ol>
<li>Go ahead and (link: "publish")[
(set: $archive_status to "published")
(go-to: "AD challenge setup")
] the dataset so that the peer-reviewers can access it whilst reviewing your submitted paper.</li>
<li>(link: "Wait")[
(set: $archive_status to "drafted")
(go-to: "AD challenge setup")
] until the peer-review process has been completed and the paper has been accepted for publication before publishing the dataset.</li>
</ol>
}CHALLENGE ROUTER ===========================================================(set: $retraction_triggered to false)(if: $SD_history contains "SD start")[(display: "AD challenge router")](else:)[{
<p>As you haven’t played from the beginning, what scenario would you like to act out?</p>
<ul>
<li>You chose third-party data (link: "with a licence")[
(set: $SD_history to it + (a: "SD reuse"))
(set: $allowed_to_archive to true)
(go-to: "AD challenge router")
] permitting redistribution.</li>
<li>You chose third-party data (link: "without a licence")[
(set: $SD_history to it + (a: "SD reuse"))
(set: $allowed_to_archive to false)
(go-to: "AD challenge router")
].</li>
(if: $type is 'qual')[
<li>You chose a consent regime that (link: "mentioned long-term retention")[
(set: $SD_history to it + (a: "SD consent or not"))
(set: $allowed_to_archive to true)
(go-to: "AD challenge router")
].</li>
<li>You chose a consent regime that (link: "did not mention long-term retention")[
(set: $SD_history to it + (a: "SD consent or not"))
(set: $allowed_to_archive to false)
(go-to: "AD challenge router")
].</li>
](else:)[
<li>You chose an (link: "instrument with a complete chain of custody")[
(set: $SD_history to it + (a: "SD equipment"))
(set: $allowed_to_archive to true)
(set: $instrument_is_wonky to false)
(go-to: "AD challenge router")
].</li>
<li>You chose an (link: "instrument without a complete chain of custody")[
(set: $SD_history to it + (a: "SD equipment"))
(set: $allowed_to_archive to true)
(set: $instrument_is_wonky to true)
(go-to: "AD challenge router")
].</li>]
</ul>
}]{
(if: $SD_history contains "SD equipment")[
(display: "AD equipment challenge")
](else-if: $allowed_to_archive)[
(if: $is_mediated)[
(set: $mediator_email to 'no')(display: "AD mediation result")
](else:)[
(display: "PB start")
]
](else-if: $SD_history contains "SD consent or not")[
(if: $is_mediated)[
(set: $mediator_email to 'ethics')(display: "AD mediation result")
](else:)[
(set: $retraction_triggered to true)(display: "PB start")
]
](else:)[
(if: $is_mediated)[
(set: $mediator_email to 'reuse')(display: "AD mediation result")
](else:)[
(set: $retraction_triggered to true)(display: "PB start")
]
]
}EQUIPMENT CHALLENGE ======================================================{
<p>A few days later, you are in the staff common room when someone mentions a paper that came up on Retraction Watch:
apparently the instrument they used had some sort of systematic error.
Out of idle curiosity, you ask about it, and your blood runs cold as you find the details all too familiar.
You pull out your phone and start searching around on the Internet.</p>
<p>Oh no. The instrument blamed in the article is the exact same model as one your department had on loan.
The exact same model you used.
Seeing the affiliation of the authors, it could very well be the exact instrument you used.
Do you [[report this immediately->AD report instrument incident]] or ignore it and [[hope no-one notices->AD ignore instrument incident]]?</p>
}{
(set: $score to it - 1)
(set: $feedback's ADPB to it + (a: "-1 for ignoring possible invalidating factors in your data. Does research integrity mean nothing to you?"))
<p>Well, the fault probably didn’t affect your data and even if it did, how much of a difference would it have made?
You put all nagging doubts out of your mind and return to your office.</p>
<p>You are just catching up on some paperwork when the Professor pops in, as if for a brief chat.</p>
<p><q>Just been off the phone with my opposite number at the Other Place.</q>
The Other Place being local slang for the university from whence the loaned instrument came.
<q>Massive stink going on there about research being compromised by a faulty instrument. Terrible mess.</q></p>
<p>A thought is clearly occurring to the Professor.
You wait for it to mature into words.</p>
<p><q>Didn’t you use that instrument?
I can’t remember if it was that one or one of ours.
Hah. Just imagine if it was, that would be a disaster!</q></p>
<p>A sort of guilty look must have passed over your face, because the Professor seems to go a bit pale.</p>
<p><q>You’re not sure either?
Oh dear. Dear, dear, dear.
Best get that checked out before it all goes to hell in a handcart, eh?
Let me know how you get on.</q></p>
<p>You don’t have much chance to reply or wriggle out of it as the Professor dashes off again.
Well, now the cat is out of the proverbial bag, you had better [[sort this out->AD report instrument incident]] as soon as possible.</p>
}(if: $archive_status is "queued" and $is_mediated)[{
<p>With no time to waste you immediately contact the repository’s data curator with a request that the processing of your research data be put on hold for now.
You fire up your email client and start typing:</p>
<blockquote>
<p>I recently submitted some research data for publication on our institution’s research data repository.
Since then it has come to my attention that the instrument that I used during my research project may have been faulty.
This has not yet been proved as a matter of fact.
As such, I would like to [[make a determination->AD contact technician]] as to whether or not the instrument in question is indeed faulty.
Would you be so kind as to postpone the curation of my submitted research data until such a time as I confirmed that the data do not contain any instrument-related errors.</p>
</blockquote>
}](else:)[(if: $archive_status is "published")[{
<p>With no time to waste you immediately unpublish your research data, replacing it with a message that, due to technical difficulties, it can’t be made available right now.
(Do people really need to know the whole story?)
You then fire up your email client and start typing a message to your co-authors to explain what has happened:</p>
}](else:)[{
<p>You realise that there is no way you can continue with your journal submission with this cloud hanging over you,
so you fire up your email client and start typing a message to your co-authors to explain what has happened:</p>
}]{
<blockquote>
<p>I’m sorry, everyone, but it has just come to my attention that the instrument that we used to gather our data may have been faulty.
This has not yet been proved as a matter of fact.
As such, I would like to [[make a determination->AD contact technician]] as to whether or not the instrument in question is indeed faulty,
and if so, see if anything can be done to rectify the data without having to redo all the work from scratch.
I will let you know as soon as I have any news.</p></blockquote>
}]{
<p>You report the matter to your head of department and a recommendation is made for the department’s head laboratory technician to investigate the matter
by attempting to reproduce your research findings using the documentation which you captured and the very same instrument which you used for your research.
The head laboratory technician conducts an investigation and reports back to you after two weeks with their [[findings->AD technician response]].</p>
}{
<p>You scan quickly over the email, then go back and read the important bits again.</p>
<blockquote>
<p>As you would be aware I recently conducted an investigation into the reproducibility of research data which you originally generated in our departmental laboratory.
Please see below a summary of my findings:</p>
(if: $instrument_is_wonky)[
<p>There appears to be a chain of custody problem related to the instrument which you used for the purposes of analysing your research data.
As a result of this problem experiment results were only captured the first time that the instrument was used but not on subsequent occasions after adjustments had been made to the instrument’s settings.</p>
<p>Although the instrument’s record indicates the dates on which the settings were changed the nature of these changes was not captured due to what appears to be an undetected fault with the instrument.
Subsequently, any final results which were generated by the instrument may have been accurate but were never captured accurately by the instrument.</p>
<p>Therefore, my conclusion is that the fault described above is attributable to a breakdown in the chain of custody that prevented the instrument from documenting all of the changes made to your research data.
If you have any questions or comments relating to this matter please do not hesitate to contact me.</p>
](else:)[
<ol>
<li>The instrument’s record indicates that when the instrument was used for the first time the results were captured accurately.</li>
<li>Subsequently, adjustments were made to the settings.
As far as I am able to determine, the date, time and nature of those adjustments were accurately recorded by the instrument.</li>
<li>The sample data you supplied did not appear to take into account the adjustments that were made, but I note that the file bears a precise timestamp.</li>
</ol>
<p>Therefore, while your final data may not be fully accurate, by applying the attached transformations to the respective data files, you may eliminate the inaccuracy.
If you have any questions or comments relating to this matter please do not hesitate to contact me.</p>]
</blockquote>
<p>You sit back in your chair and (link: "consider the implications")[(if: $instrument_is_wonky)[(go-to: "AD instrument disaster")](else:)[(go-to: "AD instrument resolution")]].</p>
}{
<p>Well, that’s a relief.
It’s not brilliant news, but at least you don’t have to rerun months and months of experiments to ensure the accuracy of the data.</p>
<p>You very carefully and methodically apply the necessary corrections to your raw data files and rerun the analyses.
With no small amount of anxiety, you |results>[compare your new results] against the previous ones.</p>
}(click: ?results)[{
<p>Thank goodness!
The error margins of your new results overlap with those you’d calculated for your old results, and they are still consistent with the line of argument in your paper.
If anything, the slight shift was in your favour.</p>
}(if: $archive_status is "published")[{
<p>When you return to update your website, your conscience gets the better of you, and you amend the notice to say that an error was detected in version 1 of your data.
You upload the corrected data as version 2 and publish it.</p>
<p>All that remains is to finalise your manuscript and [[upload it->PB start]] to the journal submission system.</p>
}](else-if: $archive_status is "queued")[{
<p>You return to your user account area at the data repository.
As the dataset has not yet been published, you are able to delete the files you had uploaded before and replace them with the corrected versions, while leaving the rest of the information intact.
(if: $is_mediated)[
Then you email the repository’s data curator to say that the issue with your data has been resolved and they can (link:"resume the curation process")[(set: $mediator_email to 'no')(go-to: "AD mediation result")].
](else:)[
All that remains is to finalise your manuscript and [[upload it->PB start]] to the journal submission system.
]</p>
}](else:)[{
<p>You return to your website’s staging area and replace the files you had uploaded there with the corrected versions.
All that remains is to finalise your manuscript and [[upload it->PB start]] to the journal submission system.</p>
}]]{
<p>You are left devastated.
You put in so much work into this project.
Why did this happen to you? How could this happen to you?
So many other questions linger on you mind at the moment but you do not have the energy nor the time to address them.</p>
<p>You briefly consider how much work it would be to rerun all your experiments with the corrected settings, but quickly dismiss the idea as unfeasible.
There is not enough time what with everything else that has to be done before the money runs out.
In all good conscience, you cannot continue with the paper now you know the data is faulty and will have to remain so.</p>
}(if: $archive_status is "queued" and $is_mediated)[{
<p>One of the loose ends to tie up is the matter of your half-finished data deposit, so you return to your email client and, thoroughly miserable, type a message to the data curator.</p>
<blockquote>
<p>Further to my previous email, I have now revisited the analysis of the data.
Unfortunately, it turns out that the instrument used during my research project was indeed faulty.
This fault means that the evidence base required in order to verify the results in my research paper cannot be relied upon, and at this stage I am unable to correct the deficiency.
As such I am left with very little choice but to withdraw the dataset from your repository.</p>
</blockquote>
}](else:)[{
<p>With a heavy heart, you craft an extremely difficult email to your co-authors.</p>
<blockquote>
<p>In my previous e-mail I indicated that I was concerned that the instrument we used during our research project may have been faulty.
Since then I have confirmed that the instrument was indeed faulty.
As a result of this fault the research data which underpin our paper cannot be relied upon.
It is therefore with deep regret that I’m discontinuing work on our paper.</p>
</blockquote>
}]{
(set: $paper_status to 'aborted')
<p>Who would have countenanced that a slip-up so early in the project could have had such far-reaching consequences?
This is not going to look good at your next [[performance review->PB interview start]].</p>
}RETRACTION ISSUES ========================================================={
(if: $SD_history contains "SD consent or not")[
(display: "AD ethics crisis")
](else:)[
(display: "AD reuse crisis")
]
}
:COMMENT
ETHICAL CRISIS ============================================================={
<p>A few months later, one of the participants from your research project informs your university that their personal data, which had been collected as part of your research, was shared without any consent.</p>
<p>Soon afterwards a few more of your research participants approach your university with similar complaints.
The university makes a decision to conduct an investigation into the matter.</p>
<p>You are suspended from work pending the outcome of the investigation.
Weeks go by as you wait anxiously for the investigation to reach a conclusion.
You are finally informed that the investigation uncovered enough information to warrant subjecting you to a disciplinary hearing.</p>
<p>As the hearing commences you become nervous as you are aware that hearings of this nature can be potentially damaging to one’s reputation and there is no doubt in your mind that your reputation is now on the line.
You have prepared a defence on the basis that you actually did obtain consent to use research data from all of your participants.
You even have all of the signed consent forms as evidence.</p>
<p>The hearing finally commences.
During the hearing arguments are heard from all of the complainants as well as your defence team.
After a few tense days the disciplinary committee adjourns in order to deliberate on the verdict.
You wait very nervously for two weeks until the disciplinary committee has [[reached its decision->AD disciplinary committee letter]].</p>
}{
<p>Eventually, the committee informs you of the verdict by way of post.
Upon receiving the letter you open it and read its contents.</p>
<blockquote>
<p>The disciplinary committee has considered the testimony and evidence relating to this disciplinary matter and finally arrived at a decision.
The findings of the committee are summarised below.</p>
<ol>
<li>Although you did make use of a consent form which was signed by all of your research participants the scope covered by this consent form was not broad enough to address data sharing.</li>
<li>The consent form which you relied on only enabled you to collect certain data from the participants in question and to then process and analyse such data for research purposes.</li>
<li>The form does not, however, permit you to subsequently share the collected data as it does not make any provision for the sharing of the collected data in the future.</li>
<li>In completing this consent form the research participants agreed to have their data collected but this does not automatically translate into consent to have such data shared.</li>
<li>If this was your intention you should have ensured that the wording of the consent form was wide enough to cover data sharing - in an explicit rather than implicit manner.</li>
<li>As a result the counter-argument which you advanced, to the effect that the research participants should have automatically assumed that the data would be shared, cannot be accepted.</li>
<li>Your actions have caused distress in the minds of your research participants and damaged the element of trust that exists between the university’s researchers and the general community.</li>
<li>This has been further exacerbated by the amount of publicity which this incident has received in the press as well as on social media.</li>
<li>It is safe to state that your actions have brought the university’s name into disrepute.</li>
<li>It is therefore with great regret that we have to inform you that you have been found guilty of research misconduct.</li>
</ol>
<p>This being the case, the committee has decided to relieve you of all project management responsibilities, effective immediately.
Hopefully you will be more cautious in the future whenever you conduct research which involves human participants.
In order to avoid similar incidents of this nature in the future it is strongly recommended that you reconsider the manner in which you manage your research data.</p>
</blockquote>
<p>After you have read this letter you have mixed emotions.
At least your university was not sued, so it seems you may have just dodged a bullet.
Nevertheless, this is a serious blow to your career, and all over the wording of a consent form.
The devil truly is in the details.</p>
}(display: "Game ends early")REUSE CRISIS ==============================================================={
<p>A few months later a third party informs your university that their research data was used as part of your research data without any permission.</p>
<p>Soon afterwards a few more individuals and institutions approach your university with similar complaints.
After receiving these complaints the university makes a decision to conduct an investigation into the matter.
The matter is referred to the university’s Intellectual Property Office.</p>
}(if: $archive_status is 'queued')[{
<p>Within a matter of weeks you receive two official letters:
one from the data archive you used and the other from your university’s Intellectual Property Office.
You decide to read both letters starting with the one from the [[data archive->AD takedown letter]].</p>
}](else:)[{
<p>Within a matter of weeks you receive an [[official letter->AD IPO letter]] from them.</p>
}]{
<p>You slit open the envelope and take out the letter.
It appears to be from the legal department.</p>
<blockquote>
<p>We recently received communication from several third parties giving notice of their intention to commence legal action against our repository unless the research data which you published via our repository is permanently withdrawn.</p>
<p>These third parties claim rights over portions of the data you published, and contend that your reuse constitutes a violation of copyright laws which require that you first obtain written permission before reusing the research data in question.</p>
<p>As you should be aware from our terms of service, we disclaim any responsibility for flaws, errors or breaches associated with research data uploaded by our users;
such responsibility resides with the respective users themselves.
In the event that complainants can prove the validity of their claims we are obliged to comply with their requests.
In this particular instance the complainants have indeed successfully proved the validity of their claims.
As such we are left with no alternative but to permanently withdraw your research data from our repository.</p>
</blockquote>
<p>You put the latter to one side, feeling like you’ve been slapped in the face.
You now have a strong idea what the other one is about, but you suppose you’d better [[read it->AD IPO letter]] anyway.</p>
}{
<p>This is what it says.</p>
<blockquote>
<p>The Intellectual Property Office recently received numerous complaints lodged against you by several third parties.
A committee was set up to investigate the accuracy of these claims and determine the course of action that was warranted.
In the spirit of transparency we would like to communicate the findings of this investigation to you.</p>
<ol>
<li>The third parties are the rights-holders to the research data in question and therefore have a vested interest in the manner in which their data is reused.</li>
<li>The collected research data was not associated with express licenses.
In the process of reusing the research data you failed to comply with general copyright laws as you did not obtain express written permission to reuse the data.
The fair use doctrine, which permits the use of copyrighted works without permission from copyright owners, cannot be relied upon as a defence based on the manner in which you reused the research data in question.
It is noted that in each of the instances in which you reused data owned by the respective third-parties you made use of the data in their entirety and this therefore nullifies the fair use defence.</li>
<li>Your actions have violated certain laws.
In addition to this you have inconvenienced the third party complainants.
It has been found that reasonable grounds for the various complaints do exist in this case on the basis of copyright infringement.
Such infringement has been sufficiently proved on a balance of probabilities.</li>
</ol>
<p>Therefore, this office instructs you permanently to withdraw the research data as soon as reasonably possible.
Furthermore, as this constitutes a material breach of the University’s research integrity regulations,
we are left with no choice but to refer this case to the University disciplinary committee.</p>
</blockquote>
<p>You are left flabbergasted.
All you did was use some data you downloaded free off the Internet.
Now your career is on the line.
You’d never really considered all that copyright business anything more than empty threats and sabre-rattling before, but you are seeing it quite differently now.</p>
}(display: "Game ends early")MEDIATED REVIEW ============================================================{
<p>A week after making your submission you receive an e-mail from the repository’s data curator.
You open and read the e-mail.</p>
}(display: "AD " + $mediator_email + " issues e-mail"){
(set: $max_score to it + 1)
(set: $archive_status to "none")
(set: $feedback's ADPB to it + (a: "0 (out of 1) for failing to get your dataset though the archive’s review process."))
<blockquote>
<p>Thank you very much for deciding to use our repository in order to make your research data more readily accessible.
The data which you submitted has been appraised in order to determine its suitability for publication.
During the process the following disclosure risk was discovered:</p>
<ul>
<li>*Informed consent.*
The consent form which you relied on only permitted you to collect certain data from the participants in question and to process and analyse the data for research purposes.
However, the form does not permit you *to subsequently share the data in question as it does not make any provision for the sharing of the collected data in the future*.</li>
</ul>
<p>The publication of this data would result in a breach of research ethics best practices.
Furthermore, such course of action would be unlawful as it would violate the privacy rights of the participants in question.
In order to avoid giving rise to any of these breaches I have no choice but to reject your submission.</p>
</blockquote>
<p>You sit back in your chair, a bit stunned.
You had been so sure you had covered all the right bases, and the ethics committee hadn’t flagged this up as an issue.</p>
<p>As disappointing as this news is, you look on the bright side:
at least you’re not going to get yourself or the University into trouble over this.
Thank goodness for conscientious data curators.</p>
<p>You are just going to have to [[explain to the journal editor->PB start]] that you are unable to share the data due to ethical restrictions.</p>
}{
(set: $max_score to it + 1)
(set: $archive_status to "none")
(set: $feedback's ADPB to it + (a: "0 (out of 1) for failing to get your dataset though the archive’s review process."))
<blockquote>
<p>Thank you very much for deciding to use our repository in order to make your research data more readily accessible.
The data which you submitted has been appraised in order to determine its suitability for publication.
During the process the following disclosure risk was discovered:</p>
<ul>
<li>*Copyright infringement.*
Some of the reused research data did not have any explicit license agreements.
Under such circumstances you are required first to obtain written permission from the rights holders before reusing the data in question.</li>
</ul>
<p>If you are to proceed with depositing this dataset, you must either obtain written permission to redistribute the unlicensed data or remove it from the set.
If you are unable to do either, we will have no choice but to reject your submission.</p>
</blockquote>
<p>You sit back in your chair, a bit stunned.</p>
<p>As disappointing as this news is, you look on the bright side:
at least you’re not going to get yourself or the University into trouble over this.
Thank goodness for conscientious data curators.</p>
<p>But how much time would it take to track down the rights holders to get permission?
Longer than you are prepared to wait to submit your paper, that’s for sure.
And the datasets from the various sources have been woven tightly together;
you are not sure you’d be able to disentangle just the problem data, let alone explain to anyone else how to put it back again to verify your results.
Aargh, this is a mess.</p>
<p>You are just going to have to [[explain to the journal editor->PB start]] that you are unable to share the data due to legal restrictions.</p>
}(set: $max_score to it + 1)(if: length of $deposit_faults is 0)[{
(set: $score to it + 1)
(set: $feedback's ADPB to it + (a: "1 (out of 1) for getting your dataset though the archive’s review process first time."))
<blockquote>
<p>Thank you for depositing your data with us.
I have now marked the record as ready to publish, but the dataset will not be visible to others until you are ready for us to make it public.</p>
<p>We normally publish datasets simultaneously with the papers to which they relate, but please let us know if you need us to make special arrangements in this instance.</p>
<p>The preview of your dataset’s landing page has now been updated with its stable bibliographic information, which you can now quote in your associated publication.</p>
</blockquote>
<p>Well, that went a lot more smoothly than you were expecting. Thank goodness for that.
You copy out the details from the landing page, then proceed to [[finalise your manuscript->PB start]].</p>
}](else:)[{
(set: $feedback's ADPB to it + (a: "0 (out of 1) for failing to get your dataset though the archive’s review process first time."))
<blockquote>
<p>Thank you for depositing your data with us.
Before I mark the record as ready to publish, there (if: length of $deposit_faults is 1)[is something](else:)[are some things] I wanted to check with you.</p>
(if: $deposit_faults contains 'title')[
<p>We recommend you use a different title to that of your paper to avoid confusion between them.</p>]
(if: $deposit_faults contains 'abstract')[
<p>Your abstract does not seem to be an adequate description of your dataset.</p>]
(if: $deposit_faults contains 'documentation')[
<p>The level of documentation you have provided is not adequate to explain your dataset independently of other resources that may or may not be available to possible users.</p>]
(if: $deposit_faults contains 'licensing')[
<p>The licence you have selected for your dataset is not appropriate for the nature of the data you are depositing.
Please contact us for advice on more appropriate licences.</p>]
<p>Please could you make the necessary edits to your dataset record and resubmit it when you are ready.</p>
</blockquote>
<p>Hmm. This curator is quite the stickler for details.
More friendly than your typical peer reviewer, but still more critical than you were expecting.</p>
<p>You have a lively correspondence back and forth to get everything in good shape, and eventually your dataset is accepted into the archive.
The curator tells you what the bibliographic details of the dataset will be so you can include them in your [[manuscript->PB start]].</p>
}]{
(set: $retraction_triggered to false)
(set: $pre5score to 0)
(set: $DMP_history to (a: "DMP start"))
(set: $SD_history to (a: "SD start"))
(set: $ORG_history to (a: "ORG start"))
(set: $DOC_history to (a: "DOC start"))
(set: $AD_PB_history to (a: "AD start"))
(set: $feedback's ADPB to (a:))
<p>DEBUGGING OPTIONS</p>
<p>What happens in this level depends heavily on earlier parts of the game.</p>
<ul>
<li>
<p>Your data management plan was
(cycling-link:
"excellent(set: $dmp_quality to 10)",
"good(set: $dmp_quality to 5)",
"mediocre(set: $dmp_quality to 2)"
) (or...).</p></li>
<li>
(set: $source_ranking to (a: (dm: "score", 1), (dm: "score", 1), (dm: "score", 1)))
(set: $src_order_score to 3)
<p>Did you collect (link-show: "new data", ?fresh) or reuse (link-show: "existing data", ?reused)?</p>
}|reused)[{
<p>You found
(cycling-link:
"lots of good resources(set: $source_ranking to (a: (dm: 'score', 1), (dm: 'score', 1), (dm: 'score', 1)))",
"a couple of good resources(set: $source_ranking to (a: (dm: 'score', 1), (dm: 'score', 1)))",
"good and borderline resources(set: $source_ranking to (a: (dm: 'score', -1), (dm: 'score', 1), (dm: 'score', 1)))",
"hardly any good resources(set: $source_ranking to (a: (dm: 'score', -1), (dm: 'score', 1)))"
) (or...).</p>
}]|fresh)[(if: $type is 'qual')[{
(set: $allowed_to_archive to true)
(set: $SD_history to it + (a: "SD consent or not"))
<p>You passed approval on attempt number (cycling-link:
"(set: $consent_attempts to 1)1",
"(set: $consent_attempts to 3)3",
"(set: $consent_attempts to 5)5"
) (or...). (link: "Did you get an exemption from acquiring consent?")[
(set: $SD_history to it + (a: "SD no consent necessary"))You were exempted from acquiring consent.
]</p>
}](else:)[{
(set: $SD_history to it + (a: "SD equipment"))
<p>You chose a suitable instrument on attempt number (cycling-link:
"(set: $inst_attempts to 1)1",
"(set: $inst_attempts to 2)2",
"(set: $inst_attempts to 3)3"
) (or...).</p>
}]]{
</li>
<li>
<p>Your file organization choices led to the bid for a new centre being
(cycling-link:
"successful(set: $centre_won to true)",
"unsuccessful(set: $centre_won to false)"
) (or...).</p>
</li>
<li>
<p>Your advice on how to document data was
(set: $doc_score to 10)(cycling-link:
"very helpful(set: $doc_score to 10)",
"utter garbage(set: $doc_score to 1)"
) (or...).</p>
</li>
<li>
<p>You are playing with the status of your archived data set to (cycling-link: bind $archive_status, "queued", "drafted", "published", "none") (or...).</p>
</li>
<li>
(set: $including_sensitive to false)
<p>(link: "Include sensitive data in your dataset?")[(set: $including_sensitive to true)Your dataset now includes sensitive data.]</p>
</li>
</ul>
<p>Reload this page to reset your selections.</p>
<p>[[Continue->PB start]]</p>
}{
(set: $full_score to it + 5)
(set: $interview_in_full to (
($DMP_history contains "DMP start") and
($SD_history contains "SD start") and
($ORG_history contains "ORG start") and
($DOC_history contains "DOC start") and
($AD_PB_history contains "AD start")))
<p>At long last your paper is finished. Phew!
Having successfully worked it into a publishable state and proofread it to within an inch of its life, you are mentally exhausted.
But as corresponding author, it is now your joy and delight to send off the manuscript to the publisher,
so you point your browser at the submissions page.</p>
<p>Oh. They have changed to a new system since the last time you did this.
As you navigate through the web forms, you come across a section you haven’t seen before.</p>
<blockquote>
<p><em>Underlying data</em></p>
<p>Please state whether and how readers may access the data underlying this paper. (Required)</p>
</blockquote>
}(if: $archive_status is "none")[{
<p>Hmm. They really are taking this seriously.
But if you can’t share your data, you can’t share your data.
You think about how to [[put that into words->PB fill out form]] in the most diplomatic way possible.</p>
}](else:)[{
<p>Wow, so they really are taking this seriously.
This thought makes you pause, unsure if you should get [[advice from someone->PB ask librarian]] on this,
or look around the [[University website->PB read website]] for guidance,
or [[fill it out straightaway->PB fill out form]].</p>
}]{
(set: $AD_PB_history to it + (a: (passage:)'s name))
<p>You save your progress and (if: $DMP_history contains "DMP meet librarian")[
wonder who to ask. Hmm. The librarian who helped you with the data management plan seemed to know her stuff; perhaps she could help with this too. You give her a call.
](else:)[
hunt around on the University website for someone to talk to. You are quickly reminded that the Library offers support on data management issues, so you give one of the librarians a call.]</p>
<p>You catch her just as she’s about to head out to a meeting, so she only has time to pass on some quick advice.
She tells you you need to say where the dataset is kept and provide a persistent link to it, and say whether there are access restrictions.
She also suggests mentioning the dataset in your reference list if you have room.</p>
<p>You thank the librarian for her time and end the call.
Satisfied that you now have a clearer idea of what to do,
you return to your computer and the submission website, and [[resume your progress->PB fill out form]] on the web form.</p>
}{
(set: $AD_PB_history to it + (a: (passage:)'s name))
<p>You save your progress and turn to the search box on the University website.
Now, what to search for?
You cycle through some possibilities:</p>
<blockquote>
<p>(cycling-link:
"journal submission data requirement(set: $good_das_search to false)",
"statement on data access(set: $good_das_search to true)",
"data underlying paper access(set: $good_das_search to false)",
"data access statements(set: $good_das_search to true)") (or...)</p>
</blockquote>
<p>Having settled on search terms you press the [[Search->PB read more website]] button.</p>
}{
<p>(if: $good_das_search)[
You are pleasantly surprised to see a promising link at the top of the results list
](else:)[
Against all the odds, you find a promising link about three results down
]. Clicking on it you are taken to a page entitled *Writing your data access statement*.</p>
<p>The page gives you some general principles and some worked examples.
The gist of it is that you need to say where the dataset is kept and provide a persistent link to it, and say whether there are access restrictions.
It also recommends mentioning the dataset in your reference list.</p>
<p>Satisfied that you now have a clearer idea of what to do,
you return to the submission website and [[resume your progress->PB fill out form]] on the web form.</p>
}{
(set: $das_opts to (a: (dm:
"text", "All data is provided in full in the results section of this paper.",
"score", 0,
"rationale", " It would have been an acceptable statement if true, but in this case it wasn’t.",
"rejection", "While it is true that the results section does contain high-level summary data, you must be aware that it does not provide enough detail for the reviewers to be able to verify the boldly robust claims made by the paper. If supporting data cannot be made available, we will be unable to accept your paper.",
)))
(if: $archive_status is "none")[
(set: $das_opts to (shuffled: ...it, (dm:
"text", "The underlying data cannot be shared.",
"score", 0,
"rationale", " There was nothing helpful about it.",
"rejection", "Your paper makes some boldly robust claims, and such claims must be fully evidenced. If supporting data cannot be made available, we will be unable to accept your paper.",
),(dm:
"text", "Due to (if: $SD_history contains 'SD reuse')[legal](else-if: $SD_history contains 'SD consent or not')[ethical](else:)[legal/ethical] concerns, supporting data cannot be made openly available.",
"score", 1,
"rationale", " You gave a valid reason why the data could not be shared and, given your earlier choices, this was the best you could do. You missed out on 3 points because you would have been able to share the data had you considered these issues earlier; sometimes life’s like that.",
"rejection", "While we accept your (if: $SD_history contains 'SD reuse')[legal](else-if: $SD_history contains 'SD consent or not')[ethical](else:)[legal/ethical] position, your paper makes some boldly robust claims, and such claims must be fully evidenced. If supporting data cannot be made available, we will be unable to accept your paper.",
)))
]
(set: $das_access_opts to (shuffled:
(dm: "name", "vague", "value", "is available"),
(dm: "name", "open", "value", "is openly available"),
(dm: "name", "restricted", "value", "is available to bona fide researchers subject to a data sharing agreement"),
))
(if: $archive_status is "queued")[
(set: $das_arch_name to "(your data archive)")
(set: $das_arch_url to "http://my-data-archive.net/display?page=6zXfI88d7k3D")
(set: $das_arch_purl to "https://doi.org/10.999/dataset.eg.1234567")
(set: $das_arch_doi to "DOI 10.999/dataset.eg.1234567")
](else:)[
(set: $das_arch_name to "(your website)")
(set: $das_arch_url to "http://my-website.net/display?page=6zXfI88d7k3D")
(set: $das_arch_purl to "https://purl.org/myweb/dataset.eg.1234567")
(set: $das_arch_doi to "identifier dataset.eg.1234567")
]
(set: $das_archlink_opts to (shuffled:
(dm: "arch", false, "link", "none", "value", "on request from the authors"),
(dm: "arch", false, "link", "purl", "value", "at $das_arch_purl"),
(dm: "arch", false, "link", "doi", "value", "under the $das_arch_doi"),
(dm: "arch", false, "link", "url", "value", "at $das_arch_url"),
(dm: "arch", true, "link", "none", "value", "from $das_arch_name"),
(dm: "arch", true, "link", "purl", "value", "from $das_arch_name at $das_arch_purl"),
(dm: "arch", true, "link", "doi", "value", "from $das_arch_name under the $das_arch_doi"),
(dm: "arch", true, "link", "url", "value", "from $das_arch_name at $das_arch_url"),
))
}{
<p>(display: "PB DAS options")
You select the text entry box and consider what to type.</p>
<ul>(for: each _das, ...$das_opts)[
<li>
<p><q>(link: _das's text)[(set: $das_chosen to _das)(go-to: "PB upload files")]</q></p></li>
](unless: $archive_status is "none")[
<li>
<p>Or you could [[construct your own statement->PB DIY DAS 1]].</p>
</li>]
</ul>
}{
<p>You start typing:</p>
<p><q>All data supporting this study$ellipsis</q></p>
<ul>(for: each _opt, ...$das_access_opts)[
<li>
<p>$pre_ellipsis(link: _opt's value)[(set: $das_opt_access to _opt's name)(go-to: "PB DIY DAS 2")]$ellipsis</p>
</li>]
</ul>
}{
<p>You continue typing:</p>
<p><q>All data supporting this study (print: value of (1st of (find: _opt where _opt's name is $das_opt_access, ...$das_access_opts)))$ellipsis</q></p>
<ul>(for: each _opt, ...$das_archlink_opts)[
<li>
<p>$pre_ellipsis(link: _opt's value)[(set: $das_opt_arch to _opt's arch)(set: $das_opt_link to _opt's link)(show: ?scoring)].</p>
</li>]
</ul>
}|scoring)[{
(set: _das_score to 0)
(set: $_das_rationale to "")
(set: $_das_rejection to "")
(if: $das_opt_access is 'vague')[
(set: $_das_rationale to it + " You did not indicate whether the data could be accessed openly.")
](else:)[
(if: $including_sensitive)[
(if: $das_opt_access is 'restricted')[
(set: $_das_score to it + 1)
](else:)[
(set: $_das_rationale to it + " You said you would share sensitive data openly.")]
](else:)[
(if: $das_opt_access is 'open')[
(set: $_das_score to it + 1)
](else:)[
(set: $_das_rationale to it + " You imposed unnecessary access restrictions.")]]]
(if: $das_opt_arch)[
(set: $_das_score to it + 1)
](else:)[
(if: $das_opt_link is 'none')[
(set: $_das_rationale to it + " It is best to share data via an archive.")
(set: $_das_rejection to "Your paper makes some boldly robust claims, and such claims must be fully evidenced. If supporting data cannot be made available from a trustworthy archive, we will be unable to accept your paper.")
](else:)[
(set: $_das_rationale to it + " Naming the archive provides a fallback in case your link/ID is mistyped.")]]
(set: $das_opt_link_val to (dm:
'purl', (dm:
'score', 2,
'rationale', '',
),
'doi', (dm:
'score', 1,
'rationale', " It is highly recommended to give identifiers in HTTP form, in case readers or tools don’t know how to look them up.",
),
'url', (dm:
'score', 1,
'rationale', ' The link you provided could easily break.',
),
'none', (dm:
'score', 0,
'rationale', ' You did not provide an easy way of identifying the dataset.',
),
))
(set: $_das_score to it + ($das_opt_link_val's $das_opt_link)'s score )
(set: $_das_rationale to it + ($das_opt_link_val's $das_opt_link)'s rationale )
(set: $das_chosen to (dm:
"score", $_das_score,
"rationale", $_das_rationale,
"rejection", $_das_rejection,
))(go-to: "PB upload files")
}]{
(set: $max_score to it + 4)
(set: $score to it + $das_chosen's score)
(if: $das_chosen's score is 4)[
(set: $feedback's ADPB to it + (a: "4 (out of 4) for covering all the important points in your data access statement."))
](else:)[
(set: $feedback's ADPB to it + (a: (str: $das_chosen's score) + " (out of 4) for your data access statement." + $das_chosen's rationale))
]
}(if: $archive_status is 'none')[(display: "PB submit form")](else:)[{
<p>You finish typing and hit enter.
Continuing on, you reach the screen for uploading your manuscript.</p>
<p>You are just about to select the file when (if: $AD_PB_history contains "PB ask librarian")[
you remember what the librarian said about formal data citations
](else-if: $AD_PB_history contains "PB read website")[
you remember what the guidance page said about formal data citations
](else:)[
a thought occurs to you.
You worked hard on that dataset and it would be nice for that work to be recognised a bit more.
Maybe you could cite it
]. Would it be worth making a quick addition to your (link: "reference list")[
(set: $das_ref_score to 1)
(set: $feedback's ADPB to it + (a: "1 (out of 1) for including a formal data citation."))
(go-to: "PB submit form")
], or should you just (link: "upload the manuscript as it stands")[
(set: $das_ref_score to 0)
(set: $feedback's ADPB to it + (a: "0 (out of 1) for not including a formal data citation. These make it much easier to track the impact of your data."))
(go-to: "PB submit form")
]?</p>
}]{
(set: $max_score to it + 1)
(set: $score to it + $das_ref_score)
<p>After uploading the files, there are only a few more screens to go before you are able to send your manuscript off to the editors,
where no doubt it will sit unread for months before reviewers are assigned to first ignore and then read it in their turn.</p>
<p>Nevertheless, you fondly imagine the expressions on their faces when they do eventually read it.
It is every bit as groundbreaking as you had hoped, and you expect to ruffle a few feathers with your conclusions.</p>
<p>But for now, all you can do is sit back and wait for the [[results->PB peer review]] of the peer review process.</p>
}{
<p>As you predicted, you have to wait months for the reply.
When it does finally drop into your inbox, you make sure you have a fresh beverage and a particularly delicious snack to hand before you read it.
You reckon they’ll work equally well as a reward or a comfort, depending on the news.</p>
<p>Steeling yourself, you open the message and read it.</p>
}(if: $archive_status is 'published')[{
(set: $paper_status to 'gazumped')
<p>It is so surprising that you spill your drink in shock.
You have to read it several times before you allow yourself to believe your eyes.</p>
<p>The editors are claiming that a paper with the same approach, the same conclusions and, most damningly of all, the same data was submitted to the journal two days prior to your submission.
They say they will give you a chance to explain yourself, but there is a tone to the message that suggests lawyers and disciplinary hearings.</p>
<p>Needless to say you pick up the phone straight away.
You are lucky with the time zones and manage to get through to one of the editors.
You explain to them that the other team must have seen the data you posted online, taken it and somehow written a paper practically overnight.</p>
<p>The editor is clearly still dubious by the end of the call, but you get another email a few days later.
This time the tone is more conciliatory – the timestamps on the respective datasets have confirmed your story – but the end result is still disappointing.
Your paper is rejected, and the clone paper (from the Ryvalle Institute, as it turns out) is published in its place.</p>
<p>What a disaster.
The only positive thought you have is that you have [[learned a valuable lesson->PB interview start]].</p>
}](else-if: $das_chosen's rejection is "")[{
(set: $paper_status to 'accepted')
<p>Mercifully, the editor puts you out of your misery in the first paragraph.
The paper has been accepted!
Okay, subject to minor corrections, but that’s par for the course and entirely expected.</p>
<p>Once you have finished your victory dance that No-one Need Ever Know About, you email the good news to your co-authors and, because you have such high hopes for this paper, ask them if they’d like to join you in a meal out to celebrate.</p>
<p>Your good mood persists for the rest of week and [[beyond->PB interview start]].</p>
}](else:)[{
<p>As you scan down the text, you get a sinking feeling in your stomach that puts you right off your food.
It is not good news.
The reviewers have really torn into it, and reading between the lines the rot seems to have set in due to an issue with the data.
Take this bit here, for example:</p>
<blockquote>
<p><q>(print: $das_chosen's rejection)</q></p>
</blockquote>
}(if: $archive_status is "none")[{
(set: $paper_status to 'rejected')
<p>That seems pretty definitive.
You can’t share the data and they won’t publish the paper without it.
What a disaster.
All you can do is hope that you won’t run into the same problems with the other papers your team are writing.
Well, you could also find a way to make sure you are [[never in this position again->PB interview start]].</p>
}](else:)[{
(set: $paper_status to 'accepted')
<p>It’s not an outright rejection, though.
Perhaps you can salvage this.</p>
<p>You spend the next few days consulting with your co-authors, redrafting like crazy to address all the reviewers comments (some pettier than others), and when you submit your next draft, you make sure you include a clearer and more detailed data access statement.</p>
<p>The second time around you get the results of the review much quicker.
The revisions have done the trick.
The editors have accepted the paper!</p>
<p>You treat yourself to a takeaway that night in celebration.
Indeed, your good mood persists for the rest of week and [[beyond->PB interview start]].</p>
}]](if: $retraction_triggered and ($paper_status is 'accepted' or $archive_status is 'published'))[(display: "AD retraction router")](else:)[{
<p>Several weeks later, you are in the queue for an overpriced cup of coffee when the Professor ambles past, deep in conversation with the Dean of Studies.
All at once, the Professor breaks off the conversation for a quick word with you.</p>
<p><q>Word to the wise, eh, you’ve been noticed!
I can’t say too much, but safe to say, things are on the up.
You should be getting a letter any day now from the bods in HR.
Good luck, and don’t mess this up!</q></p>
<p>You are too stunned to say much, and even if you weren’t, the Dean steals back the Professor’s attention and off they go.</p>
}(display: "Set Rank")(if: ($score - $pre5score) > 0)[{
<p>(Your [[score->Score so far]] has gone up by (print: $score - $pre5score) (if: ($score - $pre5score) is 1)[point](else:)[points].)</p>
}]{
<p>It is an anxious wait, but things finally become clear when the heralded letter arrives.
You had put an application in to the Promotions Board as a kind of therapy after the fire, but had not held out much hope of anything coming of it.
Now you hold in your hand an invitation to [[interview->PB interview welcome]].</p>
}]{
(set: $interview_score to 0)
<p>It is a nervous wait as you sit outside the interview room in your best business attire.
You firmly grip the document wallet that contains your CV and the interview letter.
You don’t really need it; it’s just there to give your hands something to do.</p>
<p>There is a click and a swish as the door opens.
A woman you don’t recognise – from HR, maybe? – pauses in the doorway and greets you with a professional smile.</p>
<p><q>You can come through now.</q></p>
<p>You follow her into the room, and she moves into position behind a large table, next to your Head of Department and Professor Le Fevre.
You take your position opposite.
This is it, you think to yourself; (link: "time to shine")[(if: $interview_in_full)[(go-to: "PB interview DMP")](else:)[(set: $interview_score to 7)(go-to: "PB interview result")]].</p>
}{
(set: $AD_PB_history to it + (a: (passage:)'s name))
<p>The opening pleasantries are pleasantly encouraging, and you manage to hold your own when the tough questions start.
But then you get an insight into why the Head of Department has a reputation for despising theoreticians.</p>
<p><q>Of course, it’s one thing to have all the answers but quite another to be able to put them into practice.
What we value in this institution is results, and I always say results speak for themselves.
So, let’s take a look at this project you’ve been administering.
You were in on it from the start, weren’t you?</q></p>
<p>You explain your involvement in drafting the bid, most especially the data management plan.</p>
}(if: $dmp_quality < 3)[{
<p><q>Ah yes, the data management plan.
That was a bit of a near miss, wasn’t it?
One of the factors why we didn’t get the full funding.
I’m not too keen on you losing us money, you know.</q></p>
<p>You consider your next words carefully.</p>
<ul>
<li><q>Next time, I’ll make sure I use the (link: "right template")[(set: $interview_score to it + 1)(set: $response to 1)(go-to: "PB interview acquiring")].</q></li>
<li><q>I’m sure my plan had (link: "nothing to do with it")[(set: $response to 2)(go-to: "PB interview acquiring")], it’s the research they care about.</q></li>
<li><q>The bid reviewers (link: "can’t have been trained")[(set: $response to 2)(go-to: "PB interview acquiring")] properly on how to evaluate data management plans.</q></li>
</ul>
}](else-if: $dmp_quality < 10)[{
(set: $interview_score to it + 1)
<p><q>Ah yes, the data management plan.
I’m not sure how much of a difference it made, but at least it didn’t do any harm.
From what I hear the funders are starting to take them very seriously.</q></p>
<p>You nod sagely.</p>
<ul>
<li><q>Yes, that’s why I (link: "looked up guidance")[(set: $response to 3)(go-to: "PB interview acquiring")] on how to write one before I started.</q></li>
<li><q>Yes, this (link: "insane bureaucratization")[(set: $interview_score to it - 1)(set: $response to 4)(go-to: "PB interview acquiring")] of the research endeavour never seems to stop, does it?</q></li>
</ul>
}](else:)[{
(set: $interview_score to it + 2)
<p><q>Ah yes, the data management plan.
Singled out for particular praise, I understand.
Good work, excellent result.</q></p>
<p>You accept the compliment gracefully.</p>
<ul>
<li><q>It helped that I was working from the (link: "right template")[(set: $response to 5)(go-to: "PB interview acquiring")]$ellipsis</q></li>
<li><q>It just goes to show that I’m the sort of (link: "Wunderkind")[(set: $interview_score to it - 1)(set: $response to 6)(go-to: "PB interview acquiring")] this department should put on an accelerated promotion programme.</q></li>
</ul>
}](if: $response is 1)[{
<p>Professor Le Fevre cuts in with a kindly word.</p>
<p><q>Well, we all make mistakes from time to time. The important thing is to learn from them.</q></p>
<p>The Head of Department scoffs loudly.
<q>But try not to make too many, won’t you?</q></p>
<p>You attempt some dignified grovelling but are soon interrupted.</p>
}](else-if: $response is 2)[{
<p><q>No, no, no, I took at a look at the plan and the reviewer comments, and they were spot on.
What a shoddy mess.
Must have made us look like a bunch of amateurs.</q></p>
<p><q>To be fair, it wasn’t as bad as all that,</q>
you begin, and you start to point out the stronger points of plan.</p>
<p><q>Were those the parts you copied from other plans?</q>
asks Professor Le Fevre, lightly.</p>
<p>There is an awkward silence.</p>
}](else-if: $response is 3)[{
<p><q>Very conscientious of you, I’m sure.
Pity you missed the fact that they provide a template to use.
Would you say that is representative of your attention to detail?</q></p>
<p>You demur politely, somewhat taken aback by the level of scrutiny your work is being given.</p>
}](else-if: $response is 4)[{
<p><q>Indeed not, but you won’t get very far in this game if you don’t play by the rules, will you?</q></p>
<p>It occurs to you that this is probably not the time to reveal your rebellious sensibilities.</p>
}](else-if: $response is 5)[{
<p>You explain the process of how you went about writing the plan and the panel looks suitably impressed.
Or at least tolerant.</p>
}](else-if: $response is 6)[{
<p><q>Hmm. Why don’t you hold that thought while we continue with the rest of the interview?</q></p>
<p>You meditate briefly on the differences between confidence, arrogance and hubris.</p>
}]{
<p><q>(if: $response is 5)[Excellent.](print: " ")
Perhaps we should move on and discuss how you performed in the early part of the project itself.
You were appointed Project Administrator and, aside from arranging all those fascinating meetings, your first major contribution to the direction of the project was$ellipsis something to do with data collection, wasn’t it?</q></p>
(if: $SD_history contains "SD consent or not")[
(display: "PB interview consent Q")
](else-if: $SD_history contains "SD equipment")[
(display: "PB interview equipment Q")
](else:)[
(display: "PB interview reuse Q")
]
}{
(set: $int_bad_src to 0)
(for: each _src, ...$source_ranking)[(if: _src's score < 0)[(set: $int_bad_src to it + 1)]]
<p>You explain your role in selecting third-party data for the project to use.</p>
}(if: $int_bad_src > 0)[{
<p><q>Ah yes.
I understand from your colleagues that you picked some rather questionable sources.
Copyrighted data, unintelligible files, in some cases just plucked off the Internet with no guarantees of accuracy.
Could you talk us through your evidently rigorous selection procedure?</q></p>
<p>You channel your inner politician as you reply.</p>
<ul>
<li><q>In my defence, I was trying to make sure we had the (link: "broadest possible evidence base")[(set: $response to 1)(go-to: "PB interview reuse A")] for our research.</q></li>
(if: $source_ranking's length > 2 and $src_order_score > $source_ranking's length - 2)[
<li><q>In hindsight, I should have been (link: "more stringent")[(set: $interview_score to it + 1)(set: $response to 5)(go-to: "PB interview reuse A")] in my selections, but I did recognise those flaws at the time and deprioritized the problematic data accordingly.</q></li>
](else:)[
<li><q>In hindsight, I should have paid (link: "more attention")[(set: $interview_score to it + 1)(set: $response to 4)(go-to: "PB interview reuse A")] to those issues. I have since learnt the problems they can cause and had I known earlier I would have chosen differently.</q></li>
]
</ul>
}](else-if: $source_ranking's length > 2)[{
(set: $interview_score to it + 2)
<p><q>Ah yes.
I understand from your colleagues that you managed to find a good selection of high quality resources for them to work from.
I don’t know, the things you can do these days.
When I was starting out you wouldn’t dream of using someone else’s data.</q></p>
<p>You sense an opportunity to paint yourself as a go-getting trailblazer.</p>
<ul>
<li><q>There are (link: "so many opportunities")[(set: $response to 7)(go-to: "PB interview reuse A")] arising from advances in computing combined with high quality curated datasets.
You just need to look out for well documented, licensed datasets with reliable provenance.</q></li>
<li><q>We mustn’t get stuck in the past. The Googles and Facebooks of this world are grabbing data off the Internet and crunching through it.
We have to (link: "start playing that game")[(set: $interview_score to it - 1)(set: $response to 3)(go-to: "PB interview reuse A")] if we’re going to stay relevant.</q></li>
</ul>
}](else:)[{
(set: $interview_score to it + 1)
<p><q>Ah yes.
I understand from your colleagues that you managed to find a selection of high quality resources for them to work from, but you ended up having to collect additional data to fill in the gaps.
Do you think you overestimated how far this project could go with third-party data?</q></p>
<p>You put on your wisest expression.</p>
<ul>
<li><q>No, I think the issue was that I should have been (link: "more pragmatic")[(set: $response to 6)(go-to: "PB interview reuse A")].
The trouble was, I ended up rejecting some sources that met a basic level of quality, but would have required a bit more effort to incorporate, and that was a mistake.
It just proves that my greatest weakness is that I’m a perfectionist.</q></li>
<li><q>Yes, I probably did.
Open research is great in principle, but in practice we’re (link: "nowhere near ready")[(set: $interview_score to it - 1)(set: $response to 2)(go-to: "PB interview reuse A")] to reap the benefits of it.</q></li>
</ul>
}](if: $response is 1)[{
<p><q>I agree that having a broader evidence base makes for more robust conclusions, but not if the data in question is a steaming pile of garbage.</q></p>
<p>You attempt to explain that the data was only about (round: (100 * $int_bad_src) / $source_ranking's length )% steaming garbage, but no-one’s interested and the Head of Department is keen to move on.</p>
}](else-if: $response is 2)[{
<p><q>Well, I hope that teaches you a lesson about being young and idealistic.</q></p>
<p>The panel make notes and shuffle papers.</p>
}](else-if: $response is 3)[{
<p><q>I rather think we’ll stay relevant by cutting through the hype and getting to the truth of the matter.</q></p>
<p>You sigh. Some people just don’t get it.</p>
}](else-if: $response is 4)[{
<p><q>The key thing,</q>
chimes in the Professor,
<q>is to concentrate on well documented, licensed datasets with reliable provenance.</q></p>
<p>The Head of Department nods and gives you a meaningful look before continuing.</p>
}](else-if: $response is 5)[{
<p><q>Reasonable, I suppose.
But you must appreciate that these decisions have an impact on workload.</q></p>
<p>You assure the panel you absolutely do.</p>
}](else-if: $response is 6)[{
<p><q>It’s good that you’ve learnt from the experience,</q>
the Professor reassures you,
<q>but I think we can dispense with the clichés.</q></p>
<p>The Head of Department chuckles in a not altogether pleasant manner.</p>
}](else-if: $response is 7)[{
<p><q>Well said. I couldn’t put it better myself,</q>
interjects the Professor.</p>
<p>The Head of Department nods and gives you an approving look before continuing.</p>
}](display: "PB interview workshop"){
<p>You explain that you were responsible for obtaining ethical approval for the research.</p>
<p><q>Yes, that was it.
Vitally important for anyone seeking to get on in my department that they have a firm grasp of ethical issues.
And I can see from my notes here$ellipsis</q></p>
<p>There is a pause while the Head of Department takes a sheet of paper from the pile and consults it in a flamboyantly theatrical manner.</p>
}(if: $consent_attempts is 1)[{
(set: $interview_score to it + 2)
<p><q>$ellipsis that you showed (if: $allowed_to_archive)[an excellent](else:)[a good] grasp of the process and your application went through without much cause for discussion.
That’s the kind of thing I like to see.</q></p>
<p>You glow with pride as you respond.</p>
<ul>
<li><q>I think this demonstrates my (link: "skill at writing applications")[(set: $interview_score to it -1)(set: $response to 5)(go-to: "PB interview consent A")] to satisfy committees, which I see as one of the cornerstones of being an academic.</q></li>
<li><q>It’s extremely important to me that we conduct our research ethically. We have a (link: "moral duty to respect and protect")[(set: $response to 6)(go-to: "PB interview consent A")] our participants, quite apart from our legal obligations.</q></li>
</ul>
}](else:)[(if: $consent_attempts < 4)[{
(set: $interview_score to it + 1)
<p><q>$ellipsis that you obtained approval on the (if: $consent_attempts is 2)[second](else:)[third] attempt.
Not exactly a stellar performance.</q></p>
}](else:)[{
<p><q>[$pre_ellipsis]that the Ethics Board had to reject your application no fewer than (str: $consent_attempts - 1) times before you finally managed to produce something acceptable.</q></p>
<p>There is audible tutting from the interview panel.</p>
<p><q>This is extremely concerning. What do you have to say about it?</q></p>
}]{
<p>You consider how to respond.</p>
<ul>(if: $SD_history contains "SD no consent necessary")[
<li><q>I was (link: "off my head on painkillers")[(set: $interview_score to it - 1)(set: $response to 2)(go-to: "PB interview consent A")] at the time, but I’m much better now, thank you for asking.</q></li>
](else:)[
<li><q>There was nothing wrong with those earlier applications; the (link: "Ethics Board were just being picky")[(set: $interview_score to it - 1)(set: $response to 1)(go-to: "PB interview consent A")].</q></li>
]
<li><q>I admit I was not fully up to speed with the ethical framework at that time, but I’ve (link: "since attended training")[(set: $interview_score to it + 1)(set: $response to 4)(go-to: "PB interview consent A")] and I’m confident I won’t have the same problem in future.</q></li>
<li><q>I’m extremely grateful for the detailed feedback given to me by the Ethics Board, which enabled me to (link: "iron out the kinks")[(set: $response to 3)(go-to: "PB interview consent A")] in our approach.</q></li>
</ul>
}](if: $response is 1)[{
<p>Professor Le Fevre jumps in before the Head of Department can explode at you.</p>
<p><q>I’m sure you understand the Ethics Board has a very difficult job to do, protecting first and foremost the people who agree to participate in our studies, but also the reputation and business of the university.
And of course they are there to protect us researchers from making *career-shattering errors of judgement.*</q></p>
<p>Oh dear. This is not going well, but maybe you can turn it around.
Thankfully, the Head has calmed down again and looks ready to move on.</p>
}](else-if: $response is 2)[{
<p>There are raised eyebrows all round.
When the lady from HR feels compelled to get a word in edgewise, you sense things could be going better.</p>
<p><q>Might I recommend, for everyone’s sake, that you choose a different brand next time.
Or if you’re that ill, do consider taking sick leave.
That’s what it’s there for.</q></p>
<p>The Head of Department nods, and looks at you with concern before turning to the other member of the panel.</p>
}](else-if: $response is 3)[{
<p><q>Are you sure we’re talking about the same Board?</q>
chuckles the Head of Department.</p>
<p><q>I have to say I always found their responses to be on the terse side, so I’m glad you managed to learn something from them,</q>
adds the Professor.</p>
}](else-if: $response is 4)[{
<p><q>Well, let’s hope so. I can’t have any more embarrassments like that in my department.</q></p>
<p><q>I must say,</q>
adds the Professor,
<q>it is commendable that you use setbacks like these as an opportunity for professional development.</q></p>
}](else-if: $response is 5)[{
<p><q>Paperwork certainly takes up more of my time than I would like,</q>
sighs the Professor,
<q>but that’s not exactly the point at hand.</q></p>
<p>The Head of Department gives an ambivalent sort of shrug at that, but then looks at the Professor as if reminded of something.</p>
}](else:)[{
<p><q>Absolutely, well said.</q></p>
<p>A brief discussion ensues in which you put yourself in real danger of being appointed to the Ethics Board yourself.</p>
}](display: "PB interview workshop"){
<p>You explain your role in selecting the instrument that was used for a large proportion of the project’s experiments.</p>
<p><q>Oh yes, I wanted to talk to you about that.
If I’m going to give you more responsibility, I need to know I can trust you to make the right decisions, especially when significant procurement is involved.
So tell me, how did you get on?</q></p>
<p>There is a look in the Head of Department’s eye that suggests a trap.
You realise the panel already know exactly how you got on, and are testing your reaction.</p>
}(if: $inst_attempts is 1)[{(set: $interview_score to it + 2)
<ul>
<li><q>I chose what I thought would be the best tool for the job after (link: "careful consideration")[(set: $response to 4)(go-to: "PB interview equipment A")], and despite the initial teething troubles, I believe my decision has proved to be the correct one.</q></li>
<li><q>Very well. Very well indeed.
But it’s not too surprising: I have a (link: "sixth sense")[(set: $response to 3)(set: $interview_score to it - 1)(go-to: "PB interview equipment A")] about this sort of thing.</q></li>
</ul>
}](else:)[{(if: $inst_attempts is 2)[(set: $interview_score to it + 1)]
<ul>
<li><q>I admit I had (if: $inst_attempts is 2)[a false start with a substandard instrument](else:)[some false starts with substandard instruments], but after (link: "discussing the matter")[(set: $response to 2)(set: $interview_score to it + 1)(go-to: "PB interview equipment A")] with the lab manager I have a much clearer idea of what to look for in a scientific instrument.</q></li>
<li><q>What can I say? (link: "I was unlucky")[(set: $response to 1)(go-to: "PB interview equipment A")] with the first (if: $inst_attempts is 2)[instrument](else:)[few instruments] I tried, but happily we ended up with the right one.</q></li>
</ul>
}](if: $response is 1)[{
<p><q>Unlucky?
That’s one way of putting it.
From the accounts I’ve heard, you were floundering around without much idea of how to choose between the instruments available.
I wouldn’t be at all surprised if you tossed a coin.
Not exactly the sort of decision-making I’m looking for.</q></p>
<p>You were right, they definitely knew more than they were letting on.</p>
}](else-if: $response is 2)[{
<p>Professor Le Fevre looks at you with a mixture of sympathy and disappointment.
<q>You got there in the end, which is a positive outcome.
I hope you have also learned the value of seeking expert advice early in the process.</q></p>
<p>You reassure the panel about the many lessons you have learned from the experience.
This seems to go down well; the Head of Department almost looks ready to forgive you.</p>
}](else-if: $response is 3)[{
<p><q>Erm,</q>
begins Professor Le Fevre, as the Head of Department frowns slightly,
<q>I hope you weren’t relying entirely on gut instinct.</q></p>
<p>You start back-pedalling furiously to avoid the impression that you were gambling with the project budget and happened to get lucky.
The Head of Department looks far from convinced, but changes the subject instead of arguing with you about it.</p>
}](else:)[{
<p><q>That’s what I like to see.
Someone who can make an informed decision, then knows when to stick with it and when to change tack.</q></p>
<p><q>Indeed,</q>
agrees the Professor,
<q>it always helps to keep a calm head on your shoulders and approach the issue rationally.</q></p>
<p>The three of you swap anecdotes about temperamental equipment until the lady from HR taps her watch pointedly.
The Head of Department takes the hint and switches topic.</p>
}](display: "PB interview workshop"){
<p><q>Now, Professor Le Fevre, what was it you were telling me about that workshop you attended?
The one where the fate of our bid for that new national centre of research excellence was decided?</q></p>
}(if: $centre_won)[{(set: $interview_score to it + 2)
<p><q>Well, as I explained to you at the time, I’m sure something fishy was going on.
We were all but ambushed in the final discussion section, but thanks to the speedy information retrieval skills of our candidate here, we managed to turn the tables on the other side.
Those so-and-sos from Ryvalle ended up with very red faces indeed.</q></p>
<p>The Head of Department laughs good-naturedly at this before addressing you again.</p>
<p><q>So it appears we might not have won the bid had it not been for you. How does feel to be a hero?</q>
You shrug modestly at the rhetorical question.
<q>But seriously, how did you manage to come up with the answers so quickly?</q></p>
<p>You smile broadly as you give your reply.</p>
<ul>
<li><q>It’s all in a day’s work for your (link: "friendly neighbourhood Spi— er, Data Manager")[(set: $response to 4)(set: $interview_score to it - 1)(go-to: "PB interview personnel")].</q></li>
<li><q>(link: "Organizing your files properly")[(set: $response to 5)(go-to: "PB interview personnel")] takes a bit more time at the beginning, but makes finding things again so much easier.</q></li>
</ul>
}](else:)[{
<p><q>Well, as I explained to you at the time, we were completely ambushed by those so-and-sos from Ryvalle.
In the final session they launched a bitter attack on our reputation and research and challenged us to refute it.
We did our best, of course, but without the relevant facts to hand I’m afraid the board didn’t find us convincing.</q></p>
<p><q>And why didn’t you have the facts to hand?</q></p>
}(if: $ORG_history contains "ORG retrieval challenge no data")[{
<p><q>You recall we had that that (if: $store_chosen's id is any of (a: "usb", "xhd"))[break-in](else:)[security breach]?
We lost a lot of data in that incident.
Fortunately we were able to salvage the vast majority from backups later on, but still, they weren’t there when we needed them.
What made it worse was that Ryvalle were attacking us on aspects of our work that should have been confidential at that point.
I still find that highly suspicious, but as you know we could never prove anything$ellipsis</q></p>
<p>The Head of Department swings round to face you.
<q>Data security was one of your areas, wasn’t it? What do you have to say about the matter?</q></p>
<ul>
<li><q>There’s always a balance to strike between security and convenience, and I thought if (link: "I chose convenience")[(set: $response to 0)(set: $interview_score to it - 1)(go-to: "PB interview personnel")], we’d have more time to spend on getting proper research done.</q></li>
<li><q>It never occurred to me at the time that (if: $store_chosen's id is any of (a: "usb", "xhd"))[someone might break into the building](else-if: $store_chosen's id is "cloud")[someone outside the team would get hold the link to our project area](else:)[an attacker could get into University systems].
After attending a (link: "security training course")[(set: $response to 2.5)(set: $interview_score to it + 1)(go-to: "PB interview personnel")], I realised how naive that was, and I applied what I learned straight away to our project’s data.</q></li>
</ul>
}](else:)[{
<p><q>We hadn’t anticipated questions on aspects of our work that should still have been confidential at that point.
You recall we had that that (if: $store_chosen's id is any of (a: "usb", "xhd"))[break-in](else:)[security breach]?
I can’t prove the two things are linked$ellipsis</q>
The Professor leaves the thought hanging there for a moment before continuing,
<q>But the long and the short of it is, our files weren’t in a state where we could just pull the information out.</q></p>
<p>The Head of Department swings round to face you.
<q>File organization was one of your areas, wasn’t it? What do you have to say about the matter?</q></p>
<ul>
<li><q>Getting files into proper order would have required a (link: "lot of time and effort")[(set: $response to 1)(set: $interview_score to it - 1)(go-to: "PB interview personnel")] that was better spent on getting proper research done.</q></li>
<li><q>I chose a set of conventions that made sense at the time, but after that incident I saw where I went wrong.
I did some bulk renaming to fix a couple of issues, but I have a (link: "much better idea")[(set: $response to 3)(set: $interview_score to it + 1)(go-to: "PB interview personnel")] of what to do next time.</q></li>
<li><q>I chose the organization scheme so people could *name* their files quickly.
(link: "It was never designed")[(set: $response to 2)(go-to: "PB interview personnel")] to allow people to *find* files quickly.</q></li>
</ul>
}]](if: $response is 0)[{
<p><q>And yet, if you had taken security more seriously, we might have been spared an official investigation, retained priority on a number of promising research strands, and moreover had millions to spend on doing considerably more ‘proper research’.
Alas, we will never know for sure.
Instead, we’re left having to cope with one of the worst brain drains this department has known.</q></p>
<p>You shift uncomfortably in your seat.
Is it getting hot in here?</p>
}](else-if: $response is 1)[{
<p><q>And yet, if you had come up with a better system, we might have had millions to spend on doing considerably more proper research.
Alas, we will never know for sure.
Instead, we’re left having to cope with one of the worst brain drains this department has known.</q></p>
<p>Possibly this is why an opportunity has opened up for your advancement.
It’s an ill wind that blows no-one any good.</p>
}](else-if: $response is 2)[{
<p><q>Are you sure it’s not possible to achieve both aims at once?</q></p>
<p>You concede it probably is, but you couldn’t quite see how to do it at the time.
But the Head of Department isn’t letting this go.</p>
<p><q>And I would have thought having ready access to all the project data would also have made it easier to cope with the turnover of staff we’ve had recently.</q></p>
}](else-if: $response is 2.5)[{
<p><q>I’m glad to hear it.
It’s just a pity you didn’t take that course before causing a major data breach.</q></p>
<p><q>You know,</q>
reflects Professor Le Fevre,
<q>since that time, IT security has been included on the induction schedule for all new starters?
I think that’s a positive development, don’t you?</q></p>
<p>You reply that, given that the department has so many of those, awareness of the issue must be higher than ever.
Then you realise the Head of Department did not wish to be reminded of all the experienced staff that left after Ryvalle won the bid.</p>
}](else-if: $response is 3)[{
<p><q>I’m glad to hear it.
Not that you’re likely to be in that sort of situation a second time.
But what with the turnover of staff we’ve had recently, I imagine well-organized files helps with settling the new folk in.</q></p>
<p>You admit that this has been a benefit you hadn’t anticipated.</p>
}](else-if: $response is 4)[{
<p><q>Let’s not get carried away with the metaphor,</q>
chides Professor Le Fevre, gently.
<q>I’d say it was more down to sensible choices when setting up the filestore than super powers.</q></p>
<p>Yes, you agree, those helped as well.
Sensing a need to regain the favour of the panel, you point out that your well-organized filesystem was easy to explain to new members of staff.</p>
}](else:)[{
<p><q>Well there we have it, that’s the secret!
Maybe I ought to let you have a go at sorting out my files for me.
They’re in a bit of a state.</q></p>
<p>You express doubt you could improve upon the Head of Department’s own filing system, hoping by doing so to demonstrate your mastery of tact.</p>
<p><q>No, no, I doubt anyone except me would be able to find what they need from my hard drive.</q></p>
<p>You propose, amiably, that perhaps a sign of a well-organized filesystem is that it is easy for a newcomer to navigate.
Your newer recruits seemed to get on alright.</p>
}]{
<p><q>Speaking of the recent changes to our staffing portfolio,</q>
says the lady from HR, keen to get proceedings back on track,
<q>it is important that you, as an academic, are able to share your vision with others, especially those newly in post, and inspire them to actuate their potential in pursuit of corporate goals.
Could you tell us, drawing on examples from your own experience, how you would go about integrating a new member of staff into your team so they maximise their performance in a timely manner?</q></p>
<p>This was more the sort of question you were expecting.
You give a smooth and confident answer, full of anecdotes about inducting new research assistants into your project team.
You end up mentioning Maya more than the others.</p>
}(if: $doc_score < 10)[{
<p><q>Ah yes, I had a chat with Maya not so long ago,</q>
interjects Professor Le Fevre.
<q>I gather she was still rather sore about the state of the data she inherited from her predecessor; you know the one I mean.
Poorly documented, I think was the gist of it.
Tell me, did you discuss how to document the data with – who was it now? – with, ah$ellipsis</q></p>
<p><q>Tosin,</q>
you supply,
<q>and yes, the topic did come up.</q></p>
<p><q>So, then, could you help us understand what went wrong?</q></p>
<ul>
<li><q>I don’t think I explained what was required very well. Maybe (link: "some examples would have helped")[(set: $response to 2)(set: $interview_score to it + 1)(go-to: "PB interview publications")]?</q></li>
<li><q>Tosin just (link: "couldn’t get his head around")[(set: $response to 1)(go-to: "PB interview publications")] what I was telling him.</q></li>
</ul>
}](else:)[{(set: $interview_score to it + 2)
<p><q>Ah yes, I had a chat with Maya not so long ago,</q>
interjects Professor Le Fevre.
<q>I was impressed with how soon she submitted that paper after starting with us.
Very bright.
But she said she couldn’t have done it if her predecessor – what was his name? – hadn’t left things in such a well ordered state.
Did you have a hand in that?</q></p>
<p>You mention, among other things, that you helped Tosin document his data.</p>
<p><q>Ah yes. Could you give me an example of what sort of advice you give on that?</q></p>
<ul>
<li><q>It’s always best to document data as you generate and analyse it, while it’s (link: "fresh in your mind")[(set: $response to 3)(go-to: "PB interview publications")].</q></li>
<li><q>(link: "Don’t stress about it")[(set: $response to 3)(set: $interview_score to it - 1)(go-to: "PB interview publications")] too much: even bad documentation is better than no documentation at all.</q></li>
<li><q>It helps to (link: "think about who might look at the data")[(set: $response to 3)(go-to: "PB interview publications")] and what they might use it for, to help you decide what you need to say about it.</q></li>
</ul>
}](if: $response is 1)[{
<p><q>Really? From what I remember of him, he always seemed a capable young man. How odd.</q></p>
}](else-if: $response is 2)[{
<p><q>Speaking personally, I’ve always found a good set of examples to be the best way to understand new abstract concepts.</q></p>
}](else:)[{
<p><q>Thank you, that’s most illuminating.</q></p>
}]{
<p><q>This is all very well,</q>
sighs the Head of Department,
<q>but as I said before, the real test of an academic is results, so I think it’s time we had a look at your recent publications.
You know the score: publish or perish.</q></p>
<p>You are about to pull out your CV, and thereby validate your decision to bring it, when the lady from HR passes round copies of a list of publications.
You are perturbed to find it contains not only your accepted papers but a couple that are still under review.
There are spies everywhere.</p>
}(if: $paper_status is 'aborted')[{
<p>The panel scan down the list in thoughtful silence.
<q>Not exactly endangering the rain forest with this list, are you?</q>
comments the Head of Department after a brief pause.</p>
<p>You explain about having to abandon several papers due to a problem with your data.
You don’t really want to go into detail but the panel drag it out of you.</p>
<ul>
<li><q>We were (link: "totally screwed over")[(set: $response to 1)(go-to: "PB interview conclusion")] by the instrument manufacturers.</q></li>
<li><q>We could have corrected the error if we’d been (link: "more thorough documenting our data collection")[(set: $response to 2)(set: $interview_score to it + 1)(go-to: "PB interview conclusion")].</q></li>
</ul>
}](else-if: $paper_status is 'rejected')[{
<p>As the panel scan down the list in thoughtful silence, you realise in horror that your rejected papers are also listed.
And then the Head of Department starts pointing them out to you.</p>
<p><q>This one here, for example. What was the issue with this one?</q></p>
<p>You explain sheepishly that the journal mandated data sharing, but due to some unfortunate early decisions you weren’t able to oblige.</p>
<ul>
<li><q>I should have (link: "considered data sharing right at the start")[(set: $response to 4)(set: $interview_score to it + 1)(go-to: "PB interview conclusion")] of the project.</q></li>
<li><q>How was I supposed to know this would be an issue? (link: "It’s never come up before.")[(set: $response to 3)(go-to: "PB interview conclusion")]</q></li>
</ul>
}](else-if: $paper_status is 'gazumped')[{(set: $interview_score to it + 1)
<p>As the panel scan down the list in thoughtful silence, you realise in horror that your rejected papers are also listed.
And then the Head of Department starts pointing them out to you.</p>
<p><q>This one here, for example. What was the issue with this one?</q></p>
<p>You explain with no small degree of frustration that you tried to do the right thing by releasing your data openly, but a competitor abused your principled approach and stole priority for the results.</p>
<p><q>That is most unfortunate,</q>
sympathises Professor Le Fevre.</p>
<p><q>That’s one way of putting it,</q>
you reply, and take a deep breath.
Once you have regained your composure, you offer your thoughts on the experience.</p>
<ul>
<li><q>Perhaps this whole Open Data approach is a (link: "massive mistake")[(set: $response to 5)(go-to: "PB interview conclusion")].</q></li>
<li><q>On reflection (link: "I should have used a repository")[(set: $response to 7)(set: $interview_score to it + 1)(go-to: "PB interview conclusion")], or at least embargoed the data until the paper was accepted.</q></li>
<li><q>I wonder if we could (link: "sue them")[(set: $response to 6)(set: $interview_score to it - 1)(go-to: "PB interview conclusion")]?</q></li>
</ul>
}](else:)[{(set: $interview_score to it + 2)
<p>The panel scan down the list in thoughtful silence.
<q>Quite an impressive list,</q>
admits the Head of Department after a moment or two.
<q>I see a few open access journals down here. Are you sure they are adequately prestigious?</q></p>
<ul>
<li><q>(link: "Yes")[(set: $response to 9)(set: $interview_score to it - 1)(go-to: "PB interview conclusion")].</q></li>
<li><q>(link: "No")[(set: $response to 8)(set: $interview_score to it - 1)(go-to: "PB interview conclusion")].</q></li>
<li><q>While you do have to be careful of predatory publishers, the ones I submit to are (link: "highly respected open access journals")[(set: $response to 10)(go-to: "PB interview conclusion")] with proven high impact.</q></li>
</ul>
}](if: $response is 1)[{
<p><q>Was there no way the data could have been corrected?</q>
asks Professor Le Fevre.</p>
<p>You explain that it might have been possible had you kept more detailed records, but alas$ellipsis</p>
<p><q>Well, sorry to rub it in, but I think there’s a lesson in there somewhere.</q></p>
}](else-if: $response is 2)[{
<p><q>If nothing else, that’s one to add to the instructive anecdote collection, isn’t it?</q>
quips Professor Le Fevre.</p>
}](else-if: $response is 3)[{
<p><q>Well, it was in the data management plan, wasn’t it?</q>
asks Professor Le Fevre, flipping through to find it from the pile of paperwork.</p>
<p><q>Well, yes,</q>
you admit,
<q>but I didn’t think it would turn out to be a *real* issue.</q></p>
<p>There is a brief tumbleweed moment that seems to last twenty minutes.</p>
}](else-if: $response is 4)[{
<p><q>You did, didn’t you? In the data management plan?</q>
asks Professor Le Fevre, flipping through to find it from the pile of paperwork.</p>
<p><q>Well, yes,</q>
you admit sheepishly,
<q>but you know how it is: you write it, you send it off, and never look at it again$ellipsis</q></p>
<p>Professor Le Fevre gives a kind of nod that suggests that this is an oft-reported but seldom experienced phenomenon.</p>
}](else-if: $response is 5)[{
<p><q>It is what I’ve long suspected.</q>
scoffs the Head of Department.</p>
<p><q>I think that’s a rather pessimistic view. Open Data drives up standards and makes some truly impressive novel research possible,</q>
counters Professor Le Fevre.</p>
<p>You wait to see if the lady from HR has an opinion on the subject but she declines to offer one.</p>
}](else-if: $response is 6)[{
<p>The panel collectively look alarmed at the suggestion.</p>
<p><q>I rather suspect, given the likely level of investment their legal team receives compared to ours, that pursuing a litigious route would prove$ellipsis uneconomical,</q>
opines Professor Le Fevre carefully.</p>
}](else-if: $response is 7)[{
<p><q>Yes, I fear that would have been the wiser course of action. Still, we live and learn,</q>
sighs Professor Le Fevre.</p>
}](else-if: $response is 8)[{
<p><q>I mean to say,</q>
you splutter, reacting to the row of exasperated faces in front of you,
<q>that I chose them because of their scope and policies, not some flawed Impact Factor metric. They’re all perfectly respectable$ellipsis</q></p>
<p>Professor Le Fevre seems reassured but the Head of Department obviously remains dubious.</p>
}](else-if: $response is 9)[{
<p><q>I envy your confidence,</q>
says the Head of Department, wryly.</p>
<p><q>They all look fine to me,</q>
offers Professor Le Fevre.</p>
}](else:)[{
<p>Professor Le Fevre grins while the Head of Department scowls. It looks you might have stumbled into a debate the two of them have been having.</p>
}]{
<p><q>Well, I think that’s all we wanted to ask you at this stage,</q>
(if: $response is 5)[she says](else:)[says the lady from HR], apparently keen to wrap this up before (if: $interview_score is 10)[lunch](else:)[any more awkwardness ensues].
<q>Is there anything you wanted to ask or talk to us about?</q></p>
<p>You have, of course, prepared a topic to bring up at this juncture, and the [[interview concludes->PB interview result]] more or less as you planned.</p>
}{
(set: $AD_PB_history to it + (a: (passage:)'s name))
(if: $AD_PB_history contains "PB interview DMP")[
<p>On the walk back to your office, you reflect on what just happened.
(if: $interview_score < 4)[
If screaming, <q>Aargh!</q> inside your head a lot can be called reflecting.
You hope desperately that your record as a researcher will outshine what went on in that room.
](else-if: $interview_score < 8)[
It could have gone better, it could have gone worse.
You just hope that, taking into consideration your record as a researcher, you’ve done enough to convince the Board that you’re worthy.
](else:)[
It seemed to go pretty well, but what the Head of Department said about results troubles you.
You have a feeling your track record will have drowned out a lot of what you said.
]</p>
](else:)[
<p>The interview is one of the toughest and most gruelling experiences of your life.
On the walk back to your office afterwards, you reflect that you held your ground pretty well, but you keep thinking of better answers you could have given.
So frustrating!</p>
]
<p>How did you do?
Cruelly, you have to wait over a week for a (link-show: "decision", ?spacer).</p>
}|spacer)[{
<p>(print: ". ")(set: $int to 0)
(live: 0.5s)[
(if: $int is 6)[(stop:)(show: ?desk)](else:)[(set: $int to it + 1)]
(str-repeated: $int, ". ")
]</p>
}]|desk)[{
<p>You come in one morning and there is an envelope on your desk. You (link-show: "open it", ?result).</p>
}]|result)[{
(if: $AD_PB_history contains "PB interview DMP")[
(if: $score <= ($max_score / 5))[
(go-to: "PB ending disgrace")
](else-if: $score <= (2 * $max_score / 5))[
(if: $interview_score < 6)[
(go-to: "PB ending disgrace")
](else:)[
(go-to: "PB ending mediocrity")]
](else-if: $score <= (3 * $max_score / 5))[
(go-to: "PB ending mediocrity")\
](else-if: $score <= (4 * $max_score / 5))[
(if: $interview_score < 6)[
(go-to: "PB ending mediocrity")
](else:)[
(go-to: "PB ending success")]
](else:)[
(go-to: "PB ending success")]
](else:)[
(if: $score <= ($max_score / 3))[
(go-to: "PB ending disgrace")\
](else-if: $score <= (2 * $max_score / 3))[
(go-to: "PB ending mediocrity")
](else:)[
(go-to: "PB ending success")]]
}]{
(set: $AD_PB_history to it + (a: "PB ending"))
<p>This is what it says.</p>
<blockquote>
<p><q>I regret to inform you that your application has been unsuccessful$ellipsis</q></p>
</blockquote>
<p>You toss the letter on the desk in disappointment.
You need to take a moment before reading the rest.
You notice, however, that another, seemingly identical envelope had been hidden under the first.
Curious, you (link-show: "open it", ?summons).</p>
}|summons)[{
<blockquote>
<p><q>The Department of Human Resources would like to meet with you regarding your professional conduct.
An appointment has been made for you$ellipsis</q></p>
</blockquote>
<p>Uh oh, that sounds really, really bad.</p>
<p>After checking your schedule, you start subscribing to job alerts and updating your CV again.</p>
<p style='text-align:center;'><img src='img/facepalm.svg' alt='Uh oh!'></p>
<p style='text-align:center;'><strong>Your research data adventure is over.</strong></p>
<p style='text-align:center;'>
<i>(display: "Set Rank")In that game you achieved a score of $score out of a possible $max_score.
(if: $full_score > $max_score)[
(set: $bonus to ($full_score - $max_score))
(But you missed out on $bonus bonus point(unless: $bonus is 1)[s].)
](print: " ")
Better luck next time!</i></p>
<p style='text-align:center;'><i>Would you like to view the breakdown of your [[score->Scorecard]],
view [[credits and links->Credits]] to further information,
reset your score and (link: "choose a starting point")[(display: "Scoring")(go-to: "Choose level")],
or reset everything and (link: "start again")[(reload:)] from scratch?</i></p>
}]{
(set: $AD_PB_history to it + (a: "PB ending"))
<p>This is what it says.</p>
<blockquote>
<p><q>I regret to inform you that your application has been unsuccessful on this occasion$ellipsis
The Board were impressed with your application but did not feel you demonstrated your skills and experience to the required level$ellipsis
I would encourage you to reapply once you have gained more experience and addressed the above points$ellipsis</q></p>
</blockquote>
<p>You read the letter again, more carefully this time, and find a mixed bag of compliments and criticism.
It is encouraging, but you are clearly not star material, at least not yet.</p>
<p>You will have to make a few changes before your career can really take off.</p>
<p style='text-align:center;'><img src='img/give-up.svg' alt='Oh well...'></p>
<p style='text-align:center;'><strong>Your research data adventure is over, for now.</strong></p>
<p style='text-align:center;'>
<i>(display: "Set Rank")In that game you achieved a score of $score out of a possible $max_score.
(if: $full_score > $max_score)[
(set: $bonus to ($full_score - $max_score))
(But you missed out on $bonus bonus point(unless: $bonus is 1)[s].)
](print: " ")
Better luck next time!</i></p>
<p style='text-align:center;'><i>Would you like to view the breakdown of your [[score->Scorecard]],
view [[credits and links->Credits]] to further information,
reset your score and (link: "choose a starting point")[(display: "Scoring")(go-to: "Choose level")],
or reset everything and (link: "start again")[(reload:)] from scratch?</i></p>
}{
(set: $AD_PB_history to it + (a: "PB ending"))
<p>This is what it says.</p>
<blockquote>
<p><q>I am pleased to inform you that your application has been successful$ellipsis</q></p>
</blockquote>
<p>You let out a whoop of astonishment and delight before reading the rest of the letter.
But, quite honestly, that’s all you really need to know.</p>
<p>A glittering academic career awaits you.</p>
<p style='text-align:center;'><img src='img/victory.svg' alt='Victory!'></p>
<p style='text-align:center;'><strong>Your research data adventure is complete.</strong></p>
<p style='text-align:center;'>
<i>(display: "Set Rank")In that game you achieved a score of $score out of a possible $max_score.
(if: $full_score > $max_score)[
(set: $bonus to ($full_score - $max_score))
(But you missed out on $bonus bonus point(unless: $bonus is 1)[s].)
](if: $score is $full_score)[
You have achieved the rank of Supreme Data Boffin.(set: $rank to "Supreme Data Boffin")
](else-if: $score is $max_score)[
You have achieved the rank of Veritable Data Boffin.(set: $rank to "Veritable Data Boffin")
](print: " ")
Well done!</i></p>
<p style='text-align:center;'><i>Would you like to view the breakdown of your [[score->Scorecard]],
view [[credits and links->Credits]] to further information,
reset your score and (link: "choose a starting point")[(display: "Scoring")(go-to: "Choose level")],
(unless: $score is $max_score)[or ]reset everything and (link: "start again")[(reload:)] from scratch(if: $score is $max_score)[,
or simply bask in the glory of your expertise in research data management
]?</i></p>
}<!-- End of game -->{
(set: $feedback to (dm:))
(set: $full_score to 0)
(set: $max_score to 0)
(set: $score to 0)
(set: $displayed_score to 0)
(set: $rank to "Unranked")
}{
(set: $store_chosen to (dm: "id", "net"))
(set: $org_backup_state to "auto")
(set: $centre_won to true)
(set: $DMP_history to (a:))
(set: $SD_history to (a:))
(set: $ORG_history to (a:))
(set: $DOC_history to (a:))
(set: $AD_PB_history to (a:))
(set: $ellipsis to ' . . .')
(set: $pre_ellipsis to '. . . ')
}{
(if: $score < ($max_score / 3))[(set: $rank to "Data Novice")]
(else-if: $score < (2 * $max_score / 3))[(set: $rank to "Data Wrangler")]
(else:)[(set: $rank to "Data Boffin")]
(set: $displayed_score to $score)
}(set: $breakpoint to false)(replace: "Archiving")[<span class="glossary">(link-reveal: "Archiving")[(alert: "Archiving is the activity which ensures that data is properly selected, stored, can be accessed and that its logical and physical integrity is maintained over time, including security and authenticity.")]</span>]\
(replace: "chain of custody")[<span class="glossary">(link-reveal: "chain of custody")[(alert: "The chain of custody records the sequence of custody, control, transfer, analysis, and disposition of materials over time. Within the context of research data management, it refers to how research data was secured from the time it was collected to the time it was used in decision making.")]</span>]\
(replace: "curation")[<span class="glossary">(link-reveal: "curation")[(alert: "Curation is a process of maintaining and adding value to data throughout its lifecycle.")]</span>]\
(replace: "data archive ")[<span class="glossary">(link-reveal: "data archive")[(alert: "A data archive is an infrastructure that provides storage, preservation and long-term access for curated data.")]</span> ]\
(replace: "data archives")[<span class="glossary">(link-reveal: "data archives")[(alert: "A data archive is an infrastructure that provides storage, preservation and long-term access for curated data.")]</span>]\
(replace: "data discovery services")[<span class="glossary">(link-reveal: "data discovery services")[(alert: "A data discovery service is a website or other service you can use to search for datasets from different sources.")]</span>]\
(replace: " dataset ")[ <span class="glossary">(link-reveal: "dataset")[(alert: "A dataset comprises a single file or a collection of data, produced in the course of research, and its associated metadata; that is, its abstract, license, and any other relevant information that enables understanding and usage of the data in a legal way.")]</span> ]\
(replace: "documentation")[<span class="glossary">(link-reveal: "documentation")[(alert: "In this context, documentation refers to any digital annotations or supplementary context files which explain the production, provenance, processing or interpretation of research data.")]</span>]\
(replace: "could encrypt")[could <span class="glossary">(link-reveal: "encrypt")[(alert: "Encryption means scrambling information or data in such a way that only someone with the right code or password can unscramble it.")]</span>]\
(replace: "licence")[<span class="glossary">(link-reveal: "licence")[(alert: "A licence is a legal instrument which stipulates the rights that exist in an item of intellectual property and the permissions granted by the right-holders to any users of the item.")]</span>]\
(replace: "metadata")[<span class="glossary">(link-reveal: "metadata")[(alert: "Metadata is ‘data about data’, such as its file size. A metadata standard defines a set of metadata elements (attributes, relationships) that can be understood by multiple independent systems.")]</span>]\
(replace: "network drive")[<span class="glossary">(link-reveal: "network drive")[(alert: "A network drive or mapped drive is a drive or share on another computer or server on the network. The network drive is accessed similarly to a local disk drive, but the data is transferred to or from a remote computer over a network connection. With a university network drive, the storage area is managed by university IT staff.")]</span>]\
(replace: "README ")[<span class="glossary">(link-reveal: "README")[(alert: "A README file is a form of documentation that includes information about the other files in a directory in order to help users understand how information is organized.")]</span>]\
(replace: "research data lifecycle")[<span class="glossary">(link-reveal: "research data lifecycle")[(alert: "The research data lifecycle refers to the way in which data is handled and managed at different stages of research: from the early planning stages, through data collection and active data organization, storage and processing, to the final deposition of data in an archive for future access and preservation.")]</span>]\
(replace: "research data management")[<span class="glossary">(link-reveal: "research data")[(alert: "Research data is any information that has been collected, observed, generated, or created to answer novel research questions and validate research findings. This may include tabular data; multimedia files such as images, audio, and video; software source code; and so on.")]</span> management]\
(replace: "traceability")[<span class="glossary">(link-reveal: "traceability")[(alert: "Traceability is the ability to show all changes to data between the original data and the data analysed for a study.")]</span>]\
(if: (history:)'s length > 0 and not ((passage:)'s name is in (a: "Introduction", "Game suspended", "Score so far")))[{
<hr>
<div style='font-size:smaller;'>
<ul class='inline'>
<li>*Progress:*
(if: $DMP_history contains "DMP start")[<span title="Applying for funding: played">⚫</span>](else:)[<span title="Applying for funding: not played">⚪</span>]
(if: $SD_history contains "SD start")[<span title="Starting work: played">⚫</span>](else:)[<span title="Starting work: not played">⚪</span>]
(if: $ORG_history contains "ORG start")[<span title="Organising your data files: played">⚫</span>](else:)[<span title="Organising your data files: not played">⚪</span>]
(if: $DOC_history contains "DOC start")[<span title="Describing your dataset: played">⚫</span>](else:)[<span title="Describing your dataset: not played">⚪</span>]
(if: $AD_PB_history contains "AD start")[<span title="Publishing your work: played">⚫</span>](else:)[<span title="Publishing your work: not played">⚪</span>]
(if: $AD_PB_history contains "PB ending")[<span title="Adventure complete">⚫</span>](else:)[<span title="Adventure incomplete">⚪</span>]</li>
<li>*Score:* $displayed_score</li>
<li>*Rank:* $rank</li>
(unless: $breakpoint)[<li>(link:"Restart")[(reload:)]</li>]
</ul>(save-game:"A")(if: $breakpoint)[
<p>Would you like to [[drop out->Game suspended]] at this point and review your progress?</p>]
</div>
}](display: "Footer"){
<div style='font-size:smaller;'>
<p><em>If you spot any weirdness (e.g. pink error messages), please contact (link-reveal: "Alex Ball")[(open-url: "http://www.bath.ac.uk/person/503123")] and tell him where you are in the game and how to reproduce the issue, so we can fix it.</em></p>
<p><em>In the finished game, the following information will only be shown at the end.</em></p>
<p>You have currently scored $score out of a maximum $max_score points.</p>
(if: (history:)'s length > 0)[(display: "Scorecard")]
</div>
}<div style='text-align:center;'>\
(set: $ellipsis to ' . . .')(set: $pre_ellipsis to '. . . ')\
<p>(link-goto: '<img src="img/cover.png" alt="Research Data Management Adventure, designed and written by the University of Bath and Stellenbosch University" />', "Introduction")</p>\
<p>(if: (saved-games:) contains "A")[Would you like to (link: "resume your earlier game")[(load-game: "A")],
or start a new [[Research Data Management Adventure->Introduction]]?](else:)[Begin your [[Research Data Management Adventure->Introduction]]…]</p>\
</div>{
<h1>Research Data Management Adventure</h1>
<p>Welcome. You are about to embark on an adventure through the tricky but rewarding world of research data management.</p>
<p>You will take the role of a staff researcher in a University department, working on a project from its very beginnings to its closing stages.
So long as nothing bad happens in the meantime, of course.
But then, what’s the worst that can happen?</p>
<p>Do you want to play as a (link: 'qualitative')[(set: $type to 'qual')(go-to: 'Training option')] researcher working with human participants or as an (link: 'experimental')[(set: $type to 'quant')(go-to: 'Training option')] researcher working in the natural sciences? </p>
}{
<p>Would you like a quick introduction to how to play this game?</p>
<ul>
<li>
<p>[[Yes, please->Training start]].</p>
</li>
<li>
<p>[[No, thanks, I’ll start straight away->Choose level]].</p>
</li>
</ul>
}{
<p>What happened on the last page is something that happens a lot in this game.
At the end of that page was a list of options written as links, and you followed the link that seemed best.
(If you don’t like any of the options on a given page, pick the least bad option instead.)
Then you were taken to this new page.</p>
<p>But that’s not the only thing that can happen.
Sometimes, you'll make a choice by clicking on the same link again and again until you see an option you like.
You can tell links like this because you’ll be asked to cycle through the possibilities:
(cycling-link: bind $training_cycle, "click me to see the second option", "click me to see the third option", "click me to see the first option again") (or...)</p>
<p>Since you stayed on the same page while making that decision, there will be a link further down the page that ‘fixes’ your choice, [[like this->Training two]].</p>
}{
<p>I see you went for the (if: $training_cycle contains "second")[first](else-if: $training_cycle contains "third")[second](else:)[third] option.</p>
<p>You may also come across links that reveal extra text when you select them.
(link: "Here’s one")[Sometimes these links will have an impact on your adventure: they might narrow down your options, for example.
But often I use these links in a friendly way, so you only see text when you are ready to read it].
You should be able to tell what will happen from the context.</p>
<p>A special case of this is where I’ll give you a list and ask you to pick several things from it.
For example, it might be lunchtime and you’re wondering what food to take from the buffet:</p>
<ul>(set: $lunch to (a:))(set: $binned_lunch to (a:))(set: $buffet to (a: "ham sandwich", "vegan wrap", "salad", "crisps", "apple", "fruit cake"))(for: each _el, ...$buffet)[
<li>(set: _hk to (words: _el)'s 1st)(upperfirst: _el):
(hook: "a" + _hk)[Take?] (hook: "r" + _hk)[Leave?]
(click: (hooks-named: "r" + _hk))[(replace: (hooks-named: "r" + _hk))[Left on table.](replace: (hooks-named: "a" + _hk))[](set: $binned_lunch to it + (a: _el))]
(click: (hooks-named: "a" + _hk))[(replace: (hooks-named: "r" + _hk))[](replace: (hooks-named: "a" + _hk))[Taken.](set: $lunch to it + (a: _el))]
</li>]
</ul>
<p>There are two things to note here.
The first is that if you make a mistake, you can reset your progress so far on this screen by reloading the page.
(It’s the F5 key in most desktop browsers; try it now if you like.)
The other is that you might not see the [[link to move on->Training three]] until you have made a decision about every option.</p>
}{(event: when $lunch's length + $binned_lunch's length is $buffet's length)[
<p>Well done for being thorough.</p>
]}{
<p>(if: $lunch's length is 0)[You chose to go hungry. Suit yourself.](else:)[You have the following food on your plate: (folded: _food making _allfood via _allfood + ", " + _food, ...(altered: _item via _item, ...$lunch)).]</p>
<p>A side effect of being able to reload the page is that you should be able to close your browser, open it again at this URL, and pick up where you left off.
(You have to use the same browser and keep your cookies: it won’t work in private browsing mode.)
Now might be a good time to check it works for you.</p>
(set: $windows to (a:(dm:
"shape", "round",
"sight", "geodesic dome"
),(dm:
"shape", "square",
"sight", "tower block"
),(dm:
"shape", "triangular",
"sight", "pyramid"
)))
(set: $window to (dm:))
<p>Back to the links.
Sometimes I’ll offer you several equally promising options.
Pick one and see what happens:</p>
}(display: "Training window")(unless: $window is (dm:))[{
<p>You can see a (print: $window's sight).</p>
}](if: $windows's length > 0)[{
<ul>(for: each _el, ...$windows)[
<li>
(link: "Look out of the " + _el's shape + " window")[(set: $window to _el)(set: $windows to it - (a: _el))(go-to: "Training window")].
</li>]
</ul>
}](else:)[{
<p>On most occasions where you can work through a series of options like this, I’ll let you know by asking what you want to do *first* or *next*.
But sometimes you’ll have to work it out for yourself.</p>
<p>You might have noticed from the page footer that I will be awarding points for your decisions.
When you see a message that your score has gone up, you can select the [[score->Score so far]] link to see why you were given that score, then resume playing.
Give it a try.</p>
<p>Assuming you did, you should now see two curved arrows over on the left.
The top one is an undo button. It will erase everything you’ve done on the current page *and* the one before.</p>
<p>The second one is a redo button that will replay what you did last time on the current page.</p>
<p>Using these buttons is basically cheating, but I’ve left them there in case you click on a link by accident.
You can try out both buttons now if you like; I won’t judge you.</p>
<p>This page is getting a bit long so let’s [[start a new one->Training four]].</p>
}]{
<p>There are many times when I do that in the game as well.
You won’t have to make a decision on every page.
As in life, sometimes things just happen.</p>
<p>There are also a few special links you should be aware of.
Down at the bottom you can see ‘Restart’.
That link erases all your progress and returns you to the very beginning.
Don’t press it unless you really have to.</p>
<p>On some screens, I’ll replace the ‘Restart’ link with an invitation to drop out of the game and look at the breakdown of your score.
You will be able to choose whether to pick up again where you left off or start again.</p>
<p>Lastly, if you see a word with a blue dotted underline, like <span class="glossary">(link-reveal: "Jabberwock")[(alert: "The Jabberwock is a mythical creature invented by Lewis Carroll, often pictured as a particularly grotesque dragon.")]</span>, that means you can click on it to see a pop-up definition.
These links make no difference to your progress through the game.</p>
<p>I think that’s all you need to know, but there’s one [[last decision->Choose level]] to make before you start$ellipsis</p>
}(if: visits is 1)[{
<p>You can jump into this adventure at one of five entry points.
The best thing to do is start at the beginning with <q>Applying for funding</q> but if you’re in a workshop or you want to replay a particular section, you can jump to the right place using one of the other links below.</p>
<p>Ready? Let’s go! Select a link to begin your adventure.</p>
}](else:)[{
<p>Where do you want to start from this time?</p>
}]{
<ol>
<li>
<p>[[Applying for funding->DMP start]]</p>
</li>
<li>
<p>[[Starting work on your project->SD start]]</p>
</li>
<li>
<p>[[Organising your data files->ORG start]]</p>
</li>
<li>
<p>[[Describing your dataset->DOC start]]</p>
</li>
<li>
<p>[[Publishing your work->AD start]]</p>
</li>
</ol>
}{
<p style='text-align:center;'><img src='img/facepalm.svg' alt='Uh oh!'></p>
<p style='text-align:center;'><strong>Your research data adventure ends here.</strong></p>
<p style='text-align:center;'><i>(display: "Set Rank")In that game you achieved a score of $score out of a possible $max_score.
(if: $full_score > $max_score)[(set: $bonus to ($full_score - $max_score))(But you missed out on $bonus bonus point(unless: $bonus is 1)[s].)]
Better luck next time!</i></p>
<p style='text-align:center;'><i>Would you like to view the breakdown of your [[score->Scorecard]], view [[credits and links->Credits]] to further information, reset your score and (link: "choose a starting point")[(display: "Scoring")(go-to: "Choose level")], or reset everything and (link: "start again")[(reload:)] from scratch?</i></p>
}{
<p>Here’s how your score breaks down:</p>
<ul>(if: "DMP" is in $feedback)[
<li>
<p><strong>Applying for funding</strong></p>
<ul>(for: each _item, ...($feedback's DMP))[
<li>(print: _item)</li>]
</ul>
</li>](if: "SD" is in $feedback)[
<li>
<p><strong>Starting work on your project</strong></p>
<ul>(for: each _item, ...($feedback's SD))[
<li>(print: _item)</li>]
</ul>
</li>](if: "ORG" is in $feedback)[
<li>
<p><strong>Organising your data files</strong></p>
<ul>(for: each _item, ...($feedback's ORG))[
<li>(print: _item)</li>]
</ul>
</li>](if: "DOC" is in $feedback)[
<li>
<p><strong>Describing your dataset</strong></p>
<ul>(for: each _item, ...($feedback's DOC))[
<li>(print: _item)</li>]
</ul>
</li>](if: "ADPB" is in $feedback)[
<li>
<p><strong>Publishing your work</strong></p>
<ul>(for: each _item, ...($feedback's ADPB))[
<li>(print: _item)</li>]
</ul>
</li>]
</ul>
}(if: length of (datanames: $feedback) > 0)[(display: "Feedback")](else:)[{
<p>I’m sorry, I just don't know what to tell you.</p>
}]{
<p>(if: $score is $full_score)[Well done!](else:)[If you would like to try again,
you can either reset your score and (link: "choose a starting point")[(display: "Scoring")(go-to: "Choose level")],
or reset everything and (link: "start again")[(reload:)] from scratch.
Alternatively, you can view [[credits and links->Credits]] to further information.]</p>
}{
<p>So far, you have achieved a score of $score out of a possible $max_score.</p>
}(if: length of (datanames: $feedback) > 0)[(display: "Feedback")](else:)[{
<p>Each time I award points – positive, zero, or negative! – I’ll add a line here to tell you why I gave you that score, and how that compares to the maximum.</p>
}]{
<p>(link: "Resume playing.")[(undo:)]</p>
}{
<p>Thanks for playing this extract from the Research Data Adventure.
In the section you played, you achieved a score of $score out of a possible $max_score.
(if: $full_score > $max_score)[(set: $bonus to ($full_score - $max_score))(But you missed out on $bonus bonus point(unless: $bonus is 1)[s].)]</p>
}(if: length of (datanames: $feedback) > 0)[(display: "Feedback")]{
<p>What would you like to do now?</p>
<ul>
<li>
<p>(link: "Resume playing")[(undo:)] from where you stopped.</p>
</li>
<li>
<p>Reset your score and (link: "choose a starting point")[(display: "Scoring")(go-to: "Choose level")].</p>
</li>
<li>
<p>Reset everything and (link: "start again")[(reload:)] from scratch.</p>
</li>
<li>
<p>View [[credits and links->Credits]] to further information.</p>
</li>
</ul>
}{
<p>This game is brought to you by the University of Bath and Stellenbosch University.
It was written by Alex Ball (Bath), Samuel Simango (Stellenbosch) and Nushrat Khan (Bath).</p>
<p>The images are the work of Adrian Nardone (Bath), David Stacey (Bath), and Noun Project users Adrien Coquet, Becris, DailyPM, Edward Boatman, Eucalyp, Gan Khoon Lay, Hayley Warren, MC, and Peter van Driel.</p>
}(display: "Guidance"){
<p>If you would like to give us feedback on this game, you can contact Alex Ball via the <a href="mailto:research-data@bath.ac.uk">Research Data Service</a> at the University of Bath,
or you can raise an issue via our (link-reveal: "Issue Tracker")[(open-url: "https://gitlab.com/rdm-games/rdm-adventure/-/issues")].</p>
}{
<p>If you would like to know more about Research Data Management, please visit the guidance pages of your own institution.
Here are the ones that we provide:</p>
<ul>
<li>
<p>(link-reveal: "University of Bath Library guidance on research data")[(open-url: "https://library.bath.ac.uk/research-data")]</p>
</li>
<li>
<p>(link-reveal: "Stellenbosch University Library guidance on Research Data Management")[(open-url: "https://libguides.sun.ac.za/ResearchDataManagement")]</p>
</li>
</ul>
}↶↷