News Aggregator


A New Era of Data Analytics: Exploring the Innovative World of Data Lakehouse Architectures

Aggregated on: Mon Apr 10 2023 16:45:14 GMT+0000 (Coordinated Universal Time)

In the previous article, we discussed the emergence of Date Lakehouses as the next-generation data management solution designed to address the limitations of traditional data warehouses and Data Lakes. Data Lakehouses combines the strengths of both approaches, providing a unified platform for storing, processing and analyzing diverse data types. This innovative approach offers flexibility, scalability, and advanced analytics capabilities that are essential for businesses to remain competitive in today's data-driven landscape. In this article, we will delve deeper into the architecture and components of Data Lakehouses, exploring the interconnected technologies that power this groundbreaking solution. The Pillars of Data Lakehouse Architecture A Data Lakehouse is a comprehensive data management solution that combines the best aspects of data warehouses and Data Lakes, offering a unified platform for storing, processing, and analyzing diverse data types. The Data Lakehouse architecture is built upon a system of interconnected components that work together seamlessly to provide a robust and flexible data management solution. In this section, we discuss the fundamental components of the Data Lakehouse architecture and how they come together to create an effective and convenient solution for the end user.

View more...

What Is a Streaming Database?

Aggregated on: Mon Apr 10 2023 15:15:14 GMT+0000 (Coordinated Universal Time)

A streaming database is a type of database that is designed specifically to process large amounts of real-time streaming data. Unlike traditional databases, which store data in batches before processing, a streaming database processes data as soon as it is generated, allowing for real-time insights and analysis. Unlike traditional stream processing engines that do not persist data, a streaming database can store data and respond to user data access requests. Streaming databases are ideal for latency-critical applications such as real-time analytics, fraud detection, network monitoring, and the Internet of Things (IoT) and can simplify the technology stack. Brief History The concept of a streaming database was first introduced in academia in 2002. A group of researchers from Brown, Brandeis, and MIT pointed out the demand for managing data streams inside databases and built the first streaming database, Aurora. A few years later, the technology was adopted by large enterprises. The top three database vendors, Oracle, IBM, and Microsoft, consecutively launched their stream processing solutions known as Oracle CQL, IBM System S, and Microsoft SQLServer StreamInsight. Instead of developing a streaming database from scratch, these vendors have directly integrated stream processing functionality into their existing databases.

View more...

Container Security: Top 5 Best Practices for DevOps Engineers

Aggregated on: Mon Apr 10 2023 14:45:14 GMT+0000 (Coordinated Universal Time)

Containerization has resulted in many businesses and organizations developing and deploying applications differently. A recent report by Gartner indicated that by 2022, more than 75% of global organizations would be running containerized applications in production, up from less than 30% in 2020. However, while containers come with many benefits, they certainly remain a source of cyberattack exposure if not appropriately secured. Previously, cybersecurity meant safeguarding a single "perimeter." By introducing new layers of complexity, containers have rendered this concept outdated. Containerized environments have many more abstraction levels, which necessitates using specific tools to interpret, monitor, and protect these new applications.

View more...

Okta as Code: Identity Management in the Cloud Native Era

Aggregated on: Mon Apr 10 2023 14:15:13 GMT+0000 (Coordinated Universal Time)

We have previously written posts on how to manage uncodified legacy apps on different platforms like AWS. In this post, we'd like to look at the very popular Okta platform, which provides some of the largest companies in the world with cloud-based identity and access management (IAM) for secure authentication and authorization for applications, devices, and users.  Okta is likely the most popular choice for organizations that need to manage access to their digital resources across multiple applications and environments, as it provides a range of features that make it popular for authentication and authorization, such as:

View more...

How To REALLY Do Code Reviews [Video]

Aggregated on: Mon Apr 10 2023 12:00:13 GMT+0000 (Coordinated Universal Time)

Welcome to the follow-up to How To Do Code Reviews, with many moooooore details on the human factors involved in a code review, as well as several options on how to approach reviewing pull requests. Just a quick recap, what is the scenario? A user sent in a GitHub pull request for our Google Photos clone, which means we have to do a code review. How should you do such a review? What is or isn't important? Let's find out in this episode of Marco Codes.

View more...

Single Cloud vs. Multi-Cloud: 7 Key Differences

Aggregated on: Sun Apr 09 2023 01:00:13 GMT+0000 (Coordinated Universal Time)

The advent of the Internet has brought revolutionary changes in the IT world. One of the notable changes is that virtualization has advanced with the Internet to become an integral part of the IT infrastructure of modern organizations. As a result, companies are now relying on the virtual online entity housing data and services, commonly referred to as the cloud. The switch to the cloud was brought on by the exponential data growth in the last couple of decades. In fact, studies predict that by 2025, the cloud will be storing up to 100 zettabytes of data. What Is the Cloud? The cloud refers to a global network of remote servers, each with a unique function that are connected and work together as a unitary ecosystem. In simple terms, the cloud describes what we commonly know as the “internet.” This remote network of servers is designed to either store and manage data, run applications, or deliver content or a service such as streaming videos or accessing social media networks for anyone with an internet connection. 

View more...

What Will Come After Agile?

Aggregated on: Sun Apr 09 2023 01:00:13 GMT+0000 (Coordinated Universal Time)

I think that probably most development teams describe themselves as being “agile” and probably most development teams have standups, and meetings called retrospectives. There is also a lot of discussion about “agile,” much written about “agile,” and there are many presentations about “agile.” A question that is often asked is, what comes after “agile?” Many testers work in “agile” teams, so this question matters to us. Before we can consider what comes after agile, we need to consider what agile is — an iterative, incremental development methodology. Agile teams develop software in iterations and each iteration makes an increment toward the team’s goal. An agile team can decide, after an iteration or two, that the goal they are working towards should be changed and start to work on a new goal. Working iteratively makes the team agile as it can change direction quickly and easily. There are several agile methodologies and one of the most widely used methodologies is scrum.

View more...

Shaping the Future of IoT: 7 MQTT Technology Trends in 2023

Aggregated on: Sun Apr 09 2023 00:15:13 GMT+0000 (Coordinated Universal Time)

Message Queuing Telemetry Transport (MQTT) is the standard messaging protocol for the Internet of Things (IoT). MQTT follows an extremely lightweight publish-subscribe messaging model, connecting IoT devices in a scalable, reliable, and efficient manner. It's been over 20 years since MQTT was invented in 1999 by IBM and 10 years since the popular open-source MQTT broker, EMQX, launched on GitHub in 2012.

View more...

Steps for Developers to Take Toward Green IT

Aggregated on: Fri Apr 07 2023 18:45:13 GMT+0000 (Coordinated Universal Time)

Even something as abstract as software has real-world consequences. Data centers consume an estimated 1% of global energy and these power-hungry servers represent a mere fraction of IT’s total energy use. It’s time for IT developers to get serious about reducing their carbon footprint. Going green can take many forms, including writing better code, making physical hardware changes, and changing workplace culture. IT professionals can use the following techniques to minimize environmental impact.

View more...

Kotlin Multiplatform for Mobile and OTT Cross-Platforms

Aggregated on: Fri Apr 07 2023 18:15:13 GMT+0000 (Coordinated Universal Time)

A huge trend in the software industry is the creation of cross-platform apps. More and more businesses are aiming to develop applications that don't need to be written from scratch and can operate on various platforms. When it comes to cross-platform app development for mobile and OTT, there are a number of options, but Kotlin Multiplatform is rapidly gaining ground. Developers can create code that is cross-platform by using the toolkit known as Kotlin Multiplatform. It works with all the major platforms, including Windows, Linux, Android, and iOS.

View more...

Boldness in Refactoring

Aggregated on: Fri Apr 07 2023 17:45:13 GMT+0000 (Coordinated Universal Time)

The old engineering adage “Don’t touch it, it works” is terrible. Don’t listen to it. It might be OK at a small scale, but as time goes by, the bit rot spreads through your code and servers polluting everything. Large swaths of your system become “no-man's-land.” As you’re developing a new system, you must always “touch it” and make sure we hire engineers who aren’t afraid to do so. Yes, I get it. I said that sentence frequently in the past. I understand the motivation. Management doesn’t care about the bit rot in our future. They care about the here and now. Why are you wasting time on this feature?

View more...

Data Mesh Architecture: A Paradigm Shift in Data Engineering

Aggregated on: Fri Apr 07 2023 15:15:13 GMT+0000 (Coordinated Universal Time)

Data engineering is a rapidly evolving field that is constantly challenged by the increasing volume, velocity, and variety of data being generated and processed by organizations. Traditional data engineering approaches are often centralized and monolithic, which can lead to challenges in scalability, agility, and flexibility. In recent years, a new architectural paradigm called Data Mesh has emerged as a novel way to address these challenges and enable more efficient and effective data engineering. Data Mesh is a distributed and domain-oriented data architecture that advocates for a paradigm shift in how data engineering is approached within organizations. It was first introduced by Zhamak Dehghani, a thought leader in the data engineering community, and has gained significant attention as a promising approach to modern data engineering.

View more...

What Is the Role of DevOps in Mobile App Development?

Aggregated on: Fri Apr 07 2023 14:30:13 GMT+0000 (Coordinated Universal Time)

Do you want to take your mobile app development process to the next level? If you implement DevOps in developing apps, you can achieve impressive results.  

View more...

Embracing Asynchrony in Java, Python, JavaScript, and Go

Aggregated on: Fri Apr 07 2023 13:45:13 GMT+0000 (Coordinated Universal Time)

As a software developer with years of experience working primarily with Java, I found myself intrigued when I recently switched to Python for a new project. The transition prompted me to explore the world of asynchronous programming in various languages, including Java, Python, JavaScript, and Golang. This article is a result of my exploration and personal experience with these languages, aiming to provide insight into asynchronous programming techniques and examples. Asynchronous Programming in Java When I first started programming in Java, I quickly became familiar with the concept of threads. Over time, I found that the Executor framework and CompletableFuture class offered more powerful and flexible ways to handle asynchronous operations.

View more...

How to Perform Component Testing Using Cypress

Aggregated on: Fri Apr 07 2023 13:15:13 GMT+0000 (Coordinated Universal Time)

In this article, I am going to explain the following: How you can Set up the React component. How you can test React component with the help of Cypress. What Is Component Testing? Component testing, also known as unit testing or module testing, is a software testing technique that involves testing individual units or components of a software application. These units are typically isolated from the rest of the application and tested in isolation to ensure they function as intended.

View more...

Smart Contract Audits with ConsenSys Diligence Fuzzing - Fuzzing as a Service

Aggregated on: Fri Apr 07 2023 12:45:13 GMT+0000 (Coordinated Universal Time)

If you’re working with smart contracts—or even just exploring them—you probably already know that smart contract security is important. Smart contracts are immutable once deployed, and often involve significant amounts of money. Writing safe and reliable code before deployment should be top of mind. And as the adoption of blockchain accelerates, ensuring the security of smart contracts becomes even more important.  One of the best additions to your smart contract audit is fuzzing, a dynamic testing technique that exposes vulnerabilities by generating and injecting random inputs into your smart contracts during testing.

View more...

My First Firefox Extension

Aggregated on: Thu Apr 06 2023 21:45:12 GMT+0000 (Coordinated Universal Time)

A couple of weeks ago, I spent the weekend creating another CFP submission helper in the form of a Firefox extension. It was not a walk in the park. To help others who may be interested in doing the same (and my future self), here's my journey. Context I've written multiple posts about my conference submission workflow. To sum up:

View more...

Step-By-Step Guide To Building a Serverless Text-to-Speech Solution Using Golang on AWS

Aggregated on: Thu Apr 06 2023 20:00:12 GMT+0000 (Coordinated Universal Time)

The field of machine learning has advanced considerably in recent years, enabling us to tackle complex problems with greater ease and accuracy. However, the process of building and training machine learning models can be a daunting task, requiring significant investments of time, resources, and expertise. This can pose a challenge for many individuals and organizations looking to leverage machine learning to drive innovation and growth. That's where pre-trained AI Services come in and allow users to leverage the power of machine learning without having extensive machine learning expertise and needing to build models from scratch - thereby making it more accessible for a wider audience. AWS machine learning services provide ready-made intelligence for your applications and workflows and easily integrate with your applications. And, if you add Serverless to the mix, well, that's just icing on the cake, because now you can build scalable and cost-effective solutions without having to worry about the backend infrastructure.

View more...

Visual Regression Testing Tutorial: Comprehensive Guide With Best Practices

Aggregated on: Thu Apr 06 2023 19:00:12 GMT+0000 (Coordinated Universal Time)

Visual regression testing verifies that an application or website looks and behaves as expected and that there have been no unintended changes to the visual appearance or functionality. This process involves comparing a baseline application or website version with a current version and checking for visual differences. During visual regression testing, images of the application or website are captured and compared using specialized tools highlighting differences. There may be differences between the two versions, which indicate that the application's appearance or layout has changed or that a bug or issue needs to be fixed.

View more...

Attaining Document Security in FileNet Content Management System

Aggregated on: Thu Apr 06 2023 18:45:12 GMT+0000 (Coordinated Universal Time)

FileNet is a document management system developed by IBM that allows organizations to manage and store their digital content. Document Security is an essential aspect of any document management system, including FileNet.  Important Considerations for FileNet Security 1. Authentication: FileNet provides various authentication mechanisms, such as LDAP, Kerberos, and Active Directory, to ensure that allows only authorized users can access the system.

View more...

I'm Done With Unit and Integration Tests

Aggregated on: Thu Apr 06 2023 18:45:12 GMT+0000 (Coordinated Universal Time)

I've been writing developer tests for a very long time. Lately, I've been reflecting on the types of tests I write and why some are easier than others. When teaching and coaching others how to write tests, I almost always explain what I mean by "Unit Tests" and "Integration Tests": Unit Tests don't touch hardware, don't do I/O, etc. (This should sound familiar to some of you, as it's the same idea as the set of unit testing rules by Michael Feathers written in 2005), and test against a single object or group of objects (I use the terms Sociable and Solitary to differentiate between the different kinds of "unit" tests, as defined by Jay Fields). I'd then demonstrate what I meant like this: Java   @Test public void fullDeckHas52Cards() {     Deck deck = new Deck();     assertThat(deck.size())             .isEqualTo(52); } @Test public void drawCardFromDeckReducesDeckSizeByOne() {     Deck deck = new Deck();     deck.draw();     assertThat(deck.size())             .isEqualTo(51); }

View more...

How to Use Epics in Jira

Aggregated on: Thu Apr 06 2023 17:45:12 GMT+0000 (Coordinated Universal Time)

Effective project management is essential in software development. Jira’s Epics provide a powerful solution for managing complex software projects, and understanding how to use them can make all the difference.  In this article, we’ll dive deep into the technical aspects of utilizing Epics in the Jira workflow, exploring the advanced features and Jira best practices that can streamline your software development process. So, let’s delve into the intricacies of agile project management in software development and take your workflow to the next level.

View more...

AWS: Integrating OpenAPI With the Amazon API Gateway and Lambda Functions

Aggregated on: Thu Apr 06 2023 17:15:12 GMT+0000 (Coordinated Universal Time)

API Gateway is the AWS service that allows interfacing an application's back-end with its front-end. The figure below shows an example of such an application, consisting of a web/mobile-based front-end and a back-end residing in a REST API, implemented as a set of serverless Lambda functions, as well as a number of legacy services. The figure above illustrates the so-called design pattern Legacy API Proxy, as described by Peter Sbarski, Yan Cui, and Ajay Nair in their excellent book Serverless Architectures on AWS (Manning, 2022). This pattern refers to a use case where Amazon API Gateway and Lambda are employed together, in order to create a new API layer over legacy APIs and services, such that to adapt and reuse them. In this design, the API Gateway exposes a REST interface invoking Lambda functions which, in turn, modify the requests and the responses or transform data to legacy-specific formats. This way, legacy services may be consumed by modern clients that don't support older protocols.

View more...

DevOps Is the Philosophy, Platform Is the Practice

Aggregated on: Thu Apr 06 2023 16:30:12 GMT+0000 (Coordinated Universal Time)

"DevOps is dead." Well, not exactly. But the DevOps methodology of "you build it, you run it" has been failing development teams for years.

View more...

The Data Streaming Landscape

Aggregated on: Thu Apr 06 2023 16:30:12 GMT+0000 (Coordinated Universal Time)

Data streaming is a new software category to process data in motion. Apache Kafka is the de facto standard used by over 100,000 organizations. Plenty of vendors offer Kafka platforms and cloud services. Many complementary stream processing engines like Apache Flink and SaaS offerings have emerged. And competitive technologies like Pulsar and Redpanda try to get market share. This blog post explores the data streaming landscape of 2023 to summarize existing solutions and market trends. Data Streaming Is a New Software Category Data-driven applications are the new black. This approach increases the business value as the overall goal by increasing revenue, reducing cost, reducing risk, or improving the customer experience.

View more...

Java Platform Renaissance: 42 Practical Design Patterns

Aggregated on: Thu Apr 06 2023 16:00:12 GMT+0000 (Coordinated Universal Time)

My work, my first book, was recently published. The book I've been working on for about a year. Although the actual work took about a year, refining the idea and things about the examples started quite a while before this work even started. And I'm not just talking about studying or contributing to the development of the Java platform itself. I mean hours of meetings, discussions, or writing test cases to prove the correctness of hypotheses to find a solution to a critical challenge. And maybe not only that but also time spent helping newcomers,  team members, colleagues, or people in charge not only to properly grasp the challenge but also the platform, the tool we are going to use.  The aim of the article is to introduce my newly published book "Practical Design Pattern for Java Developers" (Figure 1., Ref. 7). Together, we'll explore today's application development challenges and dive deeper into some of Java's new language enhancements by exploring the Builder Design pattern in more detail. 

View more...

Setting up iOS Framework for Unity

Aggregated on: Thu Apr 06 2023 16:00:12 GMT+0000 (Coordinated Universal Time)

Part 1: Launch UIViewController from Unity I won’t waste your time on a long introduction about the technologies that I will describe here. You most likely already work as an iOS Engineer or Game Developer, which means you probably have some questions regarding the topic of this article. So, let’s get started. This article is split into two parts. In the first part, you will learn how to launch a simple UIViewController from Unity. We will force C# to understand Swift. In the second part, we will try to expand the usage of Swift in Unity and explore its limitations.

View more...

The Kappa Architecture: A Cutting-Edge Approach for Data Engineering

Aggregated on: Thu Apr 06 2023 16:00:12 GMT+0000 (Coordinated Universal Time)

In today's fast-paced world of big data, data engineering has become a critical discipline for organizations to process and analyze large volumes of data efficiently. One innovative approach that has gained traction is the Kappa Architecture, a unique data engineering framework that challenges traditional data processing paradigms. In this article, we will explore the Kappa Architecture and its key features that make it a cutting-edge approach to data engineering. The Kappa Architecture, introduced by Jay Kreps, co-founder of Confluent, is designed to handle real-time data processing in a scalable and efficient manner. Unlike the traditional Lambda Architecture, which separates data processing into batch and stream processing, the Kappa Architecture promotes a single pipeline for both batch and stream processing, eliminating the need for maintaining separate processing pipelines.

View more...

Kubernetes Alternatives to Spring Java Framework

Aggregated on: Thu Apr 06 2023 16:00:12 GMT+0000 (Coordinated Universal Time)

Spring Cloud and Kubernetes both complement each other to build a cloud-native platform and run microservices on the Kubernetes containers. Kubernetes provides many features which are similar to Spring Cloud and Spring Config Server features.  Spring framework has been around for many years. Even today, many organizations prefer to go with Spring libraries because it provides many features. It's a great deal when developers have total control over cloud configuration along with business logic source code. 

View more...

Identity Federation: Simplifying Authentication and Authorization Across Systems

Aggregated on: Thu Apr 06 2023 15:15:12 GMT+0000 (Coordinated Universal Time)

In today's digital age, organizations rely on a variety of applications and systems to carry out their business operations. However, managing user identities and access across multiple systems can be a complex and time-consuming process. This is where identity federation comes in, offering a solution to simplify authentication and authorization across systems. Identity federation is a mechanism that allows different identity management systems to share authentication and authorization information in a secure and standardized way. It enables users to access multiple applications or systems using a single set of credentials without having to sign in to each individual system separately. This not only simplifies the user experience but also reduces the administrative burden of managing user identities and access across multiple systems.

View more...

Ensuring Code Quality With Unit Testing and Integration Testing in CI/CD

Aggregated on: Thu Apr 06 2023 14:45:12 GMT+0000 (Coordinated Universal Time)

In the world of software development, ensuring code quality is critical to the success of any project. Code that is buggy, unreliable, or inefficient can lead to costly errors and negative user experiences. One way to ensure code quality is through the use of testing methodologies, such as Unit Testing and Integration Testing. These two integration tests can be especially effective when integrated into a Continuous Integration and Continuous Deployment (CI/CD) workflow.  Explore the importance of Unit Testing and Integration Testing in CI/CD pipelines in this article. Here, we'll discuss how these two approaches can help to ensure code quality and reliability throughout the software development process. Also, we'll explain these two testing approaches in detail here and know the differences between the two. Let's take a look!

View more...

API Performance Tuning

Aggregated on: Thu Apr 06 2023 14:00:12 GMT+0000 (Coordinated Universal Time)

APIs/Services performance plays an important role in providing a better experience to the users. There are many ways available through which we can make our APIs/services perform better. In this article, we are going to see some such tips to improve the performance of the APIs/Services.  Below are some of the metrics that we need to consider while optimizing the performance of APIs/Services:

View more...

ChatGPT on GPT-4

Aggregated on: Thu Apr 06 2023 03:15:10 GMT+0000 (Coordinated Universal Time)

TL; DR: ChatGPT 4: A Bargain for Scrum Practitioners? When OpenAI released its new LLM model GPT-4 last week, I could not resist and signed up for $20 monthly. I wanted to determine whether ChatGPT 4 is superior to its predecessor, which left a good impression in recent months; see my previous articles on Scrum, Agile, and ChatGPT. I decided to run three comparisons, using the identical prompt to trigger answers from the new GPT-4 and previous GPT-3.5 models. Read on and learn what happened. It was not a foregone conclusion.

View more...

3 Ways to Track Construction Assets Using Ultra-Wideband

Aggregated on: Thu Apr 06 2023 00:15:10 GMT+0000 (Coordinated Universal Time)

Ultra-wideband (UWB) technology uses high-frequency radio waves and operates across a broad portion of the spectrum. Although some of its earliest uses relate to the military, people are increasingly interested in using it for asset tracking in construction. That allows them to scan a large target area and quickly pinpoint an item’s precise location. Here are some eye-opening reasons to consider using UWB tracking for better construction site visibility.  1. Deploy the Technology on a Busy Site Construction site decision-makers have an ongoing need for outdoor asset tracking. Such solutions should ideally be wireless since wires can pose tripping and other safety hazards. 

View more...

Workshop Design With ChatGPT

Aggregated on: Wed Apr 05 2023 23:45:09 GMT+0000 (Coordinated Universal Time)

TL; DR: Workshop Design With ChatGPT The following article explores whether we can use ChatGPT-4 to create workshops for agile practitioners; for example, Scrum Masters. While Liberating Structures have simplified the task, workshop design with ChatGPT may provide an alternative. As you will learn, and despite being prone to lapse into project management speak, ChatGPT is remarkably capable of doing so, provided we feed it suitable prompts. Whether this requirement gives ChatGPT an edge over manually creating workshops remains to be seen.

View more...

How To Create a GraalVM Docker Image

Aggregated on: Wed Apr 05 2023 22:45:09 GMT+0000 (Coordinated Universal Time)

In this post, you will learn how to create a Docker image for your GraalVM native image. By means of some hands-on experiments, you will learn that it is a bit trickier than what you are used to when creating Docker images. Enjoy! Introduction In a previous post, you learned how to create a GraalVM native image for a Spring Boot 3 application. Nowadays, applications are often distributed as Docker images, so it is interesting to verify how this is done for a GraalVM native image. A GraalVM native image does not need a JVM, so can you use a more minimalistic Docker base image for example? You will execute some experiments during this blog and will learn by doing.

View more...

ActiveMQ JMS (Java Messaging Service) vs. Data Streaming Kfaka

Aggregated on: Wed Apr 05 2023 20:30:09 GMT+0000 (Coordinated Universal Time)

ActiveMQ and Kafka are both messaging systems used for real-time data processing and streaming. Both of these systems are open-source and offer different features that cater to specific use cases. While ActiveMQ JMS and Kafka are both used for message queuing and real-time data processing, there are significant differences between them. ActiveMQ JMS is a traditional message broker that supports multiple messaging protocols such as JMS, AMQP, and MQTT. It is designed to provide reliable message delivery and offers features such as message persistence, clustering, and transaction support. ActiveMQ JMS is commonly used in enterprise systems for mission-critical applications where reliability is of utmost importance.

View more...

A Guide to Data Labeling and Annotating: Importance, Types, and Best Practices

Aggregated on: Wed Apr 05 2023 19:15:09 GMT+0000 (Coordinated Universal Time)

Data is a vital part of making informed decisions for businesses and organizations across a range of industries today. Nevertheless, raw data alone is rarely sufficient for deriving insights and guiding decision-making. By providing context and structure to raw data, annotations, and labels help make sense of it. The annotation of data refers to the addition of metadata or descriptive information to raw data, such as images, videos, or texts. Data can be categorized and organized using labels, tags, or captions. Annotated data can be labeled manually or automatically to make it easier to interpret and utilize by assigning specific attributes or values.

View more...

Taking AI/ML Ideas to Production

Aggregated on: Wed Apr 05 2023 18:15:09 GMT+0000 (Coordinated Universal Time)

The integration of AI and ML in products has become a trend in recent years. Companies are trying to incorporate these technologies into their products to improve their efficiency and performance. And this year, particularly with the boom of ChatGPT, almost every company is trying to introduce a feature in this domain. One of the main benefits of AI and ML is their ability to learn and adapt. They can analyze data and use it to improve their performance over time. This means that products that incorporate these technologies can become smarter and more efficient over time. Let's understand now how companies are taking their ideas to production. Usually, they start with hiring a few data scientists who will figure out what models to create to solve the problem, fine-tune them, and handover to MLOps or DevOps engineers to deploy. Your DevOps engineers may or may not know how to efficiently take these models to production. That's where you need specialized skills such as Machine learning engineers and MLOps who understand how to manage the whole process of the CI/CD/CT pipeline efficiently.

View more...

Agent 008: Chaining Vulnerabilities to Compromise GoCD

Aggregated on: Wed Apr 05 2023 17:30:09 GMT+0000 (Coordinated Universal Time)

GoCD is a popular Java CI/CD solution with a large range of users, from NGOs to Fortune 500 companies, with billions of dollars in revenue. Naturally, this makes it a critical piece of infrastructure and an extremely attractive target for attackers. In a previous article, Agent 007: Pre-Auth Takeover of Build Pipelines in GoCD, the SonarSource R&D team demonstrated how unauthenticated attackers could impersonate build agents and access features that were previously protected by authentication mechanisms (CVE-2021-43287), leading to the disclosure of credentials and sensitive tokens for third-party services.  In this follow-up article, I describe three additional vulnerabilities discovered and responsibly disclosed by the SonarSource R&D team in GoCD 21.2.0 and below. First, a vulnerability that can be used by attackers impersonating build agents to force administrators to perform security-sensitive actions without their knowledge (CVE-2021-43288). Then, two additional vulnerabilities could be chained, with the first one fully compromising the targeted instance by executing arbitrary commands (CVE-2021-43286, CVE-2021-43289) on the server hosting GoCD. These findings are already addressed by the latest release of GoCD: this article aims to share the root cause analysis and insights on how they could be exploited. 

View more...

Using Environment Variable With Angular

Aggregated on: Wed Apr 05 2023 16:45:09 GMT+0000 (Coordinated Universal Time)

Developing an application can be done with just localhost URLs, but when it comes to building and deploying software, we need to change these URLs to appropriate values. While working with Angular, it might be painful to replace all these values without making any mistakes or complex configurations. Some guides say it can be done by configuring “Webpack,” but I find them quite confusing. Here is a workaround solution that will work for all bundlers and can also work with Docker builds.

View more...

Python vs. R: A Comparison of Machine Learning in the Medical Industry

Aggregated on: Wed Apr 05 2023 16:15:09 GMT+0000 (Coordinated Universal Time)

The use of machine learning in the medical industry has gained significant traction in recent years thanks to its ability to improve patient outcomes, reduce costs, and streamline clinical workflows. While there are several programming languages available for machine learning, Python and R are the two most popular languages in the medical industry. This article discusses the use of Python and R in machine learning in the medical industry and argues why Python is considered the superior language in this field. Python in the Medical Industry Python is a high-level programming language that is easy to learn and use, making it a popular choice among data scientists and machine learning engineers in the medical industry. The following are some of the key reasons why Python is the preferred language in this field:

View more...

Red-Black Trees in C#: A Guide to Efficient Self-Balancing Binary Search Trees

Aggregated on: Wed Apr 05 2023 16:15:09 GMT+0000 (Coordinated Universal Time)

Welcome back to the final article in our series on binary search trees in C#. In our previous articles, we explored the fundamentals of binary search trees and the self-balancing AVL trees. We learned that while AVL trees guarantee a balanced tree structure, they require significant computational overhead to maintain balance factors and execute multiple rotations. In this article, we will delve into another self-balancing binary search tree, the red-black tree. Red-black trees are designed to strike a balance between the efficiency of operations and the maintenance of a balanced tree structure. Unlike AVL trees, red-black trees use a color coding scheme to balance the tree, making it a more efficient alternative in certain scenarios.

View more...

Choosing the Right IAM Solution

Aggregated on: Wed Apr 05 2023 16:15:09 GMT+0000 (Coordinated Universal Time)

Identity and Access Management (IAM) is one of the critical components of any commercial software. As the name suggests, IAM solutions cover the identity of the users, their roles, privileges, authentication, and authorization. Long story short, IAM is based on proven industry-standard protocols and is the backbone of software security. Because access management is a complex topic, the engineering teams usually start with a simplistic local authentication model. In such a case, the application itself manages users — and their passwords — and serves a login screen to the user whenever he/she needs to authenticate. This is an easy solution that, unfortunately, reaches its limits once the software matures, and the users expect integration with various single-sign-on providers, self-service registration, password reset, and integrations with other products. Moreover, security engineers on the customer’s side require adherence to certain policies — usage of multi-factor authentication, password complexity, and reset policies. The complexity of the once simple local IAM increases exponentially, and it makes little sense to try to implement all these features yourself using only basic libraries. As the IAM landscape is vast, the protocols are complex, and it is really easy to code something just imprecise enough to open doors for the attacker.

View more...

Designing Sustainable Hybrid Cloud Architecture: The Crucial Role of Carbon Footprint as a Non-Functional Requirement

Aggregated on: Wed Apr 05 2023 14:15:09 GMT+0000 (Coordinated Universal Time)

This article discusses the increasing demand for cloud computing services and its impact on the environment, highlighting the need to prioritize sustainability and reduce carbon emissions in hybrid cloud environments. It emphasizes the importance of non-functional requirements, specifically the carbon footprint, in designing hybrid cloud architecture and the need for standardized reporting of carbon emissions for transparency and compliance.  The article also explores various opportunities to minimize carbon footprint, including optimizing energy usage and hardware requirements, as well as managing carbon footprint through tracking and reporting emissions, optimizing hardware utilization, and adopting renewable energy sources. The role of cloud providers in helping businesses reduce their carbon footprint is discussed, along with the importance of collaboration between business leaders, IT teams, and cloud providers to integrate sustainability into the solution design process. Additionally, the article highlights the significant impact of non-functional requirements such as workload placement and network routing on a business's carbon footprint, emphasizing the need to consider sustainability factors during the design and implementation of hybrid cloud environments to reduce carbon emissions and comply with regulatory requirements.

View more...

Build a Celebrity Twitter Chatbot with GPT-4!

Aggregated on: Wed Apr 05 2023 13:45:09 GMT+0000 (Coordinated Universal Time)

This is what you will be building: A custom chatbot using MindsDB’s connectors to Twitter, OpenAI’s GPT-4, and custom prompts. A simple example is this Twitter bot — @Snoop_Stein — who will reply with the appropriate context and personality to any tweets which mention him. If you haven’t tried tweeting to SnoopStein yet, check it out and tweet at your new friend and rapping physicist! See what it comes up with.

View more...

Deep Learning Neural Networks: Revolutionising Software Test Case Generation and Optimization

Aggregated on: Wed Apr 05 2023 13:45:09 GMT+0000 (Coordinated Universal Time)

Deep learning neural networks (DLNN) are a subset of machine learning techniques that model high-level abstractions in data through multiple layers of interconnected nodes. These networks can automatically learn representations from raw data, enabling them to perform tasks such as image and speech recognition, natural language processing, and game playing. This section provides an overview of DLNN, discusses its role in automated test case generation and optimization, and highlights successful applications and future trends in this area. Structure of Deep Learning Neural Networks DLNN consists of interconnected layers of artificial neurons, also known as nodes. These layers can be grouped into three categories:

View more...

What Are Storage Devices?

Aggregated on: Wed Apr 05 2023 13:15:09 GMT+0000 (Coordinated Universal Time)

In today's age of digital technology, the volume of data being produced every second is astronomical. From personal data to corporate data to machine-to-machine data, the amount of data generated every day is staggering. As a result, the need for efficient and safe storage devices has increased. Storage devices are an essential part of computing, and they allow users to save and retrieve data easily.  Storage devices are hardware components that are used to store and retrieve digital data. They can be used to store a wide variety of information, including documents, photos, videos, music, and software programs. There are two main types of storage devices: primary storage and secondary storage.

View more...

What Is the Real Root Cause of Your Problem?

Aggregated on: Wed Apr 05 2023 13:15:09 GMT+0000 (Coordinated Universal Time)

There is a project. Code is written, everything is tested, coverage is high, and features get delivered. There are bugs from time to time, but incidents get fixed fast, and no one worries about the situation. Well, business as usual.  Time passes...

View more...

No More Goerli Faucet! Using the New Infura Sepolia Faucet for Ethereum Smart Contract Testing

Aggregated on: Wed Apr 05 2023 13:15:09 GMT+0000 (Coordinated Universal Time)

When you first start developing on Ethereum, you quickly discover how critical it is to test your dapps — even more so than in traditional development. But almost as quickly as learning you need to test is learning that it’s very difficult to get the testnet ETH you need to complete that testing! It’s a frustrating, and at times confounding, problem all Ethereum devs face.

View more...