News Aggregator


Unleash the Power of Containerization: Installing and Running Podman on MacOS

Aggregated on: Thu Sep 07 2023 23:01:42 GMT+0000 (Coordinated Universal Time)

In the rapidly evolving landscape of software development and deployment, containerization has become a cornerstone technology. Among the myriad containerization tools, Podman stands out as a lightweight, flexible, and efficient choice for macOS users. This guide is your gateway to the world of Podman, taking you through the seamless process of installing and running containers on your macOS system. Installing Podman on MacOS There are multiple avenues to bring Podman into your macOS environment. Below, we’ll explore two popular methods: using Homebrew for convenience and manual installation for those who prefer hands-on control.

View more...

Unleashing the Power of Microservices With Spring Cloud

Aggregated on: Thu Sep 07 2023 22:31:42 GMT+0000 (Coordinated Universal Time)

The rise of microservices architecture has changed the way developers build and deploy applications. Spring Cloud, a part of the Spring ecosystem, aims to simplify the complexities of developing and managing microservices. In this comprehensive guide, we will explore Spring Cloud and its features and demonstrate its capabilities by building a simple microservices application. What Is Spring Cloud? Spring Cloud is a set of tools and libraries that provide solutions to common patterns and challenges in distributed systems, such as configuration management, service discovery, circuit breakers, and distributed tracing. It builds upon Spring Boot and makes it easy to create scalable, fault-tolerant microservices.

View more...

Best Practices To Secure Data Transmission

Aggregated on: Thu Sep 07 2023 22:16:42 GMT+0000 (Coordinated Universal Time)

In today's interconnected global marketplace, secure data transmission is more crucial than ever. As digital platforms become increasingly important for financial transactions and personal communications, ensuring the integrity and confidentiality of data is vital. If someone gets unauthorized access to data, it can be not good. If someone gains unauthorized access to data, it can be not good. It can cost a company money, ruin its good name, and make customers lose trust. This article explores the best practices for ensuring secure data transmission, offering valuable insights for anyone engaged in online activities, whether a multinational corporation or an individual consumer.  Why Secure Data Transmission Matters  The significance of secure data transmission goes beyond just keeping sensitive information out of the wrong hands. It is a cornerstone of business integrity and a key to competitive advantage in a rapidly evolving digital landscape. As companies extend their reach globally, they frequently exchange data across different authorities, each with its regulations and potential vulnerabilities. Secure data transmission is not just about preventing financial loss through fraud or data theft; it is also about regulatory compliance, protecting intellectual property, and maintaining customer trust. Businesses considered secure are more likely to attract customer engagement, and this perception directly affects a company's bottom line. In an age where data breaches are becoming increasingly common and costly, the ability to transmit data securely is not just an operational requirement but a critical business strategy that can differentiate a company in a crowded market. 

View more...

Getting Started With Real-Time Analytics

Aggregated on: Thu Sep 07 2023 22:16:42 GMT+0000 (Coordinated Universal Time)

Real-time analytics is necessary for any business that needs to make decisions in hours, minutes, or seconds. Implementing real-time analytics requires processing high volumes of input data and matching it with existing data in minutes, seconds, or even less time. This Refcard aims to acquaint readers with real-time analytics, where it is used, how it works, and the challenges involved.

View more...

Setting up Request Rate Limiting With NGINX Ingress

Aggregated on: Thu Sep 07 2023 22:01:42 GMT+0000 (Coordinated Universal Time)

In today's highly interconnected digital landscape, web applications face the constant challenge of handling a high volume of incoming requests. However, not all requests are equal, and excessive traffic can put a strain on resources, leading to service disruptions or even potential security risks. To address this, implementing request rate limiting is crucial to preserve the stability and security of your environment. Request rate limiting allows you to control the number of requests per unit of time that a server or application can handle. By setting limits, you can prevent abuse, manage resource allocation, and mitigate the risk of malicious attacks such as DDoS or brute-force attempts. In this article, we will explore how to set up request rate limiting using NGINX Ingress, a popular Kubernetes Ingress Controller. We will also demonstrate how to test the rate-limiting configuration using Locust, a load-testing tool.

View more...

Thoughts About Writing Clear Code

Aggregated on: Thu Sep 07 2023 21:16:42 GMT+0000 (Coordinated Universal Time)

DataWeave (DW) is a new functional programming language that emerged from Mulesoft technology. This is a simple, transparent, and powerful language for data transformation. Since the language is new, I found there was no well-established practice on how to organize a DW code inside the Mulesoft app. I frequently ran into situations where the absence of a single DataWeave style or recommendations for a team can make the project difficult to understand and maintain. In this article, I will try to uncover some of my thoughts based on my experience that can be useful when writing your code in DW.

View more...

Slowing Down the Release Cycle

Aggregated on: Thu Sep 07 2023 21:01:42 GMT+0000 (Coordinated Universal Time)

I’ve been working in IT in various roles for more than 12 years, and I witnessed and experienced how release cycles became faster and faster over time. Seeing recent (and not so recent) trends in competitiveness, degradation of attention span, advertisement of short-term satisfaction, etc., I wonder where this increase in speed will lead in terms of software quality, end-user experience and satisfaction, engineer burnout, and whether it is possible to slow down a little. What Do We Want? Anything! When Do We Want It? Yesterday! Two things come to my mind regarding this topic: shortened attention span and the want for short-term perceived satisfaction.

View more...

10 Reasons Why AI and ML Will Be in High Demand

Aggregated on: Thu Sep 07 2023 20:31:42 GMT+0000 (Coordinated Universal Time)

What Are Artificial Intelligence and Machine Learning? Artificial Intelligence (AI) and Machine Learning (ML) are closely related fields within the broader domain of computer science and data science. While they are related, they have distinct definitions and purposes: Artificial Intelligence (AI) AI refers to the development of computer systems that can perform tasks that typically require human intelligence. These tasks encompass a wide range of activities, including problem-solving, learning, reasoning, perception, language understanding, and decision-making. AI aims to create machines or software that can mimic or simulate human cognitive functions.

View more...

Back To The Future: Server-Side Web Pages With Kotlin (Pt. 2)

Aggregated on: Thu Sep 07 2023 20:31:42 GMT+0000 (Coordinated Universal Time)

Recap: Server-Side Web Pages With Kotlin In the first article, server-side web pages with Kotlin part 1, a brief history of web development was outlined: namely, the four main stages being static HTML page delivery; server-side programmatic creation of web pages; HTML templating engines, again server-side; and finally, client-side programmatic creation of web pages. While contemporary web development is mostly focused on the last of the four stages (i.e., creating web pages on the client side), there still exist good cases for rendering web pages on the server side of the web application; furthermore, new technologies like kotlinx.html – a library by the authors of Kotlin for generating HTML code via a domain-specific language (DSL) – provide additional options for server-side web development. To give an example, the following two approaches produce the same homepage for the Spring Boot-powered website of a hypothetical bookstore: Templating Engine (Thymeleaf) The basic workflow for rendering a webpage with a template engine like Thymeleaf is to create an HTML template page in the resources/templates folder of the project, in this case home.html:

View more...

Choosing a Container Platform

Aggregated on: Thu Sep 07 2023 20:16:42 GMT+0000 (Coordinated Universal Time)

There are many container platforms to choose from. Finding the right platform for your project boils down to: Where you want or need to run them. Your team's knowledge at the time. The flexibility you need. Company policy Budget It's important to check the pros and cons of each platform and weigh them against your product's needs. In this post, I help break down the suitability of each platform.

View more...

Unleashing the Power of React Hooks

Aggregated on: Thu Sep 07 2023 20:16:42 GMT+0000 (Coordinated Universal Time)

React, the popular JavaScript library for building user interfaces, has seen significant changes and improvements over the years. One of the most game-changing additions to React is the introduction of Hooks. React Hooks revolutionized how developers manage state and lifecycle in functional components. In this comprehensive guide, we'll delve deep into the world of React Hooks, exploring their benefits, use cases, and how to leverage them to write cleaner and more maintainable React code. Introduction React, developed by Facebook, has become the go-to library for building modern and interactive web applications. Traditionally, React components have been written as classes with complex state and lifecycle management. However, with the release of React 16.8 in early 2019, the React team introduced Hooks, which enables developers to use state and other React features in functional components. This shift in React's paradigm has had a profound impact on how developers write and structure their code.

View more...

Implementing Zero-Trust in Enterprise Environments

Aggregated on: Thu Sep 07 2023 20:01:42 GMT+0000 (Coordinated Universal Time)

In the face of ever-changing threats and complex infrastructures, the zero-trust architecture represents an important transformation in our understanding and implementation of security. This innovative approach promises not only increased protection but also increased adaptability and efficiency in infrastructure management. By removing outdated belt-driven thinking and prioritizing individuality, segmentation, and continuous authentication, we are paving the way for a more secure digital future.  Elements of the Zero-Trust Framework Micro-Segmentation: Enhancing Network Security Micro-segmentation involves dividing the network into secure zones or segments, thus limiting the horizontal movement of potential attackers. The zero-trust strategy aims to combat side-scrolling attacks by implementing granular access controls in these segments. Continuous Authentication and Authorization: Real-Time Adaptation This component revolves around dynamic policies that adapt based on real-time user behavior and contextual information. It also entails continuous surveillance to ensure that security remains flexible and responsive to changing threats. Identity and Access Management (IAM) at the Core IAM forms the foundation of zero-trust by implementing stringent security measures. This includes multi-factor authentication (MFA) to bolster user verification, single sign-on (SSO) for streamlined access, and additional measures to fortify identity and access security.

View more...

Unleashing Excellence in Software Product Engineering

Aggregated on: Thu Sep 07 2023 20:01:42 GMT+0000 (Coordinated Universal Time)

Software Product Engineering Teams might look like other software teams, but working on a “long-standing” product having “diverse customers” has its own challenges. This makes the simple guidelines in the following sections really important.  Using them would streamline your engineering team and help achieve greater quality and efficiency. It applies to any software team, though the importance of the topic increases for Software Product Teams.

View more...

A Journey Through Generative AI

Aggregated on: Thu Sep 07 2023 19:16:42 GMT+0000 (Coordinated Universal Time)

AI has become the talk of the town since ChatGPT made it to the news. With a downfall of 80% for Google, numerous tools use artificial intelligence to their advantage. Regarding the mobile app development industry, AI has introduced innovative trends that have helped the company soar. AI, specifically generative AI, will be discussed in this blog to have a closer look at what it offers. In addition, of course, my experiences as a CEO so all entrepreneurs can add their insights to it. Without further ado, let us get started. All You Need To Know About Generative AI Deloitte's Global Mobile Consumer Survey by Statista shows that 65% of smartphone users in 16 developed markets have used machine learning-based apps. Did you know that machine learning is the backbone of artificial intelligence? AI is a concept of enabling machines to sense, reason, act, or adapt like humans. Machine learning (ML) is an AI application that allows machines to extract knowledge from data and learn autonomously.

View more...

Natural Interactions in IoT: Combining MQTT and ChatGPT

Aggregated on: Thu Sep 07 2023 19:16:42 GMT+0000 (Coordinated Universal Time)

As IoT technology advances rapidly, it becomes easier to interact with devices and among devices. However, the new challenge in the IoT field is making the interaction more natural, efficient, and smart. Advanced Large Language Models (LLMs) such as ChatGPT, GPT-3.5, and GPT-4, created by OpenAI, have gained much popularity around the world lately. This has created many opportunities for combining General Artificial Intelligence (AGI) with the IoT domain, offering promising avenues for future progress.

View more...

Building Analytics Architectures to Power Real-Time Applications

Aggregated on: Thu Sep 07 2023 17:16:41 GMT+0000 (Coordinated Universal Time)

In today's fast-paced digital landscape, businesses are increasingly reliant on data-driven decision-making and real-time insights to gain a competitive edge. The ability to extract actionable information from data has become a crucial factor in driving innovation, optimizing processes and enhancing user experiences. However, the demand for real-time insights doesn't negate the importance of offline analytics architectures, which play a fundamental role in preparing and enhancing data before it's ready for real-time application. In this article we will explore how to build an efficient and cost-effective analytical architecture that can serve the real-time needs of applications. Understanding the Role of Offline Analytics Offline analytics involves the process of collecting, processing and analyzing large volumes of data in a batch manner, often over longer time frames. This contrasts with real-time analytics, which focuses on analyzing data as it's generated, with immediate results. While real-time analytics offer the advantage of rapid insights, offline analytics provide the foundation upon which these insights are built. Offline analytics architectures are designed to handle vast datasets, cleanse and transform the data, and generate aggregated results that can later be leveraged in real-time applications.

View more...

Jira Kanban Board 101: Workflow Management and Beyond

Aggregated on: Thu Sep 07 2023 16:01:41 GMT+0000 (Coordinated Universal Time)

Are you looking to create a Kanban board in Jira? Then this guide is for you! I’ll guide you through the processes of: 

View more...

Multi-Tenancy in Kubernetes Using Vcluster

Aggregated on: Thu Sep 07 2023 15:16:41 GMT+0000 (Coordinated Universal Time)

Kubernetes has revolutionized how organizations deploy and manage containerized applications, making it easier to orchestrate and scale applications across clusters. However, running multiple heterogeneous workloads on a shared Kubernetes cluster comes with challenges like resource contention, security risks, lack of customization, and complex management. There are several approaches to implementing isolation and multi-tenancy within Kubernetes:

View more...

Lessons From a Decade of Generative AI

Aggregated on: Wed Sep 06 2023 22:01:41 GMT+0000 (Coordinated Universal Time)

With the recent buzz around generative AI, led by the likes of ChatGPT and Bard, businesses are increasingly seeking to understand the use cases for the technology. It’s a great time for instigating conversations around the power of AI, but generative AI is nothing new. Generative modeling (i.e., generative AI) has been blowing up behind the scenes for more than a decade, propelled by three major factors:  the development of open-source software libraries such as Tensorflow in 2015 and PyTorch in 2016; innovations in neural network architectures and training; and hardware improvements such as graphics processing units (GPUs) and tensor processing units (TPUs) to facilitate training and inference on massive neural networks.  In this article, I’ll aim to explain what generative models are, how they got to where they are today, and how they should be used, but also explore their limitations.

View more...

Cypress Feature “Test Replay” Launched: Let’s Play With Test Replay

Aggregated on: Wed Sep 06 2023 22:01:41 GMT+0000 (Coordinated Universal Time)

Problem Statement Before Cypress v13, test failures in CI have historically been captured through screenshots, videos, and stack trace outputs, but these artifacts provide limited information. So Cypress comes with a new feature Test Replay in version 13.0.0. The introduction of features like “Test Replay” in Cypress v13 aims to bridge this gap by providing developers with a way to replay the exact test run and inspect various aspects of it, such as DOM interactions, network requests, console logs, JavaScript errors, and more

View more...

API Versioning: URL VS. Header VS. Media Type Versioning

Aggregated on: Wed Sep 06 2023 21:31:41 GMT+0000 (Coordinated Universal Time)

API versioning is a crucial aspect of building and maintaining APIs, as it allows developers to introduce changes to their API without breaking existing client applications. In essence, it involves creating different versions of an API that coexist and function independently of each other. This is particularly important as APIs evolve over time and new features are added or old ones are removed.There are different approaches to API versioning, including URL versioning, header versioning, and media type versioning. Each approach has its own advantages and disadvantages, and choosing the right one depends on the specific use case and the needs of the API's users. What Is URL Versioning? URL versioning is an approach to API versioning where the version number is included in the URL itself. Typically, the version number is appended to the base URL of the API, separated by a forward slash. For example, if the base URL of an API is ‘https://example.com/api’, and the current version is version 1, the URL for a resource might look like this: ‘https://example.com/api/v1/resource’.

View more...

Crafting Mazes

Aggregated on: Wed Sep 06 2023 21:31:41 GMT+0000 (Coordinated Universal Time)

In our previous post, we delved into problems of pathfinding in graphs, which are inherently connected to solving mazes. When I set out to create a maze map for the Wall-E project, I initially expected to find a quick and easy way to accomplish this task. However, I quickly found myself immersed in the vast and fascinating world of mazes and labyrinths.

View more...

Unleashing the Power of Natural Language Input in ChatGPT

Aggregated on: Wed Sep 06 2023 21:31:41 GMT+0000 (Coordinated Universal Time)

Recent innovations have captured our imagination as profoundly as OpenAI's ChatGPT. With its remarkable ability to understand and generate human-like text, ChatGPT has revolutionized how we interact with technology. In this blog, we'll delve into the captivating world of ChatGPT and explore how its natural language input capabilities are shaping the future of human-AI interactions.  The Rise of Natural Language Processing Natural Language Processing (NLP) is the backbone of ChatGPT's prowess. It's a field of AI that aims to bridge the gap between human communication and computer understanding. NLP algorithms like ChatGPT enable machines to interpret and generate human language, opening doors to seamless communication between humans and computers. 

View more...

How Does PaLM 2 Work? A Complete Guide

Aggregated on: Wed Sep 06 2023 21:31:41 GMT+0000 (Coordinated Universal Time)

Language models have transformed the landscape of natural language processing, elevating AI's ability to comprehend and generate human-like text. Among these groundbreaking advancements, Pathways Language Model 2 (PaLM 2) stands out as a remarkable achievement, pushing the boundaries of linguistic understanding and context-based processing. In this comprehensive guide, we delve into the depths of PaLM 2, exploring its architecture, capabilities, and the revolutionary pathways it employs to achieve unprecedented language comprehension. Building upon the foundations laid by its predecessor, PaLM, this second iteration introduces novel strategies that have revolutionized natural language understanding.

View more...

Understanding Google Analytics 4, Server-Side Tracking, and GDPR Compliance

Aggregated on: Wed Sep 06 2023 21:31:41 GMT+0000 (Coordinated Universal Time)

In today's digital landscape, data privacy and accurate analytics are paramount for businesses striving to make informed decisions. Google Analytics 4 (GA4) brings a new dimension to data privacy and tracking methods, including cookie-less tracking and server-side tracking.  Growing worries about privacy have prompted security rules from entities like the General Data Protection Regulation and the California Consumer Privacy Act. Responding to these regulations, Google has revealed its plan to disable third-party cookies by late 2023.

View more...

Seven Effective Strategies To Optimize Your VBA Macro Performance

Aggregated on: Wed Sep 06 2023 21:01:41 GMT+0000 (Coordinated Universal Time)

In the realm of Excel, VBA (Visual Basic for Applications) macros are an invaluable tool for automating tasks and enhancing productivity. However, encountering slow-running VBA macros can be a source of frustration, particularly in enterprise settings where efficiency is paramount. The good news is that there are strategies you can employ to significantly improve the performance of your VBA macros. This article aims to equip you — whether you're an end user, IT admin, or developer — with actionable tips to enhance the speed and responsiveness of your VBA macros.

View more...

Running Ansible From Windows Using Virtualization

Aggregated on: Wed Sep 06 2023 21:01:41 GMT+0000 (Coordinated Universal Time)

Recently, I had to use Ansible to implement infrastructure as code. Initially, I used Windows Subsystem for Linux (WSL) to run the Ansible playbooks. The advantage of WSL is that it gives one a Linux shell on a Windows machine without any further ado. However, I found that WSL has this tendency to go haywire and use system resources such as CPU and RAM to the max. Although it did not lead to performance degradation in other running processes or applications, it did cause my notebook with 40GB of RAM to become very hot and use excessive electricity. Once WSL reaches this state, all new requests for a WSL prompt hang. Since the virtual memory processes used to enable WSL are protected and cannot be killed or restarted, the only recourse is a good old Windows reboot.   I considered installing Linux on an old notebook and running the Ansible playbooks from there. Unfortunately, the target servers are behind a VPN, so the Linux machine would have to receive special software to allow it to join the VPN. In order to sidestep corporate hassle, I went with running Linux virtually on Hyper-V, the native Windows 10 Hypervisor. The steps I followed will be documented next.

View more...

Solving Unique Search Requirements Using TreeMap Data Structure

Aggregated on: Wed Sep 06 2023 20:46:41 GMT+0000 (Coordinated Universal Time)

TreeMap is a Java collection that structures the data in the form of an ordered key and their respective values. It has been available since JDK 1.2. Internally, TreeMap uses a red-black tree to structure the data, which is a self-balancing binary tree. The keys in TreeMap are unique identifiers, and by default, TreeMap arranges the data in a natural ordering of keys.  For the integer keys, it is stored in the ascending order of the keys, and for the String key, the data will be stored in the alphabetic order. We can always override the default ordering of data and can inject custom sorting by using a comparator during the TreeMap creation to sort in any defined manner as per the logic provided in the comparator. We will discuss in detail a few of the custom hybrid sorting approaches along with some code examples in this article.

View more...

Unveiling Vulnerabilities via Generative AI

Aggregated on: Wed Sep 06 2023 20:01:41 GMT+0000 (Coordinated Universal Time)

Code scanning for vulnerability detection for exposure of security-sensitive parameters is a crucial practice in MuleSoft API development.  Code scanning involves the systematic analysis of MuleSoft source code to identify vulnerabilities. These vulnerabilities could range from hardcoded secure parameters like password or accessKey to the exposure of password or accessKey in plain text format in property files. These vulnerabilities might be exploited by malicious actors to compromise the confidentiality, integrity, or availability of the applications.

View more...

taichi.js: Painless WebGPU Programming

Aggregated on: Wed Sep 06 2023 20:01:41 GMT+0000 (Coordinated Universal Time)

As a computer graphics and programming languages geek, I am delighted to have found myself working on several GPU compilers in the past two years. This began in 2021 when I started to contribute to taichi, a Python library that compiles Python functions into GPU kernels in CUDA, Metal, or Vulkan. Later on, I joined Meta and started working on SparkSL, which is the shader language that powers cross-platform GPU programming for AR effects on Instagram and Facebook. Aside from personal pleasure, I have always believed, or at least hoped, that these frameworks are actually quite useful; they make GPU programming more accessible to non-experts, empowering people to create fascinating graphics content without having to master complex GPU concepts. In my latest installment of compilers, I turned my eyes to WebGPU -- the next-generation graphics API for the web. WebGPU promises to bring high-performance graphics via low CPU overhead and explicit GPU control, aligning with the trend started by Vulkan and D3D12 some seven years ago. Just like Vulkan, the performance benefits of WebGPU come at the cost of a steep learning curve. Although I'm confident that this won't stop talented programmers around the world from building amazing content with WebGPU, I wanted to provide people with a way to play with WebGPU without having to confront its complexity. This is how taichi.js came to be.

View more...

Chronicle Services: Low Latency Java Microservices Without Pain

Aggregated on: Wed Sep 06 2023 19:46:41 GMT+0000 (Coordinated Universal Time)

Low Latency? In computing, latency is defined as the length of time to perform some task. This could be the time it takes to respond to an interrupt from hardware or the time it takes for a message sent by one component to be available to its recipient. In many cases, latency is not seen as a primary non-functional concern when designing an application, even when considering performance. Most of the time, after all, computers seem to do their work at speeds that are well beyond human perception, typically using scales of milliseconds, microseconds, or even nanoseconds. The focus is often more on throughput - a measure of how many events can be handled within a given time period. However, basic arithmetic tells us that if a service can handle an event with low latency (for example, microseconds), then it will be able to handle far more events within a given time period, say 1 second, than a service with millisecond event handling latency. This can allow us to avoid, in many cases, the need to implement horizontal scaling (starting new instances) of a service, a strategy that introduces significant complexity into an application and may not even be possible for some workloads.

View more...

Apache Airflow Configuration and Tuning

Aggregated on: Wed Sep 06 2023 19:31:41 GMT+0000 (Coordinated Universal Time)

Apache Airflow is a widely-used open-source tool for automating data pipelines. Airflow is well-received by data engineers for its flexible workflow control, dependency handling, scalability, and strong community support. To leverage Airflow’s capability,  users need to understand the advanced configurations so that we can establish a smoother data pipeline workflow.  In this article, we'll explore tips and advanced configurations we can use to enhance the experience and effectiveness when using Apache Airflow.

View more...

A Brief Guide on How To Become an Efficient Prompt Engineer

Aggregated on: Wed Sep 06 2023 19:31:41 GMT+0000 (Coordinated Universal Time)

In the last few years, technology has advanced rapidly, especially in the field of artificial intelligence. The introduction of several Generative AI tools has already started to disrupt many well-established industries, including writing, designing, customer service, etc. These generative AI tools, for example, ChatGPT, DallE-2, and Beatoven, can generate text, music, and images with just a single command. With Generative AI by their side, developers can easily generate codes for their software projects, generate design documents, and even build the entire software application without the need to write a single piece of code. Sounds interesting?

View more...

API Business Analytics

Aggregated on: Wed Sep 06 2023 18:46:41 GMT+0000 (Coordinated Universal Time)

Business analytics is the practice of using data and statistical analysis to help businesses make better decisions. This can involve analyzing data to identify trends, patterns, and relationships and using that information to help businesses make better decisions about their operations, marketing, and strategy. The value of Business Analytics is clear. Data-driven decisions can help businesses measure their performance, understand their customers, and, most importantly, drive growth. With an increasing number of businesses relying on APIs as their de facto digital supply chain, there is even more data out there for enterprises to measure and analyze. Yet many are missing out by not making the most of their API business analytics or even using them at all.

View more...

One-Click Deploying EMQX MQTT Broker on AWS Using Terraform

Aggregated on: Wed Sep 06 2023 17:46:41 GMT+0000 (Coordinated Universal Time)

MQTT is a lightweight messaging protocol commonly used in IoT (Internet of Things) applications to enable communication between devices. As a popular open-source MQTT broker, EMQX provides high scalability, reliability, and security for MQTT messaging. By using Terraform, a widespread Infrastructure as Code (IaC) tool, you can automate the deployment of EMQX MQTT Broker on AWS, making it easy to set up and manage your MQTT infrastructure.

View more...

'Expected Declaration or Statement at End of Input' in C Solved

Aggregated on: Wed Sep 06 2023 16:16:41 GMT+0000 (Coordinated Universal Time)

Programming in C requires careful attention to detail, as even small syntax errors can cause unexpected problems in your code. One common error message that developers may encounter when writing C code is "Expected declaration or statement at the end of input." This error message can be frustrating to deal with, but fortunately, it is usually straightforward to diagnose and fix. In this article, you will learn how to identify where the problem is, how to deal with it, and how to avoid it. Identify the Problem When the "Expected declaration or statement at the end of input" error occurs, it means that the compiler has reached the end of the file or function without finding a complete statement or declaration. In other words, the compiler is expecting to find some additional code but instead has reached the end of the program without finding it.

View more...

Threat Detection

Aggregated on: Wed Sep 06 2023 15:46:41 GMT+0000 (Coordinated Universal Time)

Today's cyber threat landscape necessitates a nuanced and proactive strategy for circumventing attacks due to the increasingly complex, sophisticated nature of threats. Security teams must not only have a solid understanding of the landscape but also have effective solutions for predicting and preempting security threats — those both known and unknown to their organization.In this Refcard, you will learn about the evolving threat landscape, key challenges of emerging technologies, as well as basic and advanced threat detection techniques to integrate into your overall security strategy.

View more...

How StackOverflow Is Adapting in the Face of Generative AI

Aggregated on: Wed Sep 06 2023 15:46:41 GMT+0000 (Coordinated Universal Time)

StackOverflow, the most commonly used platform by software developers for programming support, has been through a rough ride lately. Despite an impressive 69% of questions answered, StackOverflow’s traffic has been in decline. Similarweb’s data shows that their traffic dropped 14% year over year (StackOverflow says it’s closer to 5%). Nevertheless, the trend is downward and is explained primarily by the emergence of AI coding products like ChatGPT and GitHub Copilot. These products have meaningful code-writing capabilities and are, therefore, able to provide programming support, at least partly as good as StackOverflow does. Ironically, several of the large language models (LLMs) behind these AI products were trained using scraped StackOverflow data. The company has gotten pretty harsh media coverage with these developments. Business Insider, in their article Death by LLM, wrote:

View more...

Building Real-Time Applications to Process Wikimedia Streams Using Kafka and Hazelcast

Aggregated on: Wed Sep 06 2023 15:01:41 GMT+0000 (Coordinated Universal Time)

In this tutorial, developers, solution architects, and data engineers can learn how to build high-performance, scalable, and fault-tolerant applications that react to real-time data using Kafka and Hazelcast. We will be using Wikimedia as a real-time data source. Wikimedia provides various streams and APIs (Application Programming Interfaces) to access real-time data about edits and changes made to their projects. For example, this source provides a continuous stream of updates on recent changes, such as new edits or additions to Wikipedia articles. Developers and solution architects often use such streams to monitor and analyze the activity on Wikimedia projects in real-time or to build applications that rely on this data, like this tutorial. Kafka is great for event streaming architectures, continuous data integration (ETL), and messaging systems of record (database). Hazelcast is a unified real-time stream data platform that enables instant action on data in motion by combining stream processing and a fast data store for low-latency querying, aggregation, and stateful computation against event streams and traditional data sources. It allows you to build resource-efficient, real-time applications quickly. You can deploy it at any scale from small edge devices to a large cluster of cloud instances.

View more...

CassIO: The Best Library for Generative AI Inspired by OpenAI

Aggregated on: Wed Sep 06 2023 12:46:41 GMT+0000 (Coordinated Universal Time)

If you’re a frequent user of ChatGPT, you know the tendency it has to wander off into what is known as hallucinations. A great collection of statistically correct words that have no basis in reality. A few months ago, a prompt about using Apache Cassandra for large language models (LLMs) and LangChain resulted in a curious response. ChatGPT reported that not only was Cassandra a good tool choice when creating LLMs, but OpenAI used Cassandra with an MIT-licensed Python library they called CassIO. Into the rabbit hole we went, and through more prompting, ChatGPT described many details about how CassIO was used. It even included some sample code and a website. Subsequent research found no evidence of CassIO outside of ChatGPT responses, but the seed was sown. If this library didn’t exist, it needed to, and we started work on it shortly after. Best hallucination ever. 

View more...

Building a Product Recommendation Engine With Apache Cassandra and Apache Pulsar

Aggregated on: Tue Sep 05 2023 23:31:40 GMT+0000 (Coordinated Universal Time)

The journey to implementing artificial intelligence and machine learning solutions requires solving a lot of common challenges that routinely crop up in digital systems: updating legacy systems, eliminating batch processes, and using innovative technologies that are grounded in AI/ML to improve the customer experience in ways that seemed like science fiction just a few years ago.  To illustrate this evolution, let’s follow a hypothetical contractor who was hired to help implement AI/ML solutions at a big-box retailer. This is the first in a series of articles that will detail important aspects of the journey to AI/ML.

View more...

Population-Based Training (PBT) Hyperparameter Tuning

Aggregated on: Tue Sep 05 2023 23:16:40 GMT+0000 (Coordinated Universal Time)

In this article, I will be talking about the population-based training hyperparameter method with an example. You can refer to my previous article to learn more about hyperparameter tuning. Hyperparameter tuning is a critical aspect of machine learning model development that involves finding the optimal combination of hyperparameters to achieve the best performance for a given dataset. Traditional grid search and random search methods are often time-consuming and inefficient, especially when dealing with complex models and large datasets. To address these challenges, population-based training (PBT) has emerged as an effective approach to hyperparameter tuning. In this article, we will delve into the concept of PBT and its advantages and provide a detailed example using the XGBoost algorithm.

View more...

Creating Custom Skills for Chatbots With Plugins

Aggregated on: Tue Sep 05 2023 22:46:40 GMT+0000 (Coordinated Universal Time)

The field of conversational AI has rapidly advanced, with Large Language Models such as ChatGPT, Claude, and BARD demonstrating impressive natural language abilities. With chatbots becoming more capable, businesses are eager to use them for customer support, document generation, market research, and more. However, out-of-the-box chatbots have limitations in terms of industry-specific knowledge, integration with business systems, and personalization of responses. The out-of-the-box chatbots can be enhanced by augmenting them with specific capabilities that perform specialized tasks that can work together to solve the problem at hand. These capabilities can be implemented as plugins that can be invoked with the help of LLMs. By adopting a plugin framework, the foundational models can be leveraged to orchestrate and invoke the necessary plugins in the right sequence. 

View more...

A PDF Framework That Solves the Pain Points of Enterprise Development

Aggregated on: Tue Sep 05 2023 22:31:40 GMT+0000 (Coordinated Universal Time)

What Is Nanhu-Print-Java? Nanhu-print-java is a PDF generation framework implemented in the Java language.  Users can prepare the JSON format business data and an XML format configure file, then call the nanhu-print-java framework API to complete the generation of a PDF file.

View more...

A NoSQL Database: MongoDB

Aggregated on: Tue Sep 05 2023 21:31:40 GMT+0000 (Coordinated Universal Time)

With the rise in data all around the world, there has been an observable and increasing interest surrounding the wave of the non-relational database, also known as ‘NoSQL. ‘ Businesses and organizations are seeking new methods to manage the flood of data and are drawn toward the alternate database management tools and systems that are different from the traditional relational database systems. Here comes MongoDB into the picture.  What Is MongoDB?  As a definition, MongoDB is an open-source database that uses a document-oriented data model and a non-structured query language. It is one of the most powerful NoSQL systems and databases around today. 

View more...

Chat to Your Requirements: My Journey Applying Generative AI (LLM) To Software Requirements

Aggregated on: Tue Sep 05 2023 21:16:40 GMT+0000 (Coordinated Universal Time)

In the digital age, large enterprises are plagued by a lack of understanding of their legacy systems and processes. Knowledge becomes isolated in silos, scattered among various teams and subject matter experts. This fragmentation contributes significantly to the growth of technical debt, a silent killer that gradually hinders the organization's agility and productivity. At Curiosity Software, we have spent the past five years creating structured requirements (through visual models) and connecting to hundreds of DevOps tools. We believe this puts us in an incredibly advantageous position when implementing Generative AI. The models and DevOps artifacts can act as the central hub of access to data flowing through an organization’s software development landscape. As part of our mission to combat the prevalent challenges of technical debt and missing knowledge, we embarked on a journey to apply Large Language Models (LLM) to software requirements and business logic. Our goal was to create a knowledge hub for an organization’s software requirements, which can be queried to uncover knowledge and pay off technical debt.

View more...

The Evolution of Bugs

Aggregated on: Tue Sep 05 2023 20:16:40 GMT+0000 (Coordinated Universal Time)

Programming, regardless of the era, has been riddled with bugs that vary in nature but often remain consistent in their basic problems. Whether we're talking about mobile, desktop, server, or different operating systems and languages, bugs have always been a constant challenge. Here's a dive into the nature of these bugs and how we can tackle them effectively. As a side note, if you like the content of this and the other posts in this series, check out my Debugging book that covers this subject. If you have friends who are learning to code, I'd appreciate a reference to my Java Basics book. If you want to get back to Java after a while, check out my Java 8 to 21 book.

View more...

One-Click Deploying EMQX MQTT Broker on Azure Using Terraform

Aggregated on: Tue Sep 05 2023 19:46:40 GMT+0000 (Coordinated Universal Time)

MQTT is a lightweight messaging protocol used in the Internet of Things (IoT) to enable communication between devices. As a popular open-source MQTT broker, EMQX provides high scalability, reliability, and security for MQTT messaging. By using Terraform, a widespread Infrastructure as Code (IaC) tool, you can automate the deployment of EMQX MQTT Broker on Azure, making it easy to set up and manage your MQTT infrastructure.

View more...

Creating a Deep vs. Shallow Copy of an Object in Java

Aggregated on: Tue Sep 05 2023 18:46:40 GMT+0000 (Coordinated Universal Time)

When working with objects in Java, there are times when you need to create a copy of an object. However, not all copies are the same. In fact, there are two main ways to make copies: deep copy and shallow copy. Let’s explore these concepts and see how they work with some easy examples. Deep Copy: What Is It? Imagine you have a collection of shapes, each with its own set of properties. A deep copy of an object means creating a completely new copy of the original object, along with all the nested objects it contains. In other words, it’s like making a photocopy of each shape, including all the details.

View more...

Battle of the Views: ClickHouse Window View vs. Live View

Aggregated on: Tue Sep 05 2023 18:46:40 GMT+0000 (Coordinated Universal Time)

ClickHouse added experimental Window Views starting from 21.12. Window Views aggregate data over a period of time and then automatically post at the end of the period. They add another exciting tool for stream processing and analytics to ClickHouse’s toolbox while expanding its collection of view tables. In general, the concepts behind Window View can also be found in other systems, such as Azure Stream Analytics, Kafka Streams, and Apache Spark, among others. Window Views follow the addition of experimental Live View tables added in 19.14.3.3. In this article, we will look at both of them to find the differences and similarities between the two. Let’s get a better view of these two different views!

View more...