Blog

blog-thumb
by Thomas Memenga on 10 May 2023

Strategies to Prevent Build Rot in Software Development

Build rot, a form of technical debt, subtly undermines the effectiveness of a build system over time, affecting both Maven and Gradle builds. This degradation is due to poor practices, neglect, or outdated technologies, similar to the more commonly discussed ‘software rot’ or ‘code rot’ in broader development contexts.

blog-thumb
by Thomas Memenga on 03 Feb 2023

Integrating dbt with Real-Time Data Streams: Challenges and Solutions

In the rapidly evolving world of data analytics, the need for real-time data processing and analytics has become increasingly crucial for businesses seeking to make timely, informed decisions. This shift towards real-time data necessitates the integration of traditional data transformation tools like dbt (data build tool) with streaming platforms such as Apache Kafka or AWS Kinesis. While dbt excels in batch processing, adapting it to a streaming context presents unique challenges and opportunities. In this post, we’ll explore these challenges and the innovative solutions that can be employed to integrate dbt effectively with real-time data streams.

blog-thumb
by Thomas Memenga on 03 Oct 2022

HDFS Storage Policies and Real-Life Applications

Hadoop Distributed File System (HDFS) has evolved significantly to accommodate the diverse storage needs of large-scale data processing. The introduction of HDFS storage policies is a testament to this evolution, offering a flexible and cost-effective solution for managing data storage.

blog-thumb
by Thomas Memenga on 29 Jan 2022

Scaling Java Workloads on Kubernetes: A Dive into CPU and Memory Metrics

In the dynamic world of container orchestration, Kubernetes stands out as a robust platform for managing diverse workloads. For Java applications, particularly, the decision of how to effectively scale in a Kubernetes environment is nuanced, involving a careful consideration of both CPU and memory metrics. This complexity is rooted in the unique characteristics of Java’s memory management.