Welcome to our June Newsletter

First, a note from me: from next month the KDAB Newsletter will be sent out by Sebastian Springer so I can make trouble elsewhere in my 75th year. Time for a change ;-). Please welcome him, especially in your inbox.

 

I bid you farewell with Anchoring Qt Quick Components Instantiated with JSON, followed by Parts 1 and 2 of Mastering the Embedded Update Process.

 

We also bring you QtTest Extension for VSCode, some changes to KDAB Training and this month's video releases, including Module 4 of Introduction to Qt Widgets. Finally, we have a short selection of Events worth attending. Closing date for entry to FlutterCon is imminent, so grab a ticket while you can!

 

­

Anchoring Qt Quick Components Instantiated with JSON

Factory Design Techniques - Parts 3 & 4

by Javier Cordero Pérez

This is the final entry of the Factory Design Techniques series, which looks at simple architecture for remote real time instantiation and updating of arbitrary QML components. 

 

Part 1 focused on software design patterns while Part 2 showed how to use QML's positioning and layout APIs.

 

In this post, Parts 3 and 4 combined, Javier evaluates a technique for anchoring nested components to mitigate remote code execution risks.

 

Read the blog.
 

­

Mastering the Embedded Update Process

Parts 1 and 2

by Andreas Holzammer

In the first of these two posts, Andreas gives an overview of key issues and methodologies in the update process for your product in the field. 

 

In the second, he covers hardware requirements, processes and other issues that must be solved to give a robust OTA solution.

 

Read Part 1: Mastering the Embedded Update Process
Read Part 2:Mastering Embedded Updates, Continued.


For more on this topic, check out our best practice guide, Updates Outside the App Store.

­

QtTest Extension for VSCode

Introducing QtTest Runner

Qt Test is a framework designed for unit testing applications and libraries built with Qt. It provides all the standard features commonly found in unit testing frameworks, making it easier to write unit tests for Qt-based projects.

We’re happy to introduce the QtTest Runner – a Visual Studio Code extension for running Qt Tests via the test explorer pane.

 

Check out Sérgio Martin's release blog.

­
­

New courses in the UK 

­

All our UK courses are offered at our training facility in Macclesfield, near Manchester.

 

Advanced Modern C++ (4 days)

Combining modern techniques, tools and features from the latest C++ standards, including C++23, to show participants how to write better, more efficient and less error-prone code.

  • Sept 09-12 Book your seat
     

Modern OpenGL: Introduction (3 Days)
Covering all the fundamental topics to develop flexible, high performance OpenGL code that runs on the desktop and embedded / mobile devices.

  • Oct 29-31 Book your seat
     

Programming with Qt 3D (3 Days)
Learn how to write Qt 3D applications from the ground up, control Qt 3D’s rendering algorithm with the Frame Graph and integrate Qt 3D inside a QtQuick application.

  • Dec 03-05 Book your seat

 

New dates for online Rust training courses

These online courses are offered in collaboration with our partners, Ferrous Systems, a company that has been an integral member of the Rust community since before Rust 1.0. 

 

Introduction To Rust (5 half days):

  • July 22-26 Register
  • Sept 23-27 Register
  • Nov 25-29 Register

 

Embedded Rust (3 half days)

  • July 31- Aug 2 Register
  • Oct 2-4 Register
  • Dec 4-6 Register

 

Introduction + Embedded Rust Combo (8 half days):

  • July 22-26 + July 31-Aug 02 Register
  • Sep 23-27 + Oct 02-04 Register
  • Nov 25-29 + Dec 04-06 Register

 

Check out the full schedule.

­
­

Introduction to Qt Widgets

Module 4 is released

This latest Module from Jesper - and it's a short one so you can get outdoors while the sun shines - focuses on Dialogs and Main Windows.

 

Here's the link to the previous module, Module 3, The Whirlwind Tour, in case you missed it.

­

Dialogs

­

Why you need QDialog, (the same reason your Mum is not actually a stone ;-) ). The difference between a modal and non modal dialog, and how you create your own is also covered. 
 

­
Watch the video
­

Common Dialogs

­

So that you don't need to reinvent the wheel, Jesper introduces the dialogs you will surely want to use. He also shows you the framework for implementing a wizard. 

­
Watch the video
­

Main Windows

­

Here Jesper looks at toolbars, docking widgets, a menu bar and menus for QMainWindow, and how they all fit together.

­
Watch the video
­

Project Management Framework

Successful hybrid project management with Jira

with Timo Buske

In this first of an occasional "quick tip" series on tools for project managers, Timo shows how to find out how much your Agile project has changed from its original spec and what to do about it. 

How do you MEET DEADLINES?
­

Events

Next month there'll be a report from Oxidize, the fast-growing Rust event for industry innovators we were happy to co-host this May. Oxidize will take place next year from September 16 - 18, 2025, in Berlin. Save the dates!

 

There follows a short selection of events coming up where we hope to see you in 2024.

FlutterCon, July 3 - 5, Berlin, Germany

We'll be there at Booth 08. Come and join the action. Visit us and see what we've been testing out. Get your ticket by June 26th!

KDE Akademy, Sept 7 - 12, Wurzburg, Germany

We're Bronze Sponsors of this annual world summit for KDE Community members, developers, translators, designers, and friends. 

Register now.

CppCon, Sept 15 - 20, Aurora, Colorado, USA

With a near record number of talks submissions, this year's program can't fail to meet the event's high quality standard. Check out the lightning talks from last year. Come meet us in the Exhibitor section! Register!

 

Meeting C++, Nov 14 - 16

Berlin, Germany & Online

Keynotes Titus Winters, Hana Dusíková, Herb Sutter and Peter Sommerlad. 

Get your ticket now.

­

Klarälvdalens Datakonsult AB (KDAB)

Box 30, 683 21, Hagfors, Sweden

This email was sent to mail@example.com

You are receiving this because you have contacted or been contacted by KDAB, or if in the EU, have given KDAB your consent.

Update your preference | View in browser | Unsubscribe

­
­
­
­
­