Photo by Max Nelson on Unsplash

I’ve recently had my whole ability as a programmer called into question. What has caused this personal crisis? trying to learn one of the most baffling languages around.

Clojure is a world away from languages like JavaScript, Java or C#. Firstly because it’s a completely functional language. Secondly, because the syntax is well, weird.

To get an idea of what I’m on about. Let's have a look at this simple function to find anagrams.

If you are reading this as someone who already knows Clojure or another LISP dialect. You will probably know exactly what this does, but I…

Photo by Emanuela Meli on Unsplash

Lambda village is the sort of place where nothing happens. In Fact, so little happens there that, Ada, the elder of the village, spends more time managing her pumpkin patch than she does worrying about town affairs.

Of course, why would anything happen in Lambda village, set on the great Alonzo plain, it’s a long way from the rest of the Programming Kingdom.

At the end of the plain, there sits the Imperative Volcano. The Imperative Volcano is the sort of place where the best days are overcast. On the worst days, great thunderstorms strike the volcano. …

Photo by Djim Loic on Unsplash

Somewhere in an office far far away.

I’m starting work on my new ticket :) All I have left to do is to estimate how long it will take.


*Rolls Eyes* Isn’t it obvious! the business needs certainty around how long the ticket will take.

And you think an estimate will give it that certainty?

Well yes, I mean not a complete certainty. Some projects like, Universal Credit and NHS Connecting for Health estimates were wrong.

When is it right?

Err. sometimes.

Can you name a time?


So we have something that is regularly wrong, and we’re using it to give the business certainty.

Fine! Fine! Fine! They’re not perfect they are ‘Fast and dirty’

That just sounds like another word for wrong…

Fine, they are a ‘finger in the wind’.

Oh come on, everyone knows they aren’t perfect.

Do they?

Yes, everyone is aware. There are all sorts of things that go wrong. Nobody expects estimates to be perfect. That is what the word estimate means.

Have you ever bought anything off amazon?


Photo by John-Mark Smith on Unsplash

Like most people, I have a hard time understanding Functional Programming. Following the same path as many others. I spent hours scratching my head watching youtube, reading blogs and attending talks. All in aid off a finding better understanding.

But, In a surprise twist. The thing that joined all the confusing dots together was not an oracle of our craft, Nor was it hours of study. Instead, it was something that, as a Mancunian¹, I do a lot.

Make Tea

Before you think I’ve gone nuts, let me ask you a question.

How do you make a cup of tea?

Photo by JESHOOTS.COM on Unsplash

I’d like to introduce you to someone, His name is Frank.

Recently while browsing Twitter I stumbled on this tweet by Kent Beck:

Given the huge positive impact two of Kent Beck’s other creations: Extreme Programming and Test Driven Development, have had on my career. I was keen to learn more about TCR and give it a try. A day later I was excited to report back to Twitter with my findings.

Maybe a little too excited:

Cringe aside, Having played with TCR for a week or so more. I’m ready to retro my experiences with TCR.

So What is TCR?

TCR Stands for Test && Commit || Revert. I’m not going…

“selective focus photography foosball table” by Bruno Aguirre on Unsplash

At Compare The Market we use a range of great high-quality dev tools. I feel completely spoiled by the set of tools placed at my fingertips. Even still, one of these tools towers above the rest.

It’s the tool that leads to the greatest returns on productivity, better than my top of the line MacBook pro; better than my heavily customised editor; better even than my badassified shell

And here it is:

And what I did about it.

Photo by Sean Patrick Murphy on Unsplash

Back at university the jobs world seemed like a very different place.

As somebody with no work experience, when looking for my first programming job:

  • I felt anxious about the Idea of getting a job.
  • I struggled to communicate a convincing message in interviews.
  • I lived in a world where finding a job was an ‘If’.

5 years later. The world is very different. I feel confident in the workplace, I have an awesome gameplan for interviews. If I decided to make a career move I would feel confident that I would find a good Job in a reasonable timeframe.

Cast of can’t pay?’s faces after reading your code — from DCBL twitter

If you watch daytime TV in the UK, Then you might have seen Can’t pay? we’ll take it away or Can’t pay? as it’s affectionately known by it’s fans.

Can’t Pay? follows a group of High Court Enforcement Officers (Called sheriffs in the states) as they enforce High Court writs — judgements by the High Court that one person owes some other person money.

As the shows title so elegantly puts it — If you can’t pay we’ll take it away — In other words if you don’t pay the money that the High Court demands of you then the…

A conversation about comments.

“Close-up of a person's hands on the keyboard of a MacBook” by Glenn Carstens-Peters on Unsplash

What is a comment?

A comment is a line in your source code file that can be read by developers but is ignored by compilers and interpreters.

What’s the point of that?

Code is often hard to understand. Adding descriptive text allows developers to explain their code to those who will maintain the code afterwards.

Need proof? Take the uncommented code below:

This block of code does several things. The result is that it is difficult for programmers to easily understand what it does.

Now consider the same code with comments.

Doesn’t this seem so much easier to understand than before the comments were added? This is…

Sam Fare

Senior Software Engineer at Also do tweeting:

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