Developing a roguelike game functional-style with JS and React+Redux

Published on

Roguelike games are traditionally an excellent playground for programmers since they are very systems-oriented and place minimal focus on visual presentation. This focus on gameplay systems and data structures also presents a unique opportunity to utilize functional programming, which is not traditionally very popular among game developers. This post details my initial impressions after experimenting with roguelike game development using the React+Redux JavaScript stack.

Fixing ReSharper input lag

Published on

Many people know ReSharper as a huge hog on system resources – an they are, to some extent, right. It gets especially frustrating when it starts slowing down typing. I like to do followin test of Visual Studio performance: open one of your larger and more complicated source files, put the caret to the first line and then hold down the down arrow key. It should blaze through the file rapidly, and more importantly at a very consistent pace. If it lags a bit here and there, you are having performance issues that are sure to impede your coding experience.

Resolving bandwidth issues with image delivery via Google Drive

Published on

Google Drive is an interesting alternative to professional CDNs when you need eg. an image gallery delivered to your end users. For a smaller scale application, it may well be able to deliver sufficiently significant amounts of data that would cost hundreds of dollars with a service like Amazon S3. It is however fairly easy to trip their “safeguards” which flag your application as “unfair” and randomly stop delivering some of the content you need delivered. This article discusses a simple workaround for at least some of these safeguards.

Using async/await with a custom thread pool

Published on

Async/await has a potential to dramatically simplify any C# code that relies on asynchronous methods. Its downside is that it is heavily tied into the threading model of whatever kind of application you are developing: console (system thread pool) vs. WPF vs. WinForms etc. – each of these execute the continuations somewhat differently. This article demonstrates how to control this behavior, so that you can direct the continuations to threads of your choosing.

GeoGen 0.10 released

Published on

I just released a new version of GeoGen!


  • Improved documentation
  • Fixed issue where HeightMap.Distort would not respect render scale
  • Added HeightMap.CellNoise

Download the ZIP with windows binaries here.

Aditionally, the project’s source code now also includes a Makefile for Unix/Cygwin building.