News AggregatorMicrosoft Azure Key Management ServiceAggregated on: Wed Mar 15 2023 00:59:57 GMT+0000 (Coordinated Universal Time) Encryption keys in Azure can be controlled by the platform or the customer. Encryption keys, known as platform-managed keys (PMKs), are created, kept, and controlled exclusively by Azure. PMKs are not used in customer interactions. For instance, PMKs are the default type of keys used for Azure Data Encryption-at-Rest. View more...What Is Continuous Testing?Aggregated on: Wed Mar 15 2023 00:14:57 GMT+0000 (Coordinated Universal Time) Testing is a crucial part of the Software Development Lifecycle (SDLC). Testing should be included in every stage of the SDLC to get faster feedback and bake the quality within the product. Test automation can get you excellent results if it is implemented and used in an efficient way and continuous testing is the right approach. According to Markets and Markets, the continuous testing market is expected to grow at a compound annual growth rate of 15.9% during the forecast period of 2018-2023 and reach $2.41 billion by 2023. 2017 was considered the base year for estimating the market size. View more...Creating 'Crap' Faster Isn't an ImprovementAggregated on: Tue Mar 14 2023 22:29:57 GMT+0000 (Coordinated Universal Time) Over the last few weeks, there’s been a lot of chatter about ChatGPT, a writing tool built in OpenAI. So much noise, in fact, that everyone from CNN, the NYT, Forbes, the Atlantic, the Washington Post, the Guardian, BBC, TechCrunch, CNet, and approximately a half billion techbruhs on YouTube had to sound off on it. All in the last two weeks. The opinions range from incredulous to breathless to skeptical — albeit carefully so. Nobody really knows what the next few weeks will bring, and therefore nobody is willing to declare ChatGPT entirely one thing or another. View more...A Simple Method for Training GPT-2 To Generate Haiku Using the NanoGPT RepositoryAggregated on: Tue Mar 14 2023 22:29:57 GMT+0000 (Coordinated Universal Time) Purpose In this article, I will show how to easily train GPT-class neural networks from home. Let me start by saying that we won’t train NN from scratch, as that would require 8 (eight!) A100-class GPUs at least and a massive dataset. Instead, we’ll focus on fine-tuning a pre-trained GPT-2 model using a smaller dataset, which anyone can easily make or find online. OpenAI has kindly released GPT-2 under Modified MIT License. nanoGPT We’ll use the nanoGPT repository created by Andrej Karpathy for fast and easy GPT training. He has a comprehensive video lecture explaining how GPT-2 works and how to train such a neural network. However, we’re interested in fine-tuning the model using our own dataset and seeing the difference from the original (GPT-2 trained by OpenAI). View more...Don’t Rely Solely on Privileged Access Management (PAM) To Secure Your AccountsAggregated on: Tue Mar 14 2023 21:59:57 GMT+0000 (Coordinated Universal Time) Imagine burglars have stolen the keys to your home, which they then use to get inside and take whatever they want without being detected. A privileged account access breach is a bit like this. Cybercriminals can gain access to a privileged account from which they can steal confidential information and disrupt the normal operations of your business. The only way to protect against this type of attack is to ensure that only authorized users gain access to privileged accounts. And while Privileged Access Management (PAM) can help reduce risks, it also provides security teams with a false sense of security. View more...How To Calculate CPU vs. RAM Costs For More Accurate K8s Cost MonitoringAggregated on: Tue Mar 14 2023 21:59:57 GMT+0000 (Coordinated Universal Time) Cloud providers like AWS and Azure do this one thing that makes monitoring, reporting, and forecasting compute costs so hard. They often blend the CPU and RAM costs together. Why does that matter? View more...Pretty Data All in Neat RowsAggregated on: Tue Mar 14 2023 20:59:57 GMT+0000 (Coordinated Universal Time) DBA Mary extraordinary,What makes your tables grow?When queries propel through my TSQL shelldata ingests into neat little rows. This will likely be the last post in my series about monitoring the pihole DNS server. You can find part 1, "Your Pi-Hole is a Rich Source of Data," here and part 2, "Mind the Gap," here. If you've been reading along, it should be clear that this is not so much about the pi-hole in particular as it is about ways New Relic allows you to manipulate observability data. The truth is that the pi-hole provided me with a number of great examples of the different ways data can present itself out of various systems. View more...A Complete Guide on ERR_SSL_PROTOCOL_ERRORAggregated on: Tue Mar 14 2023 20:59:57 GMT+0000 (Coordinated Universal Time) What Does ERR_SSL_PROTOCOL_ERROR Mean? ERR_SSL_PROTOCOL_ERROR is an error message that Chrome shows when a website has a problem with the SSL/TLS certificate. SSL/TLS is the protocol that encrypts data between your browser and the web server, and it’s essential for secure communication. In this article, we will guide you on how to fix ERR_SSL_PROTOCOL_ERROR in Chrome. Before we proceed with the solutions, let’s take a quick look at the reasons that cause this error. View more...Introducing Remult: The Open Source Backend to Frontend Framework You Always WantedAggregated on: Tue Mar 14 2023 20:59:57 GMT+0000 (Coordinated Universal Time) Application developers, as their name implies, like to develop applications––they ultimately care very little about frontend vs. backend and just want to deliver value to users. Being an application developer myself, and very much like other application developers, one of the things that constantly drive my decision-making when selecting tools and frameworks is the fact that I’m also quite lazy. My main objective is to be able to ship applications with as little effort as possible, and my pet peeve is silly repetitive, mechanical tasks that make me die a little inside every time I need to perform them. For example, I don’t like to remember to align things that don’t automatically align themselves, as one common example of a repetitive task that is completely superfluous. I guess my trademark is that when I encounter challenges, I will always look for ways to automate a solution. (Like the app I once built in the 90s to send a romantic text message to my girlfriend once a day––to overcome my romantic shortcomings). View more...Build Chatbot and Activate in Flutter App in 10 MinutesAggregated on: Tue Mar 14 2023 20:29:57 GMT+0000 (Coordinated Universal Time) Flutter is Google’s new open-source technology for creating native Android and iOS apps with a single codebase. Since it has ready-made and custom widgets, it’s easy to build the UI. Follow These Steps To Create a Flutter Chatbot Step 1: Setup an Account in Kommunicate Login to your Kommunicate dashboard and navigate to the Bot Integration section. View more...Stateful Stream Processing With Memphis and Apache SparkAggregated on: Tue Mar 14 2023 19:44:57 GMT+0000 (Coordinated Universal Time) Amazon Simple Storage Service (S3) is a highly scalable, durable, and secure object storage service offered by Amazon Web Services (AWS). S3 allows businesses to store and retrieve any amount of data from anywhere on the web by making use of its enterprise-level services. S3 is designed to be highly interoperable and integrates seamlessly with other Amazon Web Services (AWS) and third-party tools and technologies to process data stored in Amazon S3. One of which is Amazon EMR (Elastic MapReduce), which allows you to process large amounts of data using open-source tools such as Spark. Apache Spark is an open-source distributed computing system used for large-scale data processing. Spark is built to enable speed and supports various data sources, including the Amazon S3. Spark provides an efficient way to process large amounts of data and perform complex computations in minimal time. View more...Linking User Stories to a Data Model: A Tutorial for Agile Development With Jira and ERBuilderAggregated on: Tue Mar 14 2023 19:14:56 GMT+0000 (Coordinated Universal Time) User stories are an effective tool for capturing requirements and defining features in a way that is easy to understand, test, and verify. They are written in natural language, without any technical jargon, and are typically structured in a format that describes the user's identity, what they want to achieve, and why. For example, a user story might be something like, "As a customer, I want to be able to pay for my order online so that I can complete my purchase more quickly and easily." User stories are typically captured in a tool like Jira, which is a popular project management tool used by many Agile development teams. Jira allows teams to create and track user stories, assign them to team members, set priorities, and track progress. However, user stories are often just the starting point for software development. To turn a user story into a fully functional feature, you need to link it to the database objects in your data model. View more...ChatGPT and SalesforceAggregated on: Tue Mar 14 2023 19:14:56 GMT+0000 (Coordinated Universal Time) As businesses grow and expand, they often seek ways to automate processes and improve efficiency. ChatGPT is a powerful natural language processing (NLP) model developed by OpenAI. It is capable of generating human-like responses to text inputs and can be trained to understand the nuances of language. ChatGPT can be used to create chatbots that can help businesses automate customer support, lead generation, and other tasks. Integrating ChatGPT with Salesforce can provide businesses with a powerful tool for engaging with customers and employees. Here are some ways that ChatGPT integration can benefit businesses using Salesforce. View more...Use Golang for Data Processing With Amazon Kinesis and AWS LambdaAggregated on: Tue Mar 14 2023 19:14:56 GMT+0000 (Coordinated Universal Time) This blog post is for folks interested in learning how to use Golang and AWS Lambda to build a serverless solution. You will be using the aws-lambda-go library along with the AWS Go SDK v2 for an application that will process records from an Amazon Kinesis data stream and store them in a DynamoDB table. But that's not all! You will also use Go bindings for AWS CDK to implement "Infrastructure-as-code" for the entire solution and deploy it with the AWS CDK CLI. Introduction Amazon Kinesis is a platform for real-time data processing, ingestion, and analysis. Kinesis Data Streams is a serverless streaming data service (part of the Kinesis streaming data platform, along with Kinesis Data Firehose, Kinesis Video Streams, and Kinesis Data Analytics) that enables developers to collect, process, and analyze large amounts of data in real-time from various sources such as social media, IoT devices, logs, and more. AWS Lambda, on the other hand, is a serverless compute service that allows developers to run their code without having to manage the underlying infrastructure. View more...What’s New in the Latest Version of Angular V15?Aggregated on: Tue Mar 14 2023 18:44:57 GMT+0000 (Coordinated Universal Time) The newest version of Angular, Angular 15, was released on November 16, 2022, according to the Angular Team at Google. The Team has included several changes and additions in the current version to improve the performance and experience for developers. Yet, the Team accomplished numerous exciting things with the most recent Angular version. However, Angular V15 has not been lacking in features or updates that would interest programmers, company owners, or tech specialists. View more...Debezium vs DBConvert Streams: Which Offers Superior Performance in Data Streaming?Aggregated on: Tue Mar 14 2023 18:14:56 GMT+0000 (Coordinated Universal Time) In a contemporary application design that utilizes microservices and keeps up with dynamic analytics demands, it’s common to synchronize data from various databases dispersed throughout an enterprise and integrated with diverse systems. In modern applications, real-time syncing of databases is often necessary, so the synchronization cannot wait for a batch job to run daily or even hourly. The “Change Data Capture” concept addresses this need for real-time syncing by capturing and tracking any changes made to the data in the source databases and propagating those changes to the target databases in real time. View more...Why Choose React Native Platform for Your 2023 App Development Project?Aggregated on: Tue Mar 14 2023 17:44:56 GMT+0000 (Coordinated Universal Time) In today's fast-paced digital world, mobile app development has become a crucial aspect for businesses to succeed in the market. However, with a variety of platforms available, it can be overwhelming to choose the right one for your project. However, React Native has emerged as a leading choice for app development due to its flexibility, performance, and cost-effectiveness. React Native is an open-source mobile application development framework that allows developers to build native apps for iOS and Android platforms using a single codebase. Developed by Facebook, React Native has gained immense popularity in recent years and has been adopted by companies such as Instagram, Uber, and Airbnb. View more...DevSecOps: The Future of Secure Software DevelopmentAggregated on: Tue Mar 14 2023 16:29:56 GMT+0000 (Coordinated Universal Time) As a software developer with over a decade of experience, I've witnessed firsthand the evolution of software development practices. One such practice that has gained significant traction in recent years is DevSecOps. In my opinion, DevSecOps is a necessary evolution of software development practices in response to the growing cybersecurity threat landscape. The traditional approach to software development involved developing software first and then conducting a security review of the software afterward. Unfortunately, this approach was prone to security vulnerabilities, leading to data breaches and other cybersecurity risks. DevSecOps, on the other hand, incorporates security into the software development process from the beginning. View more...Getting Started With Prometheus Workshop: Installing PrometheusAggregated on: Tue Mar 14 2023 16:29:56 GMT+0000 (Coordinated Universal Time) Are you looking to get away from proprietary instrumentation? Are you interested in open-source observability, but lack the knowledge to just dive right in? This workshop is for you, designed to expand your knowledge and understanding of open-source observability tooling that is available to you today. Dive right into a free, online, self-paced, hands-on workshop introducing you to Prometheus. Prometheus is an open-source systems monitoring and alerting tool kit that enables you to hit the ground running with discovering, collecting, and querying your observability today. Over the course of this workshop, you will learn what Prometheus is, what it is not, install it, start collecting metrics, and learn all the things you need to know to become effective at running Prometheus in your observability stack. View more...Factors for Determining Optimized File Format for Spark ApplicationsAggregated on: Tue Mar 14 2023 14:44:56 GMT+0000 (Coordinated Universal Time) When it comes to selecting an optimized file format for Apache Spark applications, there are several options to consider, including Parquet, ORC, and Avro. Each format has its strengths and weaknesses, and the decision of which one to choose depends on the specific needs of your use case. In this article, we will discuss how to select the optimized file format for Apache Spark applications. Data Size and Query Performance One of the most important factors to consider when selecting a file format for Apache Spark applications is the size of your data and the performance of your queries. If you are dealing with large datasets and require fast query processing times, Parquet is a better choice than ORC or Avro. Parquet's columnar storage format allows for faster query execution and selective column scans, leading to improved performance. ORC and Avro are also optimized for query performance but may not perform as well as Parquet for larger datasets. View more...Key Elements of Site Reliability Engineering (SRE)Aggregated on: Tue Mar 14 2023 13:44:56 GMT+0000 (Coordinated Universal Time) Site Reliability Engineering (SRE) is a systematic and data-driven approach to improving the reliability, scalability, and efficiency of systems. It combines principles of software engineering, operations, and quality assurance to ensure that systems meet performance goals and business objectives. This article discusses the key elements of SRE, including reliability goals and objectives, reliability testing, workload modeling, chaos engineering, and infrastructure readiness testing. The importance of SRE in improving user experience, system efficiency, scalability, and reliability, and achieving better business outcomes is also discussed. View more...Test Execution Tutorial: A Comprehensive Guide With Examples and Best PracticesAggregated on: Tue Mar 14 2023 12:29:56 GMT+0000 (Coordinated Universal Time) Test Execution involves verifying the functionality of each feature in the software application, which is placed in different scenarios to validate its response in those situations. It plays a crucial role in the testing process to help teams create robust software applications that meet the end-user requirements. As testing software is a complex process, Test Execution helps the development team ensure efficiency, reliability, and compliance with industry standards. It is the final step in the testing process and is usually performed after the test cases have been created and reviewed. View more...Challenges With Traditional Data Sharing and Emergence of Delta Sharing to the RescueAggregated on: Tue Mar 14 2023 11:44:56 GMT+0000 (Coordinated Universal Time) With the increasing number of organizations championing data as a strategic asset and creating financial value from sharing data, sharing of data remained a challenge. While use cases are endless, starting from data monetization strategies in enterprises to data as a service from fleet management to drug discovery and then to real-time public data feeds of environmental data such as climate change or water resources and many others. And yet, sharing data across different platforms, companies, and clouds is no easy task. Almost all of them lack today’s open-format, multi-cloud, and performance standards. View more...5 Software Developer Competencies: How To Recognize a Good ProgrammerAggregated on: Tue Mar 14 2023 03:14:56 GMT+0000 (Coordinated Universal Time) A geek programmer acquires technologies like shiny tools in a utility belt. But every technology is simply a collection of patterns expressed in a language, and most patterns are not new; if we understand the patterns, we can readily understand any technology that embodies them. At various times in my life, I’ve geeked out on programming, but I don’t think that’s the hallmark of a good developer. What could be wrong with a talented developer who gives 110% creating clear, accurate maintainable code from 9 to 5, enjoys lunch while talking about anything but work, and goes home to a life unleashed from a keyboard? View more...Spring Boot vs Eclipse Micro Profile: Resident Set Size (RSS) and Time to First Request (TFR) ComparativeAggregated on: Tue Mar 14 2023 02:29:56 GMT+0000 (Coordinated Universal Time) In this article, we’re going to compare some essential metrics of web applications using two different Java stacks: Spring Boot and Eclipse Micro Profile. More precisely, we’ll implement the same web application in Spring Boot 3.0.2 and Eclipse Micro Profile 4.2. These releases are the most recent at the time of this writing. Since there are several implementations of Eclipse Micro Profile, we’ll be using one of the most famous: Quarkus. At the time of this writing, the most recent Quarkus release is 2.16.2. This mention is important regarding Eclipse Micro Profile because, as opposed to Spring Boot, which isn’t based on any specification and, consequently, the question of the implementation doesn’t exist, Eclipse Micro Profile has largely been adopted by many editors who provide different implementations, among which Quarkus, Wildfly, Open Liberty and Payara are from the most evangelical. View more...Building a Real-Time App With Spring Boot, Cassandra, Pulsar, React, and HillaAggregated on: Tue Mar 14 2023 00:59:56 GMT+0000 (Coordinated Universal Time) When it comes to managing large amounts of data in a distributed system, Apache Cassandra and Apache Pulsar are two names that often come up. Apache Cassandra is a highly scalable NoSQL database that excels at handling high-velocity writes and queries across multiple nodes. It is an ideal solution for use cases such as user profile management, product catalogs, and real-time analytics. View more...File Uploads for the Web (1): Uploading Files With HTMLAggregated on: Mon Mar 13 2023 23:14:56 GMT+0000 (Coordinated Universal Time) Today we are kicking off the first article in a series all about uploading files to the web. In this article, we’ll start with the basics of using HTML. The full series will look like this: Uploading files with HTML Uploading files with JavaScript Receiving file uploads with Node.js (Nuxt.js) Optimizing storage costs with Object Storage Optimizing delivery with a CDN Securing file uploads with malware scans View more...Loading Pandas DataFrames Into QuestDBAggregated on: Mon Mar 13 2023 22:29:56 GMT+0000 (Coordinated Universal Time) In this article, learn how to improve your time series analysis capability by using the QuestDB Python package to ingest Pandas DataFrames. Introduction Pandas is an open-source data analysis and data manipulation library for Python that has become an essential tool for data scientists and analysts. It provides a simple and intuitive way to manipulate data, making it a popular choice for data analysis tasks. View more...What Are SLOs, SLIs, and SLAs?Aggregated on: Mon Mar 13 2023 21:59:56 GMT+0000 (Coordinated Universal Time) Site reliability engineering (SRE) is the practice of applying software engineering expertise to DevOps and operations problems. SRE, which was popularized by the 2016 publication of Site Reliability Engineering: How Google Runs Production Systems, often means proactively writing code and developing internal applications to combat reliability and performance concerns. In SRE, service levels describe services provided to users within a given period of time in measurable terms. Service level objectives (SLOs) are the goals set for the availability expected out of a system. Service level indicators (SLIs) are the key measurements and metrics to determine the availability of a system. Service level agreements (SLAs) are the legal contracts that explain what is agreed upon and what happens if systems don’t meet SLOs. View more...JWT Authentication and Authorization: A Detailed IntroductionAggregated on: Mon Mar 13 2023 21:29:56 GMT+0000 (Coordinated Universal Time) In this article, we will discuss authentication and authorization using the JWT token and different cryptographic algorithms and techniques. So, we will be looking at the following things one by one: Introduction of JWT Token Why JWT Token? Structure of JWT Token Client-Server Scenario With JWT Token Client-Server Scenario With JWT Refresh Token Let’s start one by one with the basics and real-time scenarios. View more...Spinnaker vs. Argo CD: Best Tools for Continuous DeliveryAggregated on: Mon Mar 13 2023 21:29:56 GMT+0000 (Coordinated Universal Time) Intro to CD Adopting containers has been a common strategy for enterprises to roll out new application changes quickly, deploy efficiently, and run applications securely. Today, to achieve those goals, many enterprises are now adopting continuous delivery (CD) in order to deploy changes into production quickly, frequently, and safely. View more...SQL To Find Stored Procedure Compilation Error in SQL ServerAggregated on: Mon Mar 13 2023 20:44:56 GMT+0000 (Coordinated Universal Time) SQL Server is a relational database management system (RDBMS) developed by Microsoft Corporation. It is a powerful platform for creating, managing, and querying large-scale databases. SQL Server is used by companies of all sizes to manage, store, and retrieve data for various applications. Apart from allowing to store and manipulate data, the SQL server system provides a set of system objects/tables that are used to store metadata and configuration information about the database engine. These are known as system catalog views. These system tables contain information about various objects within the database, such as tables, indexes, stored procedures, views, constraints, etc. View more...Uber System DesignAggregated on: Mon Mar 13 2023 20:44:56 GMT+0000 (Coordinated Universal Time) The popular implementations of the ride-hailing service are the following: Uber Lyft Curb Grab Requirements The rider can see all the available nearby drivers The driver can accept a trip requested by the rider The current location of the rider and driver should be continuously published on the trip confirmation Data Storage View more...Challenges and Checklists While Migrating COTS Application to CloudAggregated on: Mon Mar 13 2023 19:44:56 GMT+0000 (Coordinated Universal Time) The world is moving rapidly towards digitization with a cloud-native approach. The first step towards this journey is migrating the applications to the cloud, preferably with re-host and re-platform disposition. While custom applications are comparatively easier to migrate, a bigger challenge, analysis, and decision arises w.r.t to COTS (commercial off-the-shelf) applications. This blog discusses critical challenges and a checklist approach before one starts COTS migration. The term ‘modernization’ used here refers to replacing and enabling the legacy product with a cloud-compatible version. Challenges and Checklists Roadmap to retain/replace/retire the Product — Answers to the following queries may lead to retain/replace/retire the product and potential application consolidation and rationalization (to be run as a separate enterprise program, outside migration) Are business/end users using this product frequently as a business-critical application? Is this product/application being used locally or globally (the same app/product is set up in different regions/countries and being used almost the same way)? Can the functionalities be addressed by another (existing) application with enhanced customization? Note: the above queries are best answered by the client's business team and the client's industry domain SME. Version Compatibility — Verify the Product Compatibility matrix and documentation w.r.t. technology stack, compliance with the cloud platform, and ensure those can be supported in the target cloud architecture. Each cloud follows a set of security standards and policies supported level of software/technologies. Similarly, the cloud also should support various regulatory compliance w.r.t. client’s industry domain. In general, the OS, middleware, etc., are supported up to N-1 level where N is the latest GA (general availability) release of system/software component. Vendor Support of Product — Check if the vendor has a roadmap for supporting the on-prem hosted product version. It also needs to be verified if the existing system requirements of the product are supported in the target cloud. This may lead to an upgrade before migration. Some vendors, as part of digital transformation, take multi-tenant and software-as-a-service approaches and may force customers to adopt the same for the product. SaaS-Adoption — Does the product has SaaS, and if so, is that acceptable to the client w.r.t Data Privacy and security? Also, one should do a cost evaluation compared to a hosted solution. Verify that SaaS offering support required integration with existing interfaces as well as user accessibility (authentication/authorization) and security. System Integration Landscape — The current product may use an integration style/protocol/port with internal/external systems. As the product is now planned to be on the cloud, the same protocol /port may not be supported as per security standards and may need a separate cloud-specific port. Sometimes, this may lead to a re-design of the product itself which is rare to achieve within the timeline. Most of the time, in this scenario, exceptional approval has been achieved from CSO (chief security office) for existing ports to be allowed over the cloud. Resource Optimization — For business-critical applications, it’s an important architecture decision to have a cost-effective approach towards scalability, availability, improved fault tolerance, and faster deployment. Moving to container will help in all these aspects; however, the COTS product image needs to be ‘lightweight’ and secured. So, one needs to check if the product can be hosted on a container and if has a secure image registered in an official registry approved by the product vendor. Migrating to a container-based approach require extensive integration effort and security/penetration testing. File-Based Integration — The existing and target configuration of file share depends on the protocol supported (SMB, NFS, DFS, etc.) and whether both systems (publisher and consumer of files) within the same network domain. In target, the domain of participating systems will be different networks by the underlying hypervisor. This also needs specific ports of communication to be opened between the cloud and on-prem. Migration Path — Any product migration can choose one of two paths —1) Migrate the new product to the cloud directly, 2) Upgrade the product on-prem and then migrate to the cloud. The first option poses a higher risk in terms of performance and integration as the newer/upgraded version is likely to have different interfacing, port, and technology. The initial upgrade, system, integration, required testing, and compatibility must be done on-premise with all ecosystems and get business approval. This will drastically reduce product testing and integration effort while migrating to the cloud. Implementation RACI — Once the target version of the product is decided for migration, it becomes critical to get the right SME and establish a RACI (Responsible, Accountable, Accountable, Informed) matrix. While setting up the infrastructure and required network can be done by SI (service integrator) and the cloud team, the installation, upgrade, product installation configuration, and integration need to be carried out by the product/COTS SME, who should be from the product vendor team. Generally, the SME has to be engaged from the initial conversation of the upgrade-migrate path and continue to be part of core implementation team. The SI, through the client, must raise a risk of SME availability and timeline and mitigate by the product team’s confirmation on this. For SaaS adoption of the product, the product SME must be included for integration as well as security architecture/design. Users Access Mechanism — The legacy version of many COTS products requires an older way of accessing the product — through additional security software like Citrix, F5, Array Network, FortiClients, etc. (a separate URL is used to access the application/product). This needs users' laptops/devices to install and maintain separate software, configuration, and distribution whenever required. We should look for adopting the modern version of the COTS now support https/WebAPI, which is secure and does not require an additional layer. Observability and Insight — As we take an application to the cloud, it is critical that the application generates the right level of traces, logs, and metrics so that cloud-native monitoring tools can capture and use for alerting and incident management. The product should be configurable to generate the right data, which will help building predictive algorithms (using AI/ML). This can provide actionable insight observability and will help taking proactive action to reduce downtime and ensure system health and uptime. So, it is important to adopt the suitable (easily configurable to send logs, set traces, levels, etc.) product version for migration/modernization target architecture. View more...Development of Freestyle Libre 2 App-OverviewAggregated on: Mon Mar 13 2023 19:14:56 GMT+0000 (Coordinated Universal Time) Introduction to the Freestyle Libre 2 App The Freestyle Libre 2 app is a mobile application that allows users to track their glucose levels using their smartphones. The app is developed for CGM (Continuous Glucose Monitoring) and is designed to work with the Freestyle Libre 2 glucose monitoring system developed by Abbott. In this article, we will see an overview of How the Freestyle Libre 2 app was developed and which multiple languages were used in the process and launch. Programming Languages Used in Developing the App To develop the Freestyle Libre 2 app, multiple programming languages were used, including Java, Kotlin, Objective-C, and Swift. These languages were chosen because they are commonly used for developing mobile applications on the respective platforms, including Android and iOS. View more...How to Engineer Your Technical Debt ResponseAggregated on: Mon Mar 13 2023 18:44:56 GMT+0000 (Coordinated Universal Time) The Southwest Airlines fiasco from December 2022 and the FAA Notam database fiasco from January 2023 had one thing in common: their respective root causes were mired in technical debt. At its most basic, technical debt represents some kind of technology mess that someone has to clean up. In many cases, technical debt results from poorly written code, but more often than not, it is more a result of evolving requirements that older software simply cannot keep up with. View more...Hierarchy in MDM: What and WhyAggregated on: Mon Mar 13 2023 18:14:56 GMT+0000 (Coordinated Universal Time) What Is Hierarchy? In master data management, hierarchy management is an essential component. It allows a comprehensive view of different domains within an organization. It links the relationship among customers, suppliers, products, locations, and other entities within the business. Hierarchy Used in Different Master Data Domains Hierarchy in MDM is used in several domains, such as party master data, location master data, and product master data. Party master data includes the company, business contacts (customers, suppliers, and related business partners), and individuals (employees, customers, and contractors). It deals with customers, providers, and other business entities. The accounts are settled in the department, legal representatives, and parent organization sequence at the national level; and then at the global level. Location master data occupies the external hierarchies around the globe ranging from continents to the down level to streets and buildings. In contrast, internal hierarchies include geographies such as sales districts and different regions in the organization. Product master data is related to external and internal products. External products may be UNSPSC, HS, ETIM, etc. Contrarily internal products are linked to reporting, purchasing, and sales of products, etc. View more...Practical Example of Using CSS LayerAggregated on: Mon Mar 13 2023 18:14:56 GMT+0000 (Coordinated Universal Time) Let’s say we are developing a component library. Let’s say we are using React. View more...How to Setup a Multi-Account CloudWatch Cross Account Observability Using Terraform and CloudFormation Template for Your AWS OrganizationAggregated on: Mon Mar 13 2023 17:29:56 GMT+0000 (Coordinated Universal Time) Disclaimer: All the views and opinions expressed in the blog belong solely to the author and not necessarily to the author's employer or any other group or individual. This is not a promotion of any service, feature, or platform. In my previous article on CloudWatch(CW) cross-account observability for AWS Organization, I provided a step-by-step guide on how to set up multi-account visibility and observability employing a newly released feature called CloudWatch cross-account observability using AWS Console. In this article, I will provide a step-by-step guide on how you can automate the CloudWatch cross-account observability for your AWS Organization using Terraform and a CloudFormation template. View more...How to Stay Up to Date With the Latest Trends and Technologies in Data Science?Aggregated on: Mon Mar 13 2023 17:29:56 GMT+0000 (Coordinated Universal Time) Data Science is a rapidly developing discipline that has the power to completely change how one conducts business and addresses issues. In order to apply the most efficient techniques and tools available, it is crucial for data scientists to stay current with the most recent trends and technology. In this article, you will discover ways to keep up with the most recent data science trends and technologies. You will learn about the latest industry trends and make sure that you are keeping pace with the advancements in the field. By the end of this article, you will have the knowledge and resources to stay current in the world of data science. View more...Difference Between Web And Mobile Application TestingAggregated on: Mon Mar 13 2023 16:14:56 GMT+0000 (Coordinated Universal Time) Smartphones have changed the way humans interact with technology. Be it travel, fitness, lifestyle, video games, or even services, it’s all just a few touches away (quite literally so). We only need to look at the growing throngs of smartphone or tablet users vs. desktop users to grasp this reality. According to a survey, there were over 54.57% of mobile users compared to 42.66% of desktop users from April 2021 to April 2022. However, with easy access to fast Internet and the massive variety of cheaper smartphones available today, these numbers are bound to bend significantly towards mobile usage in the future too. View more...What Is the Software Testing Life Cycle?Aggregated on: Mon Mar 13 2023 14:44:56 GMT+0000 (Coordinated Universal Time) In the world of Agile software development, software testing isn’t a single stage carried out just before the release of your application. Instead, software testing is a complex, multi-faceted process involving many phases and specific activities carried out methodologically and in parallel to the development process. And just as there is a software development life cycle (SDLC) for building the application, there is a software testing life cycle (STLC) for validating it. “Software Testing Life Cycle (STLC) is a sequence of verification and validation activities carried out in the course of software development to ensure that the quality goals of the software under test are met in full. ”. View more...Using Blockchain Tech to Optimize the Supply ChainAggregated on: Mon Mar 13 2023 13:44:56 GMT+0000 (Coordinated Universal Time) The blockchain space has gained considerable momentum over the past few years. Cryptocurrency remains this technology's most widely recognized use case, but new applications and benefits emerge as it grows. For example, supply chain optimization is one less glamorous but highly impactful use case for blockchains. Almost 90% of enterprise leaders are looking into blockchain technology in some capacity, and more than a third aim to use it in their supply chains. In addition, many organizations are eager to implement new technologies into these networks in light of the lingering supply chain disruptions from the COVID-19 pandemic. Blockchain developers that serve this need could make a substantial impact. View more...Guarding Against Threats: Examining the Strengths and Applications of Modern Security ModelsAggregated on: Mon Mar 13 2023 13:14:56 GMT+0000 (Coordinated Universal Time) In the world of computing, security plays a crucial role in safeguarding resources. Over the past decade, various security models have been created to ensure the confidentiality, integrity, and availability of information. They present methods that organizations can adopt to establish formal policies for information security. These policies aim to provide a structured approach for deploying security measures and practices to safeguard sensitive information and prevent security breaches. Having knowledge about different security models, their features, and their suitability for specific situations is crucial. It enables one to make informed decisions on selecting the appropriate security model that can effectively address security concerns and protect computational resources. Access Control Models One of the most utilized models, Access Control, is designed to assist in the creation of policies related to system/user-level access for diverse resources such as files, databases, and networks. The rule of thumb is to only provide access to the entity that they need to perform their duties. This model encompasses three main types of controls; Discretionary Access Control (DAC), Mandatory Access Control (MAC), and Role-based Access Control (RBAC). With DAC, a resource owner has the capability to decide 'who can access what?'. For example, the owner of a file decides who they want to grant access to and in what capacity (editing or viewing rights). Due to its versatility and ease of use, the DAC model is commonly adopted by smaller organizations. View more...Implementing PEG in JavaScriptAggregated on: Mon Mar 13 2023 12:14:56 GMT+0000 (Coordinated Universal Time) Parsing is an age-old technique used to analyze and extract meaning from languages (both natural and programming). Parser is a type of compiler that converts the stream of text into syntax or parse tree that conforms to some predefined grammar rules. There are various classifications to categorize these techniques, and plenty of content is available to explain them. So, for now, I am focusing on Parser Expression Grammar (which is the most recent research in parsing grammar). Also, I will try to explain the ways to implement a PEG parser. View more...GitLab vs Jenkins: Which Is the Best CI/CD Tool?Aggregated on: Sun Mar 12 2023 23:14:55 GMT+0000 (Coordinated Universal Time) CI/CD (Continuous Integration and Continuous Delivery) is an essential part of modern software development. CI/CD tools help developers automate the process of building, testing, and deploying software, which saves time and improves code quality. GitLab and Jenkins are two popular CI/CD tools that have gained widespread adoption in the software development industry. In this article, we will compare GitLab and Jenkins and help you decide which one is the best CI/CD tool for your organization. GitLab vs Jenkins 1. Ease of Use GitLab is an all-in-one platform that provides a comprehensive solution for CI/CD, version control, project management, and collaboration. It has a simple and intuitive user interface that makes it easy for developers to set up and configure their pipelines. On the other hand, Jenkins is a highly customizable tool that requires some technical expertise to set up and configure. It has a steep learning curve, and new users may find it challenging to get started. View more...Stateful Stream Processing With Memphis and Apache IcebergAggregated on: Sun Mar 12 2023 22:29:55 GMT+0000 (Coordinated Universal Time) Amazon Web Services S3 (Simple Storage Service) is a fully managed cloud storage service designed to store and access any amount of data anywhere. It is an object-based storage system that enables data storage and retrieval while providing various features such as data security, high availability, and easy access. Its scalability, durability, and security make it popular with businesses of all sizes. Apache Iceberg is an open-source tabular format for data warehousing that enables efficient and scalable data processing on cloud object stores, including AWS S3. It is designed to provide efficient query performance and optimize data storage while supporting ACID transactions and data versioning. The Iceberg format is optimized for cloud object storage, enabling fast query processing while minimizing storage costs. View more...DevOps vs Agile: Which Approach Will Win the Battle for Efficiency?Aggregated on: Sun Mar 12 2023 20:44:55 GMT+0000 (Coordinated Universal Time) As software development continues to evolve, there are two approaches that have gained a lot of attention in recent years - Agile and DevOps. Agile has been around since the early 2000s and focuses on delivering software frequently through iterative and incremental development. DevOps, on the other hand, is a newer approach that focuses on speeding up the software delivery process through collaboration, automation, and continuous delivery. While both Agile and DevOps aim to improve efficiency and collaboration within the development team, there are some key differences between the two approaches. Agile is focused on the software development process, while DevOps is focused on deployment, integration, and delivery. Agile uses a methodology of sprints, daily stand-ups, and retrospectives to deliver working software frequently. DevOps, on the other hand, uses continuous integration and continuous deployment to speed up the delivery process. View more...Top 10 Best Practices for Web Application TestingAggregated on: Sun Mar 12 2023 17:44:55 GMT+0000 (Coordinated Universal Time) Web application testing is an essential part of the software development lifecycle, ensuring that the application functions correctly and meets the necessary quality standards. Best practices for web application testing are critical to ensure that the testing process is efficient, effective, and delivers high-quality results. These practices cover a range of areas, including test planning, execution, automation, security, and performance. Adhering to best practices can help improve the quality of the web application, reduce the risk of defects, and ensure that the application is thoroughly tested before it is released to users. By following these practices, testing teams can improve the efficiency and effectiveness of the testing process, delivering high-quality web applications to users. 1. Test Early and Often Testing early and often means starting testing activities as soon as possible in the development process and continuously testing throughout the development lifecycle. This approach allows for issues to be identified and addressed early on, reducing the risk of defects making their way into production. Some benefits of testing early and often include: View more...Using GPT-3 in Our ApplicationsAggregated on: Sun Mar 12 2023 17:14:55 GMT+0000 (Coordinated Universal Time) Welcome to a new installment on artificial intelligence. As I explained in my previous article, GPT-3 (Generative Pretrained Transformer 3) is a state-of-the-art language processing model developed by OpenAI. It has been trained on a large amount of data and can generate human-like text on a wide range of topics. One of the ways to access GPT-3’s capabilities is through its API, which allows developers to easily integrate GPT-3 into their applications. In this article, we will provide a detailed guide on how to use the GPT-3 API, including how to set up your API key, generate responses, and access the generated text. By the end of this article, we will have a foundation for how to use GPT-3 in our own projects and applications. View more... |
|
|