News Articles codequality

A Guide to writing to better comments

Introduction You’re probably thinking,” what’s new with comments?” and you’ll be right to think that. Often times, not much thought is put into writing a comment. They are mostly ignored and considered secondary(albeit as they should be) but this negligence has led many programmers into writing very awful comments. for example: In order to avoid […]

Top 3 Ways to Log Errors to Simplify Debugging For Systems Engineers

How often do you find yourself spending hours trying to triage a failure in production? Debugging is challenging because we don’t know what we’re looking for, and to top it off, we have no way to pick on the trail of errors. The most obvious first step is to ensure all services are logging errors […]

4 questions to ask in interviews to assess codebase health

We all love good, quality code – and if we don’t, we should. Code that is consistent, clean, and easy to understand is essential to a healthy codebase. A healthy codebase is one that’s optimized for testability, maintainability, and scalability. It helps programmers code more efficiently and makes engineering teams more productive. The health of […]

7 Top Metrics for Measuring Your Technical Debt🚀

Hey community👋 We decided to look at the technical debt metrics and pick out the best tracking tools but we’d be more than happy to learn from your experience too! Share in the comments: what technical debt process do you use in your team and what tools help you do that?🚀 Now let’s get […]

Thumb Rules of Unit Testing

My ideas on writing meaningful unit tests were crystallized when I read “The Practical Test Pyramid” today. As a novice programmer, I went in mindlessly, not knowing how to test my code. The Practical Test Pyramid is an excellent guide, but I want to emphasize unit testing today. Why Write Unit Tests? As the name […]

The Engineer's Complete Guide to Backlog Grooming📝

This article is originally published on Managing technical debt blog by Cate Lawrence. ✨✨✨ Without organisation, backlog gets messy quickly and issues can’t be prioritised. Let’s look at how Engineers, Product Managers, and the rest of the team members can work together to keep tasks organised. You might be an organised checklist kinda person, or […]

Why a High Code Coverage Is Nothing Worth and Leads Only to False Conclusions

Code coverage shows the degree in percentage to which an application is executed by a testing framework. It is used for quality assurance and “helps” to increase quality of software. In this article I will demonstrate why code coverage will not help increasing quality, can be faked and what you can do instead to ensure […]

Zen and The Art of Motorcycle Maintenance by Robert Pirsig

During the last couple of years, I started to attend and present at more and more C++ conferences. Inevitably, I ended up listening to Phil Nash several times and he almost always spoke about something closely related to software quality. In these talks, he often mentioned Zen and The Art of Motorcycle Maintenance, which sometimes […]

1 line of code: How to convert tabs to spaces

const tabsToSpaces = (str, tabsize = 4) => str.replaceAll(“t”, ” “.repeat(tabsize)); Returns the string and replaces a series of spaces (tab size) with a tab. The repository & npm package You can find the all the utility functions from this series at The library is also published to npm as @onelinecode for your convenience. […]

You don't need null

While a lot of programming languages that have a “nullish” type (null, nil, etc.) debate about avoiding it, JavaScript is the only popular one that has two, you read that right, two nullish types. One of the most common recommendations is to stick to using only one, and my recommendation is to only use undefined […]

Write Better Python Code

Introduction This article has the collection python coding practices that I have learned over last few months for writing more idiomatic python code. 1. Multiple Assignment Initialise same value for different variables. # Instead of this x = 10 y = 10 z = 10 # Use this x = y = z = 10 […]

Approval Workflow: Manual and Automated Approvals in CI/CD

Recently, I’ve gone into detail on stacks and stages. I’ve also examined the importance of dev stacks for both teams and individual developers. Building on these topics, I wanted to talk today about approvals. How do you promote changes to your stacks to production? More importantly, how do you gate promotions to ensure quality code? […]

Pure Functions Explained for Humans

Start leveraging pure functions TODAY First things first: you don’t have to write code in a functional style to leverage pure functions. This powerful tool makes it easier to read, reuse, maintain, and test code. Nobody wants to lose any of these benefits because their code is not functional. And you shouldn’t neither. So get […]

Add test coverage badge for PHP and Pest in your GitHub repository

If you walk through across GitHub repositories, you can see that most of them show some badges. A badge is a sort of icon that show you the status of your code, your repository, your workflow, etc. In your Readme file in your GitHub repository, you can include your badges. Badges are for: show package […]

Why TODOs and Jira tickets are not working anymore

👋 Hey community! I’ve launched a quick survey to learn more about how modern Engineering teams communicate, and would really appreciate your input! Please, answer a few survey questions, share your opinion and get a chance to win an Amazon gift card worth $100💸 Now let’s look at why TODOs and Jira tickets are […]

Why is Technical Debt Bad?

What Is Technical Debt? There are many ways to define technical debt, but to put it into simple words, it’s the interest you have to pay when you choose the effortless short-ranged development choice instead of the challenging and elaborate one. Typically, this debt arises from using code that works perfectly fine for a short […]

Pizza flavoured Strategy pattern

Strategy pattern is a design pattern that allows you to define a family of algorithms, put each of them into a separate class, and make their objects interchangeable. This is useful when you have a large number of similar algorithms and you want to use them in different ways. It is one of the most […]

1 line of code: How to PascalCase a string

const toPascalCase = str => str.replace(/[s._-]+w/g, (m) => m[m.length – 1].toUpperCase()).replace(str.charAt(0), str.charAt(0).toUpperCase()); Returns a new string in pascal case. Uses space, dot, underscore and dash as delimiter. The repository & npm package You can find the all the utility functions from this series at The library is also published to npm as @onelinecode for […]

Sitemap | Terms | Privacy | Cookies | Advertising

Senior Software Developer

Creator of @LzoMedia I am a backend software developer based in London who likes beautiful code and has an adherence to standards & love's open-source.