On The Subject Of Dev

  • Polygons with Pythonista
    Polygons with Pythonista
    I wrote a Pythonista script on my iPhone for my kids to show the internal angles of regular polygons and how adding more sides makes the shape start approximating a circle. In the script, swiping left and right …
  • Wrapping Async functions in Promises
    Wrapping Async functions in Promises
    A lot of core APIs in node.js have two forms for each function - synchronous and asynchronous. The synchronous versions block until the function has completed, while the asynchronous versions do not block - instead …
  • Functional Java 8
    Functional Java 8
    I’ve been using Java 8 in some anger lately, and have encountered one or two tips that are worth sharing. I’ll start with some notes about lambda expressions and the Stream API that helped me thinking about …
  • GL Shaders and Atom
    GL Shaders and Atom
    Coming from IntelliJ, CLion is my favourite C/C++ IDE. It also has many plugins that extend its functionality beyond C++, and one that I’ve found useful while experimenting with game development is the GLSL plugin …
  • Graphing with matplotlib
    Graphing with matplotlib
    Today I wanted to draw some graphs. I started out using Wolfram Alpha’s excellent plot() functionality but wanted something that I would be able to use offline too. Mathematica & Matlab are beyond my …
  • Bootstrapping an HTTP server with Camel + Guice
    Bootstrapping an HTTP server with Camel + Guice
    I was tasked with creating a skeleton Java application that ran Camel for a project at work. As documentation was a bit sparse on how to achieve what I wanted, I’ve written this post on how to bootstrap a very …
  • Cross platform audio with Portaudio and libsndfile
    Cross platform audio with Portaudio and libsndfile
    In my recent efforts to make a game I’d reached a point where I had a rudimental 2d platform prototype which included a player character with animation via a sprite sheet, collision detection with the ground and …
  • Building Docker Exec (Part 2)
    Building Docker Exec (Part 2)
    Continued from Building Docker Exec Part 1 Some of the programs I wanted to be able to run with my new tools used features that were enabled at compiler level, for example C++11 or C++14 features. I didn’t want …
  • Building Docker Exec (Part 1)
    Building Docker Exec (Part 1)
    A while ago I made a start on the Project Euler problems - a set of mathematics-based programming questions - both because I wanted to improve my mathematical thinking and because their clear definition makes them a …
  • Simple HTTP Server in Python 3
    Simple HTTP Server in Python 3
    A while ago, I wrote about how to start a web server in an arbitary folder in Python 2. This can be done with Python 3 as well, but the module name has changed: python3 -m http.server

tags · archive · visual · rss