The GridPP UserGuide

Prerequisites

While we want to make the grid accessible to everyone, there are some things you are going to need - and are going to need to know - in order to take full advantage of the resources on offer. Let's go through these now.

  • A valid email address: This sounds kind of obvious - and who doesn't have an email address these days? - but you'll need a valid email address from which you can send and receive emails.
If you can, use your institutional or organisational email account (such as that given to you by your school, university, or company) as this will make life a little easier when it comes to granting you access to grid resources.
  • A GitHub account: GridPP is an Open Source project. Much of the software used by the GridPP Collaboration is hosted on our GitHub repository - including the UserGuide itself. It means we can track developments and issues in a public forum and so maximise collaboration opportunities. You can sign up for a free GitHub account on their website.
GitHub isn't the only online code repository available. For example, BitBucket also offers a similar git-based versioning system. CERN, too, have their own git system. GitHub is used because they allow unlimited public repositories with an unlimited number of collaborators - which is what GridPP is all about. BitBucket, on the other hand, offer an unlimited number of private repositories for users, but limit the number who can collaborate. Please get in touch if you'd like to know more.
  • Experience with the command line: The command line allows you to type instructions into your computer in order to get it to do things for you, rather than relying on clicking on icons, buttons, and other graphical elements of a software package. In his guide, Learn Enough Command Line to be Dangerous, Michael Hartl uses a nice analogy with magic. While it is technically possible to use the Grid without using the command line (using, for example, a web browser to access specific Grid systems), using the command line is infinitely easier and gives you much, much more flexibility. Hartl's tutorial, is well worth following if you've not used it before (or even if you have!).

  • A text editor: we'll be writing scripts - series of commands to be executed one after the other - and for this you'll need a text editor of some description. Emacs, Vim, Vi - whatever you feel most comfortable with. Vim, for example, allows you to edit text from the command line.

  • Programming with Python: Once we start getting fancy with the Grid, we're going to use the Python programming language (via an Application Programming Interface) to do a lot of the work for us. As such, some familiarity with Python will be handy. There are plenty of (free!) online tutorials available that can get you started. We'll provide plenty of examples too, so don't panic!

  • Contact with GridPP: Before we can let you loose on GridPP's vast computing resources, it'd be nice to know who you are and what you're doing with them. In fact, this is a requirement of the UK Grid policy. You may already be in contact with a GridPP representative at your local institution - if not, feel free to drop us a line.

  • A Scientific Linux 6 command line with CVMFS access: This will either be provided by your friendly GridPP contact (see above) or via a GridPP CernVM, a Virtual Machine made by CERN that you can run yourself. The CernVM-File System, a.k.a. CernVM-FS or CVMFS, gives you (and any grid node, for that matter) instant access to all sorts of software without having to install anything. So it's worth sorting out! You can find instructions for creating a GridPP CernVM in this appendix.

Got all of that? Good. Now let's look at the conventions used by the GridPP UserGuide.