Operations | Monitoring | ITSM | DevOps | Cloud

Latest Posts

The testing pyramid: Strategic software testing for Agile teams

The testing pyramid model untangles the complexity of software testing by fitting it into an efficient hierarchical structure. By focusing on unit tests at the base, integration tests in the middle, and end-to-end tests at the top, the testing pyramid ensures that most testing efforts are spent on tests that are fast, reliable, and easy to maintain. This allows for quicker iterations, improved code quality, and more stable releases.

LLM hallucinations: How to detect and prevent them with CI

An LLM hallucination occurs when a large language model (LLM) generates a response that is either factually incorrect, nonsensical, or disconnected from the input prompt. Hallucinations are a byproduct of the probabilistic nature of language models, which generate responses based on patterns learned from vast datasets rather than factual understanding.

What is microservices architecture?

Microservices architecture is a method of developing software systems that structures an application as a collection of loosely coupled services, each focusing on a single function or business capability. Each service operates within a discrete, confined context, communicating with other services through well-defined interfaces — typically APIs.

Test-driven development (TDD) explained

Test-driven development (TDD) is a software development process that involves writing tests for your code before you write the code. This approach has transformed the development methodology around testing. While the traditional waterfall model of software development was linear, with testing occurring near the end of one long timeline, TDD makes testing an ongoing, iterative process.

Prompt engineering: A guide to improving LLM performance

Prompt engineering is the practice of crafting input queries or instructions to elicit more accurate and desirable outputs from large language models (LLMs). It is a crucial skill for working with artificial intelligence (AI) applications, helping developers achieve better results from language models. Prompt engineering involves strategically shaping input prompts, exploring the nuances of language, and experimenting with diverse prompts to fine-tune model output and address potential biases.

Testing a PyTorch machine learning model with pytest and CircleCI

PyTorch is an open-source machine learning (ML) framework that accelerates the path from research prototyping to production deployment. You can work with PyTorch using regular Python without delving into the underlying native C++ code. It contains a full toolkit for building production-worthy ML applications, including layers for deep neural networks, activation functions and optimizers. It also has associated libraries for computer vision and natural language processing.

Using Amazon SageMaker orb to orchestrate model deployment across environments

This tutorial guides you on how to use the Amazon SageMaker Orb to orchestrate model deployment to endpoints across different environments. It also shows how to use the CircleCI platform to monitor and manage promotions and rollbacks. It will use an example project repository to walk you through every step, from training a new model package version to deploying your model across multiple environments.

Deploy a containerized .NET Core app to Azure Kubernetes Service (AKS)

Microsoft Azure provides an all-encompassing service that allows you to host Docker containers on the Azure Container Registry (ACR), deploy to a production-ready Kubernetes cluster via the Azure Kubernetes Service (AKS), and more. Using CircleCI, you can automatically deploy updates to your application, providing a safer and more efficient CI/CD process for managing your software. This article shows you how to automate deployments for a.Net application to Azure Kubernetes.

Goodbye, GitOps: Getting to green in an AI-powered world

The cognitive bias known as the streetlight effect describes our desire as humans to look for clues where it’s easiest to search, regardless of whether that’s where the answers are. For decades in the software industry, we’ve focused on testing our applications under the reassuring streetlight of GitOps. It made sense in theory: wait for changes to the codebase made by engineers, then trigger a re-test of your code. If your tests pass, you’re good to go.