News AggregatorAdvanced Filtering and Full-Text Search Using Hibernate Search With Angular/Spring BootAggregated on: 2022-11-10 23:43:42 The JPA Criteria API can provide support in the implementation of the optional filter clauses. For the long text columns, Hibernate Search can provide a full-text search. The combination of Hibernate Search and the JPA Criteria API is shown in the MovieManager project. The APIs are used to create search user interfaces for movies and actors. View more...Agile or V-Shaped: What Should Be Your Next Software Development Life Cycle Model?Aggregated on: 2022-11-10 21:43:42 There are a lot of different software development life cycle (SDLC) models out there. But deciding on the one best for your next project can be challenging. The two most crucial SDLC models are Agile or v-shaped. In this blog post, we will explore the pros and cons of both these SDLC models while also providing some tips on how to choose the right model for your project. View more...Data Science vs. Data AnalyticsAggregated on: 2022-11-10 21:13:42 Data science and data analytics are among the greatest scientific disciplines that everyone would benefit from learning. Data science is an exciting field that, because of its nature to collect, store and process massive volumes of information, can yield a level of knowledge that is impossible in any other discipline. View more...3 Easy Steps for a (Dev)Containerized Microservice With Jolie and DockerAggregated on: 2022-11-10 20:43:42 In this brief tutorial, let's look at how we can quickly kickstart the codebase of a microservice that can be developed and run in containers. We achieve this by using the Jolie programming language, npm, VS Code, and Docker. Prerequisites You will need npm, Docker, and VS Code installed. Make sure that you have enabled support for Dev Containers in VS Code. (Jolie comes preloaded in the Docker images that we are going to use, so no need to install it.) View more...Basic Implementation of CI/CD in Android DevelopmentAggregated on: 2022-11-10 20:13:42 CI/CD is a software development practice most mobile developers in team projects use daily; however, most times, the Version Control practices (or git branching strategy) as well as the automated testing/deployment is already established and will only require small changes if anything. On the other hand, when working on individual or personal projects, setting up our own CI/CD pipelines can seem overkill if not with a learning motive or client requirement. As a result, many mobile developers might feel like CI/CD falls outside their fields of expertise, and perhaps without the use of a mobile DevOps platform, this might be the case, but mobile CI/CD automation has never been easier through the use of these platforms. View more...A Chat with Lex Neva of SRE WeeklyAggregated on: 2022-11-10 20:13:42 Since 2015, Lex Neva has been publishing SRE Weekly. If you’re interested enough in reading about SRE to have found this post, you’re probably familiar with it. If not, there are a lot of great articles to catch up on! Lex selects around 10 entries from across the internet for each issue, focusing on everything from SRE best practices to the socio-side of systems to major outages in the news. I had always figured Lex must be among the most well-read people in SRE, and likely #1. I met up with Lex on a call and was so excited to chat with him about how SRE Weekly came to be, how it continues to run, and his perspective on SRE. View more...Every Thing You Must Know About Deep Links in Android as an App DeveloperAggregated on: 2022-11-10 18:58:42 The concept of deep links is to help users to move between web pages and applications. Simply put, these URLs direct users toward specific content within an application. Deep links improve the user experience by making it easier for visitors to reach specific pages. The result is a noticeable increase in user loyalty and engagement. View more...Design and Create VPC in AWSAggregated on: 2022-11-10 17:58:42 This article describes the design and creation of Amazon Virtual Private Network (VPC) using the VPC Designer tool and Cloud Formation templates. It also provides details of VPC Components such as Subnets, Route tables, Security Groups, Internet Gateway, NAT Gateway, VPC endpoints, Network Interfaces, Network Access Control Lists (ACLs), and VPC Peering. Amazon Virtual Private Cloud (VPC) enables you to create your own dedicated, logically isolated virtual private network in your AWS account. This virtual network closely resembles a traditional network that you operate in your own data center (on-premises). It provides the ability to define and have full control over the virtual network environment, including security, connectivity, and resource deployment. VPC spans multiple availability zones in an AWS Region. View more...Technology for People: How to Develop an Engineering Culture and Make a Quantum Leap In DevelopmentAggregated on: 2022-11-10 16:58:42 Software Developer, Technical Recruiter, HRD, VP of Corporate Development, VP of Delivery, and Head of Manufacturing, Supply Chain, and Logistics are all pivotal destinations of my career journey. Such a trajectory may raise questions for a layman: development, HR, and management seem to lie in different dimensions. In fact, for me, as a leader in a technology company, this is pretty logical. I have always realized that all innovative solutions are created by people and for people. Given this, my goal was to obtain a non-trivial combination of technological base and knowledge about how and why people think and behave. I needed to master the skills of negotiations and sales and understand what exactly stands behind one’s goals, thinking, setting tasks, motivation, and what one’s pains and expectations are. This body of knowledge empowers me to offer technology that will be maximum beneficial. It also helps me with the team: to inspire, guide, help them grow, and become leaders. View more...5 API Abuse Use Cases and How to Prevent ThemAggregated on: 2022-11-10 16:58:42 What Is a Vulnerability? Sometimes, vulnerabilities are straightforward flaws due to bad design. For example, the Tacoma Narrows Bridge in the state of Washington was built in 1940 and collapsed later that year in a 40-mph wind due to poor construction. No lives were lost (the suspension bridge underwent reconstruction in 1950 and is still standing). Sometimes, though, vulnerabilities are part of the actual design. Consider door locks. A door lock is not flawed because it can be unlocked. There’s no inherent design flaw in how the pins and tumblers are precision-crafted and laid out. The issue is not that the structure is poor, but their structure and precision design provide a consistent way for would-be thieves to know how to pick them. (For more information on locksport, one good organization is TOOOL). View more...Accessibility Testing for Digital ProductsAggregated on: 2022-11-10 15:58:42 The majority of people find using the internet on the web to be simple. But when we look at a different demographic group with difficulties, this is not the case. According to WHO, over 1 billion people live with some form of disability. Many of them face challenges in using digital products. View more...Security Implications of URL Parsing DifferentialsAggregated on: 2022-11-10 15:58:42 During my team's security research on an authentication module for Apache2, my team and I identified an issue introduced by how the HTTP server Apache2 and modern web browsers parse URLs differently. Although the general problem of differential URL parsing has been documented publicly, I think it did not get the attention it deserved. It can impact a broad range of software and introduce vulnerabilities in critical features like authentication flows and requests to internal services. In this blog post, I detail how differential URL parsing bugs can occur and what URL parser libraries are affected. I'll use a recent bug that we discovered in mod_auth_openidc, a popular Apache2 module, to give you a real-life example of this pattern and then show you how to detect similar bugs in your application through differential testing easily. With this, I hope to raise awareness about these subtle bugs and add a new item to your toolbox! View more...Reducing Kubernetes Costs With AutoscalingAggregated on: 2022-11-09 20:28:42 Kubernetes comes with three built-in autoscaling mechanisms. Explore and know how these mechanisms of autoscaling in Kubernetes can help to reduce your cloud bill and much more here in this article on Kubernetes and autoscaling! Technically, containerization should be more cost-effective by default, but Kubernetes comes packed with expensive cost traps that may cause enterprises to spend over the fixed budget. Fortunately, there are a few tactics to keep cloud costs at bay, and autoscaling is one of them. Here you’ll read about autoscaling in Kubernetes in this article on Kubernetes and autoscaling. View more...How to Generate Extent Reports in Selenium WebDriverAggregated on: 2022-11-09 19:58:42 We will learn how to generate Extent Reports in Selenium WebDriver in this tutorial. What Exactly Are Extent Reports? Extent Reports is an open-source reporting framework that can be used for test automation. It may be seamlessly connected with popular testing fabrics like JUnit, NUnit, TestNG, and others. These reports are HTML documents with pie maps that show the results. They also enable the creation of customized logs, pictures, and other data. View more...How to Use MQTT in The Django ProjectAggregated on: 2022-11-09 18:58:42 MQTT is a lightweight IoT messaging protocol based on publish/subscribe model, which can provide real-time reliable messaging services for connected devices with very little code and bandwidth. It is widely used in industries such as IoT, mobile Internet, smart hardware, Internet of vehicles, and power and energy. Django is an open-source Web framework and one of the more popular Python Web frameworks. This article mainly introduces how to connect, subscribe, unsubscribe, and send and receive messages between MQTT clients and MQTT brokers in the Django project. View more...Will Open-Source SDKs Improve the Adoption of Confidential Computing?Aggregated on: 2022-11-09 17:43:42 If you have been following the Confidential Computing space, you would have noticed that many Software Development Kits (SDKs) that use Trusted Execution Environments (TEEs) are pursuing the open-source route. It might seem counter-intuitive that the SDKs promoting privacy-first computing allow their source code to be visible for everyone to see. However, open-sourcing an SDK is essential to improve the trust and transparency of a privacy-enhancing technology. View more...Saving Interesting Observability Data Using SLO-Based Retention PolicyAggregated on: 2022-11-09 17:13:42 In any data management policy, there are two extremes: save everything (just in case), and delete everything that ages out. The two extremes work hand in hand, as eventually, you decide that even if you want to save it all, the realities of storage costs have forced you to delete your data arbitrarily. Ideally, you would retain "interesting” data that might be useful and delete the rest. Even better would be to not collect the data in the first place. View more...Simulating and Troubleshooting OOMError in KotlinAggregated on: 2022-11-09 16:43:42 Continuing in this troubleshooting series of simulating and troubleshooting performance problems in Kotlin, let’s now discuss how to simulate the java.lang.OutOfMemoryError: Java Heap space problem. java.lang.OutOfMemoryError: Java Heap space will be thrown by the application when it generates more objects than the maximum configured heap size. Kotlin OutOfMemoryError Program Here is a sample Kotlin program, which generates the java.lang.OutOfMemoryError: Java Heap space problem. View more...Trends and Comparison Among Popular Python Machine Learning LibrariesAggregated on: 2022-11-09 16:43:42 Python is one of the most popular programming languages worldwide, with an ever-increasing number of libraries and frameworks to facilitate AI and ML development. With over 250 libraries in python, it can be a bit confusing to know which one is the best for your project and to keep up with technological changes and trends that come with all of them. Below are the popular Python machine-learning libraries I've used. I do my best to sort them out in terms of which ones to use for what scenario. There are a ton more libraries than just these, but I can't speak to libraries I haven't used, and I think these are the ones getting used the most. View more...Are 45 Minutes Sufficient for a System Design Interview?Aggregated on: 2022-11-09 16:13:42 I am working as a Senior Software Engineer(Backend) at Netflix. System Design interviews are part of every interview cycle, be it for a beginner role, intermediary, or senior role at every big or small company. I myself struggled with design interviews, felt I was all over the place, and could not come up with a single flow design in 45 mins. One question I always had was: "How can I solve it in 45 minutes when it took hundreds of engineers a few years to solve?" After reading several design interview articles and books and taking and giving several interviews, I came up with my strategy to handle this. Most of us are familiar with the technical aspect of design but lack the ability to structure or frame a complete (not right or wrong) solution in 45 mins. I will focus on how to structure the problem in time, in the most effective and efficient manner. My main focus will be on backend design. View more...Managed MQTT Broker Comparison — Console/Dashboard FeaturesAggregated on: 2022-11-09 16:13:42 This is the second article in the "Managed MQTT Broker Comparison" series. Here is the link to the first article. Brokers I Choose to Compare I choose the products from independent MQTT Broker vendors who focus on this area instead of other IoT fields. Compared to the comprehensive IoT platform like AWS IoT Core or Azure IoT Hub, the independent products are more flexible and avoid binding with particular cloud services. Managed MQTT Brokers are usually the cloud implement of self-hosted MQTT Broker. View more...Complete Guide to Open Source Licenses for DevelopersAggregated on: 2022-11-09 13:43:42 Developers do not often pay attention to licenses when using various open-source projects. We can often use projects/part of a project or functions for our applications and programs without thinking about how it might affect the future. Do you need to keep the copyright? What are the requirements and obligations of different licenses? In this article, I want to highlight the issue of choosing licenses for the project and the specifics of using projects with different types of licenses. Here and below, the project refers to an open-source project or repository. View more...Devoxx Belgium 2022 TakeawaysAggregated on: 2022-11-09 08:43:41 In October 2022, I visited Devoxx Belgium after two cancelled editions due to COVID-19. I learned a lot and received quite some information which I do not want to withhold from you. In this blog, you can find my takeaways of Devoxx Belgium 2022! 1. Introduction Devoxx Belgium is the largest Java conference in Europe. This year, it was already the 19th edition. As always, Devoxx is being held in the fantastic theatres of Kinepolis Antwerp. The past two editions were cancelled due to COVID-19. As a result, there was a rush on the tickets. The first batch of tickets was sold out in 5 minutes, the second batch in a few seconds. Reactions on Twitter mentioned that it looked like a ticket sale for Beyonce. View more...Create Realistic Lighting With DDGIAggregated on: 2022-11-09 03:13:41 Why We Need DDGI Of all the things that make a 3D game immersive, global illumination effects (including reflections, refractions, and shadows) are undoubtedly the jewel in the crown. Simply put, bad lighting can ruin an otherwise great game experience. A technique for creating real-life lighting is known as dynamic diffuse global illumination (DDGI for short). This technique delivers real-time rendering for games, decorating game scenes with delicate and appealing visuals. In other words, DDGI brings out every color in a scene by dynamically changing the lighting, realizing the distinct relationship between objects and scene temperature, as well as enriching levels of representation for information in a scene. View more...Superheroes Cannot Scale to Meet Application SLAs, But They Can Enhance Their SuperpowersAggregated on: 2022-11-09 03:13:41 Everywhere one turns, at least in the movie theater or small screen, there is a new superhero with some new power or focus. Given how important application or site uptime is, it’s a wonder that there isn’t yet a superhero for troubleshooting software problems. In a way, though, superheroes have existed for some time and have been the primary means of keeping applications running smoothly. These Software Reliability Engineers (SREs) or support superheroes are highly skilled at finding a solution — if not the actual root cause — of issues based on their deep experience, knowledge, and intuition. But these software superheroes cannot scale to meet the new reality caused by the combination of ever-increasing complexity and the accelerating rate of application change. The combination is driving a steady growth in incident numbers, and observability tools are not the problem. The limitation is the amount of information the human mind needs to quickly absorb and analyze to resolve these incidents. View more...The Transition To The Quantum-Cryptography EraAggregated on: 2022-11-09 02:28:41 In this article, I’ll be comparing the encryption standards we consider safe with the actual technology and what could make them not be safe anymore during the coming years. I will also try to analyze how we can prepare for the future at different scales in our industry — software development. First of all, I want to expose the two main types of encryption that the majority of software we use relies on. This is mostly based on what the USA’s National Institute of Standards and Technology (NIST) states, as of today, in 2022. View more...Atlassian’s Eye-Opening State of Teams ReportAggregated on: 2022-11-09 00:13:41 When you get the chance to geek out over the metrics behind happy dev teams, you take it. As one of the companies shaping how the modern workforce, well… works, Atlassian is one of the foremost thought leaders in the space thanks to an amazing research and data team. View more...Why Yoda Never Used MicroservicesAggregated on: 2022-11-08 23:43:41 Microservices were meant to be a blessing, but for many, they’re a burden. Some developers have even moved away from them after negative experiences. Operational complexity becomes a headache for this distributed, granular software model in production. Is it possible to solve microservices' problems while retaining their advantages? Microservices shorten development cycles. Changing a monolithic code base is a complex affair that risks unexpected ramifications. It’s like unraveling a sweater so that you could change its design. Breaking that monolith down into lots of smaller services managed by two-pizza teams can make software easier to develop, update, and fix. It’s what helped Amazon grow from a small ecommerce outfit to the beast it is today. View more...Is Python Effective for Microservices Architecture?Aggregated on: 2022-11-08 23:43:41 Python is one of the options when choosing between programming languages suitable for microservices architecture. It has perks like an active community, better prototyping, and popularity among developers. It has some limitations, so other languages can be used to avoid them. Quick Development Architectural Style Review and Statistics Two main development architectural styles are monolithic architecture and microservices architecture. Monolithic has an all-in-one principle and functions as an integral structure, which works best for small development projects or start-ups. When a platform grows and a business needs complex applications, it'll be reasonable to split it into a microservices architecture. View more...A Detailed Guide to Canary DeploymentAggregated on: 2022-11-08 21:43:41 While building enterprise applications, you want to ensure that your customers have a bug-free user experience. Since bugs show up whenever a new code is deployed, your deployment process should be set up to identify bugs at an advanced stage before these bugs can affect your users. Here’s how canary deployment comes into the picture and takes care of everything to enable a seamless and bug-free app release ensuring a flawless experience for your users. Learn and know more about Canary deployment, its different stages, the benefits of implementing canary deployments, and how they are different from blue-green deployments on AWS and ECS here in this blog. Let’s take a look! View more...Data Encrypt — Decrypt in React ApplicationAggregated on: 2022-11-08 21:43:41 Encrypting the information entered in the login step of our Front End Projects is important for the security step. The information we entered in this article contains the steps of how we can encrypt and decrypt in the react application. View more...17 DevOps Metrics You Should Be TrackingAggregated on: 2022-11-08 20:43:41 Productivity in software development has always been tricky to measure. Unlike in other industries, the act of programming is not something that’s easy to parallelize. The development process is unique in that it requires a diverse mix of technical and communications skills, which calls for a set of specialized metrics to keep track of the team’s vitals. The Pulse of Software Development Not all metrics were created equal. Depending on the context, some are more useful than others. The things we choose to measure can help us find problems or obscure them behind irrelevant data and non-productive goals. View more...Build a Java Backend That Connects With SalesforceAggregated on: 2022-11-08 20:13:41 Part One: Java Calling Salesforce The Salesforce ecosystem is pretty massive. Developers need to work hard to stay up-to-date with the latest and greatest features and tools coming from Salesforce. In this article, we’ll mix a little bit of the old and the new. We’ll combine Java-based applications with Salesforce, and we’ll do so via web services. Java is a programming language and computing platform first released by Sun Microsystems back in 1995. Since then, we’ve seen the rise of Web 2.0 and web programming languages, containers, microservices, and cloud-native architectures. Yet even now, many new products and digital services designed for the future continue to rely on Java. Java will be around for the foreseeable future. View more...6 Steps To Improve HTML Images for Users and DevelopersAggregated on: 2022-11-08 20:13:41 In this article, learn how to make HTML images better for users with responsive sizes and modern formats without making your life as a developer much harder. TL;DR <img> with just src: Easy to implement; good developer experience; no responsive images; no modern formats with fallback; likely uses more bandwidth; worst user experience <img> with srcset attribute: Moderate work; ok developer experience; supports responsive images for less bandwidth; no modern formats with fallbacks; leaves potential savings on the table; ok user experience <picture> with multiple <source> and srcset: Supports responsive images and modern formats with fallbacks; would rather squirt jalapeno juice in my eyes <img> with just src with Image Manager: Easy to implement and automatically sends images in the best size and format; win-win for developers and users!!! Let’s say we have just a basic website that is loading an image from my domain. The code might look like this: View more...List in C#: Implementation and FeaturesAggregated on: 2022-11-08 20:13:41 List is one of the most used collections in C#. Let's inspect the features of List and look at how some of its parts are implemented. This article is about List<T> from the System.Collections.Generic namespace. More specifically, the article describes the internal implementation and some features of List<T>. This is the most used collection in C#, and it's not just my opinion — Andrew Troelsen, Philip Japikse, and Jon Skeet wrote the same in their books. And that's understandable: List<T> is easy to work with. It's quite flexible and thus covers most of the daily tasks for developers. It also has a large number of helpful methods. The collection's abilities are expanded even further with the help of LINQ. View more...Use of AWS Step Function to Modernize Asynchronous Integration With Oracle ERP Cloud – A Case StudyAggregated on: 2022-11-08 20:13:41 AWS offers a handful of services for integration. Though AWS is not that way a full-fledged Integration Tool like the well-known ones in the market as Oracle Integration Cloud, Oracle Service Bus or MuleSoft, and many more, there can be potentially effective solutions implemented leveraging the existing service offerings in AWS. This case study is about the modernization of an existing integration in Oracle Integration Cloud by re-solutioning the same in AWS. Background It can be an interesting question that why suddenly a Retail business would wish to migrate a live integration to AWS given the current one is already on the cloud (supposedly already taking advantage of the “pay as you use” flavor of Oracle Cloud). The potential reason is the business at the enterprise level, investing more on AWS, was eventually more inclined to have everything on the same cloud than subscribing to another just for the sake of integrations. Another reason was the lack of resources having the proper skills and expertise to support and debug the integration. Nevertheless, there has been a major shift of technical inclination of the businesses towards having things integrated using microservices on a Cloud rather than paying for a dedicated integration product. This case study is also not an exception. View more...SAP S/4HANA, Microsoft SQL Integration and Hard Deletion HandlingAggregated on: 2022-11-08 14:28:41 This article will demonstrate the heterogeneous systems integration and building of the BI system and mainly talk about the DELTA load issues and how to overcome them. How can we compare the source table and target table when we cannot find a proper way to identify the changes in the source table using the SSIS ETL Tool? Systems Used SAP S/4HANA is an Enterprise Resource Planning (ERP) software package meant to cover all day-to-day processes of an enterprise, e.g., order-to-cash, procure-to-pay, finance & controlling request-to-service, and core capabilities. SAP HANA is a column-oriented, in-memory relational database that combines OLAP and OLTP operations into a single system. SAP Landscape Transformation (SLT) Replication is a trigger-based data replication method in the HANA system. It is a perfect solution for replicating real-time data or schedule-based replication from SAP and non-SAP sources. Azure SQL Database is a fully managed platform as a service (PaaS) database engine that handles most of the management functions offered by the database, including backups, patching, upgrading, and monitoring, with minimal user involvement. SQL Server Integration Services (SSIS) is a platform for building enterprise-level data integration and transformation solutions. SSIS is used to integrate and establish the pipeline for ETL and solve complex business problems by copying or downloading files, loading data warehouses, cleansing, and mining data. Power BI is an interactive data visualization software developed by Microsoft with a primary focus on business intelligence. Business Requirement Let us first talk about the business requirements. We have more than 20 different Point-of-Sale (POS) data from other online retailers like Target, Walmart, Amazon, Macy's, Kohl's, JC Penney, etc. Apart from this, the primary business transactions will happen in SAP S/4HANA, and business users will require the BI reports for analysis purposes. View more...RabbitMQ Message Queue Using .NET Core 6 Web APIAggregated on: 2022-11-08 02:43:41 We are going to discuss the RabbitMQ Message Queue and its implementation using .NET Core 6 API as a message producer and the console application as a message consumer. Agenda Introduction of RabbitMQ Benefits of using RabbitMQ Implementation of RabbitMQ in .NET Core 6 Prerequisites Visual Studio 2022 Docker Desktop .NET Core 6 SDK Introduction to RabbitMQ RabbitMQ acts as a middleware while using multiple microservices. It is open-source message broker software, and is sometimes also called message-oriented middleware. It is written in the Erlang programming language. RabbitMQ is used to reduce the load and delivery time of our web applications when some of the resources have taken a lot of time to process data. As you can see in the above diagram, there is one producer which sends a message to the RabbitMQ server and the server will store that message inside the queue in a FIFO manner. View more...User Funnels Are Vital to API Customer ExperienceAggregated on: 2022-11-08 01:28:41 Happy Customer + Customer Loyalty = Brand Advocate If you’re looking for ways to improve customer satisfaction, experience, and loyalty, you need to focus on how customers are using and adopting your product. For this, you’ll need to focus on your user funnel, sometimes referred to as a conversion funnel. In this article, we’ll show you seven ways that user funnels can improve some key areas of your business to boost all of the above! User funnels are the defined path that your customers take as they interact with your product or service. This may track steps from when they first discover your product, sign up for it, and begin using specific features. By understanding and optimizing the user funnel, you can make targeted improvements to boost your customer satisfaction and loyalty. Here are seven ways that user funnels can help you do just that: View more...Adding SAST to Your CI/CD Pipeline: What You Should KnowAggregated on: 2022-11-07 20:28:41 What Is a CI/CD Pipeline? As custom applications become a key differentiator for enterprises, speed of code release has become a competitive advantage, and CI/CD pipelines are what make high-velocity development possible. A continuous integration and continuous delivery (CI/CD) pipeline is the process that drives software development through the stages of building, testing, and deploying code. By automating the process, teams can minimize human error and maintain a consistent process for software releases. The pipeline includes tools such as code compilation, unit testing, code analysis, security, and binary generation. For containerized environments, this pipeline also includes ways to package code into container images and deploy them to a cloud environment. View more...The Developer’s Guide to Web Speech API: What It Is, How It Works, and MoreAggregated on: 2022-11-07 19:43:41 Web Speech API is a web technology that allows you to incorporate voice data into apps. It converts speech into text and vice versa using your web browser. The Web Speech API was introduced in 2012 by the W3C community. A decade later, this API is still under development and has limited browser compatibility. View more...How Web 3.0 Is Steering the Future of DevOps ToolsAggregated on: 2022-11-07 18:28:41 Changing your tech stack is painful. Some companies limp along for years with things barely working, so they don’t have to change a thing. So when, in my previous position at AWS as Global DevOps Partnerships Leader, I heard that one of my customers, a NASDAQ Top-10 tech company, was making the complicated switch from a top CI/CD platform to GitHub Actions, I was immediately curious. Why would they do it? Features? Cost? A secret handshake between executives? Given the complexities, it had to be something major, but nothing added up. View more...Is React Native the Same as ReactJS?Aggregated on: 2022-11-07 18:28:41 React Native and ReactJS are excessively high-demand languages that are preferably used for both mobile and web development. If you hire the right React Native and ReactJS developers with the right skills, you could end up developing the best functional websites and applications. View more...Using the Milvus Vector Database for Real-Time QueryingAggregated on: 2022-11-06 16:13:40 In this article, we will continue to explain how different components in Milvus interact with each other to complete real-time data queries. Some useful resources before getting started are listed below. We recommend reading them first to better understand the topic in this post. View more...Geo-Routing with Apache APISIXAggregated on: 2022-11-05 19:43:39 Apache APISIX, the Apache-led API Gateway, comes out of the box with many plugins to implement your use case. Sometimes, however, the plugin you're looking for is not available. While creating your own is always possible, it's sometimes necessary. Today, I'll show you how to route users according to their location without writing a single line of Lua code. Why Geo-Routing? Geo-routing is to forward HTTP requests based on a user's physical location, inferred from their IP. There are many reasons to do that, and here is a couple of them. View more...Optimizing Distributed Joins: Google Cloud Spanner and DataStax Astra DBAggregated on: 2022-11-05 16:13:39 Distributed joins are commonly considered too expensive to use for real-time transaction processing. That is because, besides joining data, they also frequently require moving or shuffling data between nodes in a cluster, which can significantly affect query response times and database throughput. However, there are certain optimizations that can completely eliminate the need to move data to enable faster joins. In this article, we first review the four types of distributed joins, including shuffle join, broadcast join, co-located join, and pre-computed join. We then demonstrate how leading fully managed Relational and NoSQL databases, namely Google Cloud Spanner and DataStax Astra DB, support optimized joins that are suitable for real-time applications. Four Types of Distributed Joins Joins are used in databases to combine related data from one or more tables or datasets. Data is usually combined based on some condition that relates columns from participating tables. We call columns used in a join condition join keys and assume they are always related by equality operators. View more...Schedule Randomness With Gelato, Witnet, API3, and Chainlink VrfAggregated on: 2022-11-05 15:28:39 From roulette wheels to action-adventure games, randomness plays a major role in the gaming world. It is for any scenario where opponents or scenes are created dynamically and for those where users need “on the fly” randomness. This is a far cry from my memories of the 1980s, when gaming was a lot less enjoyable precisely because everything was predictable- if your character went on a mission once, the next time you played the mission would be exactly the same. As you can imagine, this got very boring very quickly. View more...Robust Hotlink Protection StrategiesAggregated on: 2022-11-05 14:58:39 Hotlinking refers to the practice of third-party web properties loading resources (most commonly images) directly from your own server. For example, if you operate the website yourbusiness.example, you may have an image at https://yourbusiness.example/infographic.png that you use within your website. A hotlink is when an unrelated property (for example, the site anotherbusiness.test) embeds that image directly on their website by reference to your server, for example using the following HTML code: View more...Secrets at the Command Line (Cheat Sheet Included)Aggregated on: 2022-11-05 14:28:39 If developers all share one thing in common, it is their use of the command line to get their jobs done. Many development tools don’t come with a graphical user interface (GUI) and rely on a command line interface (CLI). There are a lot of upsides to a CLI first or only approach. Once you master the command line, you can work more efficiently than a GUI might allow and gain the awesome superpower of scripting, allowing all of your tools to start working in concert. Scripting is the bedrock for building and managing software delivery pipelines and CI/CD workflows. However, there is nothing more intimidating, especially to a newer dev, than a blank terminal window with a blinking cursor awaiting your commands. There is no helpful UI to guide you toward your goal; you just have to know what to enter. All the burden of getting it just right falls on the developer's shoulders, and there is a lot to learn, especially when you factor in security. View more...Java’s New Threat ModelAggregated on: 2022-11-05 02:13:39 Over the last decade of cloud migration, the threat model against Java applications and the way that we need to defend them has shifted. OpenJDK has made one positive change in this area already by deprecating the old SecurityManager, a relic that protected a bygone era of AOL CDs and paper maps. The next positive change in security is to strengthen the supply chain of software components, know what’s running and what’s vulnerable, and communicate this information with non-technical experts whose data is at risk. Part of this threat model is driven by vulnerable libraries like last year’s Log4j. Although Log4j is a great logging library and was active on patching, many teams scrambled to identify where they needed to apply those patches. For individual Java developers or teams that knew their code and could deploy, the patch was simple — you updated a library and that was it. The reality though is that software moves fast and far, often leaving the locus of control of these technical experts to stakeholders that don’t have the expertise to manage a problem at this level. In a scramble, teams that did not know Java-specifics looked everywhere including .NET software and Python forums. The government of Quebec shut services down until they knew where Log4j wasn’t. This scrambling was not effective and does not protect our data. View more... |
|
|