News AggregatorREST vs. SOAP: A Comprehensive Guide to Their DifferencesAggregated on: Mon Jul 10 2023 14:31:08 GMT+0000 (Coordinated Universal Time) APIs (Application Programming Interfaces) are the backbone of modern web development, enabling communication and data exchange between different software systems. Commonly used types of APIs are REST (Representational State Transfer), SOAP (Simple Object Access Protocol), and, more recently, GraphQL and AsyncAPI. In this blog, we will dive into the differences between REST and SOAP APIs, exploring their functionality, security, performance, and ease of use. What Is SOAP? SOAP was introduced in 1998 by Dave Winer, Don Box, Bob Atkinson, and Mohsen Al-Ghosein as an alternative to the more complex distributed object technologies such as CORBA and DCOM. View more...How To Scan GCP Storage Files for Threats Using GoAggregated on: Mon Jul 10 2023 14:31:08 GMT+0000 (Coordinated Universal Time) As enterprise cloud storage solutions steadily gain momentum across global markets, the anti-virus and malware security policies deployed to protect these pay-per-scale services become more and more robust. Naturally, the taller the castle wall becomes, the higher the siege ladder is built to climb it, but the perpetual battle between threat actors and cloud security practitioners appears to march us ever closer toward a safer digital future. That said, the catastrophic damage from successful cloud storage attacks cannot be understated, and the evolution of this attack vector should never be underestimated. Public, private, and hosted cloud storage services are all extremely worthwhile targets for threat actors, playing host to valuable data that moves frequently between user devices, and a variety of potent attack vectors are regularly explored to penetrate networks through these locations. Threat actors can leverage well-known techniques like phishing to goad users into saving and storing malicious content in a public location, and they can disguise malware very effectively in direct client upload scenarios through built-in file features like Office macros or PDF password-protection measures. View more...The Expensive Folly of the Oversized Product BacklogAggregated on: Mon Jul 10 2023 14:31:08 GMT+0000 (Coordinated Universal Time) Some product owners believe that a comprehensive product backlog is the best way to accomplish the product goal and be fully transparent simultaneously — never let a possibly valuable idea slip away. However, a comprehensive backlog may quickly become an oversized product backlog with unintended side effects. Learn more about an oversized product backlog’s negative impact on innovation, your Scrum team’s ability to create value, and your relationship with stakeholders. View more...Can Distributed Tracing Replace Logging?Aggregated on: Mon Jul 10 2023 13:31:08 GMT+0000 (Coordinated Universal Time) Monitoring, Logging, and Tracing are often highlighted as the three fundamental pillars of a contemporary Observability framework. Conventional wisdom suggests that all three pieces of technology are equally critical and have their own place in the Observability stack. As more of the world shifts to the cloud, containerized, and distributed systems, will one of these pillars end up becoming more critical than the other? We predict that this will most likely be the case. In this article, we compare the roles of two of these Observability pillars, Distributed Tracing vs. Logging, and see which best suits the needs of an increasingly cloud-native world. View more...Building a MongoDB-Powered RESTful Application With Quarkus and Eclipse JNoSQLAggregated on: Mon Jul 10 2023 04:31:07 GMT+0000 (Coordinated Universal Time) In the rapidly evolving world of modern application development, the adoption of NoSQL databases has gained significant traction due to their flexible data models and scalability advantages. However, integrating NoSQL databases seamlessly into an application can sometimes be complex, requiring specialized knowledge and intricate configurations. Enter Eclipse JNoSQL and Quarkus, two powerful technologies that, when combined, simplify the integration process and enable developers to leverage the capabilities of NoSQL databases effortlessly. Eclipse JNoSQL is an open-source framework that provides a standardized API and tools for working with NoSQL databases. It offers a unified programming model that abstracts the complexities of various NoSQL databases, allowing developers to write code agnostic to the underlying database technology. JNoSQL supports a wide range of NoSQL databases, including MongoDB, Cassandra, Couchbase, and more, making it an excellent choice for building flexible and scalable applications. View more...Introduction to Cloud DatabaseAggregated on: Sun Jul 09 2023 22:01:07 GMT+0000 (Coordinated Universal Time) Introduction Cloud databases are the future of data storage and management. With the advancement of technology, businesses and organizations have recognized the need to store data on the cloud. The cloud database is a type of database that is stored on a cloud computing platform. It allows businesses to store, manage, and access data remotely without the need for physical servers. In this article, we will discuss cloud databases in detail, including their benefits, types, and challenges. What is a Cloud Database? A cloud database is a database that is hosted on a cloud computing platform, such as Amazon Web Services, Microsoft Azure, or Google Cloud Platform. It enables users to store, manage, and access data through the Internet. The data is stored in a remote server, which eliminates the need for physical servers in the user’s location. Cloud databases are accessible from anywhere with an internet connection, making them an ideal solution for businesses with remote teams or with employees working from home. View more...Chat GPT Impact on the Software SectorAggregated on: Sun Jul 09 2023 21:01:07 GMT+0000 (Coordinated Universal Time) Quick Summary Another major advancement in the field of artificial intelligence is the emergence of Chat GPT, a language model developed by OpenAI. Chat GPT, based on the GPT-3.5 architecture, is revolutionizing the IT industry in several ways such as by increasing efficiency and decreasing costs by automating tasks traditionally done by humans. It also reduces human error in more mundane situations that are increasingly being automated. Introduction The short answer is that Chat GPT is essentially a chatbot and uses Artificial Intelligence (AI) to automate customer response. This article will help you understand Chat GPT, the reasons behind its hype, and how it can be useful for your business. View more...Comparing NATS and Kafka: Understanding the DifferencesAggregated on: Sun Jul 09 2023 20:16:07 GMT+0000 (Coordinated Universal Time) Messaging systems are game-changers in modern software development, enabling communication between different components of a system. They also help tackle the challenge of processing a high volume of data efficiently while ensuring reliable service delivery, real-time data processing, and secure data transfer between systems. As messaging systems for modern applications continue to evolve, NATS and Kafka have emerged as part of the most popular options in the market today. Both NATS and Kafka are open-source and have gained a lot of traction due to their reliability, efficiency, and scalability. However, there are several differences between the two, and deciding upon the appropriate messaging system can considerably impact your application. In this article, we will explore the differences between NATS and Kafka in terms of category ranking features, limitations, use cases, and capabilities. View more...How the Healthcare and Genomics Industry Innovates With Machine Learning and AIAggregated on: Sun Jul 09 2023 20:01:07 GMT+0000 (Coordinated Universal Time) In recent years, artificial intelligence (AI) has played a more increasingly important role in the field of genomics, the study of an organism's genetic material. With the advancements in AI and machine learning, scientists can now analyze vast amounts of genomic data more accurately and efficiently than ever before. This has led to a wealth of new insights into the workings of our genetic code and has enabled the development of novel therapies for genetic diseases and healthcare innovations. In this article, we discuss some key application areas and how AI is transforming genomics, leading to rapid breakthroughs in the healthcare and drug discovery field. View more...Jason Arbon: 'In a Million Years, Super-Powerful Computers Will Honor the Testers of Our Time'Aggregated on: Sun Jul 09 2023 19:31:07 GMT+0000 (Coordinated Universal Time) Jason Arbon is the CEO and founder of test.ai, a company with over $30 million in funding by various investors. Their customers include major companies such as Microsoft, Google, Fortnite, and Epic Games. Despite the success, the team has decided to sell the majority of the company, and are currently working on a new secret venture, creatively named testers.ai. We’ve discussed the use of AI in testing, the somewhat unfair manual QA vs. automation QA struggle, the risks faced by testers with new technologies developing exponentially and why Jason doesn’t allow kids to scare AI from his Google account. View more...What Is Envoy Gateway, and Why Is It Required for Kubernetes?Aggregated on: Sat Jul 08 2023 23:01:07 GMT+0000 (Coordinated Universal Time) Envoy proxy, the data plane of Istio service mesh, is used for handling east-west traffic ( service-to-service communication within a data center). However, to make Istio manage a network of multicloud applications, Envoy was configured as a sidecar proxy for handling north-south traffic (traffic in and out of data centers). It was observed that application developers found it difficult to configure Envoy proxy as an API gateway and ingress controller. This was time-consuming, which led the community to use Kubernetes Gateway API as a part of the Envoy project and eventually build Envoy Gateway. View more...Unlock the Power of GitHub: Automate Your Contributions With GraphQLAggregated on: Sat Jul 08 2023 22:31:07 GMT+0000 (Coordinated Universal Time) GitHub contributions refer to the activities and contributions made by users within the GitHub platform. They are a way to track and quantify a user's involvement and contributions to repositories, projects, and the GitHub community. GitHub provides various metrics to measure and showcase a user's contributions. Automating GitHub contributions can offer several benefits, including efficiency and time savings, accurate and consistent tracking, real-time visibility, data-driven insights, motivation, and recognition. It optimizes efficiency, fosters collaboration, and enhances transparency within development teams, ultimately contributing to improved productivity and project outcomes. In this article, we will explore how you can automate your team's GitHub contributions using GraphQL. What Is GitHub GraphQL API? GitHub GraphQL is a query language and API (Application Programming Interface) that allows developers to retrieve and manipulate data from GitHub in a flexible and efficient manner. It is an alternative to the traditional REST (Representational State Transfer) API provided by GitHub. View more...Introduction to NoSQL DatabasesAggregated on: Sat Jul 08 2023 22:16:07 GMT+0000 (Coordinated Universal Time) The evolution of databases has been remarkable over the years. The traditional relational databases dominated the industry for several decades. However, with the growth of the internet, social media, and big data, NoSQL databases have gained popularity due to their ability to handle large amounts of unstructured and semi-structured data. In recent years, NoSQL databases have gained immense popularity due to their ability to handle large amounts of data and their flexibility in data modeling. NoSQL, which stands for "not only SQL," is a term used to describe a class of non-relational databases that provide a flexible data model and can scale horizontally to handle large amounts of data. NoSQL databases are designed to be highly scalable and flexible, making them ideal for handling large amounts of data in real-time. They offer a variety of data storage models such as key-value, document-oriented, column-family, and graph databases. In this article, we will explore the different types of NoSQL databases and their advantages over traditional relational databases. View more...4 Rules for Leading Dev Teams in Tough Economic TimesAggregated on: Fri Jul 07 2023 21:46:06 GMT+0000 (Coordinated Universal Time) It shouldn’t be a surprise that the outlook for many tech companies in 2023 is not rosy. With layoffs across the industry, we’re all going through a challenging time - whether you’re a dev or not.The last 14 years have been an unprecedented boom time - but economic conditions will eventually challenge all companies. How do we, as leaders, handle these challenges?I sat down with Michael Stahkne, VP of the platform at Circle CI; Lewis Tuff, VP of engineering at Blockchain.com; Carolyn Vo, partner & head of engineering at Oliver Wyman, for a panel at Dev Interrupted's conference to answer that exact question. Here’s how these leaders described what effective leadership looks like in uncertain times. 1. Increase the Quality and Frequency of Communication Some people will see this as counterintuitive. If times are tough, don’t you need more time to get work done? However, stellar communication is one critical way to lead effectively in both prosperous times and times of crisis. View more...Patterns To Make Synchronous Communication in Microservices ResilientAggregated on: Fri Jul 07 2023 18:46:06 GMT+0000 (Coordinated Universal Time) Microservices have become a popular architectural approach for building large-scale, complex systems. While asynchronous communication is often preferred in microservices, there are cases where synchronous communication is necessary. However, relying on synchronous communication introduces challenges related to resilience. This blog post will explore patterns that help make synchronous communication in microservices more resilient, ensuring system stability and fault tolerance. Circuit Breaker The Circuit Breaker pattern is a crucial pattern in making synchronous communication in microservices more resilient. It acts as a safety mechanism that monitors the availability and responsiveness of dependent services. The Circuit Breaker maintains a state based on the success or failure of previous requests. View more...6 Must-Have Software Metrics for Engineering ManagersAggregated on: Fri Jul 07 2023 17:01:06 GMT+0000 (Coordinated Universal Time) "How is the release pipeline going?" is a common CTO-EM conversation today. However, whether the two tech leaders find a common language to answer this question- that's what we will talk about. A common pattern across engineering managers is their struggle in quantifying 'real' metrics on engineering work. Mostly, it is about the difference in priorities for EM vs. C-suite; the other times, it is about disagreements over 'what' needs to be measured- the product, process, or both. View more...Partitioning Historical Data Into Daily Parquet Files in Azure Data Lake Using Azure Data Factory and Azure NotebookAggregated on: Fri Jul 07 2023 16:46:06 GMT+0000 (Coordinated Universal Time) When working with historical data, it is often necessary to partition the data into daily files based on a key column for efficient storage and querying. Azure Data Factory (ADF) provides a powerful data integration service, while Azure Notebook offers an interactive environment for data exploration and analysis. In this article, we will guide you through the process of partitioning historical data into daily Parquet files using Azure Data Factory and an Azure Notebook. This approach allows for easy execution and customization of the partitioning functionality. Prerequisites Before proceeding, ensure you have the following: View more...CI/CD Pipeline With CircleCI for React NativeAggregated on: Fri Jul 07 2023 16:46:06 GMT+0000 (Coordinated Universal Time) The CI/CD is a process that automates the build, test, and deployment. Different CI/CD (continuous integration and continuous delivery) tools are available such as Jenkins, Circle CI, and GitHub actions. React Native is a leading component-based mobile application framework that uses JavaScript (or typescript) to build native-like mobile applications which can be published to the Apple store and Android store.This article briefly describes how to build a CI/CD pipeline for React Native with CircleCI. You can follow these general steps: View more...Building News Sentiment and Stock Price Performance Analysis NLP Application With PythonAggregated on: Fri Jul 07 2023 16:16:06 GMT+0000 (Coordinated Universal Time) In this tutorial, I will explore a fintech idea that combines news sentiment analysis and stock trading to make news more actionable for algorithmic trading. This tutorial presents a step-by-step guide on how to engineer a solution that leverages market data API and a sentiment score to demonstrate any correlation between news sentiment and stock price performance. Traders thrive on having instant access to information that enables them to make quick decisions. Consider a scenario where a trader can promptly identify and access news that directly impacts the performance of their stocks, referred to as investor sentiment. However, reading through articles and discerning the content can be time-consuming and may result in missed opportunities. Imagine if traders could receive immediate notifications within their order management software (OMS) whenever a stock they want to trade receives positive media coverage, which could potentially influence the stock price. This idea also presents the opportunity of automating buy/sell decisions by integrating real-time news sentiment scoring into algorithmic strategies. View more...AI Code IntentionsAggregated on: Fri Jul 07 2023 16:16:06 GMT+0000 (Coordinated Universal Time) Any modern IDE includes Code Intentions that allow you to perform some predefined actions on your code based on a context. For example, for a for statement, there can be several intentions like Convert to while, Reverse order, Use Streams, etc. The use of Intentions is very handy as it allows us to perform quick refactoring or do some manipulation with the code. Intentions are pretty hard to develop, so they are usually hard-coded and bundled with the IDEs by respective IDEs vendors. In some IDEs, it is possible to develop your own Intentions, but it is not so easy as it requires good knowledge of an IDE platform, writing lots of code, developing plug-ins to deploy your Intentions, etc. View more...Sticky Sessions With Apache APISIX — The DemoAggregated on: Fri Jul 07 2023 16:01:06 GMT+0000 (Coordinated Universal Time) Last week, we described the concept behind sticky sessions: you forward a request to the same upstream because there's context data associated with the session on that node. However, if necessary, you should replicate the data to other upstreams because this one might go down. In this post, we are going to illustrate it with a demo. The Overall Design Design options are limitless. I'll keep myself to a familiar stack, the JVM. Also, as mentioned in the previous post, one should only implement sticky sessions with session replication. The final design consists of two components: an Apache APISIX instance with sticky sessions configured and two JVM nodes running the same application with session replication. View more...Fix AttributeError: 'NoneType' Object Has No Attribute 'Shape'Aggregated on: Fri Jul 07 2023 16:01:06 GMT+0000 (Coordinated Universal Time) NumPy is a popular tool for computing numbers involving matrices, arrays, and math functions. The shape attribute of a NumPy array returns a tuple showing the array's dimensions. And when it comes to reshaping and manipulating NumPy arrays, the attribute is crucial. Below is how the shape attribute function: View more...Dynamic Entity Graphs in Spring Data JPAAggregated on: Fri Jul 07 2023 15:46:06 GMT+0000 (Coordinated Universal Time) JPA and its implementation, Hibernate, is the most popular way to access relational data in Java applications. From the very beginning, data access optimization has been one of the main goals of Hibernate developers. One such optimization is eliminating unnecessary database queries, which significantly impact performance. For example, when dealing with related entities, such as master-detail relationships, we need to decide whether we need to fetch details. The simplest solution would be to mark associated entity fields with the EAGER fetch type. However, this is highly ineffective since we don’t always need associated entities. While LAZY fetching helps to avoid extra queries, it is essential to remember to fetch additional detail entities strictly within the transaction. Also, this may cause the N+1 query problem. The Entity Graph specification was introduced in JPA 2.1, offering developers fine-grained control over how entities and their related data are fetched from the database. With entity graphs, developers can define explicit fetch plans, reducing the N+1 query problem and eliminating the need for manual JOIN clauses. This feature empowers developers to optimize data retrieval efficiently. View more...How I Learned To Love Autonomous Generative AI Versus Auto-CompleteAggregated on: Fri Jul 07 2023 15:46:06 GMT+0000 (Coordinated Universal Time) New generative AI for code tools help developers do their jobs more quickly with less effort by synthesizing code. ChatGPT and other LLM approaches have made this kind of generative AI accessible to a broad general audience. Developers are flocking to it. But too often overlooked are the fundamental differences between generative AI for code tools, and those differences inform which approach is better for your developer tasks. Under the covers, generative AI for code tools fall into two basic categories: transformer-based large language models (e.g., Copilot, ChatGPT), and reinforcement learning-based systems (RL). View more...The Significance of Deep Storage in Apache DruidAggregated on: Fri Jul 07 2023 15:16:06 GMT+0000 (Coordinated Universal Time) The phrase “deep storage” refers to the long-term storage system used by Apache Druid, where past data segments are preserved for durability and retrieval in the future. Druid stores data in files called segments, and deep storage is the place where segments are stored. Even though Druid’s native integration with Apache Kafka (can read here how to integrate Druid with Kafka) and Amazon Kinesis, which allows query-on-arrival at millions of events per second, low latency ingestion, etc., and eventually enables us to fully exploit the potential of streaming data, the deep storage mechanism added another advantage of data durability. Impressively, it’s a type of storage that Apache Druid does not offer. Druid’s Deep storage guarantees long-term data persistence even if data is deleted from the live cluster after compaction. This ensures data longevity and offers data loss protection. In short, Druid stores data in files called segments, and the compaction in Druid can be defined as the process where small segments are merged into larger segments to boost the query performance after data is ingested into Druid. Historical processes of Druid cache data segments on local disk and serve queries from that cache as well as from an in-memory cache. Thus, Druid never needs to access deep storage during a query and helps it offer the best query latencies possible. Additionally, it means that we need to have enough disc space for the data we intend to load across all of our historical servers. View more...Evolving DORA Metrics: Discussing Emerging Trends and Advancements in DORA Metrics, Such as Incorporating Security and Quality Metrics Into the Assessment FrameworkAggregated on: Fri Jul 07 2023 15:01:06 GMT+0000 (Coordinated Universal Time) In the fast-paced world of software development, DevSecOps principles have emerged as a crucial approach for organizations to streamline their software delivery processes, improve collaboration between teams, and achieve faster time-to-market. In this context, the DevSecOps Research and Assessment (DORA) metrics have become essential tools for measuring and evaluating the effectiveness of DevSecOps implementations. This article explores the evolving trends and advancements in DORA metrics, specifically focusing on incorporating security and quality metrics into the assessment framework. Understanding DORA Metrics DORA metrics refer to a set of key performance indicators (KPIs) that provide insights into the performance and efficiency of software development and delivery processes. They enable organizations to assess their DevSecOps practices, identify areas for improvement, and measure the impact of changes over time. The assessment framework comprises a comprehensive set of metrics that cover various aspects, including deployment frequency, lead time for changes, time to restore service, and change failure rate. View more...What Do Agile Coaches Do? How Can They Improve Your Software Development Projects?Aggregated on: Fri Jul 07 2023 15:01:06 GMT+0000 (Coordinated Universal Time) The software development industry is evolving rapidly, and it is essential for companies to have a well-structured and efficient process in place to ensure successful project completion. Agile methodologies are very popular among software development companies in recent years due to their flexibility and adaptability to changing requirements. Agile coaches play a crucial role in helping organizations implement and optimize Agile practices. This article will explore the responsibilities of Agile coaches and how they can significantly enhance your software development projects. View more...Unleashing Business Innovation Through the Power of KubernetesAggregated on: Fri Jul 07 2023 14:46:06 GMT+0000 (Coordinated Universal Time) In the dynamic landscape of the digital economy, businesses are perpetually seeking the latest technologies to stay one step ahead of their competitors. Harnessing the power of innovation is a paramount business strategy. In this context, Kubernetes, an open-source platform, has emerged as a groundbreaking tool, revolutionizing the way businesses manage, scale, and deploy applications. This powerful orchestrator has ushered in a new era of agility and efficiency in IT infrastructure, making it an indispensable asset in the ever-changing, fast-paced business world. The Genesis and Purpose of Kubernetes Kubernetes, initially developed by Google and now maintained by the Cloud Native Computing Foundation, is a system specifically designed to manage containerized applications in a clustered environment. It provides a robust framework for these systems to run smoothly and efficiently, allowing businesses to shift their focus from managing infrastructure to creating value. This significant shift in focus is the key differential of Kubernetes, marking it as a game-changer in the realm of information technology. View more...Test Approach Tutorial: A Comprehensive Guide With Examples and Best PracticesAggregated on: Fri Jul 07 2023 14:46:06 GMT+0000 (Coordinated Universal Time) A test approach involves a clear grasp of the fundamental testing principles, objectives, and a clear test strategy. The starting point usually identifies the types of testing a project would require. This includes acceptance, integration, system, unit testing, and so on. As we know, testing is one of the most critical aspects of the Software Development Life Cycle. It goes without saying, but the final software product has to meet set quality standards. So, to achieve this goal, it's vital to have a well-thought-out, defined, and fully-structured testing approach. View more...Redefining Element Positioning With CSS Inset PropertyAggregated on: Fri Jul 07 2023 14:16:06 GMT+0000 (Coordinated Universal Time) Building responsive web pages is essential if you want your website to run flawlessly on multiple browsers without hiccups. However, websites can’t be fully responsive without a proper layout. Here the CSS position property lets you do this. The CSS position properties set a specified element relative to its parent or the viewport. The CSS position properties take in five values, namely, View more...Change Keyboad Bindings (Shortcuts) In the Virtual ConsoleAggregated on: Fri Jul 07 2023 14:16:06 GMT+0000 (Coordinated Universal Time) The virtual console, also known as the terminal or command line interface, is a powerful tool in Linux for performing various tasks and executing commands. One aspect of customization that can greatly enhance your productivity is modifying the keyboard bindings in the virtual console. This article will guide you through the process of changing keyboard bindings to suit your preferences and streamline your workflow. Before diving into customizing keyboard bindings, it's important to familiarize yourself with the virtual console. The virtual console provides a text-based interface for interacting with the operating system. It allows you to execute commands, manage files, and perform system configurations without the need for a graphical user interface. View more...Kubernetes: Advantages and DisadvantagesAggregated on: Fri Jul 07 2023 12:16:06 GMT+0000 (Coordinated Universal Time) Kubernetes is an open-source container orchestration platform that automates the deployment, scaling, and management of containerized applications. It has gained popularity among developers and enterprises for its ability to provide a scalable, reliable, and efficient infrastructure for deploying modern applications. In this response, we will explore the advantages and disadvantages of using Kubernetes for deploying an application. Advantages of Using Kubernetes for Deploying an Application Scalability Kubernetes allows developers to easily scale their applications up or down as demand fluctuates. The platform automatically monitors the health of each application component and can dynamically adjust the number of instances running based on demand. One of the biggest advantages of Kubernetes is its ability to scale applications horizontally. Kubernetes can automatically scale the number of application instances based on the demand, making it an ideal platform for handling sudden spikes in traffic. This makes it easy to ensure that the application remains available and responsive to users. View more...Databases Scaling StrategiesAggregated on: Thu Jul 06 2023 21:16:05 GMT+0000 (Coordinated Universal Time) Knowing the different techniques for scaling databases, help us to choose the appropriate strategy to adapt to our needs and purpose. Hence, in this post, we will demonstrate different solutions and techniques for scaling databases server. They are divided between reading and writing strategies. View more...API Governance, a Simple ComplexityAggregated on: Thu Jul 06 2023 21:01:06 GMT+0000 (Coordinated Universal Time) API Management projects are straightforward. It's all about exchanging data from system A to system B. But that's without taking into account the fact that an API Management project involves a large number of players, which creates complexity. The Actors Involved in API Management To begin with, we can list the typical players involved: View more...Managing IntelliJ Live TemplatesAggregated on: Thu Jul 06 2023 20:46:13 GMT+0000 (Coordinated Universal Time) I primarily use IntelliJ for the majority of my work nowadays. This integrated editor and development environment offers numerous excellent features, one of which is the live templates feature. I have chosen to assist Jamal with the implementation of live templates. Within this article, I will elucidate the methodology I have devised for editing and maintaining the live templates. View more...Microservices Security in a NutshellAggregated on: Thu Jul 06 2023 20:01:05 GMT+0000 (Coordinated Universal Time) Microservices architectures have gained popularity due to their scalability, agility, and flexibility. However, with these architectures' increased distribution and complexity, ensuring robust security measures becomes paramount. The security of microservices extends beyond traditional approaches, requiring a comprehensive strategy to protect against evolving threats and vulnerabilities. Organizations can fortify their microservices architecture and safeguard sensitive data and resources by understanding the core principles and adopting effective security measures. Introduction to Microservices Microservices refers to a software development architecture style in which applications are created as a collection of small, independent services that connect via well-defined APIs (Application Programming Interfaces). Each microservice is responsible for a distinct business capability and may be created, implemented, and expanded independently of other services (Sascha Möllering, 2021). Microservices allow applications to be divided into smaller, manageable components, which can be independently scaled based on demand. This scalability enables organizations to respond quickly to changes and handle high-traffic loads more effectively. View more...Schema Change Management Tools: A Practical OverviewAggregated on: Thu Jul 06 2023 18:46:05 GMT+0000 (Coordinated Universal Time) In this post, we explore what database schema change is all about and provide an overview of its history, tools and challenges, and the path toward a modern schema migration solution. Who Needs a Stable and Predictable Database Anyway? All jokes aside, as a developer, your focus is on creating the code that makes your application work. But for your application to be useful, it needs to work with data, usually lots of it. And that data needs to be well organized and fully accessible in your database for your application to perform properly. View more...Overcoming the Data Silo Challenge: How Industry 4.0 Paves the Way for Seamless Data InteroperabilityAggregated on: Thu Jul 06 2023 18:16:05 GMT+0000 (Coordinated Universal Time) Industry 4.0 is the playground where innovation and interconnectivity converge, which results in turning possibilities into realities and preparing us for the future of machines. It is testifying the applicability of intelligent automation and addressing one of the most significant challenges of our digital age, data silos. View more...Tips on Performance Optimization of Cosmos DBAggregated on: Thu Jul 06 2023 18:01:05 GMT+0000 (Coordinated Universal Time) Azure Cosmos DB is a highly scalable and globally distributed NoSQL database service offered by Microsoft. To ensure optimal performance and scalability of applications running on Cosmos DB, it's crucial to employ effective performance optimization techniques. In this blog post, we will explore best practices and tips for optimizing performance in Azure Cosmos DB. Indexing Strategy As with the other databases, indexing is the first go-to option to improve query performance. The same is the case with Cosmos DB as well. Below are a few points which you can leverage to optimize the indexing strategy for Cosmos DB. View more...How To Use GitLab for Simultaneous Execution of Jobs (Part 1)Aggregated on: Thu Jul 06 2023 18:01:05 GMT+0000 (Coordinated Universal Time) Getting Started Let us talk about GitLab… The web-based DevOps platform GitLab offers an entire suite of tools for software development, version control, continuous integration, delivery (CI/CD), and communication. Based on Git, the well-known distributed version control system, provides a centralized repository management solution. View more...Data Protection: Utilizing the Power of SIEM and CASBAggregated on: Thu Jul 06 2023 17:46:05 GMT+0000 (Coordinated Universal Time) The requirement for monitoring, identifying harmful behaviors, and preventing or notifying of these activities is growing quickly as the number of malicious insider and external attacks rises. The threat landscape is constantly changing, making strong security monitoring and detection solutions essential. Security Information and Event Management (SIEM) and Cloud Access Security Broker (CASB) are two essential technologies that support this effort. While they both aim to improve security visibility and posture, their scopes and functionality are different. Let's examine their similarities and differences, recognize the advantages of each, and see how these two approaches might be combined to improve the security infrastructure of an organization. Similarities Between SIEM and CASB Centralized security management capabilities: Centralized security management capabilities are provided by both CASB and SIEM, respectively. Security event logs and data from many sources, including network devices, servers, and apps, are gathered and analyzed by SIEM solutions. The same is true for CASB systems, which offer centralized visibility and control over user activities, data, and cloud application usage across many cloud service providers. Identify threats using information and analytics: Both SIEM and CASB solutions help in threat detection using dynamic content and intelligence. To find trends and abnormalities suggestive of possible security incidents, SIEM systems use advanced analytics and correlation techniques. Cloud usage is tracked by CASB systems, which also spot unusual activity and send out alerts for possible threats or rule violations. Enable incident response: The Security Orchestration, Automation, and Response (SOAR) system or Incident management can use the incidents and detection produced by SIEM and CASB. Comparison of SIEM and CASB Focus and Scope: On-premises infrastructure and network security are the main areas that SIEM systems concentrate on. To give thorough security insights and facilitate efficient incident response, they gather and analyze logs and events from numerous sources across the organization's network. CASB solutions, on the other hand, are experts in securing cloud environments. They concentrate on tracking and protecting user interactions, data, and cloud applications across a range of cloud service providers. Data Source and Visibility: SIEM tools gather information from a variety of network-based sources, such as firewalls, intrusion detection systems, servers, and endpoints. This makes the organization's infrastructure completely visible. While offering fine-grained insight into cloud applications, data flows, user activities, and compliance posture within the cloud environment, CASB solutions, in contrast, concentrate on cloud-based data and activities. Security Controls and Enforcement: The main goal of SIEM systems is to find and examine security incidents while also producing alerts. Insights into security incidents are provided, and incident response is supported by the correlation of data from diverse sources. On the other hand, CASB solutions provide a selection of security measures tailored to cloud environments. They give organizations the tools to implement security policies and reduce cloud-specific risks, including data loss prevention (DLP), access control, encryption, and activity monitoring. Integration and Extensibility: SIEM solutions frequently integrate with a variety of security tools and technologies, enabling businesses to gather and correlate data from diverse sources. To improve total security visibility and reaction, they can be integrated with intrusion prevention systems, vulnerability scanners, and other security solutions. By integrating with the APIs of cloud service providers, CASB solutions give users insight and control over cloud data and apps. Complete Data Protection With Integration of SIEM and CASB The problem of protecting company data from malicious insiders or outside attackers is one that these two powerful solutions address on two separate sides. The two technologies work well together. These days, the majority of insider leaks involve transferring data from a cloud or SaaS application to an endpoint and then to another cloud or web destination. View more...Emerging Cross-Platform Tools for Building Better, More Integrated Mobile AppsAggregated on: Thu Jul 06 2023 17:16:05 GMT+0000 (Coordinated Universal Time) The mobile app landscape has never been more dynamic, with an ever-increasing number of platforms and devices vying for users' attention. So how do you stay ahead of the curve as a developer? The answer lies in leveraging emerging cross-platform tools that can help you build better, more integrated apps with greater ease and speed than ever before. In this blog post, we explore some of the most exciting cross-platform tools on the market today and discuss how they can help elevate your mobile development game to new heights. Whether you're a seasoned pro or just starting out, these tools offer something for everyone looking to seize the full potential of their app-building capabilities. Definition of Cross-Platform Mobile App Development In the realm of mobile app development, “cross-platform” refers to the ability to create an app that can be used on multiple mobile operating systems. This is in contrast to “native” app development, which creates an app specifically for one operating system. View more...Unraveling Data Integration ChallengesAggregated on: Thu Jul 06 2023 17:16:05 GMT+0000 (Coordinated Universal Time) Successful data integration requires a comprehensive understanding of potential pitfalls and the implementation of strategies to overcome or avoid them. By delving into some of the pitfalls identified in the original blog post, we aim to equip you with the knowledge and tools necessary to tackle these challenges head-on. From data format mismatches to data architecture alignment, we will examine the causes and impact and offer practical solutions to mitigate risks and optimize your integration efforts. Join us on this journey as we uncover the intricacies of data integration pitfalls and empower you to navigate them with confidence. Let's dive in and explore the strategies and insights that will set the stage for successful data integration initiatives. View more...Understanding Cloud-Native Application Protection Platforms: A Comprehensive OverviewAggregated on: Thu Jul 06 2023 17:01:05 GMT+0000 (Coordinated Universal Time) In today's rapidly evolving digital landscape, cloud-native applications have become the backbone of many organizations, offering scalability, flexibility, and agility. However, as the reliance on cloud-native technologies grows, so does the need for robust security measures to protect these applications and their sensitive data. This is where cloud-native application protection platforms come into play. Understanding cloud-native application protection platforms is crucial for any organization looking to secure its cloud-native applications effectively. These platforms offer a comprehensive set of security solutions tailored specifically for the unique challenges posed by cloud-native environments. By combining advanced threat detection, real-time monitoring, and proactive defense mechanisms, these platforms provide a multi-layered approach to safeguarding applications. View more...Unlock the Power of Software Heritage ArchiveAggregated on: Thu Jul 06 2023 16:46:06 GMT+0000 (Coordinated Universal Time) Recently I took the role of an ambassador for Software Heritage (SWH), a remarkable universal source code archive. I was surprised to discover that many of my colleagues and fellow software developers were unaware of SWH’s existence. After visiting the SWH website, they weren’t quite sure what it was about and why it is important. I decided to write this article for them and for those who still don’t know about source code archiving and the importance of software persistence. Let’s get started. Software Heritage provides a service for archiving and referencing historical and contemporary software — with a focus on human-readable source code. This is written in a Wikipedia article about SWH. It is pretty concisely written, but it is still not entirely clear what problem SWH is solving. Let me show you an example of the problem in purpose to understand the SWH initiative deeply. Problem If you are a researcher, scientist, or tech writer (like me), this example can be familiar to you. Imagine, some time ago, you wrote an article, and there were references to other articles and also to the source code. The reference could be just a web link to GitHub/GitLab or another place. The problem is that you don’t guarantee that the link you provided in the references would always exist or the source code snippet itself wouldn’t be changed. View more...Embracing DevSecOps: Staying Ahead of the Curve for Enhanced Software SecurityAggregated on: Thu Jul 06 2023 16:46:06 GMT+0000 (Coordinated Universal Time) In today's fast-paced digital landscape, ensuring the security of software applications is of paramount importance. Traditional software security practices often involve cumbersome and time-consuming processes that hinder productivity and hinder the rapid deployment of applications. That's where DevSecOps comes in. By combining the principles of development, security, and operations, DevSecOps offers a proactive approach to software security, enabling organizations to stay ahead of the curve and mitigate potential threats throughout the software development lifecycle. This article will explore the benefits of embracing DevSecOps and how it can enhance software security. What Is DevSecOps? Understanding the Basics DevSecOps is an evolving software development philosophy that integrates security practices into the entire software development pipeline. It emphasizes the importance of collaboration between developers, security teams, and operations staff to create a secure development environment. Unlike traditional approaches where security is a separate concern, DevSecOps advocates for the seamless integration of security controls and best practices throughout the software delivery process. View more...Graph Databases and BaseballAggregated on: Thu Jul 06 2023 16:46:05 GMT+0000 (Coordinated Universal Time) In my opinion, stating that baseball remains America's Pastime in 2023 is a tough argument to make, as it often is the third-most popular sport in the United States. However, it is very obvious that baseball has been and always will be statistics-driven: baseball-reference.com has data all the way back to the 1876 National League season. Two franchises from that season still exist — the Chicago Cubs and Atlanta Braves — but interestingly, both used a name subsequently used by their later-arriving American League brethren. And the data available continues to grow: Retrosheet researchers continue to search for box scores and play-by-plays for older seasons, their latest release including box scores and play-by-play for the 1919 and 1920 seasons. Occasionally this research changes individuals' stats. The data is available for download if interested. View more...Smaller Is Better: Ultra-Compact Graph Representations for Big GraphsAggregated on: Thu Jul 06 2023 16:01:05 GMT+0000 (Coordinated Universal Time) Recently at TerminusDB, at the behest of an active community member, we decided to do an ingest of the OpenAlex Authors collection. This is a pretty big data set. We found that after the ingest, not only did we have a database with 17 billion triples, but in comparison, our database is smaller than others (only 212GB as compared to 280GB), even though much better indexed. It also has the most compact triple store representation we are aware of, coming in at less than 14 bytes per triple for the tested dataset. You can search starting from subject, object, or predicate, in any direction, and get results quickly with an extremely low memory footprint, due to the utility of succinct data structures. View more...Publishing API to Anypoint Exchange Using MuleSoft PlatformAggregated on: Thu Jul 06 2023 16:01:05 GMT+0000 (Coordinated Universal Time) In the previous blog, we have seen how to create an API specification in the Anypoint Design Center using RAML. Now, we need a platform to publish it so that other developers can discover and access it. Anypoint Exchange is the platform that helps in accessing the APIs. Let's discuss the Anypoint Exchange now. Introduction to Anypoint Exchange Exchange is the platform provided by MuleSoft's Anypoint platform for sharing and reusing of assets within the Anypoint Platform ecosystem. Using the Anypoint Exchange, developers can access the pre-built assets that other developers have shared in the MuleSoft community. It promotes joint effort by allowing developers to reuse existing ready-to-use APIs and connectors rather than building everything from scratch. Developers can now import shared assets from the exchange directly into their projects. This saves a lot of time and effort during the development. View more...Architecting and Building LLM-Powered ApplicationsAggregated on: Thu Jul 06 2023 15:46:05 GMT+0000 (Coordinated Universal Time) This research article explores the process of building an LLM (Language Model-based Learning) application using document loaders, embeddings, vector stores, and prompt templates. LLMs have become increasingly popular in natural language processing tasks due to their ability to generate coherent and contextually relevant text. This article discusses the importance of LLMs, compares fine-tuning and context injection approaches, introduces LangChain, and provides a step-by-step process for building the LLM app. Python code snippets are included where applicable. Language is the primary medium through which humans communicate and express their thoughts and ideas. Understanding and processing human language has always been a fundamental challenge in the field of artificial intelligence. With the advancements in natural language processing (NLP), the development of sophisticated language models has paved the way for significant breakthroughs in various NLP tasks. View more... |
|
|