Blog

Bootstrapping in Lausanne

I’ve been planning to finish my PhD paper in Switzerland for a while, and now here I am in the beautiful city of Lausanne – giving it a go. From the perspective of a person who’s spent most of his life in Warsaw, Lausanne is a bit expensive, quite bureaucratic […]

Recording and replaying Qt input events

Recording, saving, loading and replaying of Qt input events could come in handy in numerous situations. For example, in automatic GUI testing or when implementing a macro system (like the one in Microsoft Office or Adobe Photoshop), in interactive help systems, demos of all sorts etc. Input events in Qt […]

Efficient Meta-Information Based Binary Parser

The problem of storing information about structure of binary data seems quite prevalent nowadays. As tendency to use non-homogenous programming platforms increases, a need arises to store information about data (meta-information) separately from code and in a format that facilitates extensibility and portability. Such architecture could be illustrated using the […]

QDomNodeModel / QXmlQuery

I have prepared an implementation of QAbstractXmlNodeModel class from QtXmlPatterns module which makes it possible to run QXmlQuery-ies on a QDomDocument. I’ve run into problems with QXmlQuery though, because it doesn’t seem to support @Attribute queries either in QXmlQuery::XPath20 or QXmlQuery::XQuery10 mode. I’ve tested it without my custom model and […]

New Year's Eve

I’ve written a small game for today’s occasion 🙂 I hope you enjoy it 😀 Oh, I’m not sure about the copyright status of some of the content. ACDC’s Back in Black is obviously copyrighted but since it’s a special occasion and a non-profit game, I hope I don’t go […]

New server & domain

I had to move my blog installation to a different server and domain. I’m sure you will notice a decrease in site loading speed, that’s due to server running on a really legacy hardware (300MHz Celeron ;D). I’m planning to replace it soon with something significantly more powerful. On the […]

LINQ/C++

LINQ was released as part of .NET Framework 3.5 back in 2007 – http://en.wikipedia.org/wiki/Language_Integrated_Query. Some attempts were made to mimic its capabilities in C++, most notably the proof of concept code by Hong Jiang: https://github.com/hjiang/linqxx. I’ve written my own, more concise version with similar functionality, which you can see below. […]

Random thought – QObjectLocker

I figured it _could_ be useful to have my mutexes created automatically for me on a per object basis. QObjectLocker maintains a pool of mutexes assigned to specified addresses (object pointers) in memory. Otherwise it behaves similarly to QMutexLocker. This way I don’t have to extend or pair up existing […]

Project Euler #312

Sometimes I wish I could share solutions to PE problems. They’re so great! I totally enjoyed every bit of this week’s puzzle. At first you don’t know where to start, it seems so complicated and then you just immense yourself in the pleasure of thinking and bit by bit everything […]

OpenMPI and Precomputed Values in Shared Memory

Think OpenMPI. Let’s say you have a 12-node cluster at your disposal. Every node has 16GB of RAM and two 4-core processors which in normal situations enables you to run 8 processes per node. What happens if you want to precompute a huge constant lookup table (e.g. 3GB in size) […]