“First we shape our tools, thereafter they shape us” ~ Marshall McLuhan

Part 1 of this series is here. Part 2 is here.

Assorted Color Paint Brush and Drawing Tool Set
Assorted Color Paint Brush and Drawing Tool Set
Photo by cottonbro from Pexels

Compared to many other fields, software development is a new discipline. Still, brilliant developers have spent years working on our field’s biggest challenges and have often created free tools to solve them. One of the benefits of working with software is that we can build on top of others’ hard-won wisdom and life’s work without having to understand all of it.

Here are some tools that speed up the way we write, edit and debug code.

Tool 10: Version Control


A man sitting on the ground, looking frustrated.
A man sitting on the ground, looking frustrated.
Photo by Ahmad Gunnaivi on Unsplash

COVID-19 lockdowns have messed with everyone’s schedule. For parents of young children, it’s meant that there’s much more to do than usual, and less time to do it.

These days I often find myself feeling completely exhausted and overwhelmed by four o’clock in the afternoon. And our kids don’t go to bed until eight. If we’re lucky.

But I’ve found something that helps me. It’s simple. It’s the change of a single word.

Instead of saying “I have to…” I’m trying to prefix tasks that need to be done with the words “I get to…”

Instead of “I have to


As you grow, so should your toolset.

You can find part 1 of this series, about tools 1–5 here.

A set of worn and well used hand tools, presumably from an automotive repair shop.
A set of worn and well used hand tools, presumably from an automotive repair shop.
Photo by NeONBRAND on Unsplash

Becoming a software developer requires a deep level of concentration. The more responsibility you can delegate to your computer, the more brain-power you will have available for problem-solving.

Here’s a look at more tools I find indispensable in my work as a professional software engineer.

Tool 6: A good password manager

As a savvy developer, you’re sure to know that using the same password for multiple sites is extremely insecure. …


A laptop computer in front of a window, through which we can see that it is a cold and rainy day outside.
A laptop computer in front of a window, through which we can see that it is a cold and rainy day outside.
Photo by Tracy Adams on Unsplash

Do you want to start a career focussed on solving complicated logic puzzles? Want a well-paid job without having to complete any formal education? Want to work flexible hours from home without being involved in some pyramid scam?

Software development might be for you, and it might not be as difficult to get into the industry as you think. The world needs more developers and many companies are willing to pay you while you learn how to write software with their tools and particular coding style.

To get your foot in the door you need a good foundation and your…


Photo by Tim Mossholder on Unsplash

Do you ever feel like there’s no time or money to support charitable organizations? Here are a few quick and simple ways to regularly contribute to the greater good.

1. Tab for a cause

If you’re anything like me, your average browser window has about 17 tabs open at once. On a slow day. What if we could somehow raise money for charity every time we open a tab? We can.

“Tab for a Cause” leverages the attention-hungry ad industry to collect revenue during the brief moment between opening a tab and typing in an address or search query. It also shows you beautiful images…


A woman doing a yoga pose inside.
A woman doing a yoga pose inside.
Photo by Carl Barcelo on Unsplash

Here in Berlin, the winters are usually cloudy and damp with the temperature hovering around 1 °C. The days are relatively short and it’s not very fun going outside.

Especially now, with the Covid-19 global pandemic in full swing, we all need to concentrate more on taking care of ourselves. Here are some techniques that have helped me.

1. Separate your work and living space


Toy cars and a toy baby carriage which have all run into each other.
Toy cars and a toy baby carriage which have all run into each other.
The challenge of avoiding accidents and traffic jams while getting your kids ready to leave the house.

My partner and I needed a way to help our kids focus on getting ready for kindergarten. We took a page from project management and tried to make it just a little bit more fun.

The challenge

Even if you’re not a parent, you probably find that getting ready to go out the door in the morning is one of the most complex and stressful times of your day. You trip over the cat on the way to the bathroom. You create a complex blend of müslix with fresh fruit only to realise you’re out of milk and any sort of milk…


Quick disclaimer: this article is about the Chef configuration management tool. It makes broad assumptions that the reader already has a good understanding of both this and git version control.

A chef serving food.
A chef serving food.
Photo by Stefan C. Asafti on Unsplash

Why do we need serverless Chef?

Managing a set of servers using Chef can save you lots of time and frustration, but it has its limits.

Our team kept bumping up against one of these limits. While developers worked simultaneously on multiple git branches, our Chef-server stored a single set of configurations. These were used for all our servers.

Since we uploaded changes to the chef-server cookbook by cookbook and role by role, often from feature…


Photo by Tanner Boriack on Unsplash

The Mission

Create a list of unavailable servers (nodes) from data provided by Hashicorp Consul.

A node could be unavailable for reasons such as network failure, the node being powered down or failure of the Consul agent on the node.

The Problem

Consul’s API, Commands (CLI), DNS and Template features make it easy to get the locations and statuses of services running across a cluster of servers.

But using consul to tell you the names of nodes that not available is a bit trickier.

For several good reasons, Consul keeps its registries of services and nodes separate. We can use service discovery features such…

Stuart McLean

I like helping people to discover their own potential. Full-time parent & software-developer, part-time teacher & musician, born in Canada, living in Berlin.

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