3

I am finishing my bachelor's thesis, and I built an explainable ai and data visualization tool. For that, I used libraries like d3.js, svelte, tailwindcss, docker, nginx, fastapi, pytorch, tensorflow etc.

For some, pytorch, tensorflow, optuna, they ask you to cite them, so I included it, but I realize now that I used the others to the same extent or even more. But I am not sure if I should cite these too.

I am sorry if this is a bit of a silly question. It is my first academic writing experience.

Thank you for your input.

PS, I found this: How to cite software used to produce data/images? but it doesn't quite apply, because unlike the examples there, these libraries are used to produce my project and I couldn't have done it without.

edit: reading the second answer in the comment posted by anyon below I decide to cite most of them. Though I do find that the answers there are very handwavy and I am still not sure whether I should or should not.

Oliver
  • 143
  • 5

1 Answers1

2

The general rule for citations is to cite what you use. Usually this means giving credit to authors of papers, but it can also apply more generally to software systems that you depend upon and that provide substance to your work. If you use a particular browser or IDE you don't need to cite it, since it adds no substance. But libraries can be different.

And the fact that it is open-source makes no difference in the need (or lack) of citation. Don't confuse copyright with plagiarism. Open source means you don't need prior permission for some things, but doesn't change the citation issue.

The underlying idea is that you don't want to write in such a way that a reader might infer that you created things that you actually did not. That is a form of plagiarism. It is better to over cite than to omit citations in edge cases. Citation is a guard against charges of plagiarism. It may not be possible to know the authors of open-source projects, but you still give them credit by pointing to the work itself.

One way to do this, rather than inline citation, is to have a short section at the end of your work in which you name and link to those libraries and systems on which your work fundamentally applies. For internet resources, give the dates on which they were last accessed, since such things change. Version numbers, etc. are also helpful.

Buffy
  • 363,966
  • 84
  • 956
  • 1,406
  • Oh, that is a very good explanation. So, when I say, I used d3.js to render the visualizations it is very clear that I didn't do it myself, would you still suggest to cite it? – Oliver Feb 13 '23 at 17:02
  • 1
    If you point to the source, not just list the name it is a citation, actually. – Buffy Feb 13 '23 at 17:13
  • Oh, so, do I also have to add the reference with author of the package and link in my references, in this example like ... I used d3.js [xx] ? Sorry for the newbie questions :-) – Oliver Feb 13 '23 at 17:22
  • 1
    How you do it is less important than the fact that you make the source clear. If you get to publish it later, then an editor might have requirements for format. – Buffy Feb 13 '23 at 17:23
  • Got it, thanks a million!! – Oliver Feb 13 '23 at 17:25