Vimium to boost your browsing performance

TL;DR: Install the Vimium extension for Firefox or Chrome. Forget your mouse.Press ? and surf the web like a hacker.

About Vimium

If you know Vim and Chromium, you can guess what Vimium is. You can read more about it on Github and all the trivial installation guide.

READ MORE

Present elegant code elegantly

TL;DR: Pass your code snippets to Codye to generate beautiful publication-ready images and HTML of it, but only for MacOS.

Outputs

Image: great for PowerPoint and printout of your custom t-shirt

READ MORE

Touch typing is a must

TL;DR: Commit 15-30 minutes to play this game every day to master touch typing and becoming a better programmer.

Touch typing

Watch this competitive programmer:

If you’re not impressed, you can stop reading. But if you did find it impressive, the next thing you need to learn is touch typing.

READ MORE

ECCOMAS 2024: Slides on NURBS enhanced finite element (NEFEM)

The NURBS-enhanced finite element method (NEFEM)

I believe the NURBS-enhanced finite element method (NEFEM) has huge potential in streamlining the CAE workflow in complex applications. Unlike isogeometric analysis, which after 20 years of research has proven itself to be a niche technology, NEFEM can actually improve the results of any existing FEA model.

READ MORE

Get dependencies right with CMake

TL;DR

Forget find_package(), Use FetchContent_Declare with set(FETCHCONTENT_TRY_FIND_PACKAGE_MODE ALWAYS) instead.

Dependencies in C and C++

Dealing with dependencies in C++ is seen as a tedious task and here I’m going to share two simple rules to set you on the right track with CMake. This topic costs software publisher hundreds of thousands of dollars each release - you call them DevOps engineering - but I don’t think this is how is meant to be.

READ MORE

Optimise cross-products on x86

Let’s dive into the three methods for computing the cross product in 3D using C++.

  • Function passing float by reference:

    void crossProduct(float& rx, float& ry, float& rz, float ax, float ay, float az, float bx, float by, float bz) {
        rx = ay * bz - az * by;
        ry = az * bx - ax * bz;
        rz = ax * by - ay * bx;
    }
    
                
                  
                
              
    READ MORE

Optimize dot products on x86

Dot products are a fundamental and ubiquitous operation in 3D applications: physics engines, modelling, robotics, etc.. Let me give you a quick rundown on how I’ve been exploring them lately.

READ MORE