Dzone

Test-Driven Generation: Adopting TDD Again, This Time With Gen AI

You know, over the past few years, software development has gone through some pretty exciting changes. New tools and methodologies have popped up, all aiming to make our lives easier, streamline processes, and boost code quality. One of the big players in this space has been Test-Driven Development ...

Network Guardians: Crafting a Spring Boot-Driven Anomaly Detection System

We’re going to set out on a mind-blowing tour around network security. Upon considering the nearness and risk posed by cyber threats in this epoch, it is important to prevent the threats so that they do not cause irreversible damage within the network. This three-part article series will take you th ...

Automating PMO Meetings With n8n Automation

In today's world data and time are two of the most valuable things. The power of data is always in the news, but what about time? There are a ton of operations that are still being done manually which can easily be automated. Today, I am going to talk about one of those manual tasks that take an ete ...

MariaDB Vector Edition: Designed for AI

As a solutions architect with over two decades of experience in relational database systems, I recently started exploring MariaDB's new Vector Edition to see if it could address some of the AI data challenges we're facing. A quick look seemed pretty convincing, especially with how it could bring AI ...

Augmenting the Client With HTMX

This post is part of a series comparing different ways to implement asynchronous requests on the client to augment the latter. So far, I described the process with Vue.js and Alpine.js. Both are similar from the developers' point of view: they involve JavaScript. In this post, I'll focus on HTMX, wh ...

Operationalize a Scalable AI With LLMOps Principles and Best Practices

Organizations are fully adopting Artificial Intelligence (AI) and proving that AI is valuable. Enterprises are looking for valuable AI use cases that abound in their industry and functional areas to reap more benefits. Organizations are responding to opportunities and threats, gain improvements in s ...

Custom Domains for HTTP/2 on Heroku

Several months ago, Heroku announced HTTP/2 support from browser to router. This is pretty awesome, as it means our Heroku applications can now reap the benefits of multiplexing and stream prioritization. It looks like Heroku’s roadmap will eventually get HTTP/2 all the way to the dyno, which means ...

Leveraging Seekable OCI: AWS Fargate for Containerized Microservices

AWS Fargate's Seekable OCI (SOCI) introduces significant performance enhancement for containerized applications by enabling lazy loading of Docker container images. This reduces startup time for Fargate tasks, particularly for large container images, and makes it ideal for applications that need rap ...

Observability for Browsers

Browser agents are essential tools for monitoring and observability in modern web applications, especially with the increasing complexity of both Single Page Applications (SPAs) and traditional multi-page sites. A browser agent operates within a user’s browser, collecting data on performance metrics ...

Microservice Proliferation: Too Many Microservices

Microservices architecture promotes the development of applications, as suites of small, independent, loosely coupled services. Because of its numerous advantages (e.g., scalability, reliability, faster development cycles, easier maintenance of individual services, etc., detailed in this article), i ...

The Importance Of Verifying Your GitHub Environment’s Security Controls

Security is a top priority of every company. It’s not surprising: source code, the most critical asset of any organization, should be under reliable protection — especially in view of constantly rising threats. Ransomware, infrastructure outages, vulnerabilities, and other threats can strike your Gi ...

Decoding LLM Parameters, Part 2: Top-P (Nucleus Sampling)

LLM Parameters Like any machine learning model, large language models have various parameters that control the variance of the generated text output. We have started a multi-part series to explain the impact of these parameters in detail. We will conclude by striking the perfect balance in content g ...

Modify JSON Data in Postgres and Hibernate 6

This is another article in the series related to supporting the Postgres JSON functions in a project using the Hibernate framework with version 6. The topic for the article is modification operations on JSON records. As in the previous article, it is worth mentioning that Postgres mig ...

Being the Glue: Managing a Zero-to-One Software Project Across Multiple Teams

In software engineering, the role of a “Glue” is vital yet often overlooked. This term refers to the person who connects various teams, ensuring that a complex project with many moving parts comes together seamlessly. If you’re leading a zero-to-one software project that spans more than a couple of ...

Introducing the New Dapr Jobs API and Scheduler Service

The Dapr 1.14 release last month included many new capabilities and was feature-packed. This included the addition of a new Jobs API and Scheduler control plane service for managing jobs. Over the years, the Dapr project was often requested to include a Jobs API. The Scheduler service enables this a ...

Optimizing IoT Performance in Industrial Environments

Internet of Things (IoT) devices have become common in industrial environments, giving users better visibility, control, and capabilities. However, making the IoT product work well requires knowing how to optimize software and hardware-related aspects.  1. Ensure the IoT Device Has Adequate Har ...

The Art of Full Stack Debugging

Full stack development is often likened to an intricate balancing act, where developers are expected to juggle multiple responsibilities across the front end, back end, database, and beyond. As the definition of full-stack development continues to evolve, so too does the approach to debugging. Full ...

Redefining Java Object Equality

Equality in Java Object equality is often a hot topic for assessing concepts and one of the pillars (the other is- hashCode()) of how many of the implementations of Collection Frameworks work. We check equality by providing our own implementation for  the method public booleanjava.lang.Object#e ...

Starting to Care About Security

In my last post, I discussed the issue of getting people to care about security, and how it’s largely due to a focus on security behaviors rather than security outcomes. In this post, I’m picking up where I left off, and will talk about… Forging a Path Forward Obviously, the point of sharing this po ...

Cloud Cost Optimization: New Strategies for the AI Era

In today's volatile economic landscape, enterprises are scrutinizing their cloud bills more than ever. Platform teams are at the forefront of this challenge, tasked with finding innovative ways to optimize usage and drive down costs. To gain insights into this evolving field, we spoke with Kapil Tha ...

Understanding the Differences Between Rate Limiting, Debouncing, and Throttling

When developing, we often encounter rate limiting, debouncing, and throttling concepts, such as debouncing and throttling in the front end with event listeners and rate limiting when working with third-party APIs. These three concepts are at the core of any queueing system, enabling us to configure ...

PostgreSQL Everywhere and for Everything

PostgreSQL is one of the most popular SQL databases. It’s a go-to database for many projects dealing with Online Transaction Processing systems. However, PostgreSQL is much more versatile and can successfully handle less popular SQL scenarios and workflows that don’t use SQL at all. In this blog pos ...

Security at the Onset: Stabilizing CSPM and DevSecOps

The time for rapid technology development and cloud computing is perhaps the most sensitive time when security issues are of great importance. It is here that security will have to be injected into a process right from the beginning — be it software development or cloud infrastructure deployment. Tw ...

Secret Management and Rotation

Secrets are the keys to manage and enhance the security of a software application. Secret keys play a pivotal role in the authentication, authorization, encryption/decryption, etc. of data flowing through the application. There are various types of secrets and few of them are: Encryption/Decryptio ...

The Shift Left Architecture: From Batch and Lakehouse to Data Streaming

Data integration is a hard challenge in every enterprise. Batch processing and Reverse ETL are common practices in a data warehouse, data lake, or lakehouse. Data inconsistency, high compute costs, and stale information are the consequences. This blog post introduces a new design pattern to solve th ...

What Is a Performance Engineer and How to Become One: Part 1

Nowadays, many performance testers with many years of experience in IT have a lot of confusion and are still confused about the technologies they worked with and were used in their projects for years. A performance engineer is actually a professional performance testing and engineering expert with i ...

Transformation to Agile Primitives

TL;DR: A Guide to Escape Agile Framework Fatigue Undergoing a transformation to Agile Primitives from a botched [insert your failed agile framework of choice here] isn’t about adopting another framework; it’s about returning to core principles that empower teams and deliver real value. (Please note: ...