In 2021 the number of organizations adopting Agile practices has continued to grow at an accelerated rate. This trend is expected to continue over the next years as organizations try to develop products in an agile way. Leading the agile transformation is the Scrum framework. But how do you get a Scrum certification?

Why get a Scrum certification?

Before we get deeper into the discussion, let’s start with the WHY. Many of you may put no trust or value in certifications and I understand your point. They can’t really capture your skills and experience.

Regardless of whether you trust certifications or not, the fact remains that most organizations…

If you are working with Merge Requests in GitLab, you may see this message quite often. So what can be done to fix this and merge the branch?

So what is wrong?

If you go to any merge request displaying this message, you will see that the branch does not have all changes from the main branch. Also, GitLab cannot rebase this as there are some conflicts.

This occurs when you are using fast-forward merges.

Usually, you can rebase directly from the…

By default, your Raspberry Pi will run some version of the Raspberry Pi OS, but using the 32-bit version. If you have a Raspberry Pi 4, the product specification clearly states that you have a 64-bit processor. At the time of this writing, the 64-bit version is still in development. But if you want to give it a try, here are the steps.

Installing the Raspberry Pi Imager

Let’s make sure we are all on the same page. I have a Raspberry Pi 4 Model B with 8GB of RAM. The installation process should be similar to any older or newer Raspberry Pis.

You will need to download the Raspberry Pi Imager if you don’t already have it.

Downloading a 64-bit version of the Raspberry Pi OS

Configuring GitLab CI pipelines to work as desired is not always straightforward. A common issue is introducing rules to include or exclude jobs from a pipeline and this leads to unexpected results when using pipelines. Some wonder what is a detached pipeline in GitLab CI. Let’s try to understand what is happening behind the hood.

A simple pipeline

Let’s begin with a simple example of a pipeline:

stage: build
image: alpine
- echo "Building ..."

stage: test
image: alpine
- echo "Testing ..."

deploy to review:
stage: deploy
image: alpine
- echo "Deploying to review ..." …

Using AWS with a private Docker repository that is NOT the Amazon Elastic Container Registry (ECR) is possible but it may pose a few issues that are hard to troubleshoot. So let’s take a deeper look.

Deployment overview

I am using GitLab CI and the private GitLab Container Registry to hold the Docker image I want to deploy on AWS, using the Elastic Beanstalk service. So the steps of the process are more or less like this:

  • create the Docker image
  • push the Docker image to a private…

While you can argue that a GoPro Hero 10 is a way too expensive webcam, we have seen incredible high prices for traditional webcam models from Logitech, like Logitech Brio 4K, which went as high as $200 in the USA or as high as 271€ in Europe.

GoPro Hero 10 is not a webcam, but you can use it as a webcam

I have a Macbook Pro 15" and the camera on my device is not great. The angle is not great (unless you want to see my ceiling) and the video quality at 720p leaves a lot to be desired.

Every since the pandemic has started, I have fantasized about getting…

With Node.js being a popular runtime environment for JavaScript applications and various tools, it is no wonder that you need to install Node.js on your Windows machine. This tutorial will provide you with a step-by-step guide on how to do that.

From where to download Node.js?

If you point your browser to, you will be offered the following options:

Node.js LTS vs Current

So which Node.js version to install? For most use-cases, the LTS (Long Term Support) version is the safest way to ensure that whatever you are trying to run will actually work.

The current version may contain…

In terms of data-driven testing, Postman allows you to load a CSV or a JSON file with test data. But sometimes that data set comes from an API. In this Postman tutorial, I wanted to show you how to reuse a request and loop over a set of data from a previous request.

The problem

Let’ take a look at the following POST request in Postman.

As you can see, both the customerName and the toolId used in this request are hardcoded.

Let’s now assume that we want to test this endpoint using a set of tools, and to get valid data, we can’t use…

If you wish to create your own infrastructure for running GitLab CI jobs, you need to host your own GitLab Runners. But which executor to select? Shell, SSH, or Docker? Or something else?

GitLab CI employs a different architecture, compared to the default installation of more traditional CI servers, like Jenkins. In a nutshell, the GitLab server will always delegate the work of actually running a job to a GitLab Runner, which will sit somewhere on a different server.

Here are the most…

Quite often we use GitLab CI to dockerize our applications. But how to start a Docker container from the GitLab Container Registry? Can we use Docker Compose? A lesser-known feature in GitLab CI is the services keyword which allows you to start one or more Docker images and link them to your job. Let’s explore how this works.


Allow me to describe the following scenario for a pipeline. I have built a Node.js application that exposes an API.

So the current pipeline has the following stages:

  • build where all dependencies are installed
  • test where all unit tests and executed
  • package where the application is dockerized and the image…

Valentin Despa

Software developer and online instructor. Imprint:

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