Skip to main content

5 posts tagged with "debugging"

debugging tag description

View All Tags

How to Find a Bug with `git bisect` (Binary Search Debugging)

5 min read
Serhii Hrekov
Senior Software Engineer & System Architect specializing in Python, Web Systems, Cloud Infrastructure & Automation

Finding a bug is like detective work-except the crime scene is your code, and the suspect is one of your last 200 commits. You know the code worked last week, and you know it's broken now, but finding the exact moment it failed can take hours of manual checking.

Enter git bisect. It uses a binary search algorithm to find the offending commit with mathematical efficiency. Instead of checking every commit, it cuts the search area in half every single time.

Python Exception Handling: Complete Guide to try-except, Propagation, Hierarchy, and Tracebacks

12 min read
Serhii Hrekov
Senior Software Engineer & System Architect specializing in Python, Web Systems, Cloud Infrastructure & Automation

Writing robust, fault-tolerant software in Python requires a solid understanding of how errors propagate, how Python's built-in exceptions are structured, and how to capture context-rich debugging information when failures occur.

This guide provides a comprehensive manual on exception handling in Python, detailing block flow control (try, except, else, finally), stack unwinding dynamics, the class inheritance hierarchy, multi-exception catch patterns, custom error design, context managers, and production logging strategies for tracebacks.

Dataclass AttributeError Solutions

9 min read
Serhii Hrekov
Senior Software Engineer & System Architect specializing in Python, Web Systems, Cloud Infrastructure & Automation

The AttributeError is one of the most common exceptions in Python, indicating an attempt to access or set a class attribute that simply doesn't exist. When it occurs within the context of a @dataclass, it often points to a misunderstanding of how the decorator automatically generates methods like __init__ and __setattr__.

Here is a breakdown of the most frequent AttributeError scenarios involving dataclasses and the high-level solutions to resolve them.

Understanding Off-by-One Errors in JavaScript

4 min read
Serhii Hrekov
Senior Software Engineer & System Architect specializing in Python, Web Systems, Cloud Infrastructure & Automation

Off-by-one errors (OBOEs) are among the most common logic bugs, even for seasoned developers. These bugs occur when a loop or operation goes one iteration too far or one iteration too short-leading to incorrect results, missed elements, or crashes.

They usually occur in:

  • Loops
  • Array indexing
  • Ranges
  • Substring operations

What is an Off-by-One Error in Python? (Explained for Kids!)

4 min read
Serhii Hrekov
Senior Software Engineer & System Architect specializing in Python, Web Systems, Cloud Infrastructure & Automation

Have you ever counted your toys and accidentally said you had 11, but really only had 10? That's kind of what an off-by-one error is in Python!

It's a tiny mistake where your program counts 1 too many or 1 too few. These mistakes are super common, even for professional programmers.