Training Day

The training day consists of paid trainings held on April 10.

To attend these trainings, you need to have a ticket for the specific training. Get your tickets at the tickets page.

The following trainings are offered:


Building and Using Shared Libraries on Linux

By Michael Kerrisk

This course provides a thorough understanding of the process of designing, building, and using shared libraries on Linux. Detailed presentations coupled with carefully designed practical exercises provide participants with the knowledge needed to understand, design, create, and deploy shared libraries.



Audience and prerequisites

The primary audience comprises designers and programmers building and deploying shared libraries on Linux. Systems administrators are likely to also find the course of benefit for the purpose of troubleshooting problems with shared libraries.

Participants should have a good reading knowledge of the C programming language and some programming experience in a language suitable for completing the course exercises (e.g., C, C++). No previous experience of working with shared libraries is required.

Course materials


Course duration and format

One day, 9.00 - 17.30, with around 50% devoted to practical sessions. The training includes lunch and a coffee break.

About the trainer

Michael Kerrisk has a unique set of qualifications and experience that ensure that course participants receive training of a very high standard:


Fast Track to Embedded Linux

By Chris Simmonds

Are you thinking of using Linux on your next embedded project but not sure where to begin? This one day workshop shows you how it is done. Beginning with a blank development board, you will learn how to bring up Linux and access hardware using GPIO and i2c.

The workshop covers the four elements of embedded Linux: toolchain, bootloader, kernel and root filesystem. The theory is backed up with hands-on sessions using a common development board: a BeagelBone Black. All the software needed for the practicals will be supplied on a bootable USB flash drive, which you can keep for future reference.



This course is ideal for software engineers who are familiar with embedded devices but need to apply that knowledge to Linux development, and to those who are familiar with Linux, but want to apply that knowledge to embedded systems.


Essential: good knowledge of the C programming language, since this is used in the programming portions of the course

Desirable: either a good background in embedded devices, or a reasonable proficiency in Linux command-line tools. Delegates with neither will find the learning curve rather steep

All hands-on parts will be carried out in pairs. At least one of the pair will need to bring a laptop to do the exercises. In practice this means that every student will need to bring a laptop since we will not be splitting up into groups until the start of the workshop. Pretty much any PC compatible laptop will do, but no Macintoshes

Participants will be provided with a USB flash drives with a copy of Ubuntu which the students will use to boot their laptop. This means that you must be able to change the BIOS setting to boot from an external USB device using legacy boot mode.

Course materials

All students will receive:


Course duration and format

One day, 9.00 - 17.30. The training includes lunch and a coffee break.

For the hands-on part, there will be ten BeagleBone Black development boards. This means that people will work in teams of two.

About the trainer

Chris Simmonds has been using Linux in embedded systems for almost 20 years. He has been running training courses and workshops in embedded Linux since 2002 and has delivered hundreds of sessions to many well known companies in the UK, Europe, USA, South America and SE Asia.

He is the author of the book “Mastering Embedded Linux Programming”, and is a frequent presenter at open source and embedded conferences, including Embedded Linux Conference and Embedded World. You can see some of his work on the "Inner Penguin" blog at