DZone: Programming & DevOps news, tutorials & tools
Programming, Web Development, and DevOps news, tutorials and tools for beginners to experts. Hundreds of free publications, over 1M members, totally free.
One common approach to significantly speed up training times and efficiently scale model inference workloads is to deploy GPU-accelerated deep learning microservices to the cloud, enabling flexible, on-demand compute for training and inference tasks. This article provides a comprehensive guide covering the setup and optimization of such a microservice architecture. We’ll explore installing CUDA, choosing the right Amazon EC2 instances, and architecting a scalable, GPU-enabled deep learning platform on AWS.
Tackling the Repetition If you've worked with IBM App Connect Enterprise (ACE) for any length of time, you’re probably familiar with the repetitive nature of installations. Each setup involves the same predictable steps: unpacking the release files, configuring directories, updating scripts, adjusting ODBC entries, setting up the runtime environment, and verifying that everything runs smoothly. While these steps might seem routine, the manual process is inherently prone to human error. A missed step, such as skipping a configuration file or mistyping a path, can cause inconsistencies that lead to operational issues — problems that sometimes take a long time to diagnose and resolve.
Topic: High-level design of an e-commerce platform like Amazon, Walmart, etc. Objective: Big picture, challenges, options to overcome those
Recently, I delivered a lecture to my colleagues on event sourcing, and I realized that this introductory information could be valuable to a broader audience. This article is useful for those interested in the concept of event sourcing and who want to decide if it's a good fit for their projects while avoiding common pitfalls. So, let's dive in.
PostgreSQL logical replication provides the power and organization behind a pgEdge replication cluster, allowing you to replicate tables selectively and, on a more granular level, the changes in those tables. Whether you're using pgEdge Distributed PostgreSQL replication for real-time analytics, low latency, or high availability, optimizing replication configuration and query use allows you to optimize for performance, consistency, and reliability. Postgres replication is a powerful tool for replicating data between databases; unlike physical replication, logical replication gives you more control and flexibility over what data is replicated and how it's used.
Why Smart Cities Need Advanced AI Managing cities today is an increasingly complex task. Urban centers face challenges like: Traffic congestion, which affects daily commutes and the economy. Infrastructure maintenance, where damaged roads or broken utilities need quick attention. Air quality and environmental monitoring, critical for public health and safety. City planners, traffic managers, and environmental regulators rely on data to make decisions, but often, this data is siloed or outdated. For example, when a city planner asks, “Which roads need repairs and how should traffic be rerouted?” the answer requires:
Workplace injuries from poor posture cost industries billions annually. While traditional ergonomic assessments are manual and periodic, we developed an AI-powered solution that provides real-time monitoring and feedback. Here's how we built it using Python, MediaPipe, and OpenCV.
AWS Step Functions Local is a useful tool for testing workflows without deploying them to the cloud. It allows developers to run state machines locally using Docker, enabling faster iteration and debugging. However, while testing our Step Function locally, we encountered significant limitations, particularly when trying to mock an http:endpoint task.
As artificial intelligence continues to evolve, deploying AI-powered applications efficiently and at scale has become critical. Kubernetes, the de facto orchestration platform, plays a crucial role in managing containerized AI workloads, ensuring scalability, resilience, and ease of management. In this article, we explore DeepSeek on Kubernetes, a deployment that integrates DeepSeek-R1, a powerful reasoning AI model, with Open WebUI for seamless interaction.
API development should be about solving business problems, not repeating the same tedious tasks over and over again. Yet, for many developers, API creation is still bogged down by inefficiencies — from writing boilerplate code to manually managing integrations, security, and documentation. The traditional approach forces developers to spend too much time on infrastructure and maintenance, instead of focusing on what actually matters: delivering scalable, reliable APIs that support business needs.
Most of the applications today are based on a microservice architecture due to increasing complexities and scalability needs. Testing in such environments can be very challenging, and it requires thoughtful planning and smarter strategies, unlike monolithic applications. In the micro application architecture, we need a robust automation approach to validate interactions between each of the services and applications. This article will cover lessons learned and automation testing strategies that helped optimize overall integration testing.
Large language models (LLMs) don't need an introduction anymore. Just as "Did you Google it?" was the question 10 years ago, now it's "Did you ask ChatGPT?" As organizations increasingly adopt LLMs, the number of people interacting with them, directly or indirectly, is also increasing exponentially. Today, the use of these models is no longer limited to tech. Healthcare, transportation, media, and many other industries are adopting them. However, along with adoption, one more thing that has grown is security concerns.
Introduction In general, we’re used to exposing APIs via annotated controllers like this: allProducts() { return this.productService.getAllProducts(); }" data-lang="text/x-java"> @GetMapping("/products") public Flux allProducts() { return this.productService.getAllProducts(); }
When building a Salesforce application with multiple lightning web components (LWC) as building blocks, it is important to ensure that those components can effectively share information. The method of communication depends on the structure of your lightning components. If one component is built within another component, you create a parent-child relationship, and the way you communicate amongst them is different from how you communicate between two unrelated components.
Graceful application shutdown is a critical aspect of ensuring service reliability, particularly in high-load systems. In this article, we will explore how graceful shutdown is implemented in two popular technologies: Spring Framework and Golang, using examples that interact with a PostgreSQL database.
Developers often look for ways to build RESTful APIs with minimal effort while maintaining clean and maintainable code. Quarkus enables a fully functional CRUD (Create, Read, Update, Delete) API using just two classes. With Hibernate ORM with Panache, Quarkus simplifies entity management, and REST Data with Panache automatically exposes a complete set of RESTful endpoints. This approach reduces the time spent on boilerplate code, allowing developers to focus on business logic rather than infrastructure.
This blog covers how the new filter visible element option helps in writing more precise, user-focused tests with ease with the option locator.filter({ visible: true }). Playwright has quickly become a go-to tool for end-to-end testing, thanks to its robust API, cross-browser support, and easy handling of modern web applications. One of its standout features is the locator API, which allows testers to precisely target elements on a page. With recent updates, Playwright has added even more power to this API, including a new visible option for the locator.filter() method.
Garbage collection in Java is something that just happens: you don’t have to worry about memory management. Or do you? The garbage collector (GC) runs in the background, quietly doing its work. But this process can have a huge impact on performance. Understanding the concepts of advanced Java GC is invaluable in tuning and troubleshooting applications.
Workflows have long been the backbone of organizational efficiency. From the simplest administrative tasks to the most complex project management processes, workflows help streamline operations, minimize errors, and enhance productivity. However, as AI agents become increasingly sophisticated, they are set to radically reshape how workflows are designed, executed, and optimized. The fusion of human intelligence with AI agents promises to drive unprecedented levels of automation, precision, and agility in the workplace.
Security is a critical concern in mobile app development, especially with the rise of data breaches and cyber threats. Docker, a platform for developing, shipping, and running applications in containers, offers several advantages that can enhance the security of mobile apps. This article explores five ways Docker can improve security in mobile app development, accompanied by diagrams and code snippets for a clearer understanding.
Automated testing is essential to modern software development, ensuring stability and reducing manual effort. However, test scripts frequently break due to UI changes, such as modifications in element attributes, structure, or identifiers. Traditional test automation frameworks rely on static locators, making them vulnerable to these changes. AI-powered self-healing automation addresses this challenge by dynamically selecting and adapting locators based on real-time evaluation. Self-healing is crucial for automation testing because it significantly reduces the maintenance overhead associated with test scripts by automatically adapting to changes in the application's user interface. This allows tests to remain reliable and functional even when the underlying code or design is updated, thus saving time and effort for testers while improving overall test stability and efficiency.
Ensuring Reliable Concurrent Writes With Retrying Options Delta Lake is a resilient storage layer that offers ACID transactions, schema enforcement, and data versioning. However, concurrent writes generate contention since different processes are attempting to write, update, or delete at the same time. This process offers a structured retry mechanism with exponential backoff to handle concurrency in Delta tables. Delta Table Concurrent Writes Issues Concurrency failures occur when multiple processes simultaneously attempt to write to the same Delta table. The common failure scenarios are as follows:
Understanding MVVM and MVI MVVM (Model-View-ViewModel) MVVM is one of the most popular architecture patterns in Android development. It helps keep UI logic separate from business logic by using a ViewModel, which acts as a bridge between the View (UI) and the Model (data and logic). The View listens for updates from the ViewModel and updates the UI when needed. Model: Handles data and business logic. View: Displays the UI and passes user actions to the ViewModel. ViewModel: Manages data for the View and responds to user interactions. MVI (Model-View-Intent) MVI follows a reactive, unidirectional data flow, meaning UI updates happen in a predictable way from a single source of truth. This makes state management clearer and more structured.
Required: Rapid Prototyping, Working Software Digital transformation is all about speed in turning business ideas into systems. Speed in getting actual working software — running screens, reading and writing real data, with underlying business logic. Experience has taught us there is no substitute for working software. It's all too common to spend weeks to months creating running screens, only to find out the business idea was not compelling or the requirements were misunderstood.
Site reliability engineering (SRE) plays a vital role in ensuring Java applications' high availability, performance, and scalability. This discipline merges software engineering and operations, aiming to create a robust infrastructure that supports seamless user experiences. In this article, we will delve into a range of best practices aligned with SRE principles, including monitoring, logging, alerting, performance optimization, disaster recovery, security, automation, and incident management. Each section will be illustrated with relevant Java code samples to provide practical insights.
Mobile applications always demand highly scalable, available, and fault-tolerant backend systems. Traditional monolithic architectures often struggle with performance bottlenecks, slow deployments, and scalability limitations. To overcome these challenges, a microservices-based architecture deployed using Docker and Kubernetes provides a robust solution. This article covers the following points:
Low-code was supposed to be the future. It promised faster development, simpler integrations, and the ability to build complex applications without drowning in code. And for a while, it seemed like it would deliver. But then reality hit. Developers and IT teams who embraced low-code quickly found its limitations. Instead of accelerating innovation, it created bottlenecks. Instead of freeing developers, it forced them into rigid, vendor-controlled ecosystems.
When developing Lightning Web Components (LWC) in Salesforce, working with data efficiently is key to building powerful and scalable applications. Salesforce provides several ways to retrieve and manipulate data within LWC, and one of the most effective methods is using Lightning Data Service (LDS). LDS allows you to interact with Salesforce data — whether it’s retrieving, modifying, or deleting — without the need for any Apex code. It also offers a built-in cache that is shared across components, ensuring that data changes made by one component are automatically reflected in others, enhancing synchronization and reducing redundancy.
Accidentally deleting a table in SQL Server can be a critical issue, but there are several methods to recover it. Below are three effective ways to successfully recover a deleted table in SQL Server. Method 1: Restore the Deleted Table From Backup The most reliable way to recover a deleted table is to restore it from a database backup. This method works if you have a recent backup of the database.
One of the biggest challenges that developers and researchers face is deploying models for AI inference at scale. Traditionally, this involves relying on cloud services or complex server setups that can be expensive and resource intensive. However, with innovations like the vLLM AI Inference engine, Do-It-Yourself (DIY) model hosting is becoming more accessible and efficient. One can build cost-effective model-serving solutions for their machine learning needs. vLLM vLLM is an AI inference engine designed to efficiently serve large language models (LLMs) at scale. It is a robust, high-performance engine that provides a streamlined approach to serving AI models. It stands out in its ability to optimize resources and maintain low latency and high throughput even with large-scale models. The vLLM engine allows for faster inference times, improved memory management, and optimized execution, all of which are crucial for hosting models effectively on a DIY setup.
This blog post covers how to build a chat history implementation using Azure Cosmos DB for NoSQL Go SDK and LangChainGo. If you are new to the Go SDK, the sample chatbot application presented in the blog serves as a practical introduction, covering basic operations like read, upsert, etc. It also demonstrates using the Azure Cosmos DB Linux-based emulator (in preview at the time of writing) for integration tests with Testcontainers for Go. Go developers looking to build AI applications can use LangChainGo, which is a framework for LLM-powered applications. It provides pluggable APIs for components like vector store, embedding, loading documents, chains (for composing multiple operations), chat history, and more.
Observability Integration Observability is the cornerstone of reliability and trust in any production-grade retrieval-augmented generation (RAG) pipeline. As these systems become more complex — handling sensitive data, supporting real-time queries, and interfacing with multiple services — being able to trace and measure each step of the data flow and inference process becomes critical. From retrieving logs in vector databases to generating final responses with large language models, every interaction must be visible and auditable to scale confidently in production. To address these needs, our enhanced RAG pipeline integrates Literal AI for end-to-end tracing of both retrieval and generation steps. Literal AI provides robust observability mechanisms, allowing teams to pinpoint performance bottlenecks, detect anomalies, and seamlessly incorporate human-in-the-loop feedback.
A well-designed disaster recovery plan is critical to mitigate risks, recover swiftly from failures, and ensure your data and infrastructure integrity. Are There Any Myths Related to DR in DevOps? Some organizations still mistakenly assume that DevOps tools, like GitHub, GitLab, Bitbucket, Azure DevOps, or Jira, come with built-in, all-encompassing disaster recovery. However, we shouldn’t forget about the shared responsibility models, which explicitly clarify that while providers secure their infrastructure and smoothly run their services, users must safeguard their own account data.
Have you ever wondered why predicting next month's sales is so hard? Or why forecasting the weather seems like a coin flip sometimes? Time series data is everywhere, but making sense of it has always been a headache — until now. Large language models (LLMs) are shaking things up in the time series world. Seriously, it's like someone finally handed us a decent flashlight after we've been stumbling around in the dark for years.
With the rising demand for high-performance, scalable, and resource-efficient microservices, many organizations are exploring the transition from Java to Go (Golang). Java, a long-standing enterprise favorite, offers robustness and a vast ecosystem, but Go’s lightweight concurrency model, fast execution speed, and lower memory footprint make it an attractive alternative. This guide explores why and how to migrate Java microservices to Go effectively.
In my last post on PHP Zmanim, I said the next thing I’d write about was astronomy calculations. I still plan to do that, but something came up recently that caught my attention, so I’m going to talk about that instead. I still plan to get to the astronomy stuff. Sephardi vs. Ashkenazi No, not kitniyot. No, not how to hang your mezuzzah. No, not whether you have to use water challah or if egg challah is ok. I’m talking about the “T” sound in certain words.
Have you ever spent hours debugging a seemingly simple React application, only to realize the culprit was a misplaced import? Incorrect import order can lead to a host of issues, from unexpected behavior to significant performance degradation. In this article, we'll delve into the intricacies of import order in React, exploring best practices and powerful tools to optimize your code. By the end, you'll be equipped to write cleaner, more efficient, and maintainable React applications.
kOps is a widely used tool for deploying and managing Kubernetes clusters in multi-cloud or hybrid cloud environments. It provides a unified configuration system (YAML or JSON), which lets you easily set up clusters across AWS, GCP, Azure, and on-premises environments. With flexible customization options, kOps lets you adjust everything from control plane and worker node operating systems to network plugins (like Calico and Cilium) and storage solutions, which makes it an excellent fit for complex setups.
Java has become one of the world’s most versatile programming languages, chosen for its adaptability, stability, and platform independence. Its extensive ecosystem encompasses virtually every application type, from web development to enterprise solutions, game design, Internet of Things (IoT), and beyond. With an estimated 51 billion active Java virtual machines (JVMs) globally, it goes without question that Java powers a substantial portion of modern software infrastructure.
Running GPU workloads on Amazon EKS requires configuring GPU-enabled nodes, installing necessary drivers, and ensuring proper scheduling. Follow these steps to set up GPU nodes in your EKS cluster. 1. Create an Amazon EKS Cluster First, create an EKS cluster without worker nodes using eksctl (for simplicity, we don’t use Terraform/OpenTofu.):
The tech sector is based on human rather than physical assets: not on machinery or warehouses but on talented specialists and innovations. Competition is fierce, and success often hinges on adaptability in an ever-changing environment. Speed takes precedence, where the ability to launch a product swiftly can outweigh even its quality. If you have any experience in software development, all these issues definitely sound like a daily routine. But what if you are about to launch your own startup? What if your project’s ambitions go all the way to Unicorn heights? In this case, you are going to face additional and (most probably) unfamiliar obstacles. These include workforce challenges, management issues, insufficient investment in innovation, and neglect of technical branding.
Testing is a critical aspect of software development. When developers write code to meet specified requirements, it’s equally important to write unit tests that validate the code against those requirements to ensure its quality. Additionally, Salesforce mandates a minimum of 75% code coverage for all Apex code. However, a skilled developer goes beyond meeting this Salesforce requirement by writing comprehensive unit tests that also validate the business-defined acceptance criteria of the application.
I have been looking at open source development in Japan, which is showing increasing signs of playing a bigger part in corporate strategy and becoming more global in reach. Koichi Shikata, Head of Solutions Architect Division, SUSE Software Solutions, Japan, is a seasoned professional with extensive experience in the software industry, having held significant roles at SUSE, Wind River, and Intel, based both in Japan and the US. Throughout his career, he has been instrumental in promoting open-source solutions and fostering innovation within the industry.
SingleStore is a powerful multi-model database system and platform designed to support a wide variety of business use cases. Its distinctive features allow businesses to unify multiple database systems into a single platform, reducing the Total Cost of Ownership (TCO) and simplifying developer workflows by eliminating the need for complex integration tools. In this article, we'll explore how SingleStore can transform email campaigns for a web analytics company, enabling the creation of personalized and highly targeted email content.
When running a process in Salesforce, the first question you should ask is whether to execute it synchronously or asynchronously. If the task can be delayed and doesn't require an immediate result, it's always beneficial to leverage Salesforce's asynchronous processes, as they offer significant advantages to your technical architecture. What Is Asynchronous Processing? Asynchronous processes run in their own thread, allowing the task to complete without keeping the user waiting. Here are the key benefits:
The extract, transform, and load (ETL) process is at the heart of modern data pipelines; it helps migrate and process large amounts of data for analytics, AI apps, and BI (business intelligence) for organizations. Conventional ETL used to be explicitly rule-based, which required tons of manual configurations to handle different data formats. However, with recent trends of large language models (LLMs), we are starting to see the dawn of transformative AI-driven ETL for data extraction and integration.
Supply chains are the backbone of global commerce, but they're increasingly complex and vulnerable to disruptions. From pandemic-related shortages to geopolitical conflicts, recent events have exposed fundamental weaknesses in traditional supply chain management approaches. As organizations seek more resilient and efficient solutions, artificial intelligence — particularly generative AI and large language models (LLMs) — is emerging as a game-changing technology.
Problem Statement With the rapid increase of online applications in industries such as finance, e-commerce, and social media, the frequency and sophistication of fraud attempts have surged. E-commerce apps face challenges like unauthorized transactions, fake bank account creation, and bot-driven attacks, leading to financial losses, reputational harm, and decreased user trust. Current fraud detection methods often rely on post-event analysis, failing to address the need for real-time mitigation. The critical problem is to develop a system capable of detecting and preventing fraud as it occurs while balancing performance, user experience, and data privacy.
TL; DR: The Alignment-to-Value Pipeline Effective product development requires both strategic alignment and healthy Product Backlog management. Misalignment leads to backlog bloat, trust erosion, and building the wrong products. By implementing proper alignment tools, separating discovery from delivery, and maintaining appropriate backlog size (3-6 sprints), teams can build products that truly matter. Success depends on trust, collaboration, risk navigation, and focusing on outcomes over outputs. Learn more about how to embrace the alignment-to-value pipeline and create your product operating model.
When large organizations spend billions of dollars in research and development of a revolutionary technology, a time comes when the technology is ready for prime time. The technology giants put their best foot forward to ensure large-scale global adoption of the technology. These are exciting times for any technology enthusiast, and it is natural to feel the urge to be a part of the bandwagon and not feel left out. People across the rank and file of an organization are feeling the pressure of using AI-based solutions for every business problem. How do you soak in the pressure and make the right decisions for your business problems? Let's break down the problem and remove the cobwebs to get a clear picture of when to use AI and when not to.
You can subscribe to this RSS to get more information