IT Tools
CSMI uses Slack to communicate with promotions and on projects.
You can install slack and create your account with your email @etu.unistra.fr
once you have it.
You’ll receive an invitation at the start of the school year.
The Slack workspace used is that of Feel++, the numerical simulation software developed by Cemosis. The channels used are
#csmi-202x
-
for 202x promotions
#csmi
-
for questions about the CSMI Master’s program
- Linux
-
Ubuntu 22.04 LTS or later, or Debian 11 or later
- Windows 1x
-
Install WSL support then use Ubuntu 22.04 or Debian 11 or later
- MacOs
-
Install Homebrew that offers a lot of packages either on Intel or ARM processors
We’ll be using the following tools in several courses
- Programming languages
-
Here are the programming languages you’ll be using:
-
- C
-
- C++
-
- Python3
and others you may use in your projects
-
- Rust
-
- Julia
and use advanced programming environment based on
-
- CMake
-
- Visual Studio Code
-
- Github
-
The number one platform for open-source projects using git as a version control system, the platform also offers a lot of tools for project management.
We’ll be using Github management tools to keep track of projects and assignments.
You need to create an account on Github, a form will be sent at the beginning of the M1 year and your account will follow you during the 2 years. It will be used-
- for projects in S2 and S3
-
- during internships, to submit your reports and presentations
-
- during internships for some of you, for follow-up purposes
-
- during EDP (S2) and CS3 courses, via the github classroom platform, to hand in your assignments.
One reference: lab.github.com/ but there are plenty of others.
Apply for the GitHub Student Developer Pack — free access to GitHub Copilot, cloud credits, and many developer tools.
-
- JetBrains IDEs
-
-
- CLion (C/C++), PyCharm (Python), IntelliJ IDEA (Java/Kotlin), WebStorm (web)
-
- Popular in HPC/software engineering courses
-
- Free with a student license via JetBrains Student Program
-
- Overleaf
-
-
- Overleaf: collaborative LaTeX (reports, theses)
-
- Real-time co-editing and version history
-
- GitHub Projects
-
-
- GitHub Projects: kanban boards inside GitHub (Issues, PRs, milestones)
-
- Ideal for course projects; integrates with Classroom and Actions
-
- JupyterLab / JupyterHub
-
-
- JupyterLab: Python notebooks for data analysis and ML
-
- Works locally or on remote servers
-
VS Code extension: Jupyter to run and edit your notebooks directly in Visual Studio Code
-
- Google Colab
-
-
- Google Colab: quick access to GPUs/TPUs in notebooks
-
- Practical for small ML experiments
-
Artificial Intelligence (AI) is now an everyday assistant for coding, documentation, and research. Use it to accelerate — but keep traceability and academic integrity (see note below).
- ChatGPT (OpenAI)
-
-
- Code generation, refactoring, and debugging
-
- Writing support for LaTeX/AsciiDoc (summaries, outlines)
-
- Explaining algorithms and HPC concepts ChatGPT
-
- Claude (Anthropic)
-
-
- Strong with long documents and reasoning
-
- Good for reviewing scientific text and creating drafts Claude
-
- Mistral AI
-
-
- Open models (Codestral, Mixtral); works well for coding
-
- Available via LeChat or Mistral AI
-
- GitHub Copilot
-
-
- In-editor AI pair-programmer (VS Code / JetBrains)
-
- Code completion, inline explanations, tests generation
-
- Free or discounted via GitHub Student Developer Pack
-
- Zotero
-
-
- Zotero: reference manager with web importer
-
- Exports to BibTeX for LaTeX
-
-
- Cite AI assistance when it meaningfully contributes to your work (e.g., “Assisted by AI: prompt + tool name/version/date”).
-
- Do not paste confidential material (exam statements, private repos, API keys, personal data) into online tools.
-
- Verify outputs (numerics, code, references). You are responsible for correctness and reproducibility.
-
- Keep a reproducible workflow: keep prompts, versions, and generated code in your repo (e.g.,
ai-notes/
).
Students may use Artificial Intelligence (AI) tools to support writing, coding, or research activities. In such cases, they must clearly acknowledge and cite the tools used.
AI tools are assistants, not authors. Their outputs must always be verified, adapted, and corrected by the student. The student is solely responsible for the correctness and originality of the work. |
You may add a dedicated section in your reports:
== AI Assistance Statement
Some parts of this work were prepared with the assistance of Artificial Intelligence (AI) tools.
The following were used:
* ChatGPT (OpenAI, GPT-5, accessed August 24, 2025) for text drafting and explanations.
* GitHub Copilot (Microsoft, 2025) for code completions in C++ and Python.
* Claude (Anthropic, 2025) for summarizing text.
* Codestral (Mistral AI, 2025) for code generation and refactoring.
All outputs generated by these tools were verified and adapted by the authors, who take full responsibility for the content.
or in LaTeX:
\section*{AI Assistance Statement}
Some parts of this work were prepared with the assistance of Artificial Intelligence (AI) tools.
In particular, the following tools were used:
\begin{itemize}
\item ChatGPT (OpenAI, GPT--5, accessed August 24, 2025) for drafting text explanations and refining LaTeX formatting.
\item GitHub Copilot (Microsoft, 2025) for suggesting code completions in C++ and Python.
\item Claude (Anthropic, 2025) for summarizing long texts.
\item Codestral (Mistral AI, 2025) for code generation and refactoring.
\end{itemize}
All outputs generated by these tools were \textbf{verified, adapted, and corrected by the authors}.
The authors take full responsibility for the content, correctness, and originality of this work.
To cite AI tools properly, you can import the BibTeX file provided in the source tree (ai-tools.bib
) into your reference manager (e.g., Zotero, Overleaf),
then cite them like any other @software
entry.
@software{openai_chatgpt_2025,
author = {OpenAI},
title = {ChatGPT},
year = {2025},
version = {August 24 version},
url = {https://chat.openai.com},
note = {Large language model; accessed 2025-08-24}
}
@software{anthropic_claude_2025,
author = {Anthropic},
title = {Claude 3.5},
year = {2025},
version = {August 2025},
url = {https://claude.ai},
note = {Large language model}
}
@software{mistral_codestral_2025,
author = {Mistral AI},
title = {Codestral},
year = {2025},
version = {0.3},
url = {https://mistral.ai},
note = {Open-weight large language model}
}
@software{github_copilot_2025,
author = {GitHub},
title = {GitHub Copilot},
year = {2025},
version = {VS Code extension v1.185},
url = {https://copilot.github.com},
note = {AI code completion tool}
}