Debugging across services

This post is a cross post from my personal site at https://dvisagie.com/post/distributed-tracing/ . It renders the code better. Just saying…


Using statik and echo with to serve up a single binary React app

This story now has a permanent home on my website

Luckily, I wasn’t alone in this thought, and a neat little tool called statik exists to do just that.

The library itself supplies sufficient documentation to get it working just for simply serving the application via Go’s http library, but, using it in a practical sense probably means that you want to use a framework…


Setting up a Node.js app with TypeScript, Nodemon, and Mocha/Chai tests

The idea with this article is to simply provide a quick tutorial on how to set up a simple Node.js project with nodemon for development reloading and of course unit tests. This means I have gone for a minimalist approach and tried to keep everything as generic as possible by not doing things like sticking to my preference of Yarn or adding unnecessary dependencies.

Let’s start off the same way we start any node project, running npm init in our project’s folder.

npm init

When prompted by npm to answer the questions you have the option of just pressing enter…


A beginners guide

When you build services for the web you want to make sure they don’t fall over completely when too many users hit your system all at one time. What you want, is to be able to simulate that load spike before it happens in production.

I have used artillery.io in the past to get this done, and there are many other services that will test basic load, but I wanted to find a go-to tool that I could learn to rely on that felt like it was not too complicated and was more developer friendly than GUI based alternatives that…


Is ScalaFX the way to go?

Some time ago I wrote about my experience writing a small Desktop UI in Go using libui. I ended off by saying that I would attempt something in Kotlin next, this project did start in Kotlin, however I switched to Scala after a short time for a reason based solely on personal preference(Kotlin is a better Java but a worse Scala in my opinion). But enough of that, here is what happened when I finally settled on a tech.

The Application

For those interested, the project was another small one to solve a simple problem I have, I like to play guitar…


Learning to use the right OS the long way

What peaked my interest in the Orange Pi Zero was it’s price, I was able to get mine for 339 ZAR, that was a pretty good deal for a board that features both WiFi and an Ethernet port and falls below the Raspberry Pi’s price-point.

While my initial intended purpose for using the board had faded since I found out it’s WiFi card wasn’t strong enough (or even workable by some accounts) for what I wanted, I still had a usable tiny computer with an Ethernet cable attached to it.

I currently run a single UniFi AP (which should honestly…


A tale of a UI experiment and using CoreNLP in Scala

If you scroll through your Twitter feed sometimes you may see a lot of negativity or tweets that make you ask yourself “Did this person read this before they posted?”. This made me think of the times I might have done this, and whether or not I would have posted so many negative tweets if I knew that most of them had a negative sentiment.

This of course brought to mind a relevant xkcd comic:

Relevant xkcd https://xkcd.com/481/

Instead of a virus though, I thought to build a custom input control that would passively warn the user by changing color.

The design

The intention of…


Slightly related photo by me

Is it a good idea?

This story now has a permanent home on my website

After some tinkering with Go however I was eager to give desktop development another shot, since it’s really…


Random Unrelated photo by me

Creating my first Go application, a command line tool

As promised I tried another language, this time it was Go. After fiddling with some “Hello world”s and tutorials, I decided to try writing a cross platform command line app.

Go is a very small and simple language, and I was able to get what I wanted from the app very quickly. After all, all it does is pull git repositories.

After getting the functionality down, I needed to build for each platform. The first thing I stumbled across when trying to achieve this goal was goreleaser .

As it’s description says:

GoReleaser builds Go binaries for several platforms, creates…


Picture by me, yay!

Focus

It’s said that the hardest two things in computer science are cache invalidation, naming things, and off by one errors.

Well, at least that’s according to a man who named his website after an error, that’s a +1 for the naming things claim I guess.

To be honest, I’m not sure if what I do can be called a science. In fact, if science is anything like software development, we need to shut down all the nuclear reactors right now.

They’re probably held together by some duct tape because an intern got put on the repair job so that…

Divan Visagie

I write about tech and anything else I find interesting

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store