Kafka Versus Kinesis: How To Choose

Modern applications operating at massive scale need to continually ingest, process, and store incoming data. Traditional application frameworks aren’t always up to the task of handling this much data. Fortunately, we can use tools specifically designed to handle large volumes of streaming data. Apache Kafka and Amazon Kinesis are two of the most popular options. […]

Understanding and Maximizing Developer Velocity

Introduction After decades of advancement, software applications have become an essential part of the world’s economic fabric. Nearly every company now relies on software to run some aspect of its business. By increasing efficiency, optimizing collaboration, and reducing operation costs, software has taken over every vertical, from retail to banking to manufacturing. Retail stores use […]

What Developers Can Build With CMS Hub Starter

The Internet has no shortage of website diversity. Every page can be as unique as the people who created it. When we take a look under the hood, though, we’ll usually find more or less the same components working together to form novel web pages. Foundational elements such as web hosting, databases, Secure Sockets Layer […]

UML Deployment Diagrams Versus Entity-Relationship Diagrams

There are several ways we can represent and document systems and processes. Looking at a system in different ways increases the understanding of that system. This article looks at two ways of representing systems using diagrams: UML deployment diagrams, and entity-relationship diagrams. We’ll start by defining these diagrams, and then go on to discuss their […]

Understanding and Combining the Power of Data Science, Machine Learning, and Analytics

Data science, machine learning, and analytics all help organizations understand their data and make effective decisions. Each discipline is effective on its own, but what happens when you combine them? Their synergies enrich data insights while improving productivity so businesses can get ahead of the competition. Using data to make better business decisions depends on […]

The Rise Of Kubernetes and PaaS: What It Means for Cost Allocation

Deploying to the cloud can be complicated. The average cloud deployment relies on a veritable forest of tools to keep everything running smoothly. Access to this diverse ecosystem of capabilities has enabled some incredible software engineering. In particular, Kubernetes and platform-as-a-service (PaaS) solutions simplify cloud deployments. However, they present challenges for analyzing and allocating costs. […]

Proactive Data Ethics: How to Beat Bias and Stay Explainable

You might expect us to begin this article with a definition of data ethics. Instead, however, let’s start by examining the two words on their own. Data has been around since humans first learned how to record information — though its storage medium has evolved considerably in its shift from stone engravings to solid-state drives. […]

How to Manage Vulnerable Packages in Python Projects

Vulnerabilities are a fact of developer life. There really is no way to avoid them, but that doesn’t mean you can ignore them. Somewhere in the back of your mind, you know that when you import a package, you’re invariably importing its vulnerabilities — and its dependencies’ vulnerabilities, as well. Traditionally, non-critical vulnerabilities in the […]

The Dos and Don’ts of Feature Branching

Most developers love feature branching because it makes the development process more flexible. It enables us to update a bug fix or work on a new feature independently from the main branch. But, now and then, feature branches might cause headaches or even failed releases. Following best practices, and knowing what to avoid, helps enable […]

Reducing DevOps Burnout with Next-Gen Continuous Delivery: Progressive Delivery

The development experience can be interesting and enjoyable, but it can also be daunting. From writing code to committing new features and fixes to getting them working in production, the work we put into developing a software application is brain-intensive and challenging. Software engineers also face challenges. They regularly deal with changing requirements and fresh […]