Skip to main content

6 posts tagged with "shift-left"

View All Tags

Test-Driven Development (TDD) - Writing Code That's Correct by Design

· 10 min read
Serhii Hrekov
software engineer, creator, artist, programmer, projects founder

Not only Shift-Left mantra matters

The mantra of "Shift Left" has echoed through the halls of software development for years now, and for good reason. The core idea is simple yet powerful: move testing, quality, and security considerations as early as possible in the development lifecycle. It's about catching problems when they're small and cheap to fix, not when they're gargantuan headaches in production. But as a lead engineer who's seen a few projects through the trenches, I've come to realize that "Shift Left" isn't the destination; it's the starting point.

To truly build robust, maintainable, and high-quality software, especially in a dynamic language like Python, we need to embrace a set of development paradigms that not only support but enhance the "Shift Left" philosophy. These aren't just buzzwords; they are methodologies that, when adopted, fundamentally change how we approach writing code for the better.

Beyond Shift Left. Development Paradigms Every Programmer Should Know

· 5 min read
Serhii Hrekov
software engineer, creator, artist, programmer, projects founder

I'm continuing the paradigms circle. The Shift Left paradigm is well-known in the DevOps and QA communities for its philosophy of catching bugs, security issues, and integration problems early in the development lifecycle. But Shift Left is not the only valuable philosophy out there. In fact, in some contexts, other paradigms can be even more effective.

This article introduces several software development paradigms that complement or enhance Shift Left—and may even be more impactful depending on your context.

What is Pyright and Why You Should Use It

· 6 min read
Serhii Hrekov
software engineer, creator, artist, programmer, projects founder

Python is known for being dynamic, fast to prototype with, and easy to write. But these same characteristics can introduce bugs that are only caught at runtime.

Static type checking—validating code without running it—helps you catch bugs earlier. This is where Pyright enters the stage.

What is Mypy, How to Use It, and Why It Matters

· 5 min read
Serhii Hrekov
software engineer, creator, artist, programmer, projects founder

Python is known for being a dynamically typed language — you don’t have to declare variable types, and everything works at runtime. But as your codebase grows, undetected type errors can creep in. That’s where Mypy comes in.

Mypy is a static type checker for Python. It checks your Python code for type errors without running it.

What is Shift Left Paradigm in Programming? Explained for Beginners

· 6 min read
Serhii Hrekov
software engineer, creator, artist, programmer, projects founder

If you've heard developers or tech leads talk about "shifting left", it may sound like some kind of command-line trick. But in reality, "shift left" is a mindset — and it's becoming increasingly important in modern software development.

Whether you're writing Python or any other language, understanding this approach can help you build more reliable code, find bugs earlier, and ship faster.

Paradigms Every Beginner Should Know Before Learning Shift Left

· 5 min read
serhii_hrekov

Before diving into Shift Left, which emphasizes catching bugs, performance, and security issues early in the software development lifecycle, it’s important for new programmers to learn the foundational paradigms that support this philosophy.

These paradigms teach early thinking, good code hygiene, and automation — all of which are building blocks of effective software engineering.