The Case Against Always Using Agile Scrum Masters

The Case Against Always Using Agile Scrum Masters

The Agile Dilemma: When Scrum Masters Become More Hurdle Than Help In the ever-evolving landscape of software development, Agile methodologies, particularly Scrum, have become the de facto standard for many teams. However, beneath the surface of this seemingly efficient and collaborative approach lies a complex web of challenges and pitfalls. As someone who has navigated the trenches of Agile development, I’m here to make the case against always using Agile Scrum Masters, and why this role might not be the silver bullet it’s often touted to be....

January 10, 2025 · 5 min · 854 words · Maxim Zhirnov
Building a High-Performance MQTT Broker in Go: A Step-by-Step Guide

Building a High-Performance MQTT Broker in Go: A Step-by-Step Guide

Introduction to MQTT and Go When it comes to the Internet of Things (IoT) and real-time communication, MQTT (Message Queuing Telemetry Transport) is often the protocol of choice. Its lightweight and efficient design makes it perfect for resource-constrained devices. If you’re looking to build a high-performance MQTT broker, using the Go programming language is an excellent decision. Go, with its concurrency features and performance capabilities, is well-suited for this task....

January 9, 2025 · 4 min · 752 words · Maxim Zhirnov
Why Code Comments are a Code Smell: The Case for Self-Documenting Code

Why Code Comments are a Code Smell: The Case for Self-Documenting Code

The Comment Conundrum: Why Code Comments Might Be a Code Smell In the world of software development, there’s a long-standing debate about the role of code comments. While some argue that comments are essential for clarity and documentation, others see them as a sign of poorly written code. Let’s dive into the argument that code comments can indeed be a code smell and explore why self-documenting code is often the better choice....

January 9, 2025 · 5 min · 991 words · Maxim Zhirnov
Creating a UI Automation Testing System with Cypress

Creating a UI Automation Testing System with Cypress

Introduction to Cypress In the world of software development, testing is an indispensable part of ensuring the quality and reliability of your application. Among the various tools available for automation testing, Cypress stands out as a powerful and user-friendly framework for end-to-end testing of web applications. Built on JavaScript, Cypress offers a robust set of features that make it a favorite among developers and QA engineers. Why Choose Cypress? Before diving into the nitty-gritty of setting up and using Cypress, let’s explore why it’s such a popular choice:...

January 8, 2025 · 4 min · 836 words · Maxim Zhirnov
The Illusion of Code Ownership: Why 'Not Invented Here' Syndrome is Killing Your Project

The Illusion of Code Ownership: Why 'Not Invented Here' Syndrome is Killing Your Project

The Illusion of Code Ownership: Why ‘Not Invented Here’ Syndrome is Killing Your Project In the world of software development, there’s a silent killer lurking in the shadows, ready to pounce on your project and suffocate its potential. It’s not a bug, nor is it a misconfigured server; it’s something far more insidious: the “Not Invented Here” (NIH) syndrome. This phenomenon is as old as the hills, yet it remains a pervasive problem that can stifle innovation, waste resources, and drive your team to the brink of madness....

January 8, 2025 · 5 min · 867 words · Maxim Zhirnov