Tomas Basham's Blog

Tomas Basham's Blog

A Personal Technology Jekyll Blog and Portfolio

Articles

Labels are the mechanism in Kubernetes through which system objects may be given an organisation structure. A label is a key-value pair with well defined restrictions concerning length and value used as an identifier and mapped onto system objects making them more meaningful within the system as a whole. Whilst...

Protocol Buffers are a serialisation solution developed by Google providing a platform and language neutral mechanism to send and receive structured data across the wire. Protocol Buffers encode data into dense binary objects that reduce packet sizes, enabling faster data exchange but with the disadvantage that the binary objects are...

In the software development scene today, containerisation - and Docker in particular - is hard to ignore. However when an application needs to scale horizontally it falls upon container orchestration systems to handle the complex interconnections between distributed nodes and the containers that they manage. It is without doubt that...

I have recently been on the look out for new employment opportunities, where I have noticed most applications (as opposed to job descriptions a few years ago) require you to be what they regard as a “full-stack” developer. It is assumed that “full-stack” carries a well known definition, accepted by...

I find myself more and more lately banging on about how much better Ruby is when compared to the other languages used by my colleagues (i.e. PHP). I know, I know I am truly a Ruby fanboy. I much favour being able to write my applications in a more “plain...

This is not something considered best practice but if the need arises that a tag must be removed from a remote repository server then here is how to delete it. If you have a remote tag named branch-name it can be deleted with: $ git tag -d branch-name $ git...

Whilst working on an iOS app, I was able to really jump into some Swift 3 features that were very new to me. Swift 3 has so many advantages over Objective-C but the one I am most impressed with is pattern matching. Having dabbled a bit with Erlang and other...

I am always looking out for better solutions to implement software features where the language lends itself well to the problem. This way I get the most out of the language and offload some responsibility to the specific nuances the language offers. In this article I talk about Swift enums...