Learning How to program on HPC cluster (part III: Python, Julia)

Europe/Brussels
SHANON (building Maxwell, first floor) (Louvain-La-Neuve)

SHANON (building Maxwell, first floor)

Louvain-La-Neuve

Place du Levant 3 1348 Louvain-la-Neuve Belgium
Description
Python/Julia are scripting languages used in many scientific software. In this session, we will cover the basics of python/Julia and introduce the concept of object oriented code with Python.

Contents:

  • Introduction to Python
  • Python as an Object Oriented Language
  • Introduction to Julia

Prerequisite:

  • Being able to use SSH with private keys 
  • Being familiar with a text editor 
  • Mastering the Linux command line and the GNU utilities (mkdir, cp, scp, etc.)

Type: Hands-on
Target audience: Rookie programmer
Must: This session is a nice-to-have for those who are using Python for science

Registration
Registration
19 / 50
    • 09:30 12:00
      Introduction to Python 2h 30m

      Python is a programming language that can be used both for scientific computing (as a replacement for Fortran or C/C++) and for everyday scripting (as a replacement for Bash or Perl), but also to develop full programs with a GUI as well as headless services. It is a very nice tool to include in any scientist's toolbox.

      Contents:

      • Language syntax
      • The core modules
      • Installing external modules
      • Writing and distributing modules

      Prerequisite:

      • Being able to use SSH with private keys 
      • Being familiar with a text editor 
      • Mastering the Linux command line and the GNU utilities (mkdir, cp, scp, etc.)
      • Notions of programming

      Type: Hands-on
      Target audience: Rookie programmer
      Must: This session is a nice-to-have for those who do not know Python.

       

      Speaker: Jérôme de Favereau (UCLouvain/IRMP/CP3)
    • 13:00 13:45
      Python as an Object Oriented Language 45m

      The point of this lecture is to explain the concept of object oriented programming and using python to present the various concept and advantages.

      Contents:

      • Data structure
      • Class
      • Object/Instance
      • Inheritance

      Prerequisite:

      • Being able to use SSH with private keys 
      • Being familiar with a text editor 
      • Mastering the Linux command line and the GNU utilities (mkdir, cp, scp, etc.)

      Type: Hands-on
      Target audience: Rookie programmer
      Must: This session is a nice-to-have for those who are using Python for science

      Speaker: Dr Olivier Mattelaer (UCLouvain/CISM)
    • 14:00 16:00
      Introduction to Julia 2h

      Julia is a recent (2012) programming language created at the MIT with the aim to provide performance on par with the likes of C and Fortran, with the ease of use of languages like Python and Matlab. The goal of this session is to introduce the key ideas of Julia while giving as many pointers for getting started as possible.

      Contents:

      • Installing Julia
      • Basics of Julia
      • Multiple Dispatch
      • Installing and managing packages

       

      Prerequisite:

      • Being able to use SSH with private keys 
      • Being familiar with a text editor 
      • Mastering the Linux command line and the GNU utilities (mkdir, cp, scp, etc.)

      Type: Hands-on
      Target audience: Rookie programmer
      Must: This session is a nice-to-have for those who need to develop fast scientific software.

      Speaker: Cédric Simal (Université de Namur)