Home
Thursday 16 March 2023, 12:51
tokio::select! is a very useful macro to await multiple Rust futures at the same time and react when one of them completes. However, the pattern matching behaviour is a bit known obvious and can lead to some incorrect behaviour that might be hard to spot.
Read More...Monday 13 April 2020, 10:07
Throughout my career I have noticed that as developers advance their careers, they begin to fall into four archetypes. These archetypes do not typically apply early in a developer's career, but express themselves more and more strongly as the developer gains experience. I have discovered that the archetype of a developer is a good indicator of whether they will enjoy and prosper in a company, team or role. Unlike most archetype systems that I have found online, I do not believe that one archetype is better than another; you will find great developers in each archetype.
Read More...Sunday 1 March 2020, 13:11
Testing is an important part of software development, but there are a lot of different ways to do testing and there is not a one-size-fits-all approach. In this blog post I discuss testing microservices from the outside. This approach works really well for small microservices that have a clearly defined external API.
Read More...Sunday 29 January 2012, 17:02
In my last blog post I showed how to make a website using Google Go. However if your VPS or dedicated server has not got any spare IP addresses then you are stuck. Most servers come with only one or two IP addresses and binding your Google Go website to port 80 of a particular IP address will mean that Apache cannot do so. In this blog post I am going to explain how you can run a Google Go website behind an Apache webserver using mod_proxy.
Read More...Saturday 17 December 2011, 15:48
Google Go is an exciting new language with a lot of potential. The standard library has strong support for web apps and makes it easy to create programs that serve HTTP requests. I'm going to have a look at how to create a simple web app using Google Go.
Read More...