Forget Writing Code.
Start Building Software.

Get weekly inspiration to kickstart your building journey and transform your ideas into digital reality.

How To Secure Your Gradle Credentials In Jenkins

Setup credentials for your private repository using Jenkins credentials, and inject them into your Gradle builds.

Published 6 Dec 2019 · 12 min read · Tom Gregory

The 4 Types Of Prometheus Metrics

Prometheus is an excellent tool for gathering metrics from your application so that you can better understand how it’s behaving. When deciding how to publish metrics, you’ll have 4 types of metrics to choose from. In this article you’ll discover what are the different types of Prometheus metrics, how to decide which one is right for a specific scenario, and how to query them. Overview Prometheus is a standalone service which scrapes metrics from whatever applications you’ve configured....

Published 2 Dec 2019 · 12 min read · Tom Gregory

7 Things Your Mom Never Told You About Gradle

It’s probably fair to say that Gradle has somewhat of a steep learning curve. Certainly compared to Maven, another popular build automation tool, it’s move flexible and less opinionated about how things should work. Whether you’ve just made the jump into Gradle, or have been using it for a while, in this article you’ll discover seven things you wish you’d known about Gradle. With these pointers, you’ll be well on your way to writing more powerful, more concise build scripts for your application, following best practice all the way....

Published 22 Nov 2019 · 7 min read · Tom Gregory

Monitoring A Spring Boot Application, Part 4: Visualisation & Graphing

Once you’ve setup metrics for your application, and can query them and alert from them, when something goes wrong you need somewhere to go to quickly get a visual overview of what’s happening. In this article, you’ll discover how to setup a basic dashboard with Grafana, showing useful graphs to summarise the current state of a Spring Boot application. This is part 4, the final part of this series on monitoring a Spring Boot application....

Published 8 Nov 2019 · 7 min read · Tom Gregory

Monitoring A Spring Boot Application, Part 3: Rules & Alerting

When your application is exposing useful metrics about how it’s behaving, there’s no fun in constantly monitoring it for problems. Instead, you need to configure rules and alerts for when those rules are broken. In this article you’ll discover how to set up such a simple email alerting system for your Spring Boot application. This is part 3 in the series about monitoring a Spring Boot application. If you’re not yet familiar with Prometheus, be sure to check out part 2 where we discuss it in detail....

Published 1 Nov 2019 · 8 min read · Tom Gregory

Monitoring A Spring Boot Application, Part 2: Prometheus

As part of a monitoring solution you’ll need a service to pull metrics from your applications, store them, and provide an easy way to query them. Prometheus is a tool which allows you to do all three. In this article you’ll learn all about Prometheus, how to set it up, point it to your application, and query it. If you want to see the high level overview of a complete monitoring solution for Spring Boot, check out last week’s blog post....

Published 25 Oct 2019 · 6 min read · Tom Gregory

Monitoring A Spring Boot Application, Part 1: Fundamentals

Being able to monitor a production application is fundamental in order to be alerted to any issues and quickly find a solution to problems. Many people seem to put in monitoring as an afterthought, or not at all. In this multi-part blog series you’ll discover how to setup monitoring, graphing, and alerting for a Spring Boot application. In part 1, you’ll get a birds eye view of the requirements involved in a complete monitoring solution....

Published 17 Oct 2019 · 6 min read · Tom Gregory

Creating AWS CloudFormation Resources With The Service Role

1. Introduction CloudFormation is a useful tool when working with AWS to define your infrastructure as code, or at least a YAML or JSON template. These templates allow us to make almost any change imaginable within the AWS ecosystem. In this article we’ll take a look at how to practice the principle of least privilege with CloudFormation, with a working example making use of the CloudFormation service role. This will allow the CloudFormation stack to make changes by assuming that role, completely separately from the user or role who initiates the change in the first place....

Published 10 Oct 2019 · 8 min read · Tom Gregory

Automating Docker Builds With Gradle

1. Introduction We’re all using Docker containers these days to do all sorts of great stuff, but it’s not always obvious how best to automate the building of images and embed good repeatable processes into our projects. In this article you’ll discover one of the best approaches I’ve found to automate Docker in your project. It’s to create tasks for the building of images and running of containers within your Gradle project....

Published 27 Sep 2019 · 8 min read · Tom Gregory