Your 12 hourly digest for DZone.com Feed

DZone.com Feed
Recent posts on DZone.com 
thumbnail Defensive Programming With Klojang Check
Aug 17th 2023, 02:11, by Ayco Holleman

Unit testing and integration testing have long since become established practices. Practically all Java programmers know how to write unit tests with JUnit. IDEs will help you with it and build tools like Maven and Gradle and run them as a matter of course.

The same cannot be said of its (sort of) runtime counterpart: Defensive Programming — ensuring your program or method starts with a clean and workable set of inputs before continuing with the business logic. Null checks are the most common example of this. Yet it often seems like everything beyond that is treated as part of the business logic, even when it arguably isn't. If a method that calculates a price needs some value from a configuration file, is the presence of the configuration file part of the business logic? Probably not, but it should be checked nonetheless.

thumbnail End-To-End Automated Testing of a Home Robot Using April Tags
Aug 17th 2023, 01:51, by Gopinath Hariharan

In my previous article, I gave an overview of robotics software design, and what are the different approaches to testing we could do, and how we can approach testing at different layers. In this article, I will explain how to perform E2E automated testing for a home robot. 

Challenges in End-To-End Automation

Challenges in robotic automation are plenty. The complexity of the software stack itself makes this type of automation super challenging. Testing could be done at any different layer, starting from the front end all the way to the low layer. End-to-end becomes difficult as it introduces a newer challenge with respect to the 3D space. Testing within a 3D space involving real home features is challenging too. Top of all, there are no specific tools and technology available to automate the testing process. This is a space that requires an immense understanding of the problem and great expertise in solving this challenge. Don't worry. I will share my experience here to help you understand and provide an overview of how things could be done.

thumbnail The Power of Caching: Boosting API Performance and Scalability
Aug 17th 2023, 01:40, by Yvonne Parks

Caching is the process of storing frequently accessed data or resources in a temporary storage location, such as memory or disk, to improve retrieval speed and reduce the need for repetitive processing.

Benefits of Caching

  • Improved performance: Caching eliminates the need to retrieve data from the original source every time, resulting in faster response times and reduced latency.
  • Reduced server load: By serving cached content, the load on the server is reduced, allowing it to handle more requests and improving overall scalability.
  • Bandwidth optimization: Caching reduces the amount of data transferred over the network, minimizing bandwidth usage and improving efficiency.
  • Enhanced user experience: Faster load times and responsiveness lead to a better user experience, reducing user frustration and increasing engagement.
  • Cost savings: Caching can reduce the computational resources required for data processing and lower infrastructure costs by minimizing the need for expensive server resources.
  • Improved availability: Caching can help maintain service availability during high-traffic periods or in case of temporary server failures by serving content from the cache.

Types of Caching

Client-Side Caching

Client-side caching refers to the process of storing web resources, like HTML pages, CSS files, JavaScript scripts, and images, on the user's device, typically in their web browser. The purpose of client-side caching is to speed up web page loading by reducing the need to fetch resources from the web server every time a user visits a page.

thumbnail Boosting Model Interoperability and Efficiency With the ONNX Framework
Aug 16th 2023, 20:55, by Rakesh Nakod

The rapid growth of artificial intelligence and machine learning has led to the development of numerous deep learning frameworks. Each framework has its strengths and weaknesses, making it challenging to deploy models across different platforms. However, the Open Neural Network Exchange (ONNX) framework has emerged as a powerful solution to this problem. This article introduces the ONNX framework, explains its basics, and highlights the benefits of using it.

Understanding the Basics of ONNX

What Is ONNX? 

The Open Neural Network Exchange (ONNX) is an open-source framework that enables the seamless interchange of models between different deep learning frameworks. It provides a standardized format for representing trained models, allowing them to be transferred and executed on various platforms. ONNX allows you to train your models using one framework and then deploy them using a different framework, eliminating the need for time-consuming and error-prone model conversions.

thumbnail Exploring Seamless Integration: Jakarta Data and Jakarta Persistence in Jakarta EE 11 With Open Liberty
Aug 16th 2023, 20:50, by Otavio Santana

In the ever-evolving landscape of enterprise Java, the seamless interaction between various specifications plays a pivotal role in shaping the architecture of modern applications. One such integration that garnered significant attention is between Jakarta Data and Jakarta Persistence, the latest evolution of the former Java Persistence API (JPA). The integration of Jakarta Data and Jakarta Persistence brings forth a unified approach to handling data, making application development more efficient, flexible, and aligned with the demands of contemporary software design.

In this article, we embark on a journey to delve into the intricacies of integrating Jakarta Data and Jakarta Persistence within the Jakarta EE 11 framework. We'll explore how this integration is a foundation for developing robust and scalable applications. To illustrate the concepts in action, we'll leverage Open Liberty, an open-source application server that supports the latest Jakarta EE specifications.

thumbnail Choosing an OLAP Engine for Financial Risk Management: What To Consider?
Aug 16th 2023, 20:44, by Frank Z

From a data engineer's point of view, financial risk management is a series of data analysis activities on financial data. The financial sector imposes its unique requirements on data engineering. This post explains them with a use case of Apache Doris and provides a reference for what you should take into account when choosing an OLAP engine in a financial scenario. 

Data Must Be Combined

The financial data landscape is evolving from standalone to distributed, heterogeneous systems. For example, in this use case scenario, the fintech service provider needs to connect the various transaction processing (TP) systems (MySQL, Oracle, and PostgreSQL) of its partnering banks. Before they adopted an OLAP engine, they were using Kettle to collect data. The ETL tool did not support join queries across different data sources, and it could not store data. The ever-enlarging data size at the source end was pushing the system toward latency and instability. That's when they decided to introduce an OLAP engine.

thumbnail Top 10 Microservices Frameworks
Aug 16th 2023, 20:37, by Albert Smith

Microservices are a type of service-oriented architecture that is used to develop multifunctional and complex applications. Instead of creating a complete software unit, developers can add small services to create software.

Is it confusing to know what framework to use for creating applications with microservices? Find out what the latest frameworks have to offer. When you have chosen the framework, hire dedicated developers that build high-performance, scalable applications.

thumbnail Mastering AWS Cost Management and Optimization
Aug 16th 2023, 20:20, by Rahul Nagpure

Amazon Web Services (AWS) provides a powerful and flexible cloud platform, but it's essential to manage and optimize your costs effectively to maximize the value of your investment. In this blog, we will explore various tips and techniques for optimizing AWS costs, including monitoring usage, setting budgets, and leveraging cost-effective services. By implementing these strategies, you can ensure that your AWS infrastructure remains efficient, cost-effective, and aligned with your business goals.

Let's have a look at all strategies one by one.

thumbnail Java ZGC Algorithm Tuning
Aug 16th 2023, 19:38, by Ram Lakshmanan

ZGC is a specialized garbage collector that focuses on managing large heaps and minimizing pauses in Java applications. It tackles the challenges of garbage collection in scenarios where memory-intensive workloads and consistent response times are vital. Leveraging concurrent processing capabilities and advanced algorithms, ZGC offers an effective solution for optimizing performance in modern Java applications. In this post, we will explore techniques to tune ZGC for enhanced performance specifically. However, if you want to learn more basics of Garbage Collection tuning, you may watch this JAX London conference talk.

ZGC Tuning Parameters

ZGC, a garbage collector in Java, takes a different approach to tuning by minimizing the number of exposed JVM parameters. Unlike traditional garbage collectors that require fine-grained adjustments, ZGC focuses on optimizing the management of large heap sizes while providing efficient garbage collection with minimal configuration overhead. This streamlined approach allows developers to primarily focus on one key JVM parameter for tuning: the heap size. 

thumbnail Building a Real-Time IoT Application With Solace Technology
Aug 16th 2023, 19:24, by Kingsley Amankwah

As a software developer who lives with his aging parents, I was worried about their well-being and wanted to ensure that they were safe and secure at all times. So, I created an IoT application that would help me monitor their activities in real time and alert me in case of any emergency.

I started by installing sensors in different parts of the house to monitor temperature, humidity, and sound levels. I then used Solace technology to build an IoT application that would use the data from these sensors to alert me in case of any abnormal activity. I connected the sensors to the Solace messaging platform, which would send messages to my smartphone whenever there was a change in the sensor data. For instance, when the temperature in the house dropped below a certain level, I received an alert on my phone, prompting me to check on my parents' heating system.

thumbnail Three Best React Form Libraries
Aug 16th 2023, 19:10, by Hardik Thakker

How can we simplify work as our React project's forms become increasingly intricate? Creating and handling forms in React can be challenging and time-consuming. Fortunately, third-party libraries can help. Many exceptional form libraries are available that can simplify the process and make React form development more efficient and enjoyable.

The primary question then becomes which form of library is the best. In this blog post, we'll discuss three of the top React form libraries that every React developer should know.

thumbnail MySQL Multi-Source Replication
Aug 16th 2023, 18:53, by Moshe Battula

MySQL replication is a powerful feature that allows you to copy and synchronize data from one server to another. In this guide, we will explore the concept of multi-source replication in MySQL and learn how to configure and manage this advanced replication technique. Whether you are a seasoned database administrator or a beginner in the world of MySQL, this article will provide you with a deep understanding of multi-source replication and its benefits.

What Is Multi-Source Replication?

Multi-source replication in MySQL enables a replica server to receive data from multiple source servers. Imagine a scenario where you have a replica server at your workplace and several source servers located in different locations. With multi-source replication, you can directly gather data from these source servers and consolidate it on your replica server.

thumbnail FeatureFlag 101
Aug 16th 2023, 18:52, by Amit Sonar

In the dynamic landscape of modern software applications, catering to millions of users is a norm, and multiple teams work on various components concurrently. With the Agile development approach, new features are continuously onboarded to enhance application capabilities. However, releasing these features to all users simultaneously can lead to potential issues, such as exposing buggy features, performance regressions, and user dissatisfaction.

The Role of Feature Flags

To mitigate these risks and ensure a smoother rollout, the use of feature flags has become instrumental. Feature flags, also known as feature toggles, act as conditional switches that enable or disable specific functionality in an application without requiring redeployment. By serving as gatekeepers, feature flags allow developers to grant access to new features gradually, targeting specific user groups.

thumbnail "Auth" Demystified: Authentication vs Authorization
Aug 16th 2023, 18:14, by Noa Shavit

One of the most widely held misconceptions is that authorization and authentication are the same, or something your identity provider does. It also doesn't help that certain authentication vendors blur the line by offering their versions of access controls. But, the reality is that authentication and authorization are two distinct processes with vastly different challenges and architectural needs. 

Authentication is a solved problem. We have well-defined standards, protocols, and established vendors that offer off-the-shelf solutions. Authorization, on the other hand, is far from solved. There are no standard protocols or frameworks, so every app must build its own system. To make matters worse, authorization is a complex problem, one that requires a distributed systems architecture with real time access checks to get right. Read on for all the details. 

thumbnail Deploy MuleSoft App to CloudHub2 Using GitHub Actions CI/CD Pipeline
Aug 16th 2023, 17:39, by Ashish Jha

In this post, I will provide a step-by-step guide on deploying a MuleSoft application to CloudHub2 using GitHub Actions.

Prerequisites

Before we start, let's learn about GitHub Actions.

GitHub Actions is a versatile and powerful automation platform provided by GitHub. It enables developers to define and automate workflows for their software development projects. With GitHub Actions, you can easily set up custom workflows to build, test, deploy, and integrate your code directly from your GitHub repository.

thumbnail Scriptless Testing in a Mobile World
Aug 16th 2023, 17:13, by Syed Hamid

For years, organizations have aligned their mobile testing strategy around two methods.

  1. Increasing headcount during development phases to dedicate to manual tests. 
  2. Leveraging developers to create code-based test scripts.

The problem? Both of these methods involve a considerable amount of time and resources. Two things that they just don't have.

thumbnail Securely Managing, Distributing, and Scaling Secrets Across Multiple Kubernetes Clusters
Aug 16th 2023, 17:08, by Gianluca Mardente

A secret is any piece of information that you want to keep confidential, such as API keys, passwords, certificates, and SSH keys. Secret Manager systems store your secrets in a secure, encrypted format, and provide you with a simple, secure way to access them.

Here are some of the benefits of using Secret Manager:

thumbnail Blueprint for Seamless Software Deployment: Insights by a Tech Expert
Aug 16th 2023, 15:15, by Muzammil Rawjani

As an average user, choosing the right software can be a challenge. However, how you deploy the software can make a significant difference in its effectiveness.

The process of deploying software involves making a tool ready for use in a way that ensures it is optimized, secure, and compatible. Software varies in its purpose and performance; the deployment process must be tailored to its specific requirements.

You are receiving this email because you subscribed to this feed at blogtrottr.com. By using Blogtrottr, you agree to our policies, terms and conditions.

If you no longer wish to receive these emails, you can unsubscribe from this feed, or manage all your subscriptions.

Comments

Popular posts from this blog

Digg

DZone.com Feed

Yahoo! News: Technology News