News Aggregator


What Is Canary Deployment in CI/CD?

Aggregated on: 2023-06-29 15:46:01

With the adoption of microservices, cloud, and Kubernetes, the CI/CD processes proved to be very useful in deploying features and changes into production faster. The new normal is the faster time to market with software delivery (or CI/CD) pipelines. What sets a company apart is releasing better, high-quality features that provide excellent consumer expectations or experience. However, the fear of delivering the wrong software change to the production haunts DevOps and SREs teams. That’s why canary deployment is becoming famous among architects and the DevOps team.

View more...

Generating Non-Colliding Random Numbers Using a Binary Tree With PID

Aggregated on: 2023-06-29 15:31:01

Random numbers (whether true or pseudo) have broad applications for various purposes, including security, monetary transactions, Machine Learning, gaming, statistics, cryptography, simulation, literature, music, and art. Various approaches and algorithms exist for generating non-colliding random numbers, including the popular Fischer/Knuth Yates algorithm. Besides the popular Fischer/Knuth Yates algorithm, in this article, I’ll show you how you can generate non-colliding pseudo-random numbers using a binary tree with PID (Process IDentifier) without any APIs.

View more...

How To Improve GraphQL API Security

Aggregated on: 2023-06-29 15:31:01

The open-source GraphQL query language has a ton to offer enterprises seeking a more scalable, flexible, developer-friendly, and modernized approach to API-driven development. That said, because I’m a security professional, I tend to focus on the new opportunities GraphQL also gives attackers. It’s been increasingly tempting for enterprises to dive headlong into GraphQL without fully assessing and addressing its security and operational requirements. However, doing so places intense pressure on security architects, DevOps and DevSecOps teams, and even developers themselves. I’ve recently taken a deep dive into Inigo, a GraphQL security and management toolset. Here I’ll share a how-to guide for teams ready to introduce more secure GraphQL implementations based on what I’ve learned. 

View more...

Own ChatGPT Bot in Telegram

Aggregated on: 2023-06-29 15:01:02

Recently, mirror sites providing access to ChatGPT have started to appear. However, using them is unsafe because such sites can collect and analyze all your correspondence. Especially those sites that provide such access completely free of charge. There is a demand for such sites because some countries block access to ChatGPT, and OpenAI blocks access to some countries. And for some users, 20 dollars for a ChatGPT subscription is expensive.  So today, we will write our own chatbot based on ChatGPT in the Telegram messenger. 

View more...

The Evolution and Coexistence of Web 2.0 and Web 3.0

Aggregated on: 2023-06-29 14:46:01

Web 3.0 has grown in popularity over the last few years and has fast become a tool for the empowerment of users in regard to ownership and sharing of data. The premise is that Web 3.0 will bring back the digital industry to a decentralized model, driving forwards, monetization, ownership, and governance, that was not as prominent through Web 2.0’s centralized model. The basic principles of technological evolution dictate that when a new model is created, it replaces the previous version; that’s precisely what happened between Web 1.0 and Web 2.0. However, Web 3.0 will not follow the same pattern; instead, it has the potential to enhance instead of replace Web 2.0.

View more...

Sticky Sessions With Apache APISIX

Aggregated on: 2023-06-29 14:46:01

Sticky sessions, also known as session affinity, is a mechanism by which a routing component that acts as a facade always routes a request to the same underlying upstream node. In this post, I'll describe the reason behind sticky sessions, available alternatives, and how to implement them via Apache APISIX. Why Sticky Sessions? Sticky sessions became popular when we stored the state on the upstream node, not the database. I'll use the example of a simplified e-commerce shop to explain further.

View more...

Got Data? How SMOTE and GANs Create Synthetic Data

Aggregated on: 2023-06-29 14:46:01

Synthetic data is data that is artificially created. It is often used in machine learning and artificial intelligence (AI) applications, where it can be used to augment existing datasets or to create new datasets altogether. There are two main types of synthetic data:

View more...

Best Practices for Writing Unit Tests: A Comprehensive Guide

Aggregated on: 2023-06-29 14:01:01

Why Unit Tests Matter Unit tests play a critical role in the software development life cycle. They allow developers to verify the correctness of individual code units, such as functions, methods, or classes. Here are some reasons why unit tests are crucial: Bug Detection: Unit tests help identify bugs and issues early in the development process, minimizing the chances of them propagating to other parts of the codebase. Code Refactoring: Unit tests provide a safety net when changing existing code. They ensure that the modified code continues functioning as expected, even after refactoring. Documentation: Unit tests serve as living documentation, showcasing how individual code units are intended to be used. They can help other developers understand the expected behavior and usage of specific code components. Regression Prevention: Unit tests act as a safety net against regressions. By re-running tests after making changes, you can quickly identify if any existing functionality has been inadvertently broken. Writing Effective Unit Tests Test Isolation To write reliable unit tests, it's essential to ensure test isolation. Each test should focus on a specific code unit and not depend on other units or external resources. By isolating tests, you better control the test environment and minimize the potential for false positives or negatives.

View more...

How To Use Terraform to Provision and Configure Distributed YugabyteDB Clusters

Aggregated on: 2023-06-29 13:31:01

Terraform is a popular Infrastructure as Code tool that simplifies the process of creating, managing, and updating infrastructure components. In this blog post, I’ll explore how to use Terraform to effectively provision and configure distributed YugabyteDB Managed clusters. I will guide you through the process of configuring the YugabyteDB Managed Terraform provider, defining variables, initializing the Terraform project, and adjusting configurations as needed. Let's dive in!

View more...

TDD and the Impact on Security

Aggregated on: 2023-06-29 12:31:01

Test-driven development (TDD) is a software development approach that prioritizes writing automated tests while creating the actual code. There follows a cycle of writing a failed test, writing the code to make the test pass, and then refactoring the code. TDD was originally developed to ensure the quality, maintainability and expandability of the software created over the long term. The specific knowledge about the individual source text passages should also be shown in the tests. Thus, a transfer of responsibility between developers is supported. Better than any documentation, tests are always up-to-date regarding the function implemented in the source code. However, TDD also has a positive impact on the security of a program. And that's what we're going to look at now.

View more...

Introduction To Non-Linear Data Structure

Aggregated on: 2023-06-29 12:01:01

Introduction To Non-Linear Data Structure Data structures are the backbone of computer programming. They provide a way of organizing and storing data in a computer’s memory, which allows efficient and fast access to that data. While many data structures are linear, meaning that they store data in a straight line or sequence, there are also non-linear data structures that store data in more complex ways. Data structures are essential tools for organizing and managing data in computer science. They are used to store, retrieve, and manipulate data efficiently. Non-linear data structures are one such category of data structures that allow for complex relationships and dependencies between data elements.

View more...

Managing AI-Powered Java App With API Management

Aggregated on: 2023-06-29 00:46:01

In this article, we will explore how to integrate OpenAI's ChatGPT APIs with a Spring Boot application and manage the APIs using Apache APISIX, an open-source API gateway. This integration will allow us to leverage the power of ChatGPT in our Spring Boot application, while APISIX will provide a robust, scalable, and secure way to manage the APIs. OpenAI ChatGPT APIs OpenAI's ChatGPT API is a powerful tool that we can use to integrate the capabilities of the ChatGPT model into our own applications, or services. The API allows us to send a series of messages and receive an AI model-generated message in response via REST. It offers a bunch of APIs to create text responses in a chatbot, code completion, generate images, or answer questions in a conversational interface. In this tutorial, we will use chat completion API to generate responses to a prompt (basically we can ask anything). Before starting with the tutorial, you can explore the API to have an understanding of how to authenticate to the API using API keys, how API request parameters and response look like.

View more...

A Deployment Is Not a Release: Control Your Launches With Feature Flags

Aggregated on: 2023-06-28 23:31:01

In the world of software development, the excitement of shipping code to users is often tempered by the inherent risks that come with each release. To mitigate these risks, one approach to choose is to decouple the deployment of code from when the feature goes live. This is achieved through a technique known as feature flagging. Feature flagging is a powerful tool that allows developers to safely push out new features to customers in a measured and gradual way. These features can be hidden behind if/then expressions in the code and can be made specific to some users or all of them.  In this blog, you’ll learn about what feature flags are and how to use them, and discover the benefits they offer.

View more...

Apache Kafka Is Not a Race, It Is a Journey!

Aggregated on: 2023-06-28 21:16:01

Data Streaming is not a race, it is a Journey! Event-driven architectures and technologies like Apache Kafka or Apache Flink require a mind shift in architecting, developing, deploying, and monitoring applications. Legacy integration, cloud-native microservices, and data sharing across hybrid and multi-cloud setups are the norm, not an exception. This blog post explores success stories from data streaming journeys across industries, including banking, retail, insurance, manufacturing, healthcare, energy & utilities, and software companies. Data Streaming Is a Journey, Not a Race! Confluent’s maturity model is used across thousands of customers to analyze the status quo, deploy real-time infrastructure and applications, and plan for a strategic event-driven architecture to ensure success and flexibility in the future of the multi-year data streaming journey:

View more...

Develop a Geocaching Multiplayer Game Using Flutter, Spring Boot, Oracle Database Free Spatial, and OpenStreetMap

Aggregated on: 2023-06-28 21:16:01

In this blog, I will show you how to quickly create a full-stack app using an extremely powerful, versatile, popular, and entirely free software stack consisting of Flutter, Spring Boot, Oracle Database with Spatial (SQL, JSON, and blockchain), and OpenStreetMap. All of the source is of course available here. As a use case, I will create a multi-player game based on geocaching. (Fun fact, there are now more than 3.1 million active geocaches in 196 different countries and even space.)

View more...

Infrastructure as Code (IaC) Tools, Part 2: Choosing the Right Tool

Aggregated on: 2023-06-28 21:16:01

This article builds upon the previous blog, providing further insights into the best practices and challenges discussed in Part 1. It offers tangible approaches to assist you in selecting the ideal Infrastructure as Code (IaC) tool for your cloud infrastructure needs. The article will outline practical considerations for evaluating different tool options and carefully weighing the trade-offs involved. By referencing the guidance on tool categories and ecosystem tools provided in Part 1, this blog post aims to support your teams in making well-informed decisions when choosing the most suitable IaC tool to fulfill their unique cloud infrastructure requirements. Classification of Tools IaC tools are categorized based on the purpose of the tools and how they interact with the target systems.  

View more...

How To Debug Mobile App Database Problems and Optimize Data Storage Performance

Aggregated on: 2023-06-28 19:16:01

In the dynamic realm of mobile app development, a flawless user experience is the ultimate goal. However, lurking beneath the surface lies a complex web of data storage and retrieval. When database problems arise, they can disrupt even the most well-crafted applications. That's why knowing how to debug mobile app database problems and optimize data storage performance is essential for developers seeking excellence. Picture your app crashing unexpectedly, data corruption, or sluggish queries. These are signs of database challenges. This guild aims to delve into the art of debugging mobile app databases, equipping you with the necessary tools to unravel complexities and unlock optimal performance.

View more...

Demystifying DevOps: Key Insights Every Developer Needs To Thrive?

Aggregated on: 2023-06-28 18:46:01

The software development industry follows various development practices. But, the most recent and effective methodology for software development is DevOps. The concept behind DevOps is the merging of development and operations teams to collaborate on the development process. The DevOps development methodology enables efficient development, a faster feedback loop, and a secure development process. This article outlines everything that lies behind the concept of DevOps. If you are a developer, you need to know some of the fundamental concepts of DevOps practices.

View more...

O11y Guide: Without Observability, It's Just Code

Aggregated on: 2023-06-28 16:46:01

Welcome to another chapter in the ongoing series I started covering my journey into the world of cloud-native observability. If you missed any of the previous articles, head on back to the introduction for a quick update. After laying out the groundwork for this series in the initial article, I spent time sharing who the observability players are, looked at the ongoing discussion around monitoring pillars versus phases, shared thoughts on architectural level choices being made, and shared the open standards available within the open source landscape. I continued onwards with a few of the architectural challenges you might encounter when older monolithic applications and monitoring tools are still part of an organization's infrastructure landscape. Finally, I walked you through the open-source visualization and dashboard project called Perses by introducing my hands-on workshop.

View more...

End-To-End Testing Using Cypress and Applitools

Aggregated on: 2023-06-28 16:46:01

Today's software applications are getting more complicated; thus, every testing team needs to focus on expanding test coverage. To achieve this goal, it is important to use a combination of testing types, such as unit testing, integration testing, system testing, and end-to-end testing, depending on the software application's complexity and requirements. End to End (E2E) testing is designed to ensure that all components of a software application are working together correctly and that the system as a whole meets the desired functionality, performance, and reliability requirements.

View more...

Introduction To Template-Based Email Design With Spring Boot

Aggregated on: 2023-06-28 16:16:01

Have you ever wondered how to create visually appealing and consistent emails that leave a lasting impression on your recipients? That's where template-based email design comes in. Template-based email design involves using pre-designed templates as a foundation for your email campaigns. These templates provide a framework that ensures consistency in branding, layout, and overall design. 

View more...

Azure Data Factory Interview Questions

Aggregated on: 2023-06-28 16:01:01

As cloud computing continues to gain popularity, more and more organizations are adopting cloud-based data solutions to manage their ever-growing data needs. One of the most popular data integration services in the cloud is Azure Data Factory, a fully managed, cloud-based data integration service that allows you to create, schedule, and orchestrate ETL and ELT workflows. With the increasing demand for Azure Data Factory expertise, it's no surprise that experienced professionals in the field are in high demand. If you're looking to land a job as an Azure Data Factory expert or simply looking to improve your knowledge in the area, it's important to be well-prepared for the interview process.

View more...

Build RAML-Based API Specification Using MuleSoft Platform

Aggregated on: 2023-06-28 15:46:01

In earlier blogs, we saw many languages like Python, C++, Java, and so on that developers use to develop applications that we use to retrieve and insert data. In this blog, we shall learn about RAML which is a language used to create API specification. Introduction to RAML RAML stands for RESTful API Modelling Language. It is a YAML /JSON-based modeling language. The language is simple and structured, which is readable by both humans and computers. We use HTTP methods to call the resources while creating API specifications. 

View more...

Seven Basic Principles of Good Software Engineering

Aggregated on: 2023-06-28 15:16:01

DRY (Don't Repeat Yourself)  The DRY (Don't Repeat Yourself) principle is a fundamental concept in software engineering that promotes code reuse. It states that if you have written a piece of code, then it should be reused throughout the codebase rather than repeated somewhere else. It advocates for avoiding duplication of code or logic and encourages developers to strive for a single source of truth. By adhering to DRY, you'll get the following benefits: Improved Code Quality: Duplicated code is prone to inconsistencies. By adhering to the DRY principle, developers ensure that code is written once and reused whenever needed, which greatly improves the quality of the system. Time and Effort Savings: Duplicated code requires redundant efforts. When changes or updates need to be made, developers have to modify the code in multiple places, which consumes time and also increases the risk of introducing errors. The DRY principle helps save valuable time and effort by centralizing code logic. Read more about the DRY principle here. 

View more...

Hot-Cold Data Separation: What, Why, and How?

Aggregated on: 2023-06-28 15:01:01

Apparently, hot-cold data separation is hot now. But first of all: What Is Hot/Cold Data? In simple terms, hot data is the frequently accessed data, while cold data is the one you seldom visit but still need. Normally in data analytics, data is "hot" when it is new and gets "colder" and "colder" as time goes by. 

View more...

Do We Need Event Sourcing?

Aggregated on: 2023-06-28 15:01:01

Before we start, I would definitely recommend getting familiar with the definition and benefits of Event Sourcing. Sara did an amazing job in explaining what Event Sourcing is in more detail and comparisons. Let's briefly touch upon some Event Sourcing aspects that are going to be important for this article. In order to validate a business rule and/or make any decision in our software, we need to create a model representation of our domain. For the purposes of this article, I'm going to call this model the Decision Model. There are different ways of storing this model durably. 

View more...

You Are What You Build: Making Your Code More Human

Aggregated on: 2023-06-28 14:46:01

The world is what we make it. Tech — and AI — follow the same principles. On this week’s episode of Dev Interrupted, we sit down with Christina Enchevta, a Director of Engineering at GitHub, to unravel the link between the values we hold and the things we build. We delve into how AI applications mirror our values, intentionally or not, and how this can lead to surprising outcomes, no matter how benevolent our intentions are.

View more...

How To Upgrade to Jakarta EE 10 and GlassFish 7

Aggregated on: 2023-06-28 14:16:01

Upgrading to Jakarta EE 10 from an older version of Jakarta EE or Java EE can be a bit tricky and may require some extra attention to detail. One of the main things you may encounter is making sure your existing code and libraries are compatible. Some libraries may still be using the javax package, which can cause conflicts when trying to run your applications on a Jakarta EE server like Eclipse GlassFish 7. You might also run into problems with some deprecated APIs that were removed in Jakarta EE 10.  But don’t worry; there are automation tools to help you with the upgrade and examples of how to use them, which I created in the OmniFish GitHub repository.

View more...

Software Architecture Metrics Interview With Neal Ford

Aggregated on: 2023-06-28 14:01:01

Neal Ford is Director, Software Architect, and Meme Wrangler at Thoughtworks, a software company and community of passionate, purpose-led individuals who think disruptively to deliver technology to address the most demanding challenges, all while seeking to revolutionize the IT industry and create positive social change. Neal is an internationally recognized expert on software development and delivery, especially at the intersection of Agile engineering techniques and software architecture. He has authored magazine articles, nine books (and counting), dozens of video presentations, and spoken at hundreds of developers’ conferences worldwide. Neal’s topics include software architecture, continuous delivery, functional programming, and cutting-edge software innovations, and he includes a business-focused book and video on improving technical presentations.  Apiumhub had the opportunity to do an interview with Neal Ford, a Global Software Architecture Summit speaker, to get to know what metrics he normally uses and learn more about his chapter in the Software Architecture Metrics book that was recently published by O’Reilly.

View more...

The Most Incredible Article About AWS Networking Essentials

Aggregated on: 2023-06-28 14:01:01

When you start learning AWS, you should have a clear understanding of networking essentials. After you get an AWS account, AWS creates a default network space for you. Either you can use that or if you have a different use case, you have to configure different networking components under AWS. This article will guide developers to start their journey on AWS by introducing networking fundamentals with easy-to-understand examples. After you go through the article, I am sure that you will be in a good spot to tackle different networking challenges faced in your career.

View more...

Scalability Testing Tutorial: A Comprehensive Guide With Examples and Best Practices

Aggregated on: 2023-06-28 13:46:01

Scalability testing is an approach to non-functional software testing that checks how well applications and infrastructure perform under increased or decreased workload conditions. The organization can optimize infrastructure costs and create the best user experience by determining server-side robustness and client-side degradation. It makes it easier to fix defects and ensure software applications' flawless functioning. As part of the testing process, testers usually draft test scenarios that force the system to meet new requirements.

View more...

Database Sharding and Its Challenges

Aggregated on: 2023-06-28 12:46:01

Database sharding is a powerful technique employed to manage large databases more effectively. It involves partitioning a large database into smaller, more manageable parts, known as shards. The term "shard" signifies a small fragment of a whole, aptly describing this method of breaking down a large database into smaller, more manageable pieces. Sharding is often applied to databases for several reasons, including improving query performance, facilitating data organization, and enhancing scalability. By distributing data across multiple servers, sharding can significantly reduce the response time for data queries, provide a more organized data structure, and allow for easier scaling as the amount of data grows. The above diagram presents a visual representation of a sharded database. The primary database is segmented into smaller shards, each of which is stored on a distinct server.

View more...

Introduction to Semaphores

Aggregated on: 2023-06-27 18:01:00

Semaphores are an important tool for managing concurrency in computer programs. They are used to manage access to shared resources in a multi-threaded environment and help prevent synchronization issues and coordinate access to shared resources. The concept of semaphores was first introduced by Edsger Dijkstra in 1965, and they have since become a fundamental tool for developing efficient and effective software. This article will explore semaphores, how they work, and some best practices for using them in your programs.

View more...

Building Observable Applications With OpenTelemetry

Aggregated on: 2023-06-27 17:01:00

In the ever-evolving landscape of software development, complexity is a constant companion. As applications grow and evolve, they become increasingly intricate, making it more challenging to monitor, understand, and optimize their behavior. Developers are increasingly responsible for adding instrumentation into their code so the inner workings of their applications can be observed externally. That data then provides valuable insights to stakeholders across the business.  This is where the concept of observability comes into play. Observability, in the context of software, refers to the ability to understand the internal state of a system by examining its outputs. It's like being able to understand what's happening inside a machine by just looking at the dials and gauges on its control panel. 

View more...

Angular Best Practices For Developing Efficient and Reliable Web Applications

Aggregated on: 2023-06-27 17:01:00

The Google-created Angular framework that uses JavaScript is quite popular in developing web applications. The AngularJS framework has been completely rewritten, and Angular is intended specifically for creating dynamic programming structures. Angular allows developers to create clean, maintainable, and high-performing applications with its robust features and comprehensive ecosystem. Modules, components, metadata, templates, data binding, services, directives, and dependency injection are the fundamental building elements of Angular. It's essential to keep up with the latest Angular development best practices as the technological landscape changes.  In the following article, we will look at the top Angular best practices for 2023 to help you create squeaky-clean and fast web applications.

View more...

What Is Model Ops?

Aggregated on: 2023-06-27 16:16:00

The rapid implementation of various new applications, cloud services, and other technologies has complicated IT environments too much for humans to handle, negatively affecting profits. It is difficult for companies to pursue digital transformation in a highly competitive market despite the significant investments they've put into artificial intelligence. They cannot streamline all organizational models, making it difficult to gain valuable insights from the models and make informed business decisions. Scaling all available models from the dev region to the CI/CD pipeline to the deployment region can be a challenging process for DevOps teams within traditional siloed environments. The challenge gets even more difficult when you have to monitor and manage all these models in production for performance, drift, bias, and other risks. All this while adhering to international and local regulations until the model decays or is retired.

View more...

The Impact of Microservices: The Good, the Bad, and the Ugly

Aggregated on: 2023-06-27 16:16:00

Reliance on technology has come full circle since the start of the COVID-19 pandemic. The increased utilization of digital applications for needs such as banking, shopping, and especially healthcare services during the past three years has ushered in a need for consumers to trust technology to assist them in all aspects of daily living. Not coincidentally, the demands placed on app engineers, developers, and designers today require them to offer a level of versatility within their software that was not needed just a few years ago. At a time when the incidence of cybersecurity attacks is at an all-time high, it is now necessary for apps to be built and scalable in a more flexible manner so that they can be addressed appropriately in the event of an incident that requires intervention. Microservices architecture is a more suitable way to improve the reliability and scalability of today’s software systems. In a microservices cloud-based architecture, a large application is broken down into smaller, independent services that communicate with each other through application programming interfaces (APIs). This allows for more focused development and deployment and easier maintenance and scaling. A microservices approach is in stark contrast to monolithic software applications, which are built as single, unified units that are more complicated and time-consuming to build and deploy.

View more...

How to Convert Excel and CSV Documents to HTML in Java

Aggregated on: 2023-06-27 16:01:01

When it comes to organizing, structuring, and formatting data for everyday report presentations and report-sharing scenarios, Excel is decisively the world’s go-to spreadsheet solution. And that’s for good reason – Excel’s extensive and endlessly updated features are perfect for most of our manual data manipulation needs, allowing us to quickly generate stylish rows and columns with slick graphs and other forms of visuals. The open-XML .XLSX format also transitions nicely into plain text formats like CSV, making it equally straightforward to export and upload Excel’s tabular data to a broader range of compatible applications.  Despite its myriad features and format conversion fluidity; however, document compatibility concerns are always lurking when we look to share Excel report content with the broadest possible audiences.   Of course, we don’t have to look very far to find a global, standardized solution to this long-standing challenge. Where fully formatted and finished data reports are concerned, PDF represents the ideal export format, owing largely to its universal compatibility and secure design. Excel and CSV documents converted to PDF format are viewable on any browser, and these PDFs can be formed as vector or raster files depending on the document creator’s personal preference.

View more...

PyCharm Fix for Certificate Verify Failed: Unable To Get Local Issuer Certificate

Aggregated on: 2023-06-27 16:01:01

When your organization installs a security monitoring app like Zscaler on your workstation, it could hinder your productivity by blocking many existing third-party apps you have been using for your development or testing deliverables.  In many cases, once installed, you will have no problem accessing public URLs via browser but will still face challenges when trying to access via terminal or IDE. Although when organizations install security apps, they add company-generated certificates in the system cert, some applications like Java, Python, IDE, NPM, etc. do not use default system cert and have their own custom trust store, which fails to validate Zscaler-generated server certificates, and the TLS connection fails.

View more...

Frequency for Performing Database Integrity Checks in SQL Server

Aggregated on: 2023-06-27 16:01:01

In this article, we will learn some recommendations for checking the database's integrity in an SQL Server. We will see how often we should perform an integrity check and how to automate this process. What Is Database Integrity? SQL Server can have problems with the tables, indexes, catalogs, etc. When we check integrity, we verify that there are no consistency errors in the database.

View more...

Managing Schema Validation in a Data Lake Using Data Version Control

Aggregated on: 2023-06-27 15:46:00

It’s not uncommon for a data team to be dependent on many other “third parties” that send in the data. They often change the schema of the data without communicating anything or letting the data team know too late. Whenever that happens, data pipelines break, and the data team needs to fix the data lake. This is a manual process filled with heavy-lifting tasks. Typically, teams engage in a blame game, trying to prove that the schema has changed.

View more...

Unraveling the Power of Python: A Beginner's Guide to Using Python for Website Analysis

Aggregated on: 2023-06-27 15:16:00

Welcome to this beginner's guide to using Python for website analysis! As a programming language, Python has been around for over 30 years, but its popularity has skyrocketed in recent years due to its ease of use and versatility. Python is now used by companies such as Google, Instagram, and Spotify and is widely considered one of the most popular programming languages in the world.  In this blog post, we'll be diving into the power of Python and how it can be used for website analysis. Whether you're a complete beginner or someone looking to expand your programming knowledge, this guide will provide you with all the tools you need to start using Python for website analysis. So, let's get started!

View more...

It's Elementary Privacy, Watson!

Aggregated on: 2023-06-27 15:01:00

In today's (mostly) digital world, maintaining data privacy and data security should be an ongoing discussion in all businesses, especially those developing applications, both internal business shops and software shops selling solutions. That said, compliance and privacy issues are not restricted to just digitally-stored data and may, in fact, be a larger issue for older, analog records that aren't as front-and-center as I realized this past weekend.

View more...

Continuous Architecture Principles and Goals

Aggregated on: 2023-06-27 15:01:00

Creating and maintaining software architecture that remains sustainable over time is a challenge for software architects and developers. Software Architects used to meet every requirement, provide every feature, and plan every system component at once with big software architecture upfront, which involves completing and perfecting architectural designs before implementations are started. Alternatively, teams might produce emergent architectures, where development teams start delivering functionality and let architectural designs emerge with little upfront planning. Unfortunately, none of those methods is consistently successful in delivering sustainable architecture.  Continuous Architecture Principles As for “Continuous Architecture,” this is about using the appropriate tools to make the right decisions and support Continuous Delivery, Continuous Integration, and Continuous Testing. “Continuous Architecture” is an approach based on a toolbox — not a formal process. 

View more...

Automation, Ansible, AI

Aggregated on: 2023-06-27 15:01:00

Today, we are living in the world of artificial intelligence (AI). With Generative AI, writing code has become simpler. Coding is not about linting, formatting, and debugging anymore.  In this article, you will learn about how Ansible is bringing AI tools to your Integrated Development Environment to make your automation coding experience simpler, smoother, and more efficient. 

View more...

Six Ways That Programming Helps To Develop Abstract Thinking

Aggregated on: 2023-06-27 14:16:00

Have you ever tried to imagine a concept or idea without a physical or concrete example? If you have, then you've engaged in abstract thinking. Abstract thinking is the ability to understand complex concepts that are real but not physically tangible. It is a key cognitive function that allows us to comprehend things like values, emotions, or the very idea of 'infinity.' In our daily lives, abstract thinking plays a significant role. It enables us to plan for the future, understand other people's perspectives, solve problems, and even appreciate art or literature. It's an essential skill for many professional fields, including science, mathematics, philosophy, and, yes, you guessed it — programming.

View more...

Building an Event-Driven Architecture Using Kafka

Aggregated on: 2023-06-27 14:16:00

Event-driven architecture (EDA) is a software design pattern that focuses on the generation, detection, and consumption of events to enable efficient and scalable systems. In EDA, events are the central means of communication between components, allowing them to interact and respond to changes in real time. This architecture promotes loose coupling, extensibility, and responsiveness, making it well-suited for modern, distributed, and highly scalable applications. EDA has emerged as a powerful solution to enable agility and seamless integration in modern systems. In an event-driven architecture, events represent significant occurrences or changes within a system. Various sources, such as user actions, system processes, or external services, can generate these events. Components, known as event producers, publish events to a central event bus or broker, which acts as a mediator for event distribution. Other components, called event consumers, subscribe to specific events of interest and react accordingly.

View more...

Using Query Parameters and Headers in REST API Design

Aggregated on: 2023-06-27 14:01:00

In today's fast-paced digital landscape, REST APIs are essential for connecting and exchanging data between different systems and applications. But with so many different components and considerations, it can be a challenge to design an API that is both efficient and user-friendly. One key aspect of REST API design is the use of query parameters and headers. Query parameters allow you to pass information to the API in a simple and flexible manner, while headers provide important information about the request and the response. When used together, query parameters and headers can greatly enhance the performance, security, and user experience of your REST API.

View more...

Transferring Data From OneStream Cube to SQL Table

Aggregated on: 2023-06-27 14:01:00

In today's data-driven business environment, efficiently transferring data from one system to another is crucial for informed decision-making. This article will guide you through the process of loading data from a OneStream cube to a SQL table, enabling seamless integration between these two powerful platforms. By following these steps, you can ensure accurate and timely data transfer for enhanced reporting and analysis. Step 1: Understand the OneStream Cube Structure. Before beginning the data loading process, it is important to have a clear understanding of the structure and organization of the OneStream cube. Familiarize yourself with the dimensions, hierarchies, and measures within the cube, as well as the specific data you want to extract and load into the SQL table.

View more...

Exploring Unit Testing in Golang

Aggregated on: 2023-06-27 14:01:00

Unit testing is a fundamental practice in software development that focuses on testing individual units of code, typically at the function or method level. A unit is the smallest testable part of an application, such as a function, method, or class. The objective of unit testing is to verify that each unit of code works as expected in isolation. Here Are Some Key Aspects of Unit Testing Isolation Unit tests are designed to be independent and isolated from other units of code. This means that each unit(a.k.a functions, methods) is tested in isolation, without dependencies on other units or external resources. This is usually achieved by using test doubles, such as mock objects or stubs, to simulate the behavior of dependencies.

View more...