Posts

May 09 2020

An Open Source Utopia

The software industry is a bit of an anomaly: we as programmers are the makers of our own tools. Most of these tools exist with open source licensing, making it easier than ever to contribute. It’s with good reason that most of these tools exist on the command line: it’s more efficient. Nevertheless, it is important to recognize the slew of industries that suffer from not being able to make use of these tools. In short, software engineers are blessed with efficiency constrained by their own imagination and ability to use the command line, while many other areas lack this privilege.

May 02 2020

Declarative Programming Tastes Better

There was a TED Talk interview back in 2016 with Linus Torvalds. He mentions he likes to work with developers who have “good taste”. In the code example denoting “good taste”, he eliminates branching in the function.

Apr 25 2020

Better Coverage with DI

Global variables actually prevent us from increasing coverage.

Apr 18 2020

Avoid Vendor Lock-in with Interfaces

Vendor lock-in can be a painful experience. There are two main issues that I have noticed:

  1. Tight coupling to the service
  2. Data migration from one service to another.

Apr 11 2020

Name that Algorithm: #2

The veterans in the software industry recognize code as a liability. Code is not an asset! Maintaining 10 lines of code is easier than maintaining 100 lines of code. Similarly, 100 lines of code is easier to maintain than 1000. By reducing the size of the code, we can squeeze bugs out of their hiding place.

Apr 02 2020

Invoice Generation

Billing is a core part of a running a freelance or consultancy. Without it, you would not get paid! I am of the opinion that an invoice does not need to look pretty. An invoice only needs to clearly convey the details of the bill. Bonus points are given for a small file size with searchability.

Mar 28 2020

Name that Algorithm: #1

The veterans in the software industry recognize code as a liability. Code is not an asset! Maintaining 10 lines of code is easier than maintaining 100 lines of code. Similarly, 100 lines of code is easier to maintain than 1000. By reducing the size of the code, we can squeeze bugs out of their hiding place.