Golang Project Structure

Tutorials, tips and tricks for writing and structuring code in Go (with additional content for other programming languages)

Why Your Passwords May Be Dangerously Insecure

Passwords provide access to many of the websites and online services that we use on a daily basis. It is, therefore, vitally important to ensure that our passwords are secure and less prone to attack by anyone who may wish to do you harm. This post will discuss nine common mistakes that you or others […]

Reading and Writing YAML

This post will discuss what YAML is and how its syntax works. We will then move on to a simple real-world example, so you can see how YAML looks. Finally, we will learn how a program can be written in Go code that is able to read and write data formatted in YAML. What Is […]

Golang Zero Values (0 and Beyond)

This post will discuss what a zero value is and how it can be relied upon to give some default state to initialized variables. It’s important to know the zero values for each of the basic data types in Go, in order to use them in your own code, so we will also provide a […]

Reversing a String

This post will look at various ways to reverse a string in Go, a fairly common task that isn’t explicitly handled by the standard library. We will start by looking at some basic examples using Java and the Linux command line, then we will go through various ways to code solutions to the problem in […]

Functional Programming With Slices

This post will explore the programming paradigm known as functional programming and discuss what restrictions it places on programmers, as well as how it helps in the process of developing and structuring code. We will then go through some practical examples of functional-style code written in Go, specifically looking at how generic functions can be […]

The Best Golang Task Runner

Okay, I’m biased — it’s my task runner — but hear me out. This post will start by discussing what a task runner actually is and exploring how it works by building a very basic version of one in Go code. Then we’ll look at some example tasks that can be completed with the help […]

Living Through the Crypto Crash

I want to discuss the recent crypto crash and its potential implications, so I’m going to take a short diversion from my usual approach of providing programming advice and code examples with this post. Understandably, the rapid fall in the valuations of cryptocurrencies is a topic that interests many of us who work in the […]

How to Read a File Line by Line

Sometimes you want to read a file that contains many lines of text or a list of structured data and you want to process each line individually, rather than working with the entire content of the file at once. This post will discuss various ways to read a file line by line, looking first at […]