Operations | Monitoring | ITSM | DevOps | Cloud

Mattermost

Concurrency in Golang: Building a Data Pipeline for Monitoring Microservices from Scratch

Time and resource consumption have become the driving forces of developing modern applications. While building cloud-native applications, it’s important to ensure that you have the most optimized code in place, and oftentimes that means leveraging concurrency. While writing concurrent code may sound overwhelming at first, Golang makes it extremely easy to get a handle on.

How to Set up a Jenkins CI/CD Pipeline for Your Golang App

Bringing the best software solutions to market as quickly as possible requires using automation to facilitate repetitive tasks (e.g., testing) so you can spend more time writing high-quality code. This is one of the main reasons why today’s top-performing dev teams build continuous integration (CI) and continuous delivery or continuous deployment (CD) pipelines, which enable them to ship new releases faster.

Building a SaaS Architecture with a Single Tenant Application

Most products that run as Software-as-a-Service (SaaS) are built to be multi-tenant, meaning that a single instance or deployment is meant to be used by multiple organizations. There’s a good reason for this: it’s generally easier to scale and operate multi-tenant applications. But in this new age of containers, orchestration, infrastructure-as-code, and Kubernetes, where it’s cheaper, faster, and simpler to deploy a new instance of an application, that may no longer be the case.

Open Source Hacktivism, Open Source Gains Traction in the Enterprise, and More: Open Source Matters

Welcome to the 8th edition of Open Source Matters: our regular publication about the latest happenings in open source! Dive into OSS news and projects to watch with Mattermost's Ben Lloyd Pearson.

Everything You Need to Know About Golang App Testing

Oftentimes, people starting their journey in the field of software development don’t understand the importance of testing, including Golang app testing, until late in their careers. It’s essential to think about testing as an integral part of the software development lifecycle (SDLC) not only in theory but in practice, too. When building cutting-edge software, you need to make sure that the version being upgraded is error-free and that almost all of the failure cases have been considered.

Testing Python: Understanding Doctest and Unittest

Testing is crucial in the software development phase. It helps ensure easy debugging, agile code, and enhanced reusability. Performing tests that cover all use cases helps prevent a codebase from breaking — minimizing exposure to vulnerabilities. Python has two main testing frameworks that developers can use, doctest and unittest.

How to Unit Test with Python

Confidence in the quality, robustness, and reliability of a product are among the most valuable qualities sought after by consumers as well as businesses. This confidence is built through the rigorous testing of a product. In software engineering, practices like extreme programming (XP) and test-driven development (TDD) champion the belief that automated testing should be used from the start of a project.

Everything You Need to Know about K3s: Lightweight Kubernetes for IoT, Edge Computing, Embedded Systems & More

If you are a vivid traveler of the tech universe, you’ve likely come across this term: Kubernetes. Scratching your head? Let me make it clear: In simple terms, we know Kubernetes — or K8s — as a portable and extensible platform for managing containerized workloads and services. It can facilitate both declarative configurations as well as automation.