Line Rasterisation

Posted on Mon 06 August 2018 in misc View Comments • Tagged with Computer Graphics, Processing

Sometimes even the simplest things are not as simple as they look.

Screenshot of the drawing results

Recently, I had a task that required me to understand circle rasterisation. So I went back to my computer graphics course notes which I took many years ago to remind myself about how lines are drawn on a …


Continue reading

Migrating Blogofile to Pelican

Posted on Sat 13 May 2017 in misc View Comments • Tagged with Blogofile, Pelican

Since I started writing this blog in 2012, I used Blogofile as the blogging platform.

Blogofile is a static website generator, meaning that the content is written and stored in a structured format like Markdown, then it is compiled offline into a set of HTML pages that can be hosted …


Continue reading

About the Pitfalls of Merge Conflicts

Posted on Sat 31 December 2016 in misc View Comments • Tagged with Ada, Software Engineering, Source Control

I do not consider myself a novice software developer. And yet I still have not exceeded the list of things I can learn "the hard way".

Last month I had chance to learn about the dangers of resolving merge conflicts as well as how important is it to do a …


Continue reading

Connecting MSP430 with ILI9341 TFT Display

Posted on Sat 30 April 2016 in misc View Comments • Tagged with ili9341, msp430, embedded

msp430 launcpad connected to ili9341 display

In the previous post I described how to connect ESP8266 with an ILI9431 TFT display using the Adafruit library. Texas Instruments' MSP430 is another popular low cost 3.3v MCU used by the maker community. It has Energia which is an IDE forked from and compatible to the Arduino IDE …


Continue reading

Connecting ESP8266 with ILI9341 TFT Display

Posted on Fri 04 March 2016 in misc View Comments • Tagged with esp8266, arduino, embedded, ili9341

ESP8266 was popular with hobbyists for a long time. Recently I decided to join the hype and bought this module along with a super cheap color TFT display (ILI9341). In this post I will describe the process of connecting those two, using already available code written for Arduino.

ESP8288 connected to ILI9341

First step …


Continue reading

Trying Ada Bindings for X11

Posted on Tue 01 September 2015 in misc View Comments • Tagged with Ada, X11

Ada bindings for X11 were written Intermentics company and sponsored by Ada Joint Program Office (AJPO).

While intemetics has long been gone (looks like the it's domain is owned by L3 now), and AJPO was closed in 1998, the bindings are still around.

The "latest" version can be downloaded from …


Continue reading

Range Constrained Types in C++

Posted on Fri 05 September 2014 in misc View Comments • Tagged with C++, Ada

One of the first things a new Ada programmer will learn is the ability to define constrained type. Which means that one can restrict the values that can be assigned to a variable of this specific type.

For example:

subtype Positive is Integer range 1 .. Integer'Last;

Being a subtype …


Continue reading

Template Argument Deduction

Posted on Sun 04 May 2014 in misc View Comments • Tagged with C++, generics

With automatic template deduction, it is possible to omit the template argument when instantiating a template function. The compiler will deduce the type from the actual parameter sent to the function. This is of course assuming there are no ambiguities.

For example:

template<class T>
T max(T x, T …

Continue reading

How to Enable Logging of Chat Sessions in ERC

Posted on Wed 04 December 2013 in misc View Comments • Tagged with Emacs

ERC is an irc client that runs inside emacs. I sometimes use it to ask question or read interesting discussions.

It is very nice to have the code I am working on and some interesting discussion side by side on the screen.

Sometimes I read something interesting and later want …


Continue reading

Making Legacy Software Work On Windows

Posted on Sat 09 November 2013 in misc View Comments • Tagged with Linux, Windows, Wine

It sometimes happens that programs written for old versions of Windows will not work on new versions even with compatibility mode enabled. It is not uncommon for such program to crash and show some cryptic message that even a person of technical background can not understand. Sometimes only a simple …


Continue reading