or
or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up
Syntax | Example | Reference | |
---|---|---|---|
# Header | Header | 基本排版 | |
- Unordered List |
|
||
1. Ordered List |
|
||
- [ ] Todo List |
|
||
> Blockquote | Blockquote |
||
**Bold font** | Bold font | ||
*Italics font* | Italics font | ||
~~Strikethrough~~ | |||
19^th^ | 19th | ||
H~2~O | H2O | ||
++Inserted text++ | Inserted text | ||
==Marked text== | Marked text | ||
[link text](https:// "title") | Link | ||
 | Image | ||
`Code` | Code |
在筆記中貼入程式碼 | |
```javascript var i = 0; ``` |
|
||
:smile: | ![]() |
Emoji list | |
{%youtube youtube_id %} | Externals | ||
$L^aT_eX$ | LaTeX | ||
:::info This is a alert area. ::: |
This is a alert area. |
On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?
Please give us some advice and help us improve HackMD.
Do you want to remove this version name and description?
Syncing
xxxxxxxxxx
Intro
Always ask questions and give comments at the bottom, unless we are actively discussing another section. We add section headers as necessary.
Poll: have you used HackMD before?
yes: oooooooooooo
no: oooooo
Do you have HackMD open?:
yes: ooooooooooooooo
no: o
How did you vote without having HackMD open?
Proposed for day 1
Anyone may add a session ideas here. If possible, please indicate the duration (up to 70 min = full Session). Please describe it in a sentence or two like this:
Getting funding for software projects (~ 30 min - hopefully) (Thomas): Two fields of discussion: a) Where and how to get funding? and b) How can we get more funding for scientific software? We hope that we can in the end generate some document that 1) Lists potential sources of funding (from small scale 2-3 month student projects) to larger scale funding. and 2) Offers arguments for public funding software projects and discusses counter-arguments which can be used as a starting point to help people argue for more funding with their respective local funding agencies.
How to be a good "git-evangelist" (up to 40 minutes) (yes, I'm ready today Sunniva): As an RSE in a team of scientists, I feel that I quickly fall into the "git-evangelist" role. I think it would be super interesting, and useful, to have a discussion about different techniques and experiences for how to take this role in a positive sense. In a broader context, this question is related to how to successfully recommend "good enough" software engineering practices to colleagues with less technical competence than yourself?"
Request missing a chair: In "RSE", what is "research"? what is "software"? what is an "engineer"?: "RSE" was an invented term, and I have seen many different ways to interpret it, and most have been very inclusive. What do we mean by "Research": is it just academic? no. What do we mean by "software"? It's more than just software, I always say that data and computing specialists should be included, and I think it would also extend to many of the infrastructure admins. Finally, what does "engineer" mean. Is it only engineer? Probably not only. I would be happy to have a discussion on this, but I would prefer someone other than me to host it.
Invited talks
You can ask questions here (and also comment) and we can then discuss some of them together.
Talk: "Keep your code alive - lessons from the QuTiP project"
(moved one question to the bottom of document, to make it easier to see new questions coming in)
Some of your favorite open source projects?
Some funding agencies that you know that fund open science
Do you know places that support a research engineer?
Add your questions/comments here
Good point that institutional partners are key
Does anyone have stories of company hiring developers of a project going wrong? (Yes, but I feel that is a risk that the group takes in any hiring process be it for coders or post-docs)
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →Open minded supervisors are an important source for coding projects.+1!+1+1+1
- Do it and tell later – at least the initial part ;) +100, better be "sorry" of having gained results and visibility than ask for permission
- Show them the citations that a project gets when it is open-sourced. (Citations == academic currency?)
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →Usually they are supplementary to a paper, eg: https://matsubara.readthedocs.io/en/latest/ (Paper: https://www.nature.com/articles/s41467-019-11656-1) and https://piqs.readthedocs.io/en/latest/ (Paper: https://journals.aps.org/pra/abstract/10.1103/PhysRevA.98.063815)
-so essentially, you are publishing as "methodology" of a "normal" scientific paper? Yes
Do not hesitate to add more questions and comments, we will have later time to discuss more.
Talk: "Julia for research software engineers"
Slides: https://bit.ly/3iQ3Mfn
How do you write dictionaries with that unusual arrow glyph apparently included in the definition syntax?
=>
into that arrow, but Julia does support Unicode, for example:What is your favorite feature/thing in the Julia language or toolbox? +1
Revise.jl
whenever you start the REPL, dodev MyPkg
from the package mode and it will use a local repo of the package, then you can switch between branches, change source code and test real time without need of reloading, all without having to leave the julia repl, as you can use git commands from repl in shell mode.What is Julia missing which you wish it had or will have at some point? +1
Does it make sense to rewrite old (i.e. fortran) code to have a Julia version?
Is the C function "exclamation mark syntax" just a naming convention or necessary syntax for this kind of function?
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →How is the qutip class (Qobj) handled in Julia? Is the data converted to Julia's form?
When using a wrapper for other languages, how is the efficiency?
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →The Revise.jl module is like IPython magic "autoreload"
How does the language integration work with non interactive scripts? And how do you inform Julia of how to call other languages (pathes etc)
can one use Julia
@code_llvm
with code from other languagesIs there a way to specify the maximal allowed error for "optimised" code?
Is there a dispatch system in Julia that runs functions on CPU/GPU like the Numpy dispatch
What's the status of plotting on Julia?
for the units, does this dynamically adjust the syntax which can be parsed?
1m
is parsed as1 * m
in Julia and them
is defined by Unitful.jl to be the metre "object".Does Unitful incur any notable performance reductions?
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →Are people interested in hearing more about Julia? We at Nordic-RSE are thinking about hosting a day of Julia during the upcoming seminar series, where we could have talks/demos/workshops.
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →I teach scientific computing / data science stuff and might be interested in supplementing my Python-based courses with Julia-based courses if I can see adaantages to doing so and think I can attract participants for it.
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →What is very bad in Julia?
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →If you wanted to convince people to switch to Julia, what would be your best argument (assume that they do not understand much about programming, only speed-up, money saving, time saving, things like that, and that they have already large/old codes that they run as "black-boxes")?
Is there a Roadmap / existing solution for running Julia on the browser through WebAssembly?
Talk: "Introduction to Nordic-RSE"
Questions/comments?
"I don't have time to read papers, too busy making code work" is painfully accurate especially when it's somebody else's code with barely any documentation.+1+1+1
RSE is so new as a concept that I feel several universities don't have/invest in them for the simple fact that they are not aware of their existence, hopefully events like this will increase visibility and awareness
Talk: "Myths and misconceptions about research software development in academia"
I'd argue everyone is learning to script and not to code.
Where are the "senior" software developers in Academia? Why do not professors code?
Which countries do have established RSE groups?
Who is the "ideal" scientific developer? Do you need a computational PhD to start on this track?
Does the "RSE movement" cover highly skilled staff who do things other than direct software stuff (data engineering?) If not, does someone? should they connect?
Is infrastructure software development part of an RSE task? I do not speak about scientific libraries but tools and solutions to allow scientific software to run. Among examples I know: Jupyter Notebooks, NorduGRID ARC, CVMFS, scientific portals (e.g. Galaxy). I personally think so.
I am a scientist. I want to make this bridge to RSE and software development. But I code/script all the time as a side job. I really want to become better and I am fed up with being critised not being enough of a software developer. What would be your advise, please? No, my education at university did not prepare me for coding. I am trying to edcuate myself all the time next to my other tasks. Should I go back to university and do a computing science course?
(And then I see people who are able to code, but have zero understanding of the science behind it and their software is as well not good.)
I think the failure to distinguish between different levels/types of RSE, by calling everything an RSE, leads to a breakdown of a possible career path and a flattening of the hierarchy. A career path is crucial to be competitive enough with industry, to keep skills and experts within academia. A hierarchy and career path seems important to make academia realize that there is more to research software engineering than writing a couple of for loops, that there is a development of relevant skills and a huge depth.
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →Personal questions to Anne:
How should RSE positions at universities be organized? Under the IT-department? A centralized section serving all institues?
We offer several services; not just RSE: data management, data science, running infrastructure.
WRT the conclusions: Would you argue to restrict RSEs to professional software developers?
How can we as RSEs change things in academia? We are not many, not recognized, not funded, not united, not supported, isolated, I can see that will be very difficult
With CodeRefinery and Carpentries we do the work that universities should have done and failed to do (since it is needed), and they are happy with that. Why would it change? They would rather give a little money to CodeRefinery and Carpentries to continue and will never recognize RSEs more or reward them more. I think we should stop doing their job so that they see what happens without RSEs
Do we need more mentors, more coding teams to have good RSE? (But of course, this requires money, resources, time.)
It seems like there is an enormous demand for RSE skills in academia, and many who would be lining up to fill this demand (rather than pursuing tenure or go to industry). From a business perspective, this seems like a lost "business opportunity". What can we do to highlight this, and make this more visible?
One way to get people to understand the value of RSEs could be to actually put questionaires to current collaborators on what they do, how much time they spent on it and in particular how much time they have spent on what the RSE does now in the past. And ni what ways they benefited from RSEs
Personally, I worked in the industry before joining an RSE group. During the transition, I was rejected by one group and accepted by another RSE group. While going through the experience, I couldn't figure out what was missing. So can the planned guidance also include a section to help people transitioning from Industry to Academia, to encourage those people who want to make the transition but don't know what to do?
Discussion: What is "R". What is "S". What is "E"
"RSE" was an invented term, and I have seen many different ways to interpret it, and most have been very inclusive. What do we mean by "Research": is it just academic? no. What do we mean by "software"? It's more than just software, I always say that data and computing specialists should be included, and I think it would also extend to many of the infrastructure admins. Finally, what does "engineer" mean. Is it only engineer? Probably not only. I would be happy to have a discussion on this, but I would prefer someone other than me to host it.
(What if each of us adds our own opinions to each of these topics?)
Research:
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →Software:
Engineer:
Not sure about that one: must an RSE have an engineering diploma? Can someone who has followed a PhD path become RSE?
I got the idea that in some countries, "Engineer" is a protected/licensed profession
To be a researcher, you need to do research. So usually have a PhD. To be an engineer, there is little requirement.
To me this is a broad term for those who find structured solutions to problems. I do not think titles are important.
rkdarst
jarno Someone who does practical work to enable an outcome further down the line. +1
ti this aspect to me is about the "structural integrity" of it - making something reproducible, trustworthy, lasting (also considering future-proofness, including extendability) - as opposed to "throw-away" or "write-once, read-never" code that is very common for researchers (who focus on doing it once, as quickly as possible, for one paper) at the moment
What is a Software Engineer (compared to Software Developer, coder…):
Notes:
Discussion: Git evangelist
Starting point of the dicussion
Slides.
What is good scientific software?
Tools to help with that
Important is to have the right tool for the job
Starting questions:
Is version control the most imprtant tool for a scientific developer?
How can we motivate scientists to learn use version control?
e.g. master students think it is too much a hassle. Supervisors may not use it. 'Struggeling' against the flow if one is the only one using verison control
github hides a lot of the complexity and good start for beginners
Most people "understand" the idea of version control, they just do it with "version_2_final_modified_PI_comments.docx" et al. Demonstrating that there are better ways can be enough
Video (satire) showing the nightmare of not using version control: https://www.youtube.com/watch?v=CvbLVVRzJF8
Real life examples where and how version control can save your a**
Not having a folder with all versions of a paper
The experiment anallogy, you would not set up an experiment without calibrating right? i.e. use the correct tools for the job
Minimal choice: if asked for help, provide the solution via github (/gitlab/bitbucket/etc), plus assistance getting to grips with how to use that.
Group culture / figure in authority: if the PI can be convinced to require researchers to work a particular way, that can be very effective
It can be very hard to be a young RSE trying to convince her colleagues to understand why they should invest in learning version control.
Younger individuals in academia (young post-docs, PhD and master students) are easier to convince then the older generation (permanent staff like researchers and professors)
Do all code projects need version control?
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →When should a scientific developer learn to use version control?
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →How and who should teach version control's best practices?
Git as a smaller part of a Python course + Git as a part of a " scientific software development practice" course.
Git-evangelist idea for blog post for Nordic-RSE
I (Sunniva) will leave on
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →Content
Take out the essence discussed on the unconference and turn it into a text in the markdown format. Figures from the slides could be maybe be used.
Other points that could be relevant to mention
There already exists a lot of fun pieces about why you should use version control:
Summary of the day
Funding for research software
HackMD link
How to be a good Git evangelist
In "RSE", what is "research"? what is "software"? what is an "engineer"?
Software Engineer:
Research Engineer:
Research Software Person:
Feedback
one thing that went well
one thing that could be improved in the future (tomorrow)