Training Options


Pre conference training courses (Monday, November 3rd)
Introduction to OpenGL and Qt 5 This one day course will present an introduction to 3D programming with OpenGL® and Qt. It will cover general 3D and OpenGL concepts and the basics of writing pure OpenGL programs. It will review the various Qt classes supporting OpenGL including the newer QOpenGL* classes. It  will discuss writing shaders, lighting and texturing effects.  The use of ANGLE on Windows platforms will be covered as well as OpenGL/ES on embedded systems.  The scope will be Qt version 5 using both C++ and QML. Students should be familiar with the basics of Qt  but do not need prior experience with OpenGL.
Effective QML
This one day course will focus on several of the more complex areas of QML and present tips, tricks, best practices, and common areas of confusion and error. It will be based on real-world experience developing customer applications for mobile, embedded, and desktop. The following major topics will be covered:
  • Anchors
  • Integrating C++ and QML
  • Data Models and Views
  • Advanced Anchors
  • QML Language Scope
  • Keyboard Input Handling
  • Lessons learned from real-world QML projects
The course is for developers who are already familiar with the basic concepts of Qt and QML and want to expand their knowledge to the next level.
Qt GUI Test Development with Squish Testing the user interface of today’s applications is a very complex and error-prone task. Automating this task is challenging, but approached correctly very rewarding. Squish is the leading cross-platform/cross-technology GUI test automation tool for functional GUI regression tests and is the tool of choice in a Qt environment. This course will introduce Squish and guide you through tailoring it to your own application's architecture. A basic knowledge of Qt is helpful but not required for this course. Managers and testers are also welcome.
Qt on Android Android is the fastest growing mobile and embedded platform and one of the newest to be officially supported by Qt since the 5.1 release. This one day course will get you started developing with Qt on Android. It will cover the basics of getting the development environment set up and building, deploying, and running your first application. The material will cover developing with both C++ and QML code. It will cover the current capabilities and limitations of the Qt port to Android as well as numerous tips, tricks, and common problems to avoid. It will cover cross-platform development for mobile and embedded devices with Qt and mention areas of future work including Qt 5.3. The course will include some hands-on labs using Qt and Qt Creator and the simulator that comes with the Android SDK. Students should have some experience with Qt on the desktop or other platform. Prior experience with Android is not required nor is an Android device.
Qt for Embedded Development This is a Qt5-based training course covering Qt Essentials & QML, targeted to anyone interested in SW development using Qt. The course covers the essentials of using Qt in embedded platforms including embedded configuration, device settings, on target debugging, QPA plugin, tool chains, Open GL hardware acceleration, Qt Quick Compiler and speeding up embedded development with the latest features to save costs & dramatically improve time to market for device creation. Qt on embedded training includes experienced instructor-led training with numerous hands-on programming exercises (50% lectures – 50% hands-ons), Qt roadmap update and Qt training material by Digia. For the full workshop experience, prerequisites for the course include good command of C++ programming language and a laptop.
UX Design for Engineers The proliferation of tablets and smartphones has raised customers’ expectations of anticipated interaction with any device. If any system with a touchscreen is not as responsive as the user’s tablet, they are immediately disappointed. Every year, the bar is set higher and it is important to recognize that compared to desktop systems, users of these new touch-enabled devices have different goals and expectations. In this full-day session intended for software developers, we will present useful User Experience (UX) concepts and techniques that should be considered before engaging in the core development of an embedded systems application. We will present various scenarios and UX best practices, discuss User Interface (UI) prototyping and testing strategies, examine case studies and together, we will work through a design problem over a series of hands-on sessions.


Post conference 2 day training courses (Thursday, November 6th - Friday, November 7th)
Introducing Qt Quick and QML This hands-on on course introduces the major elements of a QtQuick/QML application. Topics to be covered include: graphical and text elements for user interfaces, interaction with keyboard or mouse, states, transitions, and animations, presenting data, dynamic creation of components, modules, and integration of QML with C++.  This course requires at least a basic understanding of Qt and QObjects.
OpenGL for Embedded Development This two day course will cover everything you need to get started with OpenGL® ES, a royalty-free, cross-platform API for full-function 2D and 3D graphics on embedded systems, including consoles, phones, appliances and vehicles. The OpenGL API is typically used to interact with a graphics processing unit (GPU), to achieve hardware-accelerated rendering. Specifically, we will focus on OpenGL ES2 for embedded development, covering GL Data Types, Buffer Objects, Texturing, Vertices, Shading and more. No prior OpenGL experience is necessary.