News AggregatorThe Role of Testing in Improving Financial InclusionAggregated on: 2023-06-22 14:15:57 Financial inclusion implies the availability and accessibility of financial services to all individuals, regardless of their socioeconomic status, geographic location, or other factors. It is crucial for economic growth and reducing poverty, yet millions of people worldwide are still excluded from formal financial systems. In this article, we will explore how testing can help improve financial inclusion and make financial services more accessible to all. By leveraging testing, banks, and other financial institutions can help close the gap in financial inclusion and provide essential services to those who need it most. View more...What Do Engineering Leaders Care About?Aggregated on: 2023-06-22 14:00:57 Last week we had our first Engineering Leaders Forum here in the Bay Area. Over 100 VPs and SVPs of Engineering from the Bay Area's leading companies registered. At some point, we had to open up a waiting list. Good problem to have. I have wanted to hold such an event for quite some time. Engineering leaders, as opposed to other personas, lack the opportunity to share their challenges and hear the perspective of others in a very safe environment. In the room last week, we had a few thousand years of experience. Based on the feedback, the format of roundtables was well received. I really appreciate the fact that both Kubiya.ai as well as Devzero, Turing, Uplevel, and AWS chose to sponsor the event and make it happen. I want to talk a little bit about some of the insights that we had from executives in the room. Again, I'll keep it generic so that I wouldn't share anything confidential. View more...OS Processes, Threads, and SemaphoresAggregated on: 2023-06-22 01:30:57 In the world of computer science, there are many different concepts and terms that are important to understand. Among these are computer thread, semaphore, and process. Each of these concepts plays a critical role in how computers operate, and understanding them is essential for anyone who wants to work in the field. In the world of computer programming, understanding the concepts of threads, semaphores, and processes is crucial to developing efficient and effective software. These three concepts are fundamental to the way modern operating systems and applications work, and they are essential for creating programs that can perform complex tasks while maximizing system resources. View more...Non-Traditional Project PlanningAggregated on: 2023-06-22 01:15:57 Most methodology discussions today start and end with how Agile is superior to Waterfall in software engineering; in reality, many other methodologies exist, each with their own pros and cons. Leadership, enamored with being agile, insist on Agile — or at least the perception of — even when another methodology is more appropriate for the project, team, business domain, customer, whatever. I view the bigger problem as methodology for methodology's sake: application without understanding, execution without adaptation. Thou shall do X as defined by said methodology, and so you shall regardless of lack of perceived benefits. View more...Millions of .Git Folders Were Exposed Publicly by MistakeAggregated on: 2023-06-21 20:45:57 2022 has been the year of source code leaks; Microsoft, Nvidia, Samsung, Rockstar, and many more companies have had their source code involuntarily open-sourced. But some new research by Cybernews has revealed that there are millions of private git repositories that are, in fact, not all that private. In this article, we will take a look at the research on exposed git repositories, review why this can be such a problem, and suggest what you can do differently. Nearly 2 Million Exposed Git Repositories Git is a technology that nearly all software developers use to collaborate and version control their software. You will likely be familiar with git repository hosts like GitHub, BitBucket, or GitLab, which all offer turnkey solutions to sign up and start pushing code to your own repositories and collaborating with others. Git can be a tricky technology and prone to user errors that can result in sensitive information being exposed. For example, when you create a new git repository on your machine, a .git folder is created. This folder contains all the information and meta-data about your project since it was created. If you made an edit from 2012 to your application, 10 years later, that edit is still hidden in that .git folder. If you commit an API key on a development branch 3 years ago, it's still inside this .git folder. Basically, unless you are certain you and no one on your team have ever committed anything remotely sensitive, which will be godly if true, this is likely a very sensitive folder. View more...What Happens When You Type a URL Into Your Browser?Aggregated on: 2023-06-21 20:15:57 This article aims the following audiences: Tech workers Students Product managers Marketing team Sales team There are no prerequisites to reading this article. I assume that you have used a web browser to navigate across the internet. View more...Using Error Codes to Improve API User Experience: Best Practices and Advanced TechniquesAggregated on: 2023-06-21 19:00:57 The success of an API is not just determined by its functionality but also by its user experience. A well-designed API that is easy to use and understand can make a significant difference in the success of an application. One key aspect of the API user experience is the handling of errors. When something goes wrong with an API call, developers need to know what went wrong and how to fix it. This is where error codes can be extremely useful. Error codes provide a standardized way to communicate errors to developers, making it easier for them to troubleshoot issues and improve their applications. View more...Elevating System Management: The Role of Monitoring and Observability in DevOpsAggregated on: 2023-06-21 18:15:57 In the ever-evolving world of DevOps, the ability to gain deep insights into system behavior, diagnose issues, and improve overall performance is one of the top priorities. Monitoring and observability are two key concepts that facilitate this process, offering valuable visibility into the health and performance of systems. While these terms are often used interchangeably, they represent distinct approaches to understanding and managing complex systems. In this article, we will explore the differences between monitoring and observability, provide examples to illustrate their applications and highlight their respective benefits. We will also delve into the techniques and tools used for effective monitoring and observability. Monitoring: Understanding System State Monitoring focuses on collecting and analyzing data about the state of a system or application. It typically involves setting up specific metrics, thresholds, and alerting mechanisms to track the performance and availability of various components. Common monitoring techniques and tools include: View more...Application Cost Reduction With Arm ServersAggregated on: 2023-06-21 17:15:57 This article covers a topic that may seem unusual, namely the Arm servers. For most developers, Arm is a dark horse in the world of server-class hardware dominated by Intel and AMD. But in truth, Arm servers have been around for a decade and are becoming increasingly popular thanks to their improved performance coupled with low maintenance costs. Let's look into their capabilities and see how your applications can benefit from migrating to this architecture. This article follows my talk on JRush Episode 4, dedicated to modern Java development for banking and FinTech. View more...Time Machine: A Look-Back at Java Sessions From NODES 2022Aggregated on: 2023-06-21 16:45:57 As we prepare for NODES 2023, I wanted to pull out the time machine and review the Java sessions from NODES 2022. I will be submitting some abstracts to the 2023 Call for Proposal soon, likely in the Java category, so I thought looking at last year’s sessions might give me some inspiration or ideas for gaps or continuations I might want to explore. I hope it will inspire you all in the Java community to do likewise! I would love to see a larger Java presence in the submissions and schedule lineup, and we can’t do that without all the wonderful ideas and projects going on in the Java ecosystem. View more...Strategy for Starting Test Automation in an OrganizationAggregated on: 2023-06-21 16:45:57 A well-crafted test automation strategy is essential for any organization or enterprise striving to provide top-quality products or services. Today, where we want a major chunk of test cases to be automated, the main painful area for every QA is understanding where to start. Through my personal experience, I have witnessed that many individuals struggle with initiating automation. While they may be familiar with the latest tools and technologies available in the market, selecting an automation tool and adopting a CI/CD approach is insufficient. Instead, they require a deeper understanding of where to commence automation. View more...Optimizing Database Queries: Exploring the Heuristic and Cost-Based ApproachesAggregated on: 2023-06-21 16:15:57 I think everyone at least once used the explaincommand or at least heard about it. This command demonstrates the query execution plan, but how exactly the DBMS arrives at it remains a mystery. And how does the DBMS understand that the selected query is optimal? Does it check all possible options? In this article, I will try to give a little idea of how query optimizers work from a theoretical point of view. View more...Sveltos: Simplifying Kubernetes Add-on Deployment and ConstraintsAggregated on: 2023-06-21 16:15:57 Sveltos, an open-source project, enables the deployment of Kubernetes add-ons across multiple clusters. It provides support for various deployment mechanisms such as Helm charts, customize resources, and resource YAMLs. With Sveltos, add-ons can be fetched from diverse sources for enhanced flexibility. When managing add-ons across numerous clusters, it becomes crucial to validate and enforce constraints before their deployment. In this article, we will delve into how Sveltos simplifies this process. With Sveltos, add-ons undergo rigorous validation to ensure they meet the specified criteria and adhere to the defined constraints. By enforcing these constraints, Sveltos guarantees the maintenance of consistency and reliability in add-on management across all clusters. View more...Resolve Encoding Issues of Resource Files in Java ProjectsAggregated on: 2023-06-21 16:00:57 In Java projects, resource files play a crucial role in storing and managing application data, such as localization strings, configuration settings, and other static content. However, working with resource files can sometimes lead to encoding issues, which can cause problems with text display and processing. In the first place, let us take a look at the definition of encoding. It refers to the process of representing characters in a specific format using bytes. Java uses Unicode as its character set, which supports a wide range of characters from various languages and scripts. View more...Backlog Refinement Cards: Use the Benefits of Gamification for Backlog RefinementAggregated on: 2023-06-21 15:45:57 In the landscape of Agile software development, backlog refinement stands as a cornerstone of project success. This process, which involves the prioritization, often estimation and decomposition of work into manageable pieces, is fundamental for effective sprint planning and efficient project execution. An innovative tool known as the Backlog Refinement Cards has been created to give a new gamified option to this process. Designed to decrease the complexity and size of backlog items before implementation, these cards are a game-changer in enhancing project predictability. Gamification in Backlog Refinement In Agile project management, the application of gamification techniques (like Dependency Poker), as seen with Backlog Refinement Cards, has yielded significant benefits. These cards introduce a fun, competitive, and collaborative element to the backlog refinement process, which helps to harness the collective wisdom of the team, ultimately resulting in more reliable and realistic project forecasts. View more...Observability Architecture: Financial Payments ExampleAggregated on: 2023-06-21 15:45:57 Cloud-native technology has been changing the way payment services are architected. In 2020, I presented a series of insights from real implementations adopting open-source and cloud-native technology to modernize payment services. The series consisted of six articles and covered architectural diagrams from logical, schematic, and detailed views of the various use cases uncovered. View more...Building Web Applications With .NET: Best Practices and TechniquesAggregated on: 2023-06-21 15:45:57 Building web applications is an art that has continued to evolve since the advent of the internet. Today, the Microsoft .NET platform stands as one of the reliable, versatile, and powerful frameworks for creating modern web applications. From desktop to mobile applications, .NET provides a set of tools that facilitate rapid, efficient, and scalable software development. This article delves into best practices and techniques that are integral when building modern web applications using. NET. Embrace the MVC Architecture One of the essential techniques when building applications with .NET is the Model-View-Controller (MVC) design pattern. This architecture separates your application into three interconnected parts - the model (data), the view (user interface), and the controller (processes that handle input). This separation facilitates better management of complex applications, improves testability, supports asynchronous technique, and enables cleaner and more organized code. View more...AI Threats Today: The Unseen Challenges in Our Automated WorldAggregated on: 2023-06-21 15:15:57 As our world becomes increasingly automated, the role of artificial intelligence (AI) in various domains has grown exponentially. While AI brings numerous benefits and advancements, it also introduces new threats and challenges in cybersecurity. This article will delve into the unseen challenges that AI threats pose, exploring the potential risks and vulnerabilities associated with this technology. Understanding AI Threats AI has revolutionized healthcare, finance, transportation, and more industries. However, its rapid integration into critical systems and decision-making processes allows malicious actors to exploit vulnerabilities. As a cybersecurity professional with 20 years of experience, I have witnessed firsthand the evolving landscape of cyber threats, and AI presents unique challenges that demand our attention. View more...GPT-4: The New OpenAI ModelAggregated on: 2023-06-21 15:15:57 In recent years, the development of natural language systems based on artificial intelligence has experienced unprecedented progress. Among these systems is GPT-4, the latest version of the OpenIA-powered conversational platform, which has revolutionized the way we interact with technology and opened up endless possibilities for human communication. GPT-4 has been trained with an enormous amount of data and has been designed to be more accurate, faster, and more flexible than ever before. Notable features include its ability to retain conversational context, its ability to generate abstract and creative responses, and its flexibility to be customized for different contexts and application areas. View more...Demystifying Machine Learning: Unveiling Algorithms, Models, and ApplicationsAggregated on: 2023-06-21 15:15:57 Machine learning is a rapidly evolving field within the broader field of artificial intelligence (AI). It involves the development of algorithms and models that enable computers to learn from and make predictions or decisions based on data. Machine learning has become increasingly popular in recent years due to its wide range of applications and its ability to automate complex tasks. What Is Machine Learning? At its core, machine learning is about creating mathematical models and algorithms that can learn from data. Instead of explicitly programming a computer to perform a specific task, machine learning algorithms learn from examples and patterns in the data to make predictions or take actions. This ability to learn and adapt makes machine learning particularly useful in handling complex and unstructured data. View more...Five Advanced Deployment Strategies To Consider for Your DevOps MethodologyAggregated on: 2023-06-21 15:00:57 For any organization in any environment, the need to revise code is inevitable. The goal of DevOps is to mitigate the troubles associated with this, including downtime and last-minute failures, so end-users will not be impacted. Engineers are constantly devising new and different types of application deployment strategies to make this change effortless and error-free. Application Deployment Strategies Used in DevOps Canary Deployment Blue-Green Deployment (sometimes known as red-black) Recreate Strategy (highlander ) Shadow Deployment A/B testing Deployment strategy Below, I will explain each strategy and when it is best to use them. View more...Healthcare’s Digital Accessibility ProblemAggregated on: 2023-06-21 15:00:57 The push for digital accessibility aims to ensure equal access and inclusion for all individuals. So why are healthcare companies failing to keep up? In this week’s episode of Dev Interrupted, we sit down with Plum Ertz, Director of Engineering at Ro, to dissect healthcare’s digital accessibility problem. Following explosive growth in telemedicine due to consumer behavior changes brought on by the pandemic, the healthcare industry has struggled to provide accessible healthcare services on the Internet, regardless of the technology or disability someone may have. Plum sheds light on the work being done at Ro to address these challenges, emphasizing the simple steps that teams can take to enhance their digital accessibility. View more...Distributed Tracing: Past, Present, and FutureAggregated on: 2023-06-21 14:45:57 Distributed Tracing is a divisive topic. Once the doyen of every KubeCon, the technology was expected to revolutionize observability. Fast forward five years, and the hype has subsided somewhat. There's a lot more talk about the pain, and adoption is moderate. Meanwhile, there continues to be steady activity around expanding and standardizing the technology — Open Telemetry (based on OpenTracing) is the 2nd largest CNCF project after Kubernetes. So, what is the deal with Distributed Tracing? Should one implement it right away or wait and watch? In this article, let's explore Distributed Tracing in depth: View more...Real-World Cyberattacks Targeting Data Science ToolsAggregated on: 2023-06-21 14:15:57 As the move to the cloud accelerates, organizations increasingly rely on large data teams to make data-driven business decisions. To accomplish their jobs, data professionals work with dedicated tools that are often deployed to development and production environments and are frequently given high privileges. Threat actors are innovators, constantly looking for new ways to penetrate organizations, and the expanded attack surface data science tools present is a prime opportunity. In order to identify currently existing threats and help organizations improve their security posture, Aqua Nautilus extensively researched the threats targeting cloud data science tools. We found that many data tools are exposed to threats and are being actively attacked in the wild. In this article, we’ll detail the attacks on Jupyter Notebooks and other popular open-source tools that data practitioners use to analyze and manipulate data. View more...APIs Under Attack: How To Prepare for and Respond to BreachesAggregated on: 2023-06-21 14:00:57 APIs are a critical part of modern software development, as they allow developers to build more powerful and efficient applications by reusing existing code and functionality. However, the very openness and accessibility of APIs also make them vulnerable to attack. Because APIs provide a way for different systems to communicate with each other, they are often exposed to the public internet and can be accessed by anyone with the right credentials. This makes them a popular target for attackers looking to steal sensitive data or gain unauthorized access to systems. View more...Querydsl vs. JPA Criteria, Part 4: PaginationAggregated on: 2023-06-21 13:15:57 Let's move forward in our journey of discovering and comparing JPA Criteria and Querydsl approaches. This post demonstrates a pagination feature in a custom query. This series consists of these articles: View more...Use Sidecar Pattern in AWS Lambda To Optimize Your Microservices ArchitectureAggregated on: 2023-06-21 13:00:57 Microservices architecture is becoming increasingly popular as it enables organizations to build complex, scalable applications by breaking them down into smaller, independent services. Microservices architecture is a software development approach that structures an application as a collection of small, independent services that are loosely coupled and communicate with each other through APIs. Each microservice performs a specific function within the application and can be developed, deployed, and scaled independently. This approach offers several benefits, including improved modularity, scalability, and flexibility, as well as easier management and maintenance. The sidecar pattern is a design pattern that involves attaching a secondary container or process to a primary container or process to provide additional functionality. In the context of microservices architecture, the sidecar pattern can be used to handle cross-cutting concerns such as security, configuration, and communication. The secondary container or process is referred to as the sidecar container or sidecar process. View more...Building Better dapps with Infura’s Polygon WebSocketAggregated on: 2023-06-21 12:30:57 Web3 dapps are often slow and clunky. But WebSockets on Ethereum L2s can help solve this problem by bringing real-time, bidirectional, client-server communications to the world of web3. 3rd party offerings (such as Infura’s WebSockets on Polygon) can help you create dynamic, low latency, next-gen dapps. In this article we’ll look in detail at WebSockets—what they are, how they compare to traditional HTTP, and some use cases where they shine brightest. Finally we’ll write a script that uses Infura’s Polygon Websocket to get real-time updates of all pending transactions associated with our crypto wallet. View more...Optimizing API Resource Utilization With Rate Limiting and Throttle ControlsAggregated on: 2023-06-20 23:00:56 APIs are a vital component in the modern digital landscape, enabling applications to interact with each other and access data from various sources. However, as the number of applications relying on APIs continues to grow, it's increasingly crucial to ensure that APIs can handle the load and perform effectively. This is where optimizing API resource utilization comes into play. API resource utilization refers to the utilization of resources like CPU, memory, and network bandwidth by APIs to handle incoming requests. If the utilization of these resources is not optimized, it can lead to poor performance, stability issues, and a poor user experience. View more...How to Get Started With Istio in Kubernetes in 5 StepsAggregated on: 2023-06-20 22:45:56 Applications nowadays are distributed as microservices all over the cloud. Organizations use Kubernetes to manage these applications at scale, which has brought great flexibility and agility for development teams. However, microservices and multicloud applications have given rise to new challenges. Now, it is harder to configure communication between distributed services and secure the data in transit. So it is inevitable for organizations to use service mesh, specifically Istio. In this article, we will briefly look at what Istio is and then see how to install Istio in Kubernetes in just 5 steps. View more...Modern Access Control ExplainedAggregated on: 2023-06-20 22:30:56 There is a lot of confusion around modern authorization. In this post, I lay out the differences between authentication and authorization and review the evolving challenge of application authorization. I then describe the two approaches to cloud-native access control and introduce an open-source project that marries the best of both. Authentication vs. Authorization There is a common misconception about authorization and authentication. People tend to use the two terms interchangeably, or lump them up as “auth,” but they are two distinct processes. View more...Data Governance – Data Privacy and Security – Part 1Aggregated on: 2023-06-20 21:30:56 In every organization, there may be multiple source systems for various needs. Depending on how big the organization is, the source systems may vary from one to more than 1,000. Organizations often centralize their data in one place, integrate it, and derive value out of the data, such as a 360-degree view of customers, products, and so forth. To achieve this, a good data governance framework needs to be in place. The Data Governance framework helps organizations to group the data in the appropriate way, manage the data, ensure the quality of the data, verify the consistency of data, and completeness of data, all to improve decision-making abilities and secure the data in an apt way. View more...Scaling Quality Engineering: Embracing End-to-End Testing for Agile Success in SAFeAggregated on: 2023-06-20 20:45:56 In today's fast-paced software development environment, the Scaled Agile Framework (SAFe) has emerged as a leading methodology for organizations to scale Agile practices. One crucial aspect of software development in SAFe is end-to-end testing. This article aims to explore the significance of end-to-end testing within the Scaled Agile Framework (SAFe) and its role in ensuring high-quality software delivery. The article discusses various types of end-to-end testing, including functional automation, early performance testing, user acceptance testing, and web accessibility testing. It delves into the process of writing acceptance criteria for SAFe user stories, features, and epics and explains how these are tested within SAFe ceremonies. The article highlights the key stakeholders involved in end-to-end testing and their responsibilities for successful implementation. Furthermore, it maps the activities associated with end-to-end testing to SAFe ceremonies, providing a comprehensive understanding of the testing process. The article concludes by emphasizing the importance of end-to-end testing in achieving Agile success within the SAFe framework, ensuring seamless functionality, integration, and customer satisfaction. End-to-End Testing in Scaled Agile Framework End-to-End testing in SAFe Agile is a critical aspect of ensuring the seamless functionality and integration of software systems across the Scaled Agile Framework (SAFe). Unlike other forms of testing, such as unit testing, integration testing, and system testing, which focus on specific levels or components, end-to-end testing in SAFe Agile examines the entire system flow within the SAFe context. It aims to validate the end-to-end functionality, performance, and integration of software systems across multiple teams and value streams within the SAFe framework. View more...Choosing the Right Functions in C Programming: Strcpy vs. StrncpyAggregated on: 2023-06-20 20:45:56 C continues to be one of the most relevant programming languages despite the presence of more modern options. One of the reasons for this sustained popularity is C's functions. From 'fgets' to 'toupper,' C provides a variety of ways for string manipulation and other common operations, which make coding easier. However, with the threat of more advanced and relentless cyber-attacks, developers need to be careful with these C functions. They can create vulnerabilities in apps or systems that cybercriminals are itching to find and exploit. These vulnerabilities can be difficult to spot (for the owners) and rectify, especially if they are in disparate devices and shadow IT. View more...Node.js: Architectural Gems and Best Practices for Developers to ExcelAggregated on: 2023-06-20 20:30:56 Let me tell you about Node.js —it's fantastic! In the world of web development, you often need to handle tons of things—like serving web pages, processing data, or even chatting with users in real time. Here Node.js comes in to save the day! “Node.js is a JavaScript runtime environment that lets you run JavaScript code outside a web browser” It's like having a superpower that empowers JavaScript to do amazing things on the server side. View more...CI/CD Best Practices: Top 10 Practices for Financial ServicesAggregated on: 2023-06-20 16:00:56 As you probably already know, creating and releasing software has become challenging as teams, applications, and deployment infrastructure gets more sophisticated. Developers and organizations have come up with three interconnected but independent ways to organize and automate the processes involved in software development, testing, and release so that they can be done quickly and consistently. Furthermore, these techniques involve little or even zero human implication while creating new code and subsequent deployment. We are referring to the three primary approaches: Continuous Integration, Continuous Delivery, and Continuous Deployment. This article won’t go into the details of CI/CD but will rather take a look at CI/CD Best Practices. View more...Safeguard Your Cloud Native Applications: Empower Development With IBM Cloud App IDAggregated on: 2023-06-20 16:00:56 In application development, achieving a fast time-to-value for developers is vital. However, it is equally crucial to ensure that valuable data is accessible only to the right individuals while keeping unauthorized users out. In the current landscape, application developers require robust security capabilities to protect their applications. Incorporating IBM Cloud App ID into your applications can provide a solution by enabling swift resource security and authentication, even for developers without extensive security expertise. What Is IBM Cloud App ID? IBM Cloud App ID is a cloud service that simplifies the process of adding authentication and authorization capabilities to applications. The service handles all operational aspects, allowing developers to focus on building secure applications. View more...Quantum AI: Unraveling the Potential of Quantum Computing in Machine LearningAggregated on: 2023-06-20 15:45:56 What Is QML? Quantum Machine Learning is a research area that combines quantum physics and machine learning. It uses quantum computing's potential for fast and complex computations to improve the efficiency and effectiveness of machine learning algorithms. This could speed up data processing and potentially reveal new insights from data. Challenges of QML Data encoding schemes: We have plenty of classical data which needs to convert into quantum states to have them as inputs to a quantum machine learning model. This step is crucial because an accurate data encoding scheme ensures that the quantum states are represented properly in the Bloch sphere as amplitudes, basis, or rotations. QML model design: This consists of designing parameterized quantum circuits (PQCs), which learn the latent patterns in the data and extract useful information from it. Usually, Pauli rotation gates are used for building the PQCs. However, better hybrid quantum-classical architectures need to be identified to increase the generalizability of the circuits. The fundamental unit of Quantum Learning: In classical machine learning, there is a fundamental unit of computation known as the neuron, which computes the weighted mean of all the inputs and gives a single numerical value as the output. A similar computational unit called the quantum neuron is required, which inherently uses the quantum mechanical properties to perform computations. Quantum Hardware limitations: The quantum computers available today are in the NISQ (Noisy Intermediate-Scale Quantum) era, which means that they have a few hundred noisy qubits which are only capable of executing quantum circuits up to a certain depth and do not provide accurate results. It also implies that the ability to retain information is limited. Quantum resource management: Due to the NISQ era, there is a limitation on the number of quantum gates that can be run, which indicates that a larger depth circuit will have more noisy results. Also, building fault-tolerant qubits and quantum gates is another challenge. Standardized Evaluation and Benchmarking: With rapid progress in QML research, it is important to set benchmarks for the models, for optimizers, cost functions, and architectures so that standardization can occur in this emerging field. This will aid in the process of evaluating and comparing different QML Algorithms/models for varying datasets. QML Opportunities Data encoding schemes: Efficient and optimal data encoding techniques need to be searched upon such that they accurately represent the quantum state vectors. For example, variational encoding schemes can be one of the approaches. Another could be designing an encoding system based on a given problem; an example could be encoding molecules using graph networks since they capture the essence of molecular structure for quantum chemistry computations. QML model design: There is a huge potential in developing quantum circuit architectures for efficient ansatz design and tailoring them to problem-specific applications. One of the avenues of research is to explore adaptive ansatz design, which can change its width and depth according to the problem size. There exists adapt-VQE, which is used for chemistry, but we need more such kinds of techniques for other areas as well. The fundamental unit of Quantum Learning: Very little work has been carried out to efficiently construct a neuron utilizing the quantum properties. Quantum complexity theory could be studied in detail to address this challenge. It provides tools and techniques to measure the complexity of quantum circuits and even search for optimal ansatz. Additionally, novel architectures could be constructed using the theories of condensed matter physics to search for materials more suitable for quantum computations. Quantum Hardware limitations: Several qubit modalities are currently available for executing quantum computations, such as superconducting, photonic, ion-traps, spin-based, and topological, and significant research is each being carried out to address the challenges they pose. However, it is still undecided which modality will be universal and suit all applications. Furthermore, no standard benchmarks exist that can describe the different hardware compatibility for certain applications. Quantum resource management: Several research groups worldwide are taking inspiration from abstract mathematical fields such as group theory and ring theory to define novel circuit reduction and optimization strategies to reduce the depth of circuits for NISQ devices. Furthermore, better quantum error correction schemes and fault-tolerant procedures are required to optimize resources. Standardized Evaluation and Benchmarking: Developing a standardized framework for evaluating quantum machine learning algorithms that include guidelines for problem description, algorithm implementation, hardware platform, and evaluation metrics. Creating diverse benchmark datasets and defining evaluation metrics that consider accuracy, training time, resource usage, and robustness to noise. QML Assessment Quantum Complexity theory: Applying quantum complexity theory to evaluate QML algorithms involves assessing the efficiency of these algorithms in terms of the required quantum resources, such as the number of qubits, the depth and complexity of quantum circuits, and the number of quantum gates. This analysis can provide valuable insights into the scalability and feasibility of QML algorithms for solving practical problems. Robustness to noise and errors: Evaluate the algorithm's performance in the presence of noise and errors, which are common in current quantum hardware. A successful QML algorithm should demonstrate resilience against these imperfections, maintaining its performance or providing error-correction mechanisms. Resource efficiency: Assess the algorithm's efficiency in terms of required quantum resources, such as the number of qubits, quantum gates, and circuit depth. A successful QML algorithm should minimize resource requirements, allowing for implementation on near-term and future quantum hardware. Accuracy: For supervised and unsupervised learning tasks, prediction or classification accuracy is crucial. The higher the accuracy, the better the QML algorithm performs. It is essential to compare the QML algorithm's accuracy with its classical counterpart to assess any potential advantages. Training and inference time: Evaluate the time required for training and inference using the QML algorithm. Faster training and inference times can provide a competitive advantage over classical algorithms, particularly for large-scale problems or real-time applications. Scalability: Assess the algorithm's scalability with respect to the size of the problem or dataset. A successful QML algorithm should maintain performance as the problem size increases, given the limitations of available quantum hardware. Timeliness or Maturity of QML Quantum machine learning is gaining traction due to recent advances in quantum hardware with companies like IBM, Google, and Rigetti, etc. developing increasingly powerful quantum processors, the development of hybrid quantum-classical algorithms such as QAOA and VQE, which allow for the practical application of QML on existing hardware, despite its limitations, theoretical developments in the understanding of quantum computing's theoretical foundations, such as quantum complexity theory and quantum error correction, has paved the way for designing more efficient and robust QML algorithms and increased interdisciplinary research. The growth in data complexity and limitations of classical computing also contribute to the timeliness of QML. View more...Best Practices for Exchange Server 2019 StorageAggregated on: 2023-06-20 15:30:56 There are several best practices when it comes to storage configuration in different setups of Exchange Server. In this article, we are going to discuss some best practices you can follow when it comes to the storage configuration in Exchange Server 2019. The Ideal Setup The ideal setup (see the below image) with the required storage depends on the needs of the business. View more...Front-End Development TrendsAggregated on: 2023-06-20 15:30:56 The constant evolution and ever-changing trends characterize software development. As a software developer, staying up to date with the latest advancements is crucial. This is vital for front-end development in creating a seamless and engaging user experience. The front end is part of an application that users directly interact with, making it imperative to prioritize a smooth and enjoyable user experience. From ensuring well-structured layouts to incorporating captivating animations, front-end developers hold the key to crafting memorable user experiences. View more...The AI Adoption Barrier: Key Challenges and How To Overcome ThemAggregated on: 2023-06-20 15:00:56 Artificial Intelligence (AI) has become quite important in recent years to drive up business performance. Enterprises across various industries have started adopting AI to increase efficiency and productivity. View more...Seamless Feature Release Without Deployment Using IBM Cloud AppConfiguration: An Alternative to LaunchDarklyAggregated on: 2023-06-20 15:00:56 In today’s fast-paced software development landscape, releasing new features quickly and efficiently to meet user demands is crucial. Traditional deployment processes often involve downtime and complex release cycles. However, with IBM Cloud AppConfiguration, you can seamlessly release new features without the need for deployment, minimizing disruptions and maximizing user satisfaction. In this article, we will explore how you can leverage the power of IBM Cloud AppConfiguration to effortlessly release features. What Is IBM Cloud AppConfiguration? IBM Cloud AppConfiguration is a feature management service provided by IBM Cloud. It allows developers to easily control the release of features in their applications without the need for complex deployment processes. With AppConfiguration, developers can toggle feature flags, manage configuration parameters, and target specific user segments for feature rollouts. This flexibility enables agile development, seamless feature releases, and a personalized user experience. View more...The Great Data Mesh Debate: Will It Sink or Swim?Aggregated on: 2023-06-20 14:45:56 Data Mesh has been gaining attention in the industry as a new approach to managing data. However, amidst the excitement, there are concerns about its complexities and whether it can deliver on its promises. In this article, we will dive into the intricacies of Data Mesh, address the great debate around its obsolescence and explore the opportunities and challenges it presents. We will also discuss what the industry might be missing and the potential roadblocks that could hinder its successful implementation. Data Mesh: A Paradigm for Democratized and Scalable Data Architecture So, what does the prominently used term "data mesh" mean, and why should one consider implementing one? View more...Software Quality Management: A Comprehensive Guide With Examples and Best PracticesAggregated on: 2023-06-20 14:15:56 Software quality management involves keeping a close eye on software development and maintenance to ensure that it meets customer expectations and is bug-free. It includes activities like quality assurance, testing, and continuous improvement. With quality management, you can deliver software that is reliable, efficient, and easy to use. To build an app, developers should work on many factors, such as choosing their front-end framework and the limitations of app size. Testers have to ensure that they do their job with a near-perfect notion to ensure there are no bugs or defects. View more...Building the Best Kubernetes Test Cluster on MacOSAggregated on: 2023-06-20 14:00:56 As a platform engineer of many years now, Kubernetes has become one of those ubiquitous tools that are simply a must-have in many of our clients’ tech stacks. Considering that the big three cloud vendors (AWS, GCP, and Microsoft Azure) all now offer their own flavor of managed Kubernetes services, it is easy to see how it has become ever more prolific in the “cloud-native architecture” space. Like all cloud-native technologies, Kubernetes can be a challenge to test locally. On many of our projects, developers often use Docker-compose instead of Kubernetes to test their applications locally, which inevitably causes some friction when deploying them to a cloud environment. Platform engineers also need to test their Kubernetes infrastructure and manifests and often resort to using dedicated cloud environments to do so, which can be quite expensive. What was needed was a way to get as close as possible to a cloud-based managed cluster on a laptop. View more...Kafka: Navigating GDPR ComplianceAggregated on: 2023-06-20 14:00:56 Navigating the General Data Protection Regulation (GDPR) maze might be daunting. If you’re using Kafka for your data storage and processing, you might be wondering if you’re GDPR compliant, particularly with respect to the Right to Erasure or “Right to be Forgotten” (RTBF). In this post, we’ll delve into what this means for your Kafka deployment and explore potential solutions. Understanding GDPR and Kafka’s Challenge The GDPR is a regulation put in place to safeguard the privacy of individuals in the European Union (EU). It impacts anyone collecting or processing personal data within the EU, irrespective of their geographical location. View more...How WeBank Reduced Their Batch Processing Time by 58% With a Scale-Out MySQL AlternativeAggregated on: 2023-06-20 13:00:56 WeBank is China’s first privately-owned online bank backed by Tencent. WeBank offers accessible and high-quality financial services to underbanked individuals as well as small- and medium-sized enterprises. So far, WeBank has served over 250 million individual customers, 20 million individual business customers, and 1.5 million corporate customers. This case study explores WeBank’s successful use of PingCAP’s TiDB, an advanced, open-source, distributed SQL database, to clear its technical hurdles and accommodate business growth. View more...Build a Serverless Application for Image Label DetectionAggregated on: 2023-06-19 20:45:56 In this blog post, you will learn how to build a Serverless solution to process images using Amazon Rekognition, AWS Lambda and the Go programming language. Images uploaded to Amazon Simple Storage Service (S3) will trigger a Lambda function which will detect labels (using the AWS Go SDK) and persist the image label data to an Amazon DynamoDB table. You will be using the Go programming language for the business logic (thanks to the AWS-lambda-go library) as well as the infrastructure component (Go bindings for AWS CDK) to deploy the solution. View more...Mastering Proactive Defense: The Changing Face of Threat HuntingAggregated on: 2023-06-19 18:45:56 In today's rapidly evolving cyber threat landscape, traditional reactive approaches to cybersecurity are no longer sufficient. As attackers become more sophisticated, organizations must adopt proactive defense strategies to stay one step ahead. This article will delve into the changing face of threat hunting in 2023 and explore how cybersecurity professionals can master aggressive defense to combat emerging threats effectively. The Evolution of Threat Hunting Threat hunting has evolved from a reactive approach to a proactive one. Traditionally, organizations rely on security tools that detect known threats or anomalies after an attack. However, aggressive defense has become essential with the increasing complexity and frequency of attacks. Threat hunting now involves actively searching for signs of compromise within an organization's network and systems before an attack occurs. View more...Secure Coding Best PracticesAggregated on: 2023-06-19 18:15:56 Every single day, an extensive array of fresh software vulnerabilities is unearthed by diligent security researchers and analysts. Many of these vulnerabilities emerge due to the absence of secure coding practices. Exploiting such vulnerabilities can have severe consequences, as they can severely impair a business's financial or physical assets, erode trust, or disrupt critical services. For organizations reliant on their software for their operations, it becomes imperative for software developers to embrace secure coding practices. Secure coding entails a collection of practices that software developers adopt to fortify their code against cyberattacks and vulnerabilities. By adhering to coding standards that embody best practices, developers can incorporate safeguards that minimize the risks posed by vulnerabilities in their code. View more... |
|
|