skip to navigation skip to content
Reset
Filter by

Course type

Show only:



Dates available




Places available




Theme







Filter search

Browse or search for courses


10 matching courses
Courses per page: 10 | 25 | 50 | 100
Clear search


C++: Programming in Modern C++ Wed 4 Jan 2017   09:30 Finished

This is an introduction to programming in modern C++, based on the book "'Programming: Principles and Practice using C++"' (2nd ed.) by Bjarne Stroustrup. The aim is to teach participants how to write non trivial, practical programs that are comprehensible and portable. Participants should also be able to understand and modify most well-written C++ applications, though not necessarily every aspect of them.

C++ is a large and complicated language, which is reflected in the length of this course. The creator of C++, Prof. Stroustrup, estimates that newcomers to programming will have to devote in excess of 200 hours' of work to learn how to program in C++ properly. Please bear that in mind if signing up for the course. It would also be of help (though not essential) if attendees have some prior programming experience in another language, e.g. Python.

High Performance Computing: An Introduction Tue 6 Jun 2017   09:30   [More dates...] [Places]

The course aims to give an introductory overview of High Performance Computing (HPC) in general, and of the facilities of the High Performance Computing Service (HPCS) in particular.

Practical examples of using the HPCS clusters will be used throughout, although it is hoped that much of the content will have applicability to systems elsewhere.

2 other events...

Date Availability
Thu 17 Nov 2016 09:30 Finished
Thu 23 Mar 2017 09:30 Finished

This course aims to provide a basic knowledge of GPU programming using OpenACC directives. The course is very hands-on oriented, aiming to give to you the opportunity to practice and experiment from the very beginning.

1 other event...

Date Availability
Fri 28 Oct 2016 09:00 Finished

This course is part of the Scientific Computing series.

This course is aimed at those new to programming, or who have never been formally taught the principles and basic concepts of programming. It provides an introduction to the basic concepts common to most high level languages (including Python, Java, Fortran, C, C++, Visual Basic). The aim of the course is to equip attendees with the background knowledge and confidence necessary to tackle many on-line and printed programming tutorials. It may also help attendees in deciding which programming language is suitable for their programming task.

Knowledge of the concepts presented in this course is a pre-requisite for many of the other courses in the Scientific Computing series of courses (although not for the "Python for Absolute Beginners" course).

2 other events...

Date Availability
Thu 20 Oct 2016 09:30 Finished
Thu 12 Jan 2017 14:00 Finished
Python 3: Advanced Topics (Self-paced) Fri 19 May 2017   09:30   [More dates...] [Standby]

This course is part of the Scientific Computing series and is suitable for people who have Python experience equivalent to either of the introductory courses: Introduction for Absolute Beginners or Introduction for Programmers

These sessions consist of a selection of self-paced mini-courses, each taking at most a half-day. Python expert(s) from the UCS will be present to answer questions or address difficulties with these. Attendees can select from the available topics to most closely meet their individual needs. Attendees are welcome to attend more than one session to work through multiple topics. If an attendee finishes a topic with time to spare they may select another, and so on.

2 other events...

Date Availability
Wed 7 Dec 2016 14:00 Finished
Wed 8 Mar 2017 09:30 Finished

This course is part of the Scientific Computing series.

This course is aimed at those new to programming and provides an introduction to programming using Python, focussing on scientific programming. This course is probably unsuitable for those with programming experience, even if it is just in shell scripting or Matlab-like programs. By the end of this course, attendees should be able to write simple Python programs and to understand more complex Python programs written by others.

As this course is part of the Scientific Computing series, the examples chosen are of most relevance to scientific programming.

3 other events...

Date Availability
Wed 12 Oct 2016 09:30 Finished
Wed 18 Jan 2017 09:30 Finished
Tue 25 Apr 2017 14:00 [Full]

This course is part of the Scientific Computing series.

This full-day course introduces the Python programming language to those who are already familiar with another high level programing language such as C/C++, Fortran, Java, Perl or Visual Basic. The aim of this course is to give such programmers sufficient familiarity with Python that they can attend any of the more advanced Python courses organised by the Computing service and easily follow any of the widely available Python tutorials on the more complex aspects of the language.

This course covers all the material contained in the "Programming: Python for Absolute Beginners" course, but in a more abbreviated fashion suitable for those who already have significant programming experience. This course does NOT cover the more complex aspects of the language (for such topics see the other Computing Service Python courses), nor is there much explicit discussion of the object oriented features of Python.

If you are an accomplished and experienced programmer you may find this course too slow, you may prefer to self-teach the course rather than attend in person, the full set of notes can be downloaded.

3 other events...

Date Availability
Tue 15 Nov 2016 14:00 Finished
Mon 6 Mar 2017 10:00 Finished
Wed 21 Jun 2017 10:00 [Places]

This course is part of the Scientific Computing series.

It is common for a student or researcher to find a piece of software or to have one thrust upon them by a supervisor which they must then build, install and use. It is a myth that any of this requires system privilege. This course demonstrates the building, installation and use of typical software ranging from trivially easy examples (the "configure, make, install" scheme) through to the evils of badly written Makefiles. Common errors and what they mean will be covered and by the end of the course the student should be able to manage their own software without needing to pester their system administrator.

1 other event...

Date Availability
Wed 30 Nov 2016 14:00 Finished

The course is designed to take someone from having no knowledge of the Unix command line to being able to navigate around directories, and doing simple file manipulation. Then some of the more basic commands, will be introduced, including information on how to get more help from the system itself. Finally accessing remote computers by ssh and the most basic of shell scripts will be introduced.

6 other events...

Date Availability
Tue 11 Oct 2016 14:00 Finished
Wed 9 Nov 2016 09:30 Finished
Tue 17 Jan 2017 14:00 Finished
Mon 27 Feb 2017 09:30 Finished
Wed 7 Jun 2017 14:00 [Places]
Tue 4 Jul 2017 14:00 [Places]
Unix: Simple Shell Scripting for Scientists Mon 12 Jun 2017   14:00   [More dates...] [Standby]

This course is part of the Scientific Computing series.

No previous experience of shell scripting is required for this course; however some knowledge of the interactive use of the bash shell is a prerequisite (see Simple Shell Scripting for Scientists: Prerequisites for details).

This course introduces shell scripting in bash for scientific computing tasks. Day one introduces very basic shell scripts in bash which process the command line in a simple fashion. Day two covers how to write more advanced shell scripts in bash. Day three covers how to make one's shell scripts more robust.

At the end of each day one or more exercises are set. It is VERY IMPORTANT that attendees attempt these exercises before the next day of the course. Attendees should make sure that they have allowed themselves sufficient study time for these exercises between each day of the course.

2 other events...

Date Availability
Mon 14 Nov 2016 14:00 Finished
Mon 6 Mar 2017 14:00 Finished