Welcome to the US ATLAS/First-HEP computing bootcamp! The aim of this week is to give you an understanding of fundamental tools and techniques in computing that will be using throughout your time in ATLAS, and more broadly, particle physics. However, from the get-go you should appreciate that the skills you will learn here are applicable beyond your career in physics and are used more broadly in industry and elsewhere. This bootcamp is divided into two parallel tracks that cover the following topics
- Version control and Git
- Building code with CMake
- Robust code development with Continuous Integration/Deployment
- Project distribution with Docker Containers
In the mornings, you will learn how to use each tool by itself and gain an appreciation for the basics of how (and why!) it is useful. In the afternoons, you will take this basic knowledge and parlay it into the tool’s application within the ATLAS computing environment.
Much of what you will learn here can be found elsewhere on the internet, and if you work within ATLAS long enough, you may learn how to use each of these tools in a very focused way from a colleague. However, the goal of this tutorial is to give you a better understanding of what “is actually happening” when you use these tools so that they are no longer black boxes and you are not “just following a pattern”.
Guiding Advice : Just Ask!
QUESTIONS! : We love them!
QUESTIONS! : It’s how you learn.
QUESTIONS! : It’s how you get unstuck.
QUESTIONS! : If you are wondering it … someone else is too.
QUESTIONS! : There is never a stupid one.
One of the most important parts of research is learning to ask questions. And not only deep philosophical questions about the nature of the universe or the meaning of life. But also seemingly silly things like “Why does my code grind to a halt when I use a pointer here?”. Asking these questions are what allows you to grow your technical knowledge base and make more efficient progress in your immediate research question.
As a rule of thumb, if you find yourself stuck at any point during this bootcamp for one hour, then ask someone. To facilitate this, we have created a Discord server - Link to Discord. Join it and start asking questions to your colleagues and the tutors.