Directed Acyclic Graph (DAG) style dependencies between individual stages in a continuous deployment pipeline allow for a more flexible workflow and better utilize available computational resources. Imagine a simple pipeline consisting of three jobs: A syntax check A code complexity check Running all unit tests You may be tempted to group those in two stages: A) Build (consisting of jobs 1 and 2) and B) Test (consisting of the unit tests): Traditional Sequences In plain old GitLab pipelines, you would ...
In another article I summarized the series of events that lead to a potentially huge number of iOS devices being overtaken by malicious actors. While increasingly more information about these incidents is revealed, one particularly interesting question should be raised: To what extent is Apple to blame? Fast Reaction Let’s start with the good news. As Project Zero researcher Ian Beer writes, they have informed Apple about two of the exploits on February 1st, 2019. Apple reacted within six days ...
On August 29th 2019, the British security researcher Ian Beer (@i41nbeer) from Project Zero at Google published multiple blog posts about a series of iOS exploits. According to their findings, those exploits have been used to completely take over iOS devices. This article provides focused answers to eleven questions about this series of events. What is the overall impact of this attack? If you used an iOS device (iPhone, iPad, …) in the last two years and visited a certain ...
This is going to be a short one. You may be experiencing troubles when installing Kali Linux via an USB flash drive: You may be inclined to waste a few hours following one of the countless articles suggesting to manually open a shell, change the way your USB stick is mounted and try to fix the issue that way. However, chances are there is a simpler solution in case you are using the popular “LiLi USB Creator” tool on Windows ...
Creating and persisting business objects using Spring Boot is amazingly easy. Assume you create an API for simple CRUD methods and want to create an entity based on data entered by your frontend users. In the old times, you would probably populate several POST fields in a key-value style and create your business object manually from those fields. Spring Boot offers an easier solution. As long as your internal data model equals the frontend’s data model, you can use the ...
Imagine you work on an application on a development server for several months until it is time to deploy it to a production system for the first time. Chances are, there are several necessary configuration tasks just waiting to be forgotten: firewall permissions, specific software libraries, file permissions and so on. Ansible offers a reproducible and automatable way to take care of these configurational changes for you – and the beauty is: it does not depend on a specific Linux ...
Performance testing a REST API reveals its runtime behaviour under stress and can be an early indicator of QoS violations in production. Apache JMeter offers a GUI mode where such load tests can be created and their results be analyzed easily. In this tutorial, I will show you how to test the performance of the FizzBuzz-API written in Rust presented in one of my previous articles. Let’s get started. Install JMeter Installing JMeter is very simple once you have Java ...
Learn How to Create a FizzBuzz Implementation in Rust FizzBuzz is a classical software developer interview question with the simple goal of writing an application that outputs “Fizz” for numbers divisible by 3, “Buzz” for numbers divisible by 5 and “FizzBuzz” for numbers matching both cases. In this article, I will show you how to implement FizzBuzz using the Rust programming language and the Rocket framework. Start by using Rust nightly and setting up a new Rust project using cargo: ...
Imagine someone watching all your daily activities from hundreds of meters in the distance. While walls can protect you from spy glasses and interested neighbours looking out of their windows, they are no obstacle for electromagnetic radiation. WiFi networks in particular often build the backbone of our homes’ communication infrastructure: when you come home, your phone connects to your WiFi; when you turn on your video gaming console, it connects to your WiFi; when you leave, the WiFi connection to ...
Easily share your code with the PHP community by contributing your library as a composer package: This article will show you how to publish your code on GitLab and as a package on packagist.org. Writing Your PHP Code Publishing open source code has never been easier. Using PHP’s package manager composer, thousands of freely available packages are only one composer require away. Believe it or not, but there exists an npm package named “is-odd” with over 700,000 weekly downloads. Its ...