Putting an LRU in your code
For the ones who didn’t find the LRU in Tracker’s code (and for the ones who where lazy). Let’s say we will have instances of something called a Statement. Each of those instances is relatively big....
View ArticleComposition and aggregation to choose memory types in Qt
As we all know has Qt types like QPointer, QSharedPointer and we know about its object trees. So when do we use what? Let’s first go back to school, and remember the difference between composition and...
View ArticleItem isChild of another Item in QML
Damned, QML is inconsistent! Things have a content, data or children. And apparently they can all mean the same thing. So how do we know if something is a child of something else? After a failed...
View ArticleQML coding conventions checker that uses QML parser’s own abstract syntax tree
My colleague Henk Van Der Laak made a interesting tool that checks your code against the QML coding conventions. It uses the internal parser’s abstract syntax tree of Qt 5.6 and a visitor design. It...
View ArticleGeef vorm
We zijn goed. We tonen dat door ons respect voor privacy en veiligheid te combineren. Kennis is daar onontbeerlijk voor. Ik pleit voor investeren in techneuten die de twee beheersen. Onze overheid moet...
View ArticleBeste VRT, over PGP
PGP, Pretty Good Privacy, is niet enkel te koop op Het Internet; het is zowel gratis als dat het open source is. Dat wil zeggen dat iedereen op deze planeet de broncode van PGP kan downloaden,...
View ArticleHow to expose a QList in a ViewModel to QML
MyPlugin/MyPlugin.cpp: #include <ViewModels/MyListClass.h> #include <ViewModels/DisplayViewModel.h> qmlRegisterUncreatableType<MyListClass>( a_uri, 1, 0, "MyListClass", "Use access...
View ArticleBinaries in git, release numbering, Git-Flow and Scrum at the CIA
Funny how even the software developers at the CIA have problems with idiots who want to put binaries in git. They also know about Git-Flow, my preferred git branching workflow. I kind of wonder how...
View ArticleDuck typing
Imagine you have a duck. Imagine you have a wall. Now imagine you throw the duck with a lot of force against a wall. Duck typing means that the duck hitting the wall quacks like a duck would. ps....
View ArticleMerkel bashing
It seems to be the new sport of nitwit moronic world leaders like Trump and Erdogan to bash Frau Merkel. It makes me respect her more.
View ArticlePerfection
Perfection has been reached not when there is nothing left to add, but when there is nothing left to take away.
View ArticleMaking something that is ‘undoable editable’ with Qt
Among the problems we’ll face is that we want asynchronous APIs that are undoable and that we want to switch to read only, undoable editing, non-undoable editing and that QML doesn’t really work well...
View ArticleThe undoable editor that can open > 4 GB text files
We are making an editor for industrial uses at Heidenhain. This is to make big Klartext programs, editable. I’m sure other industries could also use that. Nowadays these programs often come out of a...
View ArticleAsynchronous undoable and redoable APIs
Combining QFuture with QUndoCommand made a lot of sense for us. The undo and the redo methods of the QUndoCommand can also be asynchronous, of course. We wanted to use QFuture without involving...
View ArticleRE: Bye Facebook
Wim made a stir in the land of the web. Good for Wim that he rid himself of the shackles of social media. But how will we bring a generation of people, who are now more or less addicted to social...
View ArticleHow do they do it? Asynchronous undo and redo editors
Imagine we want an editor that has undo and redo capability. But the operations on the editor are all asynchronous. This implies that also undo and redo are asynchronous operations. We want all this to...
View ArticleThe rules of scuba diving
First rule. You must understand the rules of scuba diving. If you don’t know or understand the rules of scuba diving, go to the second rule. The second rule is that you never dive alone. The third...
View ArticleTruly huge files and the problem of continuous virtual address space
As we all know does mmap, or even worse on Windows CreateFileMapping, need contiguous virtual address space for a given mapping size. That can become a problem when you want to load a file of a...
View ArticleColleague tells me I write blogs in chats while I explain how to write a...
I’m at home now. I don’t do non-public unpaid work. So let’s blog the example I’m making for him. workplace.h #ifndef Workplace_H #define Workplace_H #include <QObject> #include <QFuture>...
View ArticleComité I deelt informatie met De Tijd. Waarom niet met de burger?
Onze inlichtingendiensten en Comité I geven dit jaar enkele cijfers over het speurwerk van staatsveiligheid, blijkbaar ‘vertrouwelijk’, aan een Belgische krant. Het is spijtig dat gewone burgers dit...
View Article