Training

Webinar - Demystifying C++ Lambdas -- Glennan Carnie

Following the success of our first webinar on 'Measuring software quality', we are pleased to announce the second in our series:

Demystifying C++ Lambdas

by Glennan Carnie

About the webinar:

Lambdas are one of the features of Modern C++ that seem to cause considerable consternation amongst many programmers.

In this 45 minute webinar, Feabhas Technical Consultant Glennan Carnie, will have a look at the syntax and underlying implementation of lambdas to try and put them into some sort of context.

The Webinar runs twice

10am GMT
4pm GMT

Choose a webinar and reserve a free place on our website:

Modern C++: C++11 / C++14 / C++17, February 12th, Berlin -- Don Tait

Seats are still available for KDAB's 3-day training, February 12th, Berlin:

Modern C++: C++11 / C++14 / C++17

by Don Tait

About the training:

Learn the relevant library and language changes

In this hands-on C++11, C++14 and C++17 training for C++ developers, you'll learn about the language changes and the standard library changes introduced in C++11, C++14 as well as changes from C++17.

During the class, the new standards will be demonstrated aided by many examples and you'll get the opportunity to use them right away in our lab projects. 

Course contents:

Important language changes, including:

  • C++11/14: lambdas, range based for loops, strongly typed enums,
  • C++11/14: constexpr, uniform initialization, move semantics, …
  • C++17: improved lambdas, structured bindings, constexpr if, …
  • C++11/14: Functional programming, including lambda, bind and function objects
  • C++11/14: Template meta programming, including variadic templates and perfect forwarding
  • C++11/14: Multithreading (including the C++11 memory model, std::thread, std::async, …)
  • C++17: Templates: Fold Expressions, Class template deduction, …

Find out more and register

Boost Your Productivity with Modern C++ - Now with C++17 -- Peter Gottschling

Repeating the last years’ popular course, again being held in English and German:

Boost Your Productivity with Modern C++ -- Now with C++17

by Peter Gottschling

About the training:

The course is designed for software developers who aim for excellent software characterized by intuitive interfaces and maximal performance. Our goal for this 4-day course is that you can afterwards program perceivably more productively. That your programs are usable more flexibly and nonetheless explore the hardware as efficiently as possible. That your software becomes clearer and simpler and thus more readable and more maintainable. For this purpose, we intensively use features of C++11, C++14, and recently C++17.

The trainer Peter Gottschling is the author of the advanced C++14 book ”Discovering Modern C++”,the Matrix Template Library 4, co-author of the Boost Graph Library and other scientific libraries. He is vice-chair of DIN’s programming language group and was (the last) head of the German delegation in the ISO committee for C++ standardization.

The complete course description including the list of topics is available here. Next trainings: 3/5-8/2018 in English, 6/18-21/2018 in German, 9/17-20/2018 in English.

Pluralsight Course: Practical C++14 and C++17 Features -- Giovanni Dicanio

Are you interested in learning about some practical features added in C++14 and C++17, with a mix of engaging slides and demo code? Then consider watching this Pluralsight course!

New Pluralsight Course: Practical C++14 and C++17 Features

by Giovanni Dicanio

From the blog post:

C++14 and C++17 added many new features to the C++ language. This course will teach you practical features introduced in C++14 and C++17, that you will be able to use to write clearer, simpler, and higher-quality modern C++ code.

 

The Boost C++ Master Class with Boris Schäling

Boris Schäling offers a new C++ master class.

The Boost C++ Master Class

by Boris Schäling

About the training:

Welcome to a 2-day training that strives to deepen your understanding of the Boost C++ Libraries. As of today, the Boost C++ Libraries are the most important stepping stone if you want to increase your productivity as a C++ developer and significantly improve the quality of your code. In-depth knowledge of the Boost C++ Libraries empowers you to write code that is shorter, more expressive, less error-prone, more agile, and more future proof.

Boris Schäling is one of the world’s leading professional Boost C++ expert. He has seen multiple times how detailed knowledge of the Boost C++ Libraries can turn a C++ developer into an exceptional C++ developer. Boris Schäling is an active member of the Boost community. He is the author of the book "The Boost C++ Libraries" and responsible for the website theboostcpplibraries.com.

The training is for intermediate and advanced C++ developers. Advantage if you have some experience with the Boost libraries (prior knowledge of Boost helpful, but not required).

Don’t miss out on the opportunity to attend this 2-day course, to be held in Stockholm on the 13th-14th March, 2018. Please notice there are a limited number of seats.

C++ for Embedded Developers, 25-29 September, UK

Join us to gain practical experience of writing C++ for real-time and embedded systems in Swindon, UK.

C++ for Embedded Developers

About the course:

This course is designed for:

  • real-time engineers embarking on a project using C++ for the first time
  • developers looking to move from C to C++ (as it will clearly demonstrate both the strengths and weaknesses of C++ vs. C)

Course overview

The course introduces the C++ language for use on real-time and embedded applications. It highlights areas of concern for real-time and embedded development. The focus is on developing core object-oriented programming skills and understanding of how to build effective, maintainable and efficient C++ programs.

Attendees perform hands-on embedded programming, on target hardware, during course practicals. Approximately 50% of the course is given over to practical work.

Course objectives

  • To provide a solid understanding of the essentials of the C++ programming language.
  • To give you practical experience of writing C++ for real-time and embedded systems.
  • To give you the confidence to apply these new concepts to your next real-time project.

Delegates will learn

  • The core C++ syntax and semantics
  • How to access hardware in the language
  • How to program interrupt handlers in C++
  • About memory and performance issues associated with C++
  • How real time operating systems (RTOS) affect the use of the language

High-Performance and Low-Latency C++ with Herb Sutter

Join us for a 3-day training event with Herb Sutter in London, October 9-11, 2017

High-Performance and Low-Latency C++

About the training:

Welcome to a unique training with Mr Herb Sutter focusing on Efficiency, Concurrency, Parallelism, Modern Hardware, and Modern C++11/14/17. Participants of this intensive 3-day training will be given the knowledge and skills required to write high-performance and low-latency code using modern C++ on today´s systems.

Mr Sutter is the chair of the ISO C++ committee and best-selling author of four books and hundreds of technical papers and articles, including the essay “The Free Lunch Is Over”.

Intermediate to advanced C++ programming experience is required. Some experience with concurrency, parallelism, and/or multiprocessing in e.g. Java, C, C++ or similar language is recommended, but not required.

Don’t miss out on the opportunity to attend this three day course, to be held in London on the 9th – 11th October, 2017. Please notice there are a limited number of seats.

Better C++ / Chicago July 12-14, 2017

Join us for a 3 day training event in Chicago, IL, USA July 12-14, 2017

Better C++ / Chicago

by Jason Turner

About the training:

Through this training you will gain a better understanding of how to write clean, maintainable, and well performing C++ code.

The topics covered apply to all types of C++ development: embedded, system or application development.

Jason's classes are highly interactive and have a limited class size to ensure that everyone has sufficient opportunity to participat

A la carte tickets are available for those wishing to attend only part of the training.

Wednesday: Demystifying C++11 and Beyond

C++11, 14, and 17 added many new features to C++ that have made many question the overhead of using these new features and the complexity they add to the language. We will make an in depth examination of these features to give you confidence in using and deploying modern C++ techniques in your organization.

Thursday: Understanding Object Lifetime in C++

C++ has what very few other languages have: a well defined object life cycle. Understanding this key aspect of the language is critical for writing high quality C++.
We will describe the lifecycle of an object in C++ and work through increasingly complex examples. There will be something for C++ developers of all skill levels to learn.

Friday: C++ Best Practices

On the final day of the course we will cover a series of tangible best practice rules for how to write C++ code that is maintainable and efficient by default.
We will wrap up with a discussion of how to use the tools available to maintain code quality.