From 47d5d083d9c0cab220cf1b894e15c3b9a0517bb2 Mon Sep 17 00:00:00 2001 From: Matthew Feickert Date: Sat, 27 Jan 2024 17:46:51 -0600 Subject: [PATCH] Add overview slide for HEP software --- figures/hep-programming-language-history.png | Bin 0 -> 54068 bytes talk.md | 17 +++++++++++++++++ 2 files changed, 17 insertions(+) create mode 100644 figures/hep-programming-language-history.png diff --git a/figures/hep-programming-language-history.png b/figures/hep-programming-language-history.png new file mode 100644 index 0000000000000000000000000000000000000000..ddff62a39a0b0a8b64f0c52a8badb286bf0eb9b2 GIT binary patch literal 54068 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 +--- +# Software in High Energy Physics + +

+ + + +

+ +.large[ +* Scientific software has a long history in HEP with high importance, often developing own tools that are highly tailored to its own problems (e.g. [MINUIT optimizer](https://cds.cern.ch/record/2296388/) (1970s)) +* HEP has not been very good about (usefully) open sourcing code, being invested in broader scientific community software, or giving scholarly credit for software development +* With recent investments this has started to change + - Establishing member of Scikit-HEP + - First HEP person (outside of Fernando PĂ©rez) to be part of SciPy conference +] + --- # Opportunities and Challenges of the HL-LHC