CERN School of Computing 2019

Europe/Bucharest
Babeş-Bolyai University

Babeş-Bolyai University

Faculty of Physical Education and Sport 7 Pandurilor Street, Cluj Napoca, 400376 - Romania
Sebastian Lopienski (CERN), Joelma Tolomeo (CERN)
Description

Welcome to the 42nd CERN School of Computing (CSC 2019)!
The school will take place on September 15-28 in the beautiful city of Cluj-Napoca, Romania.

This year’s School is organized in collaboration with Babeș-Bolyai University (UBB) together with Politehnica University of Bucharest (UPB).

Academic programme

The two-week programme consists of more than 50 hours of lectures and hands-on exercises, covering three main themes: physics computing, software engineering, and data technologies. Students who pass the final optional exam will receive a diploma from CSC, as well as ECTS points from UBB + UPB.

Other activities

However, it's not all study; the social and sport programme is also a vital part of the School. We will have ample opportunities to explore and experience some of Romania's great cultural, historical and natural attractions, and profit from Cluj-Napoca’s location in heart of the Transylvania region.

Important dates

  • mid March - registration opens
  • Friday 10 May (midnight CEST/GMT+2) - deadline for applications
  • Friday 7 June - you will be informed of outcome of selections
  • Friday 5 July - latest date for School fees payment if you are accepted
  • Sunday 15 September (afternoon/evening) - student arrivals at Napoca Hotel, Cluj-Napoca
  • Saturday 28 September (morning) - departure

Who can apply?

The School is aimed at postgraduate (ie. minimum of Bachelor degree or equivalent) engineers and scientists, working at CERN or at other research institutes, with experience in particle physics, in computing or in related fields. We welcome applications from all nationalities, and encourage all qualified persons to apply. Limited financial support may be available.

 

    • 15:00 19:00
      Arrival and registration 4h Bnei Dan

      Bnei Dan

      For all participants of the CSC 2018

    • 19:45 20:45
      Dinner 1h Bnei Dan

      Bnei Dan

    • 08:45 09:00
      Bus to Babeș-Bolyai University 15m
    • 09:15 10:45
      Opening Ceremony 1h 30m
    • 10:45 11:15
      Welcome coffee 30m
    • 11:15 12:15
      Introduction to Physics Computing L1: Hadron Collider Physics 1h

      Here we will focus on the physics of particle collisions, theoretical aspects of the standard model of particle physics, its predictive power as well as its shortcomings. Experimental aspects such as collider facilities and modern particle physics experiments as well as example physics questions and corresponding data analyses will be discussed. Furthermore, the compute models with the resulting amount of recorded data and simulated Monte Carlo events will be described.

      Speaker: Arnulf Quadt (University of Göttingen)
    • 12:30 13:45
      Lunch 1h 15m
    • 14:00 15:00
      Software Security L1: Introduction 1h

      First lecture starts with a definition of computer security and an explanation of why it is so difficult to achieve. The lecture highlights the importance of proper threat modelling and risk assessment. It then presents three complementary methods of mitigating threats: protection, detection, reaction; and tries to prove that security through obscurity is not a good choice.

      Speaker: Sebastian Lopienski (CERN)
    • 15:00 16:00
      Tools and Techniques L1: Introduction 1h

      To start, we discuss some of the characteristics of software projects for high energy physics, and some of the issues that arise when people want to contribute to them. This forms the framework for the Software Technologies Track. We then continue with a brief introduction to software engineering from the perspective of the individual contributor, both as a formal process and how it actually affects what you do. The lecture discusses several categories of tools & techniques you can use to make yourself more productive and effective. Continuous testing and documentation has proven to be important in producing high quality work, but it's often difficult to do; we discuss some available approaches. Many problems require specific tools and techniques to solve them effectively: We discuss the examples of performance tuning and memory access problems.

      Speaker: Bob Jacobsen (UC Berkeley)
    • 16:00 16:15
      Announcements 15m
    • 16:15 16:30
      Afternoon coffee 15m
    • 16:30 17:30
      Software Security L2: Security in different phases of software development 1h

      The second lecture addresses the following question: how to create secure software? It introduces the main security principles (like least-privilege, or defense-in-depth) and discusses security in different phases of the software development cycle. The emphasis is put on the implementation part: most common pitfalls and security bugs are listed, followed by advice on best practice for security development.

      Speaker: Sebastian Lopienski (CERN)
    • 17:30 18:30
      Introduction to Physics Computing L2: Digital Data, Simulation and Reconstruction in Modern Particle Physics Experiments 1h

      Here, a focus will be placed on specific detector sub-components and their data readout concepts as well as data reconstruction techniques, simulation techniques and analysis techniques.

      Speaker: Arnulf Quadt (University of Göttingen)
    • 20:00 22:00
      Welcome dinner 2h
    • 08:45 09:45
      Tools and Techniques E1 1h

      The first three exercises provide some direct experience with the tools and techniques described in Lectures 1 and 2. Teams of two students will work together on through examples designed to show the strengths and weaknesses of various tools and approaches. This will be followed by small projects for additional development experience.

      Speaker: Bob Jacobsen (UC Berkeley)
    • 09:45 10:00
      Morning coffee 15m
    • 10:00 11:00
      Tools and Techniques E2 1h

      The first three exercises provide some direct experience with the tools and techniques described in Lectures 1 and 2. Teams of two students will work together on through examples designed to show the strengths and weaknesses of various tools and approaches. This will be followed by small projects for additional development experience.

      Speaker: Bob Jacobsen (UC Berkeley)
    • 11:00 12:00
      Tools and Techniques E3 1h

      The first three exercises provide some direct experience with the tools and techniques described in Lectures 1 and 2. Teams of two students will work together on through examples designed to show the strengths and weaknesses of various tools and approaches. This will be followed by small projects for additional development experience.

      Speaker: Bob Jacobsen (UC Berkeley)
    • 12:00 12:15
      Announcements 15m
    • 12:30 13:15
      Lunch 45m
    • 13:30 15:00
      Study time / daily sports 1h 30m
    • 15:15 16:15
      Guest lecture: Computational Science - The Third Pillar of Science? 1h

      In this talk we will talk about the way in which in the 21st Century we will probably be limited to design and create by what we can compute, not by what we can measure, as was the case in the 20th Century. We will discuss about current trends in HPC technology, hardware and software alike, the landscape of Supercomputing in terms of computing architectures and likely development trends, as well as the opportunities that HPC offers for many scientific and engineering domains.

      Speaker: Emil Slusanschi (UPB)
    • 16:15 16:30
      Afternoon coffee 15m
    • 16:30 17:30
      Software Security E1 1h

      In the practice session, a range of typical security vulnerabilities will be presented. The goal is to learn how they can be exploited (for privilege escalation, data confidentiality compromise etc.), how to correct them, and how to avoid them in the first place! Students will be given small pieces of source code in different programming languages, and will be asked to find vulnerabilities and fix them. The online course documentation will gradually reveal more and more information to help students in this task. Additionally, students will have a chance to try several source code analysis tools, and see how such tools can help them find functionality bugs and security vulnerabilities.

      Speaker: Sebastian Lopienski (CERN)
    • 17:30 18:30
      Software Security E2 1h

      In the practice session, a range of typical security vulnerabilities will be presented. The goal is to learn how they can be exploited (for privilege escalation, data confidentiality compromise etc.), how to correct them, and how to avoid them in the first place! Students will be given small pieces of source code in different programming languages, and will be asked to find vulnerabilities and fix them. The online course documentation will gradually reveal more and more information to help students in this task. Additionally, students will have a chance to try several source code analysis tools, and see how such tools can help them find functionality bugs and security vulnerabilities.

      Speaker: Sebastian Lopienski (CERN)
    • 18:30 19:30
      Software Security E3 1h

      In the practice session, a range of typical security vulnerabilities will be presented. The goal is to learn how they can be exploited (for privilege escalation, data confidentiality compromise etc.), how to correct them, and how to avoid them in the first place! Students will be given small pieces of source code in different programming languages, and will be asked to find vulnerabilities and fix them. The online course documentation will gradually reveal more and more information to help students in this task. Additionally, students will have a chance to try several source code analysis tools, and see how such tools can help them find functionality bugs and security vulnerabilities.

      Speaker: Sebastian Lopienski (CERN)
    • 20:00 22:00
      Special dinner and pub quiz 2h
    • 08:45 09:45
      Machine Learning L1: Understanding Classification 1h

      This lecture introduces machine learning for classification in a general way before demonstrating a specific example of classification using random forests. The lecture describes the concepts of training, validation and test data sets, and introduces the problem of class imbalance and various methods for addressing this issue. The lecture gives an overview of standard performance metrics, including those for specific machine learning classification problems, and introduces the receiver operating characteristic (ROC) curve.

      Speaker: Anna Scaife (University of Manchester)
    • 09:45 10:00
      Morning coffee 15m
    • 10:00 11:00
      Tools and Techniques L2: Tools for Collaboration, Software Engineering Across the Project 1h

      HEP software is built by huge teams. How can this be done effectively, while still giving people satisfying tasks to perform? Large systems are a hard problem, and this lecture focuses on the current techniques for dealing with it. Use of central source control has become routine, so we build on that understanding to discuss distributed systems like Git. We then discuss the larger area of release & distributing via a package versioning system vs. a distributed build system (e.g. Git and CMake). Now that we've covered both individual and group work, we go back to the software engineering topics of the first lecture to see how these fit together. How does our individual work affect the ability of the entire project to proceed? What are tools and techniques that will improve both our individual work, and out contributions to the whole? We close with a summary of observations.

      Speaker: Bob Jacobsen (UC Berkeley)
    • 11:00 11:15
      Announcements 15m
    • 11:15 12:15
      Machine Learning L2: Gaussian Process Modelling 1h

      This lecture introduces the machine learning method of Gaussian Process Modelling (GPM). It introduces the concept of covariate Gaussian noise, including the covariance matrix as parameterised using covariance kernels, and illustrates the effect of different degrees of covariance on a simulated dataset. The lecture shows how the covariance matrix can be inverted for imputation of missing data or forward prediction based on a training data set.

      Speaker: Anna Scaife (University of Manchester)
    • 12:30 13:15
      Lunch 45m
    • 13:30 15:00
      Study time / daily sports 1h 30m
    • 15:15 16:15
      Student presentations 1h
    • 16:15 17:15
      Software Security L3: Web application security, exercise debriefing 1h

      This third hour consists of a debriefing of the exercises, and in particular those web-related. Various vulnerabilities typical to web applications (such as Cross-site scripting, SQL injection, cross-site request forgery etc.) are introduced and discussed.

      Speaker: Sebastian Lopienski (CERN)
    • 17:15 17:30
      Afternoon coffee 15m
    • 17:30 18:30
      Tools and Techniques E4 1h

      After the two-person teams acquire some experience with the development and release tools, we will group projects to demonstrate some of the real-world issues discussed in the lecture. Groups of two teams will first work together to create a functional release from individual sub-projects at various stages of completion to show the strengths and weaknesses of test and release tools. This is followed by a larger scale exercise with groups of teams.

      Speaker: Bob Jacobsen (UC Berkeley)
    • 18:30 19:30
      Tools and Techniques E5 1h

      After the two-person teams acquire some experience with the development and release tools, we will group projects to demonstrate some of the real-world issues discussed in the lecture. Groups of two teams will first work together to create a functional release from individual sub-projects at various stages of completion to show the strengths and weaknesses of test and release tools. This is followed by a larger scale exercise with groups of teams.

      Speaker: Bob Jacobsen (UC Berkeley)
    • 20:00 20:45
      Dinner 45m
    • 08:45 09:45
      Software Design L1: Parallelism in a Modern HEP Data Processing Framework 1h

      Even though the miniaturization of transistors on chips continues like predicted by Moore's law, computer hardware starts to face scaling issues, so-called performance 'walls'. Probably, the best known is the 'power wall', which limits clock frequencies. Amongst others, a way of increasing processor performance remains now to integrate many cores in the same chip. At the same time, the upcoming LHC upgrade will increase the required CPU power drastically. Both problems challenge the current way of software design in high energy physics (HEP). Developers in high energy physics are forced to re-think their ways of software design and need to move to massively parallel applications. This lecture will explain the current HEP software design, the hardware and physics issues that need to be tackled, and possible approaches to achieve the required level of parallelization.

      Speaker: Enric Tejedor (CERN)
    • 09:45 10:00
      Morning coffee 15m
    • 10:00 11:00
      Software Design L2: Base Concepts of Parallel Programming: A Pragmatic Approach 1h

      This and the following lecture will explain the concepts behind various parallelization methodologies.
      First, a theoretical introduction into threads, thread-safety and concurrent data access will be given. As the new C++ standard (C++11) now provides build-in support for parallel programming, the new features of this standard will be shown. Finally, concrete solutions for the theoretical problems will be discussed.

      Speaker: Andrei Gheata (CERN)
    • 11:00 11:15
      Announcements 15m
    • 11:15 12:15
      Machine Learning L3: Convolutional Neural Networks 1h

      This lecture introduces the method of using Convolutional Neural Networks (CNNs) for image based classification. The lecture gives an overview of examples of popular CNN architectures and describes the functionality of each layer within a CNN. It uses the example of binary cross entropy to introduce the concept of a cost function and explains how this is optimised using a gradient descent algorithm and the principle of back-propagation. The lecture concludes by giving an example of how a particular CNN architecture can be implemented in Python.

      Speaker: Anna Scaife (University of Manchester)
    • 12:30 13:15
      Lunch 45m
    • 13:30 22:00
      Special sports afternoon 8h 30m
    • 08:45 09:45
      Data Science: Tools for interactive exploration 1h

      High energy physics has a rich history of interactive exploration of physics data, starting with tools like PAW and ROOT. The explosion of Data Science has created new tools for interactive exploration of large and ad-hoc datasets. This lecture introduces some of these, and shows how they can be used to find new and useful features starting with available data.

      Speaker: Bob Jacobsen (UC Berkeley)
    • 09:45 10:00
      Morning coffee 15m
    • 10:00 11:00
      Software Design L3: Understanding, Debugging and Profiling a Complex Multithreaded Application 1h

      Dealing with a parallel application is complex. We need to use procedures to rise fences to protect against mistakes, like static analysis tools allowing to find bugs in an automatic way. We also need to use tools to inspect and manipulate the behavior of programs at runtime, like the GDB debugger. Finally, profilers such as igprof can help us understand the performance bottlenecks of an application and get more insight on its efficiency. The objective of this lecture is to become familiar with these tools and be able to apply them in multithreaded programs.

      Speaker: Andrei Gheata (CERN)
    • 11:00 11:15
      Announcements 15m
    • 11:15 12:15
      Software Design L4: Patterns for Parallel Software Development 1h

      This lecture will present a set of common patterns in parallel programming. The sequential origin of these patterns will be discussed, as well as the restrictions that they impose. A particularly successful combination of patterns, Map-Reduce, will be described in detail and examples of its everyday use at large scale will be given. On the other hand, it will be shown how high-level features like C++ lambdas, the TBB library or the Spark framework can help get started with the aforementioned parallel patterns.

      Speaker: Enric Tejedor (CERN)
    • 12:30 13:15
      Lunch 45m
    • 13:30 15:00
      Study time / daily sports 1h 30m
    • 15:15 16:15
      Guest lecture: Physics-inspired computer algorithms 1h

      This lecture will introduce a few computer algorithms developed in computer science using simplified versions of physics phenomena as inspiration. The lecture will focus on the parallel between some physics concepts and principles, and counterparts in computer algorithms. Examples of applications of such algorithms will also be presented. The lecture aims to inspire physicists and computer scientist or practitioners to see physics not only as a source of large amounts of data that drives computer algorithm development and applications, but also as a potential source of new ideas for such algorithms.

      Speaker: Liliana Teodorescu (Brunel University)
    • 16:15 16:30
      Afternoon coffee 15m
    • 16:30 17:30
      Machine Learning E1 1h
      Speaker: Anna Scaife (University of Manchester)
    • 17:30 18:30
      Machine Learning E2 1h
      Speaker: Anna Scaife (University of Manchester)
    • 18:30 19:30
      Machine Learning E3 1h
      Speaker: Anna Scaife (University of Manchester)
    • 20:00 20:45
      Dinner 45m
    • 08:45 09:45
      Software Design E1 1h

      The exercises will cover the topics of lectures 1 to 4 at a hands-on basis, based on C++11, TBB and Spark. It covers examples for the new C++11 functionality related to threads and thread safety. In addition, there will be examples for concurrent access to data, lock and lock-free data structures, and task based programming.  Finally, there will be an exercise to practise the Map-Reduce pattern by using the Spark parallel data processing framework.

      Speakers: Andrei Gheata (CERN), Enric Tejedor (CERN)
    • 09:45 10:00
      Morning coffee 15m
    • 10:00 11:00
      Software Design E2 1h

      The exercises will cover the topics of lectures 1 to 4 at a hands-on basis, based on C++11, TBB and Spark. It covers examples for the new C++11 functionality related to threads and thread safety. In addition, there will be examples for concurrent access to data, lock and lock-free data structures, and task based programming.  Finally, there will be an exercise to practise the Map-Reduce pattern by using the Spark parallel data processing framework.

      Speakers: Andrei Gheata (CERN), Enric Tejedor (CERN)
    • 11:00 12:00
      Software Design E3 1h

      The exercises will cover the topics of lectures 1 to 4 at a hands-on basis, based on C++11, TBB and Spark. It covers examples for the new C++11 functionality related to threads and thread safety. In addition, there will be examples for concurrent access to data, lock and lock-free data structures, and task based programming.  Finally, there will be an exercise to practise the Map-Reduce pattern by using the Spark parallel data processing framework.

      Speakers: Andrei Gheata (CERN), Enric Tejedor (CERN)
    • 12:00 12:15
      Announcements 15m
    • 12:30 13:15
      Lunch 45m
    • 13:30 19:30
      Free time 6h
    • 20:00 20:45
      Dinner 45m
    • 08:45 22:30
      Excursion to Turda salt mines, and to Sighișoara 13h 45m
    • 08:45 09:45
      Data Visualization L1: The Theory Behind Data Visualization 1h

      In this lecture, we introduce the basic concepts behind data visualization, what we are visualizing, why we are visualizing it, and how we can visualize data more effectively.

      Speaker: Eamonn Maguire
    • 09:45 10:00
      Morning coffee 15m
    • 10:00 11:00
      Networking Fundamentals L1: Transport Network: The essentials 1h

      The objective of this series of two lectures is to present the fundamentals of networking, to help those involved in scientific computing to design systems or programmes involving at-a-distance actions, as well as to better understand their behaviours. Therefore, the aim is not to dwell on the nitty-gritty details, formats, or protocols, but to extract and synthetize the knowledge useful to the non-networkers. The first lecture will focus on the transport network and will present the fundamental principles of IP, its historical limits and recent enhancements that led it to become a universal transport technology.

      Speaker: Francois Fluckiger
    • 11:00 11:15
      Announcements 15m
    • 11:15 12:15
      Data Visualization L2: Practical Applications of Theory and Multi-Dimensional Data Visualization 1h

      In this lecture we apply some of what we learned in Lecture 1 and also introduce the visualization of multi-dimensional data.

      Speaker: Eamonn Maguire
    • 12:30 13:15
      Lunch 45m
    • 13:30 15:30
      Study time / daily sports 2h
    • 15:45 16:00
      CSC 2018 School Photo 15m
    • 16:00 17:00
      Data Technologies L1: Setting the scene: Storage technologies, Storage reliability 1h

      The lecture presents the various Storage Models, and the supporting management techniques.

      The lecture will then go in details on techniques to deliver arbitrary reliability and performance and discuss the solutions for long data preservation and trading between reliability, performances and costs.

      Speaker: Alberto Pace (CERN)
    • 17:00 17:15
      Afternoon break 15m
    • 17:15 18:15
      Data Visualization E1 1h
      Speaker: Eamonn Maguire
    • 18:15 19:15
      Data Visualization E2 1h
      Speaker: Eamonn Maguire
    • 19:45 20:30
      Dinner 45m
    • 20:45 21:45
      Special evening talk: Future of the Universe and of Humanity 1h

      Books mentioned during the special evening talk by Ivica:
      Sean Carroll - “The Big Picture: On the Origins of Life, Meaning, and the Universe Itself”, OneWorld Publications, 2016
      Steven Pinker - “Enlightenment Now: The Case for Reason, Science, Humanism, and Progress”, Penguin Books, 2018
      Hans Rosling, Anna, Rosling Roennlund, Ola Rosling - “Factfulness: Ten Reasons We're Wrong About the World-and Why Things Are Better Than You Think”, Flatiron Books, 2018
      Yuval Noah Harari - “Homo Deus: a Brief History of Tomorrow”, Harvill Secker, 2015
      Yuval Noah Harari - “21 Lessons for the 21st Century”, Jonathan Cape, 2018
      Max Tegmark - “Life 3.0: Being Human in the Age of Artificial Intelligence”, Knoph, 2017
      Thomas L. Friedman - “Thank You for Being Late: An Optimist's Guide to Thriving in the Age of Accelerations” Macmillan Publisher, 2016

      Speaker: Ivica Puljak (U.Split)
    • 08:45 09:45
      Data Analysis L1: Introduction to data analysis and Monte Carlo method 1h

      First lecture in Data Analysis series discuss graphical techniques used in exploratory data analysis, gives an introduction to concept of probability, and descriptive statistics summarizing the basic features of the data gathered from experiments. Monte Carlo method is introduced and explained with examples from engineering and high energy physics.

      Speaker: Ivica Puljak (University of Split)
    • 09:45 10:00
      Morning coffee 15m
    • 10:00 11:00
      Guest talk: Using MPI and OpenMP in building High Performance Applications 1h

      The hybrid nature of the new systems – distributed memory across nodes and shared memory within each node – poses challenges to application developers. The goal of this talk is to emphasize the differences between distributed and shared memory models, by presenting their fundamental operations and related developing strategies. Two traditional programming models are considered: MPI as a representative of the distributed memory model, and OpenMP that offers a very simple and in the same time efficient way to specify multithreading computation. We intend to present also how to create a basic hybrid program based on both, and how this approach could efficiently exploits the hardware facilities.

      Speaker: Virginia Niculescu (UBB)
    • 11:00 11:15
      Announcements 15m
    • 11:15 12:15
      Networking Fundamentals L2: Focus on End-Systems 1h

      The second of this two-lectures series, which aims at contributing to the computing culture of those involved in scientific computing, will focus on the end-systems issues, in particular TCP, the Internet Transport Protocol, the companion technology of IP. The lecture will present in a synthetic manner the major features and services of TCP to help understand observed behaviours of networked activities, as well as today’s issues such as tuning and performance aspects associated to long-distance and high bit-rate connections.

      Speaker: Francois Fluckiger
    • 12:30 13:15
      Lunch 45m
    • 13:30 15:45
      Study time / daily sports 2h 15m
    • 16:00 17:00
      Data Technologies L1: Introduction 1h

      The lecture will introduce the basic concepts of IO systems, protocols and data storage models as a preparation to the data technology exercises.

      Speaker: Andreas Peters (CERN)
    • 17:00 17:15
      Afternoon break 15m
    • 17:15 18:15
      Data Technologies E1 1h

      The first part of hands-on exercises aims to improve understanding of basic parameters in IO systems:
      • network and media latency
      • access patterns
      • OS caching
      • bottlenecks and optimization strategies for local and remote data access.
      Few essential Linux tools will be introduced to monitor and measure IO performance avoiding bias introduced by OS caching. Students will experience and measure the impact of latency and access patterns on IO performance.
      The second part covers the concept of parallelism and redundancy in storage system. We will apply the technology of Cloud storage systems to store and retrieve files in our local desktop cluster using a distributed hash table to locate files or file fragments and a REST interface to do GET, PUT or DELETE operations on these.
      The exercises conclude with the implementation and performance tuning of a RAID verification algorithm.

      Speaker: Andreas Peters (CERN)
    • 18:15 19:15
      Data Technologies E2 1h

      The first part of hands-on exercises aims to improve understanding of basic parameters in IO systems:
      • network and media latency
      • access patterns
      • OS caching
      • bottlenecks and optimization strategies for local and remote data access.
      Few essential Linux tools will be introduced to monitor and measure IO performance avoiding bias introduced by OS caching. Students will experience and measure the impact of latency and access patterns on IO performance.
      The second part covers the concept of parallelism and redundancy in storage system. We will apply the technology of Cloud storage systems to store and retrieve files in our local desktop cluster using a distributed hash table to locate files or file fragments and a REST interface to do GET, PUT or DELETE operations on these.
      The exercises conclude with the implementation and performance tuning of a RAID verification algorithm.

      Speaker: Andreas Peters (CERN)
    • 19:45 20:30
      Dinner 45m
    • 08:45 09:45
      Data Analysis L2: Distributions and estimators 1h

      In this lecture commonly used probability distributions are introduced with basic properties and few examples. Parameter estimation with maximum likelihood and least-squared methods is explained.

      Speaker: Ivica Puljak (University of Split)
    • 09:45 10:00
      Morning coffee 15m
    • 10:00 11:00
      Data Technologies L2: Cryptography, authentication authorization and accounting 1 (PKI) 1h

      This lectures give elements of computer security that are relevant to data management. The lectures address the various cryptographic technologies used in data storage systems to ensure data encryption, integrity, confidentiality and access control. The Public Key infrastructure standard will be described as an example.

      Speaker: Alberto Pace (CERN)
    • 11:00 11:15
      Announcements 15m
    • 11:15 12:15
      Data Analysis L3: Confidence intervals 1h

      Determining the errors on the parameters, which is equivalent to the confidence interval estimation is shown with specific examples on maximum likelihood and least-squared methods in one and more than one dimension. Uncertainties in physics and error propagation are also discussed.

      Speaker: Ivica Puljak (University of Split)
    • 12:30 13:15
      Lunch 45m
    • 13:30 14:30
      Data Technologies E3 1h

      The first part of hands-on exercises aims to improve understanding of basic parameters in IO systems:
      • network and media latency
      • access patterns
      • OS caching
      • bottlenecks and optimization strategies for local and remote data access.
      Few essential Linux tools will be introduced to monitor and measure IO performance avoiding bias introduced by OS caching. Students will experience and measure the impact of latency and access patterns on IO performance.
      The second part covers the concept of parallelism and redundancy in storage system. We will apply the technology of Cloud storage systems to store and retrieve files in our local desktop cluster using a distributed hash table to locate files or file fragments and a REST interface to do GET, PUT or DELETE operations on these.
      The exercises conclude with the implementation and performance tuning of a RAID verification algorithm.

      Speaker: Andreas Peters (CERN)
    • 14:30 15:30
      Data Technologies E4 1h

      The first part of hands-on exercises aims to improve understanding of basic parameters in IO systems:
      • network and media latency
      • access patterns
      • OS caching
      • bottlenecks and optimization strategies for local and remote data access.
      Few essential Linux tools will be introduced to monitor and measure IO performance avoiding bias introduced by OS caching. Students will experience and measure the impact of latency and access patterns on IO performance.
      The second part covers the concept of parallelism and redundancy in storage system. We will apply the technology of Cloud storage systems to store and retrieve files in our local desktop cluster using a distributed hash table to locate files or file fragments and a REST interface to do GET, PUT or DELETE operations on these.
      The exercises conclude with the implementation and performance tuning of a RAID verification algorithm.

      Speaker: Andreas Peters (CERN)
    • 15:30 15:45
      Afternoon break 15m
    • 16:00 18:00
      Traditional CSC football match 2h
    • 18:15 19:15
      Study time 1h
    • 19:45 20:30
      Dinner 45m
    • 20:45 21:45
      Special evening talk: When Internet history meets philosophy 1h
      Speaker: Francois Fluckiger
    • 08:45 09:45
      Data Technologies L3: Cryptography, authentication authorization and accounting 2 (Kerberos, OAuth, OpenID) 1h

      This lecture will continue the discussion on authentication using the Kerberos standard and then move to authorization where after the theory the OAuth 2.0 standard will be described. Accounting will also be addressed.

      Speaker: Alberto Pace (CERN)
    • 09:45 10:00
      Morning coffee 15m
    • 10:00 11:00
      Data Analysis L4: Statistical tests 1h

      Hypothesis testing is introduced with examples of goodness-of-fit tests and the most recent examples from high energy physics. Particular emphasis is given on the p-values and when we claim the discoveries.

      Speaker: Ivica Puljak (University of Split)
    • 11:00 11:15
      Announcements 15m
    • 11:15 12:15
      Data Technologies L4: Distributed Hash Tables, Data Replication, Caching, Monitoring, Alarms and Quota 1 1h

      This lecture describes the various possible technologies used to implement distributed hash tables, data workflows and complex data transfer processes. It also discusses problems with data caching and Garbage Collection to conclude on monitoring and quota enforcement.

      Speaker: Alberto Pace (CERN)
    • 12:30 13:15
      Lunch 45m
    • 13:30 14:30
      Data Analysis E1: Monte Carlo method and Fitting with Root 1h

      • Generating random numbers
      • Monte-Carlo toy experiments
      • Modeling signal and background. 
      • Fitting with ROOT packages (finding peaks).

      Speaker: Ivica Puljak (University of Split)
    • 14:30 15:30
      Data Analysis E2: Confidence interval 1h

      • Finding errors on fit parameters 
      • Extracting confidence intervals

      Speaker: Ivica Puljak (University of Split)
    • 15:30 15:45
      Afternoon break 15m
    • 15:45 16:45
      Data Analysis E3: Hypothesis testing 1h

      • Finding p-value
      • Converting p-values to significance
      • Low count experiments and hypothesis testing

      Speaker: Ivica Puljak (University of Split)
    • 17:00 19:15
      Study time / daily sports 2h 15m
    • 19:45 20:30
      Dinner 45m
    • 08:45 09:45
      Data Technologies L5: Distributed Hash Tables, Data Replication, Caching, Monitoring, Alarms and Quota 2 1h

      This lecture concludes the description of the various possible technologies used to implement distributed hash tables, data workflows and complex data transfer processes. It also discusses problems with data caching and Garbage Collection to conclude on monitoring and quota enforcement.

      Speaker: Alberto Pace (CERN)
    • 09:45 10:30
      Guest talk: Industrial applications of data science 45m

      Disease diagnostic, biomarkers discovery, drugs development, personalized medicine, land cover mapping, biodiversity conservation, predictive maintenance, product development, process optimization, autonomous driving, smart mobility – building - factory, fraud detection, recommendation systems etc. – this is an extremely short list of applications where data science plays an essential role. Data science touches all economic sectors and is truly impacting almost every aspect of our everyday life.

      This vast diversity of applications can be narrowed down to much smaller set of tools and methods that provide with more or less standard solutions to the very wide range of real life challenges. This is the role of a data scientist who works hand in hand with a domain expert to tailor the optimal solution for the goal in mind.

      In the industrial sector, data is generated in all areas of activity and all industries, from the hiring process, to the development and production of a product (a product can be a car, an assurance policy, a medical prescription, a market survey etc.) to the customer itself. Of much importance for most industries is also the data generated during the entire life cycle of the products, extremely valuable in order to design better products. The role of a data scientist is to extract knowledge from data by means of standard algorithms and methods and to create new assets for the business. We propose to showcase the variety of use cases issued from the manufacturing industries paired with similar use cases from other application areas. For example a comparison of image processing in medical imaging vs. automated optical inspections on manufacturing lines, recommendation systems in manufacturing vs recommendation systems in E-commerce or application of statistical tests for biomarkers discovery vs. root cause analysis of failures on a production line.

      Speaker: Cosmin Lazar (Bosch)
    • 10:30 10:45
      Announcements 15m
    • 10:45 11:15
      Morning coffee 30m
    • 11:15 12:15
      CSC examination 1h
    • 12:30 13:15
      Lunch 45m
    • 13:30 17:00
      Free time 3h 30m
    • 17:15 17:30
      Afternoon break 15m
    • 17:30 19:30
      Graduation and closing ceremony 2h
    • 19:30 19:45
      Transport 15m
    • 19:45 22:00
      Closing dinner 2h 15m
    • 08:45 11:00
      Departure 2h 15m