Viking Software - A consulting company focusing on Qt based software.

Our Services

We specialize in Qt development because it is our belief that Qt is the best framework available for building applications. Our developers have passed all Qt certifications.

Read More About QT

Embedded Linux applications with demanding graphical user interfaces is one of our special focus areas. Our developers know how to implement your specification of the perfect UI on your Linux based device.

Read More About Linux Apps

Desktop Windows and Mac applications are as important as ever. We can implement full applications, from idea to a working installer. Or we can help your team develop parts of the application.

Read More About Windows & Mac Apps

Case Studies


A product for cutting out parts of pictures. It can run as a standalone application or as a Photoshop plugin.

Read More


Swiss based Poken wanted an application for several phones. The tasks involved graphics and styling code, client server communication through an XML RPC system.

Read More

Featured Articles


How to use QThread properly

There are basically two different ways of using QThread directly: Worker threads or subclassing. Those two are confusing to a lot of developers, and I will try to explain when you should use those. I will also explain how signals and slots work with threads and how they can help you or lead to problems.

Read More

Serializing/deserializing a QObject tree

A while ago I wanted to implement save and load for an application. The application model was a QObject derived class, with a bunch of sub (-sub) classes. As the UI was QML, everything was accessible through properties. Instead of writing a save and load mechanism for every single class, I was able to write one generic save load mechanism. This can be done using QObject introspection/reflection. So the class name, properties and member functions can be queried.

Read More